Compare commits

...

8 Commits

12 changed files with 89 additions and 13 deletions

View File

@ -3,6 +3,16 @@
display: none; display: none;
} }
/* MOVE THIS INTO GNO! */
#block-accreditationcount {
position: absolute;
right: 50%;
}
#block-accreditationcount td {
color: black;
}
/* */ /* */
body { body {
@ -123,3 +133,36 @@ table.views-table.views-view-table caption {
form.oc-organisation-relation-form tr:first-child { form.oc-organisation-relation-form tr:first-child {
display: none; display: none;
} }
/* trav styling */
.site-branding {
margin-top: -2.20em !important;
}
.follow-up-due {
}
tr:nth-child(even) {
background-color: #fefefe;
}
.off {
background-color:black;
}
.field--type-entity-reference-revisions {
border-radius: 25px;
border: 2px solid #2A419A;
padding: 10px;
border-width: thin;
}
.follow-ups-due {
background-color: #FB8A4F;
}
.views-field-field-client-substatus {
font-weight: bold;
}

View File

@ -206,8 +206,9 @@ class OCCase extends RevisionableContentEntityBase implements OCCaseInterface {
// not currently used. Will add form and view settings when ready // not currently used. Will add form and view settings when ready
$fields['status'] = BaseFieldDefinition::create('boolean') $fields['status'] = BaseFieldDefinition::create('boolean')
->setLabel(t('Publishing status')) ->setLabel(t('Publishing status'))
->setDescription(t('A boolean indicating whether the Case is published.')) ->setDescription('If this box is not ticked this record will be hidden from view for most users. Users with access to unpublished entities will be able to restore it if needed.')
->setRevisionable(TRUE) ->setRevisionable(TRUE)
->setDisplayConfigurable("form", TRUE)
->setDefaultValue(TRUE); ->setDefaultValue(TRUE);
$fields['user_id'] = BaseFieldDefinition::create('entity_reference') $fields['user_id'] = BaseFieldDefinition::create('entity_reference')

View File

@ -40,6 +40,9 @@ view published case entities:
view unpublished case entities: view unpublished case entities:
title: 'View unpublished Case entities' title: 'View unpublished Case entities'
view unpublished actor entities:
title: 'View unpublished Actor entities'
view all case revisions: view all case revisions:
title: 'View all Case revisions' title: 'View all Case revisions'

View File

@ -240,11 +240,11 @@ class OCActivity extends RevisionableContentEntityBase implements OCActivityInte
'weight' => -3, 'weight' => -3,
]); ]);
// not currently in use. Will set view and form settings when ready
$fields['status'] = BaseFieldDefinition::create('boolean') $fields['status'] = BaseFieldDefinition::create('boolean')
->setLabel(t('Publishing status')) ->setLabel(t('Publishing status'))
->setDescription(t('A boolean indicating whether the Activity is published.')) ->setDescription('If this box is not ticked this record will be hidden from view for most users. Users with access to unpublished entities will be able to restore it if needed.')
->setRevisionable(TRUE) ->setRevisionable(TRUE)
->setDisplayConfigurable('form', TRUE)
->setDefaultValue(TRUE); ->setDefaultValue(TRUE);
$fields['user_id'] = BaseFieldDefinition::create('entity_reference') $fields['user_id'] = BaseFieldDefinition::create('entity_reference')

View File

@ -213,11 +213,11 @@ class OCActor extends RevisionableContentEntityBase implements OCActorInterface
public static function baseFieldDefinitions(EntityTypeInterface $entity_type) { public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
$fields = parent::baseFieldDefinitions($entity_type); $fields = parent::baseFieldDefinitions($entity_type);
// Currently not using this, but will add form and view settings when ready.
$fields['status'] = BaseFieldDefinition::create('boolean') $fields['status'] = BaseFieldDefinition::create('boolean')
->setLabel(t('Publishing status')) ->setLabel(t('Publishing status'))
->setDescription(t('Whether this record is published.')) ->setDescription('If this box is not ticked this record will be hidden from view for most users. Users with access to unpublished entities will be able to restore it if needed.')
->setRevisionable(TRUE) ->setRevisionable(TRUE)
->setDisplayConfigurable("form", true)
->setDefaultValue(TRUE); ->setDefaultValue(TRUE);
// The name gets set on preSave, from the first middle and last // The name gets set on preSave, from the first middle and last

View File

@ -167,7 +167,14 @@ class OCEvent extends ContentEntityBase implements OCEventInterface {
->setDisplayConfigurable('view', TRUE) ->setDisplayConfigurable('view', TRUE)
->setRequired(TRUE); ->setRequired(TRUE);
$fields['status']->setDescription(t('A boolean indicating whether the Event is published.')); $fields['status'] = BaseFieldDefinition::create('boolean')
->setLabel(t('Publishing status'))
->setDescription('If this box is not ticked this record will be hidden from view for most users. Users with access to unpublished entities will be able to restore it if needed.')
->setRevisionable(TRUE)
->setDisplayConfigurable("form", true)
->setDefaultValue(TRUE);
$fields['created'] = BaseFieldDefinition::create('created') $fields['created'] = BaseFieldDefinition::create('created')
->setLabel(t('Created')) ->setLabel(t('Created'))

View File

@ -456,7 +456,13 @@ class OCOrganisation extends EditorialContentEntityBase implements OCOrganisatio
->setDisplayConfigurable('view', TRUE) ->setDisplayConfigurable('view', TRUE)
->setRequired(TRUE); ->setRequired(TRUE);
$fields['status']->setDescription(t('A boolean indicating whether the Organisation is published.')); $fields['status'] = BaseFieldDefinition::create('boolean')
->setLabel(t('Published'))
->setDescription('If this box is not ticked this record will be hidden from view for most users. Users with access to unpublished entities will be able to restore it if needed.')
->setRevisionable(TRUE)
->setDisplayConfigurable("form", true)
->setDefaultValue(TRUE);
$fields['created'] = BaseFieldDefinition::create('created') $fields['created'] = BaseFieldDefinition::create('created')
->setLabel(t('Created')) ->setLabel(t('Created'))

View File

@ -107,7 +107,7 @@ class OCOrganisationRelation extends ContentEntityBase implements OCOrganisation
'max_length' => 50, 'max_length' => 50,
'text_processing' => 0, 'text_processing' => 0,
]) ])
->setDefaultValue('Link between organisations') ->setDefaultValue('Link')
->setRequired(TRUE); ->setRequired(TRUE);
$fields['created'] = BaseFieldDefinition::create('created') $fields['created'] = BaseFieldDefinition::create('created')

View File

@ -58,7 +58,11 @@ class OCActorForm extends ContentEntityForm {
'%label' => $entity->label(), '%label' => $entity->label(),
])); ]));
} }
$form_state->setRedirect('entity.oc_actor.canonical', ['oc_actor' => $entity->id()]); // If you have unpublished the entity and you can't see unpublished entities, redirect to a more informative message than just "Access Denied".
if (!$form_state->getValue('status')['value'] && !\Drupal::currentUser()->hasPermission('view unpublished actor entities')) {
$form_state->setRedirect('entity.node.canonical', ['node' => 1]);
} else {
$form_state->setRedirect('entity.oc_actor.canonical', ['oc_actor' => $entity->id()]);
}
} }
} }

View File

@ -32,7 +32,7 @@ class OCActorAccessControlHandler extends EntityAccessControlHandler {
case 'view': case 'view':
if (!$entity->isPublished()) { if (!$entity->isPublished()) {
return AccessResult::allowedIf( return AccessResult::allowedIf(
$account->hasPermission("view unpublished $bundle entities") $account->hasPermission("view unpublished actor entities")
); );
} }
return AccessResult::allowedIf( return AccessResult::allowedIf(

View File

@ -98,6 +98,20 @@ function opencase_uninstall() {
} }
function opencase_views_pre_render($view) { function opencase_views_pre_render($view) {
if (!empty($view->result)) {
foreach ($view->result as $key => $result) {
if (empty($result->_entity)) {
continue;
}
$access = \Drupal::entityTypeManager()
->getAccessControlHandler($result->_entity->getEntityTypeId())
->access($result->_entity, 'view', NULL, TRUE);
if (!$access->isAllowed()) {
unset($view->result[$key]);
}
}
}
if (empty($view->result) && empty($view->exposed_input)) { if (empty($view->result) && empty($view->exposed_input)) {
$view->exposed_widgets = NULL; $view->exposed_widgets = NULL;
} }
@ -121,7 +135,6 @@ function opencase_entity_field_access($operation, \Drupal\Core\Field\FieldDefini
function opencase_form_alter(&$form, &$form_state, $form_id) { function opencase_form_alter(&$form, &$form_state, $form_id) {
if (preg_match('/oc_organisation_relation_.*_delete_form/', $form_id) or (preg_match('/oc_organisation_relation_.*_add_form/', $form_id))) { if (preg_match('/oc_organisation_relation_.*_delete_form/', $form_id) or (preg_match('/oc_organisation_relation_.*_add_form/', $form_id))) {
$form['actions']['submit']['#submit'][] = '_opencase_organisation_relation_redirect'; $form['actions']['submit']['#submit'][] = '_opencase_organisation_relation_redirect';
// $form['actions']['cancel']['#url'] = $form_state->getFormObject()->getEntity()->toUrl();
} }
} }

View File

@ -23,7 +23,6 @@ class EntityReferenceCurrentTargetExcluder extends EntityReferenceLabelFormatter
foreach($items as $delta=>$item) { foreach($items as $delta=>$item) {
$current_org = \Drupal::routeMatch()->getParameter('oc_organisation')->id(); $current_org = \Drupal::routeMatch()->getParameter('oc_organisation')->id();
$item_target_id = $item->get('target_id')->getValue(); $item_target_id = $item->get('target_id')->getValue();
\Drupal::logger("foo")->error($current_org . " " . $item_target_id);
if ($current_org == $item_target_id) { if ($current_org == $item_target_id) {
$items->removeItem($delta); $items->removeItem($delta);
break; break;