diff --git a/composer.json b/composer.json index 741b133..b87b96a 100644 --- a/composer.json +++ b/composer.json @@ -31,6 +31,7 @@ "autonomic/opencase": "dev-master", "composer/installers": "^1.2", "drupal/base_field_override_ui": "^1.0", + "drupal/better_exposed_filters": "^5.0", "drupal/content_as_config": "^1.0", "drupal/core-composer-scaffold": "^8.9.17", "drupal/core-project-message": "^8.9.17", diff --git a/composer.lock b/composer.lock index 0c08e0a..b7aab2e 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "6369685cff7ce743ba3972ba00401283", + "content-hash": "dccac5edf1be7c318eb7ab8ce83062f8", "packages": [ { "name": "asm89/stack-cors", @@ -1868,6 +1868,75 @@ "issues": "https://www.drupal.org/project/issues/base_field_override_ui" } }, + { + "name": "drupal/better_exposed_filters", + "version": "5.0.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/better_exposed_filters.git", + "reference": "8.x-5.0" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/better_exposed_filters-8.x-5.0.zip", + "reference": "8.x-5.0", + "shasum": "ef575591af202b5c6867841ce58e1f447455e502" + }, + "require": { + "drupal/core": "^8.8 || ^9", + "drupal/jquery_ui": "^1.4", + "drupal/jquery_ui_datepicker": "^1.0", + "drupal/jquery_ui_slider": "^1.1", + "drupal/jquery_ui_touch_punch": "^1.0" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-5.0", + "datestamp": "1634748760", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Mike Keran", + "homepage": "https://www.drupal.org/u/mikeker" + }, + { + "name": "Martin Keereman", + "homepage": "https://www.drupal.org/u/etroid" + }, + { + "name": "Neslee Canil Pinto", + "homepage": "https://www.drupal.org/u/neslee-canil-pinto" + }, + { + "name": "jkopel", + "homepage": "https://www.drupal.org/user/66207" + }, + { + "name": "mikeker", + "homepage": "https://www.drupal.org/user/192273" + }, + { + "name": "rlhawk", + "homepage": "https://www.drupal.org/user/352283" + } + ], + "description": "Replaces the Views default single- or multi-select boxes with more advanced options.", + "homepage": "https://www.drupal.org/project/better_exposed_filters", + "support": { + "source": "https://git.drupalcode.org/project/better_exposed_filters", + "issues": "https://www.drupal.org/project/issues/better_exposed_filters" + } + }, { "name": "drupal/content_as_config", "version": "1.0.3", @@ -2958,6 +3027,255 @@ "issues": "https://www.drupal.org/project/issues/field_permissions" } }, + { + "name": "drupal/jquery_ui", + "version": "1.4.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/jquery_ui.git", + "reference": "8.x-1.4" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/jquery_ui-8.x-1.4.zip", + "reference": "8.x-1.4", + "shasum": "64c19ecc8902e2b4b1ab0cc5f5fe28dbc83bfebe" + }, + "require": { + "drupal/core": "^8 || ^9" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.4", + "datestamp": "1582149957", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "RobLoach", + "homepage": "https://www.drupal.org/user/61114" + }, + { + "name": "jjeff", + "homepage": "https://www.drupal.org/user/17190" + }, + { + "name": "lauriii", + "homepage": "https://www.drupal.org/user/1078742" + }, + { + "name": "litwol", + "homepage": "https://www.drupal.org/user/78134" + }, + { + "name": "mfb", + "homepage": "https://www.drupal.org/user/12302" + }, + { + "name": "mfer", + "homepage": "https://www.drupal.org/user/25701" + }, + { + "name": "mikelutz", + "homepage": "https://www.drupal.org/user/2972409" + }, + { + "name": "sun", + "homepage": "https://www.drupal.org/user/54136" + }, + { + "name": "webchick", + "homepage": "https://www.drupal.org/user/24967" + }, + { + "name": "zrpnr", + "homepage": "https://www.drupal.org/user/1448368" + } + ], + "description": "Provides jQuery UI library.", + "homepage": "https://www.drupal.org/project/jquery_ui", + "support": { + "source": "https://git.drupalcode.org/project/jquery_ui" + } + }, + { + "name": "drupal/jquery_ui_datepicker", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/jquery_ui_datepicker.git", + "reference": "8.x-1.1" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/jquery_ui_datepicker-8.x-1.1.zip", + "reference": "8.x-1.1", + "shasum": "69f62467f846bb514a10fa93f4c3b34c6275353f" + }, + "require": { + "drupal/core": "^8 || ^9", + "drupal/jquery_ui": "*" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.1", + "datestamp": "1615962535", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "bnjmnm", + "homepage": "https://www.drupal.org/user/2369194" + }, + { + "name": "ivnish", + "homepage": "https://www.drupal.org/user/3547706" + }, + { + "name": "jrockowitz", + "homepage": "https://www.drupal.org/user/371407" + }, + { + "name": "lauriii", + "homepage": "https://www.drupal.org/user/1078742" + }, + { + "name": "zrpnr", + "homepage": "https://www.drupal.org/user/1448368" + } + ], + "description": "Provides jQuery UI Datepicker library.", + "homepage": "https://www.drupal.org/project/jquery_ui_datepicker", + "support": { + "source": "https://git.drupalcode.org/project/jquery_ui_datepicker" + } + }, + { + "name": "drupal/jquery_ui_slider", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/jquery_ui_slider.git", + "reference": "8.x-1.1" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/jquery_ui_slider-8.x-1.1.zip", + "reference": "8.x-1.1", + "shasum": "79b90cf60d45fc33ffdaa84bb2d6563f78a7d3d1" + }, + "require": { + "drupal/core": "^8 || ^9", + "drupal/jquery_ui": "*" + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "8.x-1.1", + "datestamp": "1584107817", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "bnjmnm", + "homepage": "https://www.drupal.org/user/2369194" + }, + { + "name": "lauriii", + "homepage": "https://www.drupal.org/user/1078742" + }, + { + "name": "zrpnr", + "homepage": "https://www.drupal.org/user/1448368" + } + ], + "description": "Provides jQuery UI Slider library.", + "homepage": "https://www.drupal.org/project/jquery_ui_slider", + "support": { + "source": "https://git.drupalcode.org/project/jquery_ui_slider" + } + }, + { + "name": "drupal/jquery_ui_touch_punch", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://git.drupalcode.org/project/jquery_ui_touch_punch.git", + "reference": "1.0.0" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/jquery_ui_touch_punch-1.0.0.zip", + "reference": "1.0.0", + "shasum": "8444a0ed897ba3d8e8876a9602ec8b3dca678cd1" + }, + "require": { + "drupal/core": "^8 || ^9", + "drupal/jquery_ui": "^1.0" + }, + "suggest": { + "furf/jquery-ui-touch-punch": "Required to use drupal/jquery_ui_touch_punch module." + }, + "type": "drupal-module", + "extra": { + "drupal": { + "version": "1.0.0", + "datestamp": "1591893292", + "security-coverage": { + "status": "not-covered", + "message": "Project has not opted into security advisory coverage!" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0+" + ], + "authors": [ + { + "name": "Naveen Valecha", + "homepage": "https://drupal.org/u/naveenvalecha", + "role": "Maintainer" + } + ], + "description": "Provides jQuery UI Touch Punch library.", + "homepage": "https://www.drupal.org/project/jquery_ui_touch_punch", + "keywords": [ + "Drupal", + "jquery_ui_touch_punch" + ], + "support": { + "source": "https://www.drupal.org/project/jquery_ui_touch_punch", + "issues": "https://www.drupal.org/project/issues/jquery_ui_touch_punch", + "irc": "irc://irc.freenode.org/drupal-contribute" + } + }, { "name": "drupal/paragraphs", "version": "1.12.0", diff --git a/config/block.block.exposedformclient_reportpage_1.yml b/config/block.block.exposedformclient_reportpage_1.yml new file mode 100644 index 0000000..6080aad --- /dev/null +++ b/config/block.block.exposedformclient_reportpage_1.yml @@ -0,0 +1,29 @@ +uuid: 9a06d3fd-424b-489a-b17d-a6b9b801e03a +langcode: en +status: true +dependencies: + config: + - views.view.client_report + module: + - system + - views + theme: + - bartik +id: exposedformclient_reportpage_1 +theme: bartik +region: sidebar_second +weight: 0 +provider: null +plugin: 'views_exposed_filter_block:client_report-page_1' +settings: + id: 'views_exposed_filter_block:client_report-page_1' + label: '' + provider: views + label_display: '0' + views_label: '' +visibility: + request_path: + id: request_path + pages: /client-report + negate: false + context_mapping: { } diff --git a/config/core.extension.yml b/config/core.extension.yml index 126ddf5..94ea821 100644 --- a/config/core.extension.yml +++ b/config/core.extension.yml @@ -2,6 +2,7 @@ module: admin_toolbar: 0 automated_cron: 0 base_field_override_ui: 0 + better_exposed_filters: 0 big_pipe: 0 block: 0 block_content: 0 @@ -36,6 +37,10 @@ module: help: 0 history: 0 image: 0 + jquery_ui: 0 + jquery_ui_datepicker: 0 + jquery_ui_slider: 0 + jquery_ui_touch_punch: 0 jsonapi: 0 link: 0 menu_link_content: 0 diff --git a/config/field.storage.oc_actor.field_pronoun.yml b/config/field.storage.oc_actor.field_pronoun.yml index 0030fef..0bde1e0 100644 --- a/config/field.storage.oc_actor.field_pronoun.yml +++ b/config/field.storage.oc_actor.field_pronoun.yml @@ -11,7 +11,7 @@ field_name: field_pronoun entity_type: oc_actor type: string settings: - max_length: 10 + max_length: 50 is_ascii: false case_sensitive: false module: core diff --git a/config/views.view.case_provision_report.yml b/config/views.view.case_provision_report.yml new file mode 100644 index 0000000..92098fa --- /dev/null +++ b/config/views.view.case_provision_report.yml @@ -0,0 +1,174 @@ +uuid: 83684818-2ee2-4e07-abd9-7c97526f0f83 +langcode: en +status: true +dependencies: + module: + - opencase_cases +id: case_provision_report +label: 'Case provision report' +module: views +description: '' +tag: '' +base_table: oc_case_provision_field_data +base_field: nid +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: mini + options: + items_per_page: 50 + offset: 0 + id: 0 + total_pages: null + expose: + items_per_page: false + items_per_page_label: 'Items per page' + items_per_page_options: '5, 10, 25, 50' + items_per_page_options_all: false + items_per_page_options_all_label: '- All -' + offset: false + offset_label: Offset + tags: + previous: ‹‹ + next: ›› + style: + type: table + row: + type: fields + fields: + name: + table: oc_case_provision_field_data + field: name + id: name + entity_type: null + entity_field: name + plugin_id: field + relationship: none + group_type: group + admin_label: '' + label: Name + 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: { } + 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 + filters: + status: + value: '1' + table: oc_case_provision_field_data + field: status + plugin_id: boolean + entity_type: oc_case_provision + entity_field: status + id: status + expose: + operator: '' + operator_limit_selection: false + operator_list: { } + group: 1 + sorts: { } + title: 'Case provision report' + header: { } + footer: { } + empty: { } + relationships: { } + arguments: { } + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url.query_args + tags: { } + page_1: + display_plugin: page + id: page_1 + display_title: Page + position: 1 + display_options: + display_extenders: { } + path: case-provision-report + cache_metadata: + max-age: -1 + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url.query_args + tags: { } diff --git a/config/views.view.client_report.yml b/config/views.view.client_report.yml index c5d1190..4365e2e 100644 --- a/config/views.view.client_report.yml +++ b/config/views.view.client_report.yml @@ -12,10 +12,14 @@ dependencies: - field.storage.oc_organisation.field_type_of_umbrella_client - field.storage.oc_organisation.field_umbrella_client - opencase_entities.oc_organisation_type.client + - taxonomy.vocabulary.clie + - taxonomy.vocabulary.tags module: + - better_exposed_filters - datetime - opencase_entities - options + - taxonomy id: client_report label: 'Client Report' module: views @@ -45,15 +49,57 @@ display: query_comment: '' query_tags: { } exposed_form: - type: basic + type: bef options: submit_button: Apply - reset_button: false + reset_button: true reset_button_label: Reset exposed_sorts_label: 'Sort by' expose_sort_order: true sort_asc_label: Asc sort_desc_label: Desc + text_input_required: 'Select any filter and click on Apply to see results' + text_input_required_format: full_html + bef: + general: + autosubmit: false + autosubmit_exclude_textfield: true + autosubmit_textfield_delay: 500 + autosubmit_hide: false + input_required: false + allow_secondary: false + secondary_label: 'Advanced options' + secondary_open: false + filter: + field_client_status_target_id: + plugin_id: default + advanced: + sort_options: false + rewrite: + filter_rewrite_values: '' + collapsible: false + is_secondary: false + field_tags_target_id: + plugin_id: default + advanced: + sort_options: false + rewrite: + filter_rewrite_values: '' + collapsible: false + is_secondary: false + field_type_of_umbrella_client_value: + plugin_id: default + advanced: + sort_options: false + rewrite: + filter_rewrite_values: '' + collapsible: false + is_secondary: false + field_accreditation_date_value: + plugin_id: bef_datepicker + advanced: + collapsible: false + is_secondary: false pager: type: full options: @@ -198,7 +244,7 @@ display: click_sort_column: value type: string settings: - link_to_entity: false + link_to_entity: true group_column: value group_columns: { } group_rows: true @@ -327,7 +373,7 @@ display: click_sort_column: target_id type: entity_reference_label settings: - link: true + link: false group_column: target_id group_columns: { } group_rows: true @@ -390,7 +436,7 @@ display: click_sort_column: target_id type: entity_reference_label settings: - link: true + link: false group_column: target_id group_columns: { } group_rows: true @@ -516,7 +562,7 @@ display: click_sort_column: target_id type: entity_reference_label settings: - link: true + link: false group_column: target_id group_columns: { } group_rows: true @@ -579,7 +625,7 @@ display: click_sort_column: target_id type: entity_reference_label settings: - link: true + link: false group_column: target_id group_columns: { } group_rows: true @@ -742,11 +788,218 @@ display: expose: operator_limit_selection: false operator_list: { } + group: 1 + field_client_status_target_id: + id: field_client_status_target_id + table: oc_organisation__field_client_status + field: field_client_status_target_id + relationship: none + group_type: group + admin_label: '' + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: field_client_status_target_id_op + label: 'Client status' + description: '' + use_operator: false + operator: field_client_status_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: field_client_status_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + gno_admin_user: '0' + follow_up_alerts: '0' + newly_accredited_alerts: '0' + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + type: select + limit: true + vid: clie + hierarchy: false + error_message: true + plugin_id: taxonomy_index_tid + field_tags_target_id: + id: field_tags_target_id + table: oc_organisation__field_tags + field: field_tags_target_id + relationship: none + group_type: group + admin_label: '' + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: field_tags_target_id_op + label: Tags + description: '' + use_operator: false + operator: field_tags_target_id_op + operator_limit_selection: false + operator_list: { } + identifier: field_tags_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + gno_admin_user: '0' + follow_up_alerts: '0' + newly_accredited_alerts: '0' + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + type: select + limit: true + vid: tags + hierarchy: false + error_message: true + plugin_id: taxonomy_index_tid + field_type_of_umbrella_client_value: + id: field_type_of_umbrella_client_value + table: oc_organisation__field_type_of_umbrella_client + field: field_type_of_umbrella_client_value + relationship: field_umbrella_client + group_type: group + admin_label: '' + operator: or + value: { } + group: 1 + exposed: true + expose: + operator_id: field_type_of_umbrella_client_value_op + label: 'Umbrella client type' + description: '' + use_operator: false + operator: field_type_of_umbrella_client_value_op + operator_limit_selection: false + operator_list: { } + identifier: field_type_of_umbrella_client_value + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + gno_admin_user: '0' + follow_up_alerts: '0' + newly_accredited_alerts: '0' + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + reduce_duplicates: false + plugin_id: list_field + field_accreditation_date_value: + id: field_accreditation_date_value + table: oc_organisation__field_accreditation_date + field: field_accreditation_date_value + relationship: none + group_type: group + admin_label: '' + operator: between + value: + min: '' + max: '' + value: '' + type: date + group: 1 + exposed: true + expose: + operator_id: field_accreditation_date_value_op + label: 'Accreditation date between' + description: '' + use_operator: false + operator: field_accreditation_date_value_op + operator_limit_selection: false + operator_list: { } + identifier: field_accreditation_date_value + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + gno_admin_user: '0' + follow_up_alerts: '0' + newly_accredited_alerts: '0' + placeholder: '' + min_placeholder: '' + max_placeholder: '' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + plugin_id: datetime sorts: { } title: 'Client Report' header: { } footer: { } - empty: { } + empty: + area_text_custom: + id: area_text_custom + table: views + field: area_text_custom + relationship: none + group_type: group + admin_label: '' + empty: true + tokenize: false + content: 'None found' + plugin_id: text_custom relationships: field_umbrella_client: id: field_umbrella_client @@ -759,12 +1012,18 @@ display: plugin_id: standard arguments: { } display_extenders: { } + filter_groups: + operator: AND + groups: + 1: AND cache_metadata: max-age: -1 contexts: - 'languages:language_content' - 'languages:language_interface' + - url - url.query_args + - user tags: - 'config:field.storage.oc_organisation.field_accreditation_date' - 'config:field.storage.oc_organisation.field_client_status' @@ -782,12 +1041,15 @@ display: display_options: display_extenders: { } path: client-report + exposed_block: true cache_metadata: max-age: -1 contexts: - 'languages:language_content' - 'languages:language_interface' + - url - url.query_args + - user tags: - 'config:field.storage.oc_organisation.field_accreditation_date' - 'config:field.storage.oc_organisation.field_client_status'