From 4f900e36c1b0b914554b8bc30b3bf2b128806fb9 Mon Sep 17 00:00:00 2001 From: Bruno Da Silva Date: Tue, 22 May 2018 16:03:38 +0000 Subject: [PATCH] Advanced search: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - deduplicate pre-existing criterion N°1454 - search's 'breadcrumb' and 'history.replaceState' now preserve the org_id parameter SVN:trunk[5808] --- js/search/search_form_handler.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/js/search/search_form_handler.js b/js/search/search_form_handler.js index dac06a8ba1..b5d977f3c5 100644 --- a/js/search/search_form_handler.js +++ b/js/search/search_form_handler.js @@ -194,7 +194,8 @@ $(function() var sNewUrl = GetAbsoluteUrlAppRoot()+'pages/UI.php?operation=search'; sNewUrl = sNewUrl + '&filter='+oData['filter']; - sNewUrl = sNewUrl + '&c[menu]='+me._extractURLParameter(window.location.href, "c[menu]"); + sNewUrl = sNewUrl + '&c[menu]='+me._extractURLParameter(window.location.href, "c[menu]"); + sNewUrl = sNewUrl + '&c[org_id]='+me._extractURLParameter(window.location.href, "c[org_id]"); if ('' != me._extractURLParameter(window.location.href, "debug")) { sNewUrl = sNewUrl + '&debug='+me._extractURLParameter(window.location.href, "debug"); @@ -687,10 +688,20 @@ $(function() } var aANDs = (aORs[iORIdx]['and'] !== undefined) ? aORs[iORIdx]['and'] : []; + var aANDsStringified = [];//used in order to deduplicate the crterions + + for(var iANDIdx in aANDs) { var oCriteriaData = aANDs[iANDIdx]; - this._addCriteria(oCriteriaData, oCriterionGroupElem); + + var sCriteriaData = JSON.stringify(oCriteriaData); + + if (aANDsStringified.indexOf(sCriteriaData) == -1) + { + aANDsStringified.push(sCriteriaData); + this._addCriteria(oCriteriaData, oCriterionGroupElem); + } } iORCount++;