From 5261176e41f3a940e784b950579426a6ca577e5c Mon Sep 17 00:00:00 2001 From: Rosie Le Faive Date: Wed, 13 Mar 2024 10:24:44 -0300 Subject: [PATCH] Add separate Publisher field. --- ..._display.node.islandora_object.default.yml | 61 ++++---- ..._display.node.islandora_object.default.yml | 19 ++- ...lay.node.islandora_object.search_index.yml | 2 + ...ay.node.islandora_object.search_result.yml | 2 + ...w_display.node.islandora_object.teaser.yml | 16 ++- ...de.islandora_object.field_linked_agent.yml | 2 +- ....node.islandora_object.field_publisher.yml | 19 +++ .../field.storage.node.field_publisher.yml | 25 ++++ .../rdf.mapping.node.islandora_object.yml | 3 + .../search_api.index.default_solr_index.yml | 17 +++ config/sync/views.view.oai_pmh_item_data.yml | 73 ++++++++++ .../sync/views.view.solr_search_content.yml | 131 +++++++++++++++++- .../sync/views.view.top_level_collections.yml | 2 +- 13 files changed, 333 insertions(+), 39 deletions(-) create mode 100644 config/sync/field.field.node.islandora_object.field_publisher.yml create mode 100644 config/sync/field.storage.node.field_publisher.yml diff --git a/config/sync/core.entity_form_display.node.islandora_object.default.yml b/config/sync/core.entity_form_display.node.islandora_object.default.yml index c0c356ec9..366ba5464 100644 --- a/config/sync/core.entity_form_display.node.islandora_object.default.yml +++ b/config/sync/core.entity_form_display.node.islandora_object.default.yml @@ -38,6 +38,7 @@ dependencies: - field.field.node.islandora_object.field_pid - field.field.node.islandora_object.field_place_published - field.field.node.islandora_object.field_place_published_country + - field.field.node.islandora_object.field_publisher - field.field.node.islandora_object.field_resource_type - field.field.node.islandora_object.field_rights - field.field.node.islandora_object.field_subject @@ -100,6 +101,7 @@ third_party_settings: required_fields: true group_publication_details: children: + - field_publisher - field_place_published - field_place_published_country - field_edtf_date_issued @@ -210,7 +212,7 @@ third_party_settings: label: Issuance region: content parent_name: group_publication_details - weight: 11 + weight: 16 format_type: details format_settings: classes: '' @@ -332,7 +334,7 @@ content: third_party_settings: { } field_coordinates_text: type: string_textfield - weight: 24 + weight: 25 region: content settings: size: 60 @@ -340,7 +342,7 @@ content: third_party_settings: { } field_copyright_date: type: edtf_default - weight: 8 + weight: 13 region: content settings: strict_dates: false @@ -392,7 +394,7 @@ content: third_party_settings: { } field_edition: type: string_textfield - weight: 10 + weight: 15 region: content settings: size: 60 @@ -400,7 +402,7 @@ content: third_party_settings: { } field_edtf_date: type: edtf_default - weight: 9 + weight: 14 region: content settings: strict_dates: false @@ -409,7 +411,7 @@ content: third_party_settings: { } field_edtf_date_created: type: edtf_default - weight: 7 + weight: 12 region: content settings: strict_dates: false @@ -418,7 +420,7 @@ content: third_party_settings: { } field_edtf_date_issued: type: edtf_default - weight: 6 + weight: 11 region: content settings: strict_dates: false @@ -427,7 +429,7 @@ content: third_party_settings: { } field_extent: type: string_textfield - weight: 11 + weight: 12 region: content settings: size: 60 @@ -463,7 +465,7 @@ content: third_party_settings: { } field_geographic_subject: type: entity_reference_autocomplete - weight: 13 + weight: 14 region: content settings: match_operator: CONTAINS @@ -473,7 +475,7 @@ content: third_party_settings: { } field_identifier: type: string_textfield - weight: 18 + weight: 16 region: content settings: size: 60 @@ -481,7 +483,7 @@ content: third_party_settings: { } field_isbn: type: string_textfield - weight: 19 + weight: 17 region: content settings: size: 60 @@ -517,7 +519,7 @@ content: third_party_settings: { } field_local_identifier: type: string_textfield - weight: 21 + weight: 19 region: content settings: size: 60 @@ -559,7 +561,7 @@ content: third_party_settings: { } field_oclc_number: type: string_textfield - weight: 20 + weight: 18 region: content settings: size: 60 @@ -567,7 +569,7 @@ content: third_party_settings: { } field_physical_form: type: entity_reference_autocomplete - weight: 10 + weight: 11 region: content settings: match_operator: CONTAINS @@ -577,7 +579,7 @@ content: third_party_settings: { } field_pid: type: string_textfield - weight: 23 + weight: 20 region: content settings: size: 60 @@ -585,7 +587,7 @@ content: third_party_settings: { } field_place_published: type: string_textfield - weight: 4 + weight: 9 region: content settings: size: 60 @@ -593,7 +595,7 @@ content: third_party_settings: { } field_place_published_country: type: entity_reference_autocomplete - weight: 5 + weight: 10 region: content settings: match_operator: CONTAINS @@ -601,6 +603,14 @@ content: size: 60 placeholder: '' third_party_settings: { } + field_publisher: + type: string_textfield + weight: 8 + region: content + settings: + size: 60 + placeholder: '' + third_party_settings: { } field_resource_type: type: options_select weight: 9 @@ -609,7 +619,7 @@ content: third_party_settings: { } field_rights: type: text_textarea - weight: 12 + weight: 16 region: content settings: rows: 5 @@ -617,7 +627,7 @@ content: third_party_settings: { } field_subject: type: entity_reference_autocomplete - weight: 10 + weight: 11 region: content settings: match_operator: CONTAINS @@ -637,7 +647,7 @@ content: third_party_settings: { } field_subjects_name: type: entity_reference_autocomplete - weight: 11 + weight: 12 region: content settings: match_operator: CONTAINS @@ -655,7 +665,7 @@ content: third_party_settings: { } field_temporal_subject: type: entity_reference_autocomplete - weight: 12 + weight: 13 region: content settings: match_operator: CONTAINS @@ -665,20 +675,20 @@ content: third_party_settings: { } field_viewer_override: type: options_select - weight: 16 + weight: 17 region: content settings: { } third_party_settings: { } field_weight: type: number - weight: 15 + weight: 16 region: content settings: placeholder: '' third_party_settings: { } langcode: type: language_select - weight: 17 + weight: 18 region: content settings: include_locked: true @@ -719,7 +729,7 @@ content: placeholder: '' third_party_settings: { } translation: - weight: 18 + weight: 19 region: content settings: { } third_party_settings: { } @@ -734,4 +744,3 @@ content: placeholder: '' third_party_settings: { } hidden: { } - diff --git a/config/sync/core.entity_view_display.node.islandora_object.default.yml b/config/sync/core.entity_view_display.node.islandora_object.default.yml index 74e0ec5f8..29b14981b 100644 --- a/config/sync/core.entity_view_display.node.islandora_object.default.yml +++ b/config/sync/core.entity_view_display.node.islandora_object.default.yml @@ -38,6 +38,7 @@ dependencies: - field.field.node.islandora_object.field_pid - field.field.node.islandora_object.field_place_published - field.field.node.islandora_object.field_place_published_country + - field.field.node.islandora_object.field_publisher - field.field.node.islandora_object.field_resource_type - field.field.node.islandora_object.field_rights - field.field.node.islandora_object.field_subject @@ -93,7 +94,7 @@ content: settings: link_to_entity: false third_party_settings: { } - weight: 3 + weight: 2 region: content field_classification: type: string @@ -251,7 +252,7 @@ content: field_gemini_uri: settings: { } third_party_settings: { } - weight: 41 + weight: 40 region: content field_genre: type: entity_reference_label @@ -307,7 +308,7 @@ content: settings: link: true third_party_settings: { } - weight: 4 + weight: 3 region: content field_local_identifier: type: string @@ -323,7 +324,7 @@ content: settings: link: true third_party_settings: { } - weight: 2 + weight: 1 region: content field_mode_of_issuance: type: entity_reference_label @@ -364,6 +365,14 @@ content: third_party_settings: { } weight: 5 region: content + field_publisher: + type: string + label: inline + settings: + link_to_entity: false + third_party_settings: { } + weight: 4 + region: content field_resource_type: type: entity_reference_label label: inline @@ -377,7 +386,7 @@ content: label: above settings: { } third_party_settings: { } - weight: 44 + weight: 41 region: content field_subject: type: entity_reference_label diff --git a/config/sync/core.entity_view_display.node.islandora_object.search_index.yml b/config/sync/core.entity_view_display.node.islandora_object.search_index.yml index 8794728a2..ab924d4ff 100644 --- a/config/sync/core.entity_view_display.node.islandora_object.search_index.yml +++ b/config/sync/core.entity_view_display.node.islandora_object.search_index.yml @@ -39,6 +39,7 @@ dependencies: - field.field.node.islandora_object.field_pid - field.field.node.islandora_object.field_place_published - field.field.node.islandora_object.field_place_published_country + - field.field.node.islandora_object.field_publisher - field.field.node.islandora_object.field_resource_type - field.field.node.islandora_object.field_rights - field.field.node.islandora_object.field_subject @@ -431,6 +432,7 @@ hidden: field_model: true field_pid: true field_place_published_country: true + field_publisher: true field_viewer_override: true field_weight: true islandora_fits_checksum: true diff --git a/config/sync/core.entity_view_display.node.islandora_object.search_result.yml b/config/sync/core.entity_view_display.node.islandora_object.search_result.yml index 6581de897..86e480037 100644 --- a/config/sync/core.entity_view_display.node.islandora_object.search_result.yml +++ b/config/sync/core.entity_view_display.node.islandora_object.search_result.yml @@ -39,6 +39,7 @@ dependencies: - field.field.node.islandora_object.field_pid - field.field.node.islandora_object.field_place_published - field.field.node.islandora_object.field_place_published_country + - field.field.node.islandora_object.field_publisher - field.field.node.islandora_object.field_resource_type - field.field.node.islandora_object.field_rights - field.field.node.islandora_object.field_subject @@ -196,6 +197,7 @@ hidden: field_pid: true field_place_published: true field_place_published_country: true + field_publisher: true field_rights: true field_subject: true field_subject_general: true diff --git a/config/sync/core.entity_view_display.node.islandora_object.teaser.yml b/config/sync/core.entity_view_display.node.islandora_object.teaser.yml index 578b8799c..ba363f7df 100644 --- a/config/sync/core.entity_view_display.node.islandora_object.teaser.yml +++ b/config/sync/core.entity_view_display.node.islandora_object.teaser.yml @@ -39,6 +39,7 @@ dependencies: - field.field.node.islandora_object.field_pid - field.field.node.islandora_object.field_place_published - field.field.node.islandora_object.field_place_published_country + - field.field.node.islandora_object.field_publisher - field.field.node.islandora_object.field_resource_type - field.field.node.islandora_object.field_rights - field.field.node.islandora_object.field_subject @@ -71,6 +72,7 @@ content: settings: prefix: '' suffix: '' + strict: false third_party_settings: { } weight: 5 region: content @@ -87,7 +89,7 @@ content: settings: link: true third_party_settings: { } - weight: 3 + weight: 2 region: content field_member_of: type: entity_reference_label @@ -103,7 +105,15 @@ content: settings: link: false third_party_settings: { } - weight: 1 + weight: 0 + region: content + field_publisher: + type: string + label: inline + settings: + link_to_entity: false + third_party_settings: { } + weight: 3 region: content islandora_fits_checksum: settings: { } @@ -113,7 +123,7 @@ content: links: settings: { } third_party_settings: { } - weight: 2 + weight: 1 region: content hidden: did_image: true diff --git a/config/sync/field.field.node.islandora_object.field_linked_agent.yml b/config/sync/field.field.node.islandora_object.field_linked_agent.yml index 808729c84..cc58b8aad 100644 --- a/config/sync/field.field.node.islandora_object.field_linked_agent.yml +++ b/config/sync/field.field.node.islandora_object.field_linked_agent.yml @@ -17,7 +17,7 @@ field_name: field_linked_agent entity_type: node bundle: islandora_object label: Contributors -description: "Names of entities having some relationship to the resource, and, optionally, the relationship to the resource. If a relationship is not specified, it will be recorded as Attributed Name in the system's linked data representation.
\r\nPublisher/manufacturer/distributor/etc. name is recorded here, with the appropriate relationship specified.
\r\nThis field does not allow creating names of entities on the fly. First create a person, family, or corporate body, then link it here." +description: "Names of entities having some relationship to the resource, and, optionally, the relationship to the resource. If a relationship is not specified, it will be recorded as Attributed Name in the system's linked data representation.
\r\nPublisher/manufacturer/distributor/etc. name is recorded here, with the appropriate relationship specified.
\r\nThis field does not allow creating names of entities on the fly. First create a person, family, or corporate body, then link it here.
\r\nPublisher can be recorded here (as a taxonomy term) or in the separate Publisher field (as text) which can be found under \"Publication Details and Dates\". " required: false translatable: false default_value: { } diff --git a/config/sync/field.field.node.islandora_object.field_publisher.yml b/config/sync/field.field.node.islandora_object.field_publisher.yml new file mode 100644 index 000000000..8caca6400 --- /dev/null +++ b/config/sync/field.field.node.islandora_object.field_publisher.yml @@ -0,0 +1,19 @@ +uuid: 87230469-f1b2-4377-bf6a-7b6cd18677a5 +langcode: en +status: true +dependencies: + config: + - field.storage.node.field_publisher + - node.type.islandora_object +id: node.islandora_object.field_publisher +field_name: field_publisher +entity_type: node +bundle: islandora_object +label: Publisher +description: '' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: string diff --git a/config/sync/field.storage.node.field_publisher.yml b/config/sync/field.storage.node.field_publisher.yml new file mode 100644 index 000000000..76531942b --- /dev/null +++ b/config/sync/field.storage.node.field_publisher.yml @@ -0,0 +1,25 @@ +uuid: cdf92129-9450-418c-bc9e-17b86007056e +langcode: en +status: true +dependencies: + module: + - field_permissions + - node +third_party_settings: + field_permissions: + permission_type: public +id: node.field_publisher +field_name: field_publisher +entity_type: node +type: string +settings: + max_length: 500 + case_sensitive: false + is_ascii: false +module: core +locked: false +cardinality: -1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/rdf.mapping.node.islandora_object.yml b/config/sync/rdf.mapping.node.islandora_object.yml index bebae780a..dd7a1630a 100644 --- a/config/sync/rdf.mapping.node.islandora_object.yml +++ b/config/sync/rdf.mapping.node.islandora_object.yml @@ -77,6 +77,9 @@ fieldMappings: properties: - 'pcdm:memberOf' mapping_type: rel + field_publisher: + properties: + - 'dc11:publisher' field_resource_type: properties: - 'dcterms:type' diff --git a/config/sync/search_api.index.default_solr_index.yml b/config/sync/search_api.index.default_solr_index.yml index 81a18426e..057a1c498 100644 --- a/config/sync/search_api.index.default_solr_index.yml +++ b/config/sync/search_api.index.default_solr_index.yml @@ -17,6 +17,7 @@ dependencies: - field.storage.node.field_linked_agent - field.storage.node.field_oclc_number - field.storage.node.field_physical_form + - field.storage.node.field_publisher - field.storage.node.field_resource_type - field.storage.node.field_rights - field.storage.node.field_subject_general @@ -226,6 +227,22 @@ field_settings: - field.storage.node.field_physical_form module: - taxonomy + field_publisher: + label: Publisher + datasource_id: 'entity:node' + property_path: field_publisher + type: string + dependencies: + config: + - field.storage.node.field_publisher + field_publisher_fulltext: + label: Publisher_fulltext + datasource_id: 'entity:node' + property_path: field_publisher + type: text + dependencies: + config: + - field.storage.node.field_publisher field_resource_type: label: 'Resource Type' datasource_id: 'entity:node' diff --git a/config/sync/views.view.oai_pmh_item_data.yml b/config/sync/views.view.oai_pmh_item_data.yml index 3e8feb031..3058312b3 100644 --- a/config/sync/views.view.oai_pmh_item_data.yml +++ b/config/sync/views.view.oai_pmh_item_data.yml @@ -12,6 +12,7 @@ dependencies: - field.storage.node.field_linked_agent - field.storage.node.field_local_identifier - field.storage.node.field_place_published + - field.storage.node.field_publisher - field.storage.node.field_resource_type - field.storage.node.field_rights - field.storage.node.field_subject_general @@ -1491,6 +1492,76 @@ display: use_highlighting: false multi_type: separator multi_separator: ', ' + field_publisher: + id: field_publisher + table: search_api_index_default_solr_index + field: field_publisher + relationship: none + group_type: group + admin_label: '' + plugin_id: search_api_field + label: publisher + 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: false + 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: false + 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 + field_rendering: false + fallback_handler: search_api + fallback_options: + link_to_item: false + use_highlighting: false + multi_type: separator + multi_separator: ', ' pager: type: mini options: @@ -1632,6 +1703,7 @@ display: - 'config:field.storage.node.field_linked_agent' - 'config:field.storage.node.field_local_identifier' - 'config:field.storage.node.field_place_published' + - 'config:field.storage.node.field_publisher' - 'config:field.storage.node.field_resource_type' - 'config:field.storage.node.field_rights' - 'config:field.storage.node.field_subject_general' @@ -1675,6 +1747,7 @@ display: - 'config:field.storage.node.field_linked_agent' - 'config:field.storage.node.field_local_identifier' - 'config:field.storage.node.field_place_published' + - 'config:field.storage.node.field_publisher' - 'config:field.storage.node.field_resource_type' - 'config:field.storage.node.field_rights' - 'config:field.storage.node.field_subject_general' diff --git a/config/sync/views.view.solr_search_content.yml b/config/sync/views.view.solr_search_content.yml index 0c95d0f96..cec935efd 100644 --- a/config/sync/views.view.solr_search_content.yml +++ b/config/sync/views.view.solr_search_content.yml @@ -4,9 +4,11 @@ status: true dependencies: config: - field.storage.node.field_description + - field.storage.node.field_publisher - field.storage.node.field_resource_type - search_api.index.default_solr_index module: + - advanced_search - dgi_image_discovery - media - search_api @@ -142,7 +144,7 @@ display: element_label_class: '' element_label_colon: false element_wrapper_type: '' - element_wrapper_class: '' + element_wrapper_class: align-right element_default_classes: true empty: '' hide_empty: false @@ -242,6 +244,56 @@ display: use_highlighting: false multi_type: separator multi_separator: ', ' + display_methods: + corporate_body: + display_method: label + view_mode: default + country: + display_method: label + view_mode: default + family: + display_method: label + view_mode: default + frequencies: + display_method: label + view_mode: default + genre: + display_method: label + view_mode: default + geo_location: + display_method: label + view_mode: default + islandora_display: + display_method: label + islandora_media_use: + display_method: label + view_mode: default + islandora_models: + display_method: label + view_mode: default + issuance_modes: + display_method: label + view_mode: default + language: + display_method: label + view_mode: default + person: + display_method: label + view_mode: default + physical_form: + display_method: label + view_mode: default + resource_types: + display_method: label + view_mode: default + subject: + display_method: label + view_mode: default + tags: + display_method: label + temporal_subjects: + display_method: label + view_mode: default edtf_year: id: edtf_year table: search_api_index_default_solr_index @@ -382,7 +434,7 @@ display: group_type: group admin_label: '' plugin_id: search_api_field - label: Names + label: Contributors exclude: false alter: alter_text: false @@ -444,6 +496,76 @@ display: use_highlighting: true multi_type: separator multi_separator: ', ' + field_publisher: + id: field_publisher + table: search_api_index_default_solr_index + field: field_publisher + relationship: none + group_type: group + admin_label: '' + plugin_id: search_api_field + label: Publisher + 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: field__item + element_label_type: '' + element_label_class: field__label + 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: false + 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 + field_rendering: false + fallback_handler: search_api + fallback_options: + link_to_item: false + use_highlighting: false + multi_type: separator + multi_separator: ', ' field_description: id: field_description table: search_api_index_default_solr_index @@ -766,7 +888,7 @@ display: default_field_elements: true inline: { } separator: '' - hide_empty: false + hide_empty: true query: type: search_api_query options: { } @@ -796,6 +918,7 @@ display: - 'user.node_grants:view' tags: - 'config:field.storage.node.field_description' + - 'config:field.storage.node.field_publisher' - 'config:field.storage.node.field_resource_type' - 'config:search_api.index.default_solr_index' - 'search_api_list:default_solr_index' @@ -897,6 +1020,7 @@ display: - 'user.node_grants:view' tags: - 'config:field.storage.node.field_description' + - 'config:field.storage.node.field_publisher' - 'config:field.storage.node.field_resource_type' - 'config:search_api.index.default_solr_index' - 'search_api_list:default_solr_index' @@ -996,6 +1120,7 @@ display: - 'user.node_grants:view' tags: - 'config:field.storage.node.field_description' + - 'config:field.storage.node.field_publisher' - 'config:field.storage.node.field_resource_type' - 'config:search_api.index.default_solr_index' - 'search_api_list:default_solr_index' diff --git a/config/sync/views.view.top_level_collections.yml b/config/sync/views.view.top_level_collections.yml index 8538bfb1c..c47d0a355 100644 --- a/config/sync/views.view.top_level_collections.yml +++ b/config/sync/views.view.top_level_collections.yml @@ -453,4 +453,4 @@ display: - url.query_args - 'user.node_grants:view' - user.permissions - tags: { } \ No newline at end of file + tags: { }