diff --git a/modules/opencase_no_cases/config/install/block.block.views_block__activities_block_1.yml b/modules/opencase_no_cases/config/install/block.block.views_block__activities_block_1.yml deleted file mode 100644 index ff021e4..0000000 --- a/modules/opencase_no_cases/config/install/block.block.views_block__activities_block_1.yml +++ /dev/null @@ -1,30 +0,0 @@ -langcode: en -status: true -dependencies: - config: - - views.view.activities - module: - - route_condition - - views - theme: - - bartik -id: views_block__activities_block_1 -theme: bartik -region: content -weight: 0 -provider: null -plugin: 'views_block:activities-block_1' -settings: - id: 'views_block:activities-block_1' - label: '' - provider: views - label_display: visible - views_label: '' - items_per_page: none - context_mapping: { } -visibility: - route: - id: route - routes: entity.oc_actor.canonical - negate: false - context_mapping: { } diff --git a/modules/opencase_no_cases/config/install/views.view.activities.yml b/modules/opencase_no_cases/config/install/views.view.activities.yml deleted file mode 100644 index c82f478..0000000 --- a/modules/opencase_no_cases/config/install/views.view.activities.yml +++ /dev/null @@ -1,318 +0,0 @@ -langcode: en -status: true -dependencies: - module: - - datetime - - opencase_entities -id: activities -label: Activities -module: views -description: '' -tag: '' -base_table: oc_activity_field_data -base_field: id -display: - default: - display_plugin: default - id: default - display_title: Master - position: 0 - display_options: - access: - type: none - options: { } - cache: - type: tag - options: { } - query: - type: views_query - options: - disable_sql_rewrite: false - distinct: false - replica: false - query_comment: '' - query_tags: { } - exposed_form: - type: basic - options: - submit_button: Apply - reset_button: false - reset_button_label: Reset - exposed_sorts_label: 'Sort by' - expose_sort_order: true - sort_asc_label: Asc - sort_desc_label: Desc - pager: - type: none - options: - items_per_page: null - offset: 0 - style: - type: table - row: - type: fields - fields: - name: - id: name - table: oc_activity_field_data - field: name - relationship: none - group_type: group - admin_label: '' - label: Subject - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: true - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: string - settings: - link_to_entity: true - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - entity_type: null - entity_field: name - plugin_id: field - activity_date_time: - id: activity_date_time - table: oc_activity_field_data - field: activity_date_time - relationship: none - group_type: group - admin_label: '' - label: 'Date and time' - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: true - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: value - type: datetime_default - settings: - timezone_override: '' - format_type: medium - group_column: value - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - entity_type: oc_activity - entity_field: activity_date_time - plugin_id: field - actors_involved_target_id: - id: actors_involved_target_id - table: oc_activity__actors_involved - field: actors_involved_target_id - relationship: none - group_type: group - admin_label: '' - label: Participants - exclude: false - alter: - alter_text: false - text: '' - make_link: false - path: '' - absolute: false - external: false - replace_spaces: false - path_case: none - trim_whitespace: false - alt: '' - rel: '' - link_class: '' - prefix: '' - suffix: '' - target: '' - nl2br: false - max_length: 0 - word_boundary: true - ellipsis: true - more_link: false - more_link_text: '' - more_link_path: '' - strip_tags: false - trim: false - preserve_tags: '' - html: false - element_type: '' - element_class: '' - element_label_type: '' - element_label_class: '' - element_label_colon: true - element_wrapper_type: '' - element_wrapper_class: '' - element_default_classes: true - empty: '' - hide_empty: false - empty_zero: false - hide_alter_empty: true - click_sort_column: target_id - type: entity_reference_label - settings: - link: true - group_column: target_id - group_columns: { } - group_rows: true - delta_limit: 0 - delta_offset: 0 - delta_reversed: false - delta_first_last: false - multi_type: separator - separator: ', ' - field_api_classes: false - entity_type: oc_activity - entity_field: actors_involved - plugin_id: field - filters: { } - sorts: { } - title: Activities - header: { } - footer: { } - empty: { } - relationships: { } - arguments: - actors_involved_target_id: - id: actors_involved_target_id - table: oc_activity__actors_involved - field: actors_involved_target_id - relationship: none - group_type: group - admin_label: '' - default_action: default - exception: - value: all - title_enable: false - title: All - title_enable: false - title: '' - default_argument_type: raw - default_argument_options: - index: 2 - use_alias: false - default_argument_skip_url: false - summary_options: - base_path: '' - count: true - items_per_page: 25 - override: false - summary: - sort_order: asc - number_of_records: 0 - format: default_summary - specify_validation: false - validate: - type: none - fail: 'not found' - validate_options: { } - break_phrase: false - not: false - entity_type: oc_activity - entity_field: actors_involved - plugin_id: numeric - display_extenders: { } - cache_metadata: - max-age: -1 - contexts: - - 'languages:language_content' - - 'languages:language_interface' - - url - tags: { } - block_1: - display_plugin: block - id: block_1 - display_title: Block - position: 1 - display_options: - display_extenders: { } - cache_metadata: - max-age: -1 - contexts: - - 'languages:language_content' - - 'languages:language_interface' - - url - tags: { } diff --git a/modules/opencase_no_cases/opencase_no_cases.info.yml b/modules/opencase_no_cases/opencase_no_cases.info.yml deleted file mode 100644 index ab990f6..0000000 --- a/modules/opencase_no_cases/opencase_no_cases.info.yml +++ /dev/null @@ -1,8 +0,0 @@ -name: 'OpenCase No Cases' -type: module -description: 'Enable EITHER this OR "OpenCase Cases". This one links activities directly to people, which is simpler and therefore what some orgs prefer.' -core: 8.x -package: 'OpenCase' -dependencies: - - opencase_entities - - route_condition diff --git a/modules/opencase_no_cases/opencase_no_cases.module b/modules/opencase_no_cases/opencase_no_cases.module deleted file mode 100644 index 43e9132..0000000 --- a/modules/opencase_no_cases/opencase_no_cases.module +++ /dev/null @@ -1,105 +0,0 @@ -' . t('About') . ''; - $output .= '

' . t('Enable EITHER this OR "OpenCase Cases". This one links activities directly to people, which is simpler and therefore what some orgs prefer.') . '

'; - return $output; - - default: - } -} - -function opencase_no_cases_entity_base_field_info($entity_type) { - if ($entity_type->id() === 'oc_activity') { - $fields = array(); - $fields['actors_involved'] = BaseFieldDefinition::create('entity_reference') - ->setLabel(t('Participants')) - ->setDescription(t('People involved in this activity. To add one, start typing their name.')) - ->setSetting('target_type', 'oc_actor') - ->setSetting('handler', 'default') - ->setTranslatable(TRUE) - ->setCardinality(-1) - ->setDisplayOptions('form', [ - 'label' => 'above', - 'type' => 'hidden', - 'weight' => -100, - 'settings' => [ - 'match_operator' => 'CONTAINS', - 'size' => '60', - 'autocomplete_type' => 'tags', - 'placeholder' => '', - ], - ]) - ->setDisplayOptions('view', [ - 'label' => 'above', - 'weight' => -100, - ]) - ->setDefaultValueCallback('opencase_no_cases_actors_involved_callback') - ->setRequired(TRUE); - } - return $fields; -} - -/** - * When creating an activity, it sets the first involved party to the actor - * id from the URL, and the second to the author's linked actor - * (if it exists and is different) - */ -function opencase_no_cases_actors_involved_callback() { - $author_linked_actor_id = \Drupal\user\Entity\User::load(\Drupal::currentUser()->id())->get('field_linked_opencase_actor')->target_id; - $currently_viewed_actor_id = \Drupal::request()->query->get('actor_id'); - return array_unique([$currently_viewed_actor_id, $author_linked_actor_id]); -} - -/** - * Implementation of hook_form_alter() - * When deleting an activity go back to the page of the first listed involved party (as this is likely to be the "target" of the activity). - */ -function opencase_form_alter(&$form, &$form_state, $form_id) { - if (preg_match('/oc_actor_.*_delete_form/', $form_id) or (preg_match('/oc_organisation_.*_delete_form/', $form_id))) { - $form['actions']['submit']['#submit'][] = '_opencase_no_cases_redirect_to_home'; - $form['actions']['cancel']['#url'] = $form_state->getFormObject()->getEntity()->toUrl(); - } - if (preg_match('/oc_activity_.*_delete_form/', $form_id)) { - $form['actions']['submit']['#submit'][] = '_opencase_no_cases_delete_activity_redirect'; - $form['actions']['cancel']['#url'] = $form_state->getFormObject()->getEntity()->toUrl(); - } -} - -function _opencase_no_cases_redirect_to_home($form, &$form_state) { - $form_state->setRedirect(''); -} -function _opencase_no_cases_delete_activity_redirect($form, &$form_state) { - $actor_id = $form_state->getFormObject()->getEntity()->actors_involved[0]->target_id; - $form_state->setRedirect('entity.oc_actor.canonical', ['oc_actor' => $actor_id]); -} -/** - * Implements hook_uninstall(). - */ -function opencase_no_cases_uninstall() { - $dir = new DirectoryIterator(dirname(__FILE__) . "/config/install"); - $configs = []; - foreach ($dir as $fileinfo) { - if (!$fileinfo->isDot()) { - $configs[] = str_replace('.yml', '', $fileinfo->getFilename()); - } - } - foreach($configs as $config) { - Drupal::configFactory()->getEditable($config)->delete(); - } -}