Bugzilla – Attachment 163976 Details for
Bug 36437
Add publication year facet to Elasticsearch
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
0001-Bug-36437-Add-publication-year-facet-to-Elasticsearc.patch
0001-Bug-36437-Add-publication-year-facet-to-Elasticsearc.patch (text/plain), 10.70 KB, created by
Michał
on 2024-03-27 08:03:28 UTC
(
hide
)
Description:
0001-Bug-36437-Add-publication-year-facet-to-Elasticsearc.patch
Filename:
MIME Type:
Creator:
Michał
Created:
2024-03-27 08:03:28 UTC
Size:
10.70 KB
patch
obsolete
>From a9ae44f2adff90c234f3b65e439c04c5da4f8dfa Mon Sep 17 00:00:00 2001 >From: MichaÅ Kula <148193449+mkibp@users.noreply.github.com> >Date: Wed, 27 Mar 2024 09:00:43 +0100 >Subject: [PATCH] Bug 36437: Add publication year facet to Elasticsearch > >--- > Koha/SearchEngine/Elasticsearch.pm | 2 +- > .../Elasticsearch/QueryBuilder.pm | 17 ++++++++------- > Koha/SearchEngine/Elasticsearch/Search.pm | 21 ++++++++++--------- > .../searchengine/elasticsearch/mappings.yaml | 21 ++++++++++--------- > .../intranet-tmpl/prog/en/includes/facets.inc | 3 +++ > .../searchengine/elasticsearch/mappings.tt | 3 ++- > .../bootstrap/en/includes/opac-facets.inc | 2 ++ > 7 files changed, 39 insertions(+), 30 deletions(-) > >diff --git a/Koha/SearchEngine/Elasticsearch.pm b/Koha/SearchEngine/Elasticsearch.pm >index 3f26cbc027..b905f7726f 100644 >--- a/Koha/SearchEngine/Elasticsearch.pm >+++ b/Koha/SearchEngine/Elasticsearch.pm >@@ -1404,7 +1404,7 @@ sub get_facetable_fields { > > # These should correspond to the ES field names, as opposed to the CCL > # things that zebra uses. >- my @search_field_names = qw( author itype location su-geo title-series subject ccode holdingbranch homebranch ln ); >+ my @search_field_names = qw( author itype location su-geo title-series subject ccode holdingbranch homebranch ln date-of-publication ); > my @faceted_fields = Koha::SearchFields->search( > { name => { -in => \@search_field_names }, facet_order => { '!=' => undef } }, { order_by => ['facet_order'] } > )->as_list; >diff --git a/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm b/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm >index 35ab4b7f91..758c8409ec 100644 >--- a/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm >+++ b/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm >@@ -226,14 +226,15 @@ sub build_query { > # things that Koha can use. > my $size = C4::Context->preference('FacetMaxCount'); > $res->{aggregations} = { >- author => { terms => { field => "author__facet" , size => $size } }, >- subject => { terms => { field => "subject__facet", size => $size } }, >- itype => { terms => { field => "itype__facet", size => $size} }, >- location => { terms => { field => "location__facet", size => $size } }, >- 'su-geo' => { terms => { field => "su-geo__facet", size => $size} }, >- 'title-series' => { terms => { field => "title-series__facet", size => $size } }, >- ccode => { terms => { field => "ccode__facet", size => $size } }, >- ln => { terms => { field => "ln__facet", size => $size } }, >+ author => { terms => { field => "author__facet" , size => $size } }, >+ subject => { terms => { field => "subject__facet", size => $size } }, >+ itype => { terms => { field => "itype__facet", size => $size} }, >+ location => { terms => { field => "location__facet", size => $size } }, >+ 'su-geo' => { terms => { field => "su-geo__facet", size => $size} }, >+ 'title-series' => { terms => { field => "title-series__facet", size => $size } }, >+ ccode => { terms => { field => "ccode__facet", size => $size } }, >+ ln => { terms => { field => "ln__facet", size => $size } }, >+ 'date-of-publication' => { terms => { field => "date-of-publication__facet", size => $size } }, > }; > > my $display_library_facets = C4::Context->preference('DisplayLibraryFacets'); >diff --git a/Koha/SearchEngine/Elasticsearch/Search.pm b/Koha/SearchEngine/Elasticsearch/Search.pm >index 933b52f79d..4c1d73a9b1 100644 >--- a/Koha/SearchEngine/Elasticsearch/Search.pm >+++ b/Koha/SearchEngine/Elasticsearch/Search.pm >@@ -444,16 +444,17 @@ sub _convert_facets { > # things that zebra uses. > my %type_to_label; > my %label = ( >- author => 'Authors', >- itype => 'ItemTypes', >- location => 'Location', >- 'su-geo' => 'Places', >- 'title-series' => 'Series', >- subject => 'Topics', >- ccode => 'CollectionCodes', >- holdingbranch => 'HoldingLibrary', >- homebranch => 'HomeLibrary', >- ln => 'Language', >+ author => 'Authors', >+ itype => 'ItemTypes', >+ location => 'Location', >+ 'su-geo' => 'Places', >+ 'title-series' => 'Series', >+ subject => 'Topics', >+ ccode => 'CollectionCodes', >+ holdingbranch => 'HoldingLibrary', >+ homebranch => 'HomeLibrary', >+ ln => 'Language', >+ 'date-of-publication' => 'PubDate', > ); > my @facetable_fields = > Koha::SearchEngine::Elasticsearch->get_facetable_fields; >diff --git a/admin/searchengine/elasticsearch/mappings.yaml b/admin/searchengine/elasticsearch/mappings.yaml >index f9f9a042c5..1e1bca315b 100644 >--- a/admin/searchengine/elasticsearch/mappings.yaml >+++ b/admin/searchengine/elasticsearch/mappings.yaml >@@ -1280,7 +1280,7 @@ biblios: > staff_client: 1 > type: '' > ccode: >- facet_order: 7 >+ facet_order: 8 > label: collection-code > mandatory: ~ > mappings: >@@ -1656,15 +1656,16 @@ biblios: > staff_client: 1 > type: date > date-of-publication: >+ facet_order: 3 > label: date-of-publication > mandatory: ~ > mappings: >- - facet: '' >+ - facet: 1 > marc_field: 008_/7-10 > marc_type: marc21 > sort: 1 > suggestible: '' >- - facet: '' >+ - facet: 1 > marc_field: 100a_/9-12 > marc_type: unimarc > sort: 1 >@@ -1856,7 +1857,7 @@ biblios: > staff_client: 1 > type: '' > holdingbranch: >- facet_order: 8 >+ facet_order: 9 > label: holdinglibrary > mandatory: ~ > mappings: >@@ -1874,7 +1875,7 @@ biblios: > staff_client: 1 > type: string > homebranch: >- facet_order: 9 >+ facet_order: 10 > label: homelibrary > mandatory: ~ > mappings: >@@ -2484,7 +2485,7 @@ biblios: > staff_client: 1 > type: '' > ln: >- facet_order: 10 >+ facet_order: 11 > label: ln > mandatory: ~ > mappings: >@@ -2565,7 +2566,7 @@ biblios: > staff_client: 1 > type: number > location: >- facet_order: 3 >+ facet_order: 4 > label: location > mandatory: ~ > mappings: >@@ -3351,7 +3352,7 @@ biblios: > staff_client: 1 > type: '' > su-geo: >- facet_order: 4 >+ facet_order: 5 > label: su-geo > mandatory: ~ > mappings: >@@ -3369,7 +3370,7 @@ biblios: > staff_client: 1 > type: string > subject: >- facet_order: 6 >+ facet_order: 7 > label: subject > mandatory: ~ > mappings: >@@ -4131,7 +4132,7 @@ biblios: > staff_client: 1 > type: '' > title-series: >- facet_order: 5 >+ facet_order: 6 > label: title-series > mandatory: ~ > mappings: >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/facets.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/facets.inc >index 2fcce67e7d..fbbdb52ae8 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/facets.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/facets.inc >@@ -84,6 +84,9 @@ > [% IF facets_loo.type_label_Language %] > <span id="facet-languages">Languages</span> > [% END %] >+ [% IF facets_loo.type_label_PubDate %] >+ <span id="facet-pubdates">Publication years</span> >+ [% END %] > <ul> > [% SET url = "/cgi-bin/koha/catalogue/search.pl?" _ query_cgi _ limit_cgi %] > [% IF ( sort_by ) %] >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/searchengine/elasticsearch/mappings.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/searchengine/elasticsearch/mappings.tt >index 625afa4998..233ea98126 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/searchengine/elasticsearch/mappings.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/searchengine/elasticsearch/mappings.tt >@@ -482,7 +482,8 @@ a.add, a.delete { > [% CASE 'holdingbranch' %]<span>Holding libraries</span> > [% CASE 'homebranch' %]<span>Home libraries</span> > [% CASE 'ln' %]<span>Language</span> >- [% CASE %][% f | html %] >+ [% CASE 'date-of-publication' %]<span>Publication year</span> >+ [% CASE %][% f.name | html %] > [% END %] > </td> > <td> >diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/includes/opac-facets.inc b/koha-tmpl/opac-tmpl/bootstrap/en/includes/opac-facets.inc >index 8a62c4cd93..3b4dbc810f 100644 >--- a/koha-tmpl/opac-tmpl/bootstrap/en/includes/opac-facets.inc >+++ b/koha-tmpl/opac-tmpl/bootstrap/en/includes/opac-facets.inc >@@ -51,6 +51,7 @@ > [% more_less_labels.HomeLibrary = { more = t("Show more home libraries"), less = t("Show fewer home libraries") } %] > [% more_less_labels.HoldingLibrary = { more = t("Show more holding libraries"), less = t("Show fewer holding libraries") } %] > [% more_less_labels.Location = { more = t("Show more locations"), less = t("Show fewer locations") } %] >+ [% more_less_labels.PubDate = { more = t("Show more publication years"), less = t("Show fewer publication years") } %] > [% FOREACH facets_loo IN facets_loop %] > [% IF facets_loo.facets.size > 0 %] > <li id="[% facets_loo.type_id | html %]"> >@@ -62,6 +63,7 @@ > [% IF facets_loo.type_label_ItemTypes %]<h3 id="facet-itemtypes">Item types</h3>[% END %] > [% IF facets_loo.type_label_CollectionCodes %]<h3 id="facet-collections">Collections</h3>[% END %] > [% IF facets_loo.type_label_Language %]<h3 id="facet-languages">Languages</h3>[% END %] >+ [% IF facets_loo.type_label_PubDate %]<h3 id="facet-pubdates">Publication years</h3>[% END %] > [% UNLESS singleBranchMode %] > [% IF ( facets_loo.type_label_HomeLibrary ) %]<h3 id="facet-home-libraries">Home libraries</h3>[% END %] > [% IF ( facets_loo.type_label_HoldingLibrary ) %]<h3 id="facet-holding-libraries">Holding libraries</h3>[% END %] >-- >2.42.0.windows.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 36437
:
163976
|
173716