From 644e4647981f3d0c7a56fa6b6fabadb296ac9ea3 Mon Sep 17 00:00:00 2001 From: Michael Abashian Date: Wed, 11 Jan 2017 10:47:06 -0500 Subject: [PATCH] Handle the injected __search and __icontains so that they don't show up in the search tags. --- .../client/src/shared/smart-search/queryset.service.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/awx/ui/client/src/shared/smart-search/queryset.service.js b/awx/ui/client/src/shared/smart-search/queryset.service.js index 89ad2f14d1..edb1301b9c 100644 --- a/awx/ui/client/src/shared/smart-search/queryset.service.js +++ b/awx/ui/client/src/shared/smart-search/queryset.service.js @@ -68,6 +68,9 @@ export default ['$q', 'Rest', 'ProcessErrors', '$rootScope', 'Wait', 'DjangoSear function encodeTerm(value, key){ + key = key.replace(/__icontains_DEFAULT/g, "__icontains"); + key = key.replace(/__search_DEFAULT/g, "__search"); + if (Array.isArray(value)){ let concated = ''; angular.forEach(value, function(item){ @@ -99,10 +102,10 @@ export default ['$q', 'Rest', 'ProcessErrors', '$rootScope', 'Wait', 'DjangoSear let valueString = paramParts[1]; if(keySplit.length === 1) { if(params.searchTerm && !lessThanGreaterThan) { - paramString += keySplit[0] + '__icontains'; + paramString += keySplit[0] + '__icontains_DEFAULT'; } else if(params.relatedSearchTerm) { - paramString += keySplit[0] + '__search'; + paramString += keySplit[0] + '__search_DEFAULT'; } else { paramString += keySplit[0]; @@ -142,7 +145,8 @@ export default ['$q', 'Rest', 'ProcessErrors', '$rootScope', 'Wait', 'DjangoSear return decodeURIComponent(`${searchString}`); } else { - key = key.replace(/__icontains/g, ""); + key = key.replace(/__icontains_DEFAULT/g, ""); + key = key.replace(/__search_DEFAULT/g, ""); let split = key.split('__'); let decodedParam = searchString; let exclude = false;