Bug 20589: Add field boosting and use query_string fields parameter
authorDavid Gustafsson <david.gustafsson@ub.gu.se>
Fri, 13 Apr 2018 13:46:55 +0000 (15:46 +0200)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Wed, 2 Oct 2019 12:28:57 +0000 (13:28 +0100)
commit91947546f7d1baae3e8f5bf297dda3240a968cde
tree0a3af73065d05b3fa08ab6a1bcfd2d1a86f28ed6
parent6c92612c15b3a62356d09c5719a245e52097afbb
Bug 20589: Add field boosting and use query_string fields parameter

Generate a list of fields for the query_string query fields parameter,
with possible boosts, instead of using "_all"-field. Also add "search"
flag in search_marc_to_field table so that certain mappings can be
excluded from searches. Add option to include/exclude fields in
query_string "fields" parameter depending on searching in OPAC or staff
client. Refactor code to remove all other dependencies on "_all"-field.

How to test:
1) Reindex authorities and biblios.
2) Search biblios and try to verify that this works as expected.
3) Search authorities and try to verify that this works as expected.
4) Go to "Search engine configuration"
5) Change some "Boost", "Staff client", and "OPAC" settings and save.
6) Verify that those settings where saved accordingly.
7) Click the "Biblios" or "Authorities" tab and change one or more
   "Searchable" settings
8) Verfiy that those settings where saved accordingly.
9) Try to verify that these settings has taken effect by peforming
   some biblios and/or authorities searches.

Sponsorded-by: Gothenburg Univesity Library
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Koha/SearchEngine/Elasticsearch.pm
Koha/SearchEngine/Elasticsearch/QueryBuilder.pm
Koha/SearchField.pm
Koha/SearchFields.pm
admin/searchengine/elasticsearch/field_config.yaml
admin/searchengine/elasticsearch/index_config.yaml
admin/searchengine/elasticsearch/mappings.pl
catalogue/search.pl
koha-tmpl/intranet-tmpl/prog/en/modules/admin/searchengine/elasticsearch/mappings.tt
opac/opac-search.pl
t/db_dependent/Koha/SearchEngine/Elasticsearch/QueryBuilder.t