From 1b7faa1a9c3f4366af8bc53a5565488280b4d472 Mon Sep 17 00:00:00 2001 From: Alex Arnaud Date: Wed, 17 Oct 2018 13:48:25 +0000 Subject: [PATCH] Bug 20388: Prevent user from using a search field for a mapping after removing it MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Test plan: - add a search field, - save, - remove this search field - check that it has been removed from the mapping lists (bottom select). Signed-off-by: Björn Nylén Signed-off-by: Julian Maurice Signed-off-by: Michal Denar --- .../en/modules/admin/searchengine/elasticsearch/mappings.tt | 10 ++++++++++ 1 file changed, 10 insertions(+) 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 52753a3..27b8f60 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 @@ -35,6 +35,16 @@ } else { $(this).parents('tr').remove(); var line = $(this).closest("tr"); + + // We clicked delete button on search fields tab. + if (name = $(line).find('input[name="search_field_name"]').val()) { + // Prevent user from using a search field for a mapping + // after removing it without saving. + $('select[data-id="mapping_search_field_name"]').each(function( index, element) { + $(element).find('option[value="' + name + '"]').remove(); + }); + } + var search_field_name = $(line).find('input[name="mapping_search_field_name"]').val(); var mappings = $('input[name="mapping_search_field_name"][type="hidden"][value="' + search_field_name + '"]'); if (mappings.length == 0) { -- 2.7.4