diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/search/search.lib.js b/config/alfresco/templates/webscripts/org/alfresco/slingshot/search/search.lib.js index e8c8ec2edb..d2871a96ce 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/search/search.lib.js +++ b/config/alfresco/templates/webscripts/org/alfresco/slingshot/search/search.lib.js @@ -953,8 +953,24 @@ function getSearchResults(params) } else { - // single pseudo cm:content property - e.g. mimetype, size or encoding - formQuery += (first ? '' : ' AND ') + 'cm:content.' + propName + ':"' + propValue + '"'; + // special case for size-range property + if (propName.match("size-range$") == "size-range" && propValue.length > 1) + { + var from, to, sepindex = propValue.indexOf("|"); + + propName = propName.substr(0, propName.length - "-range".length); + + // work out if "min" and/or "max" are specified - use MIN and MAX otherwise + from = (sepindex === 0 ? "MIN" : propValue.substr(0, sepindex)); + to = (sepindex === propValue.length - 1 ? "MAX" : propValue.substr(sepindex + 1)); + + formQuery += (first ? '' : ' AND ') + '@cm\\:content.' + propName + ':[' + from + ' TO ' + to + ']'; + } + else + { + // single pseudo cm:content property - e.g. mimetype, size or encoding + formQuery += (first ? '' : ' AND ') + 'cm:content.' + propName + ':"' + propValue + '"'; + } } first = false; }