|
|
@ -41,8 +41,19 @@ function (angular, app, _) { |
|
|
|
filter.options = _.map(results, function(node) { |
|
|
|
filter.options = _.map(results, function(node) { |
|
|
|
return { text: node.text, value: node.text }; |
|
|
|
return { text: node.text, value: node.text }; |
|
|
|
}); |
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
if (filter.includeAll) { |
|
|
|
if (filter.includeAll) { |
|
|
|
filter.options.unshift({text: 'All', value: '*'}); |
|
|
|
if(endsWithWildcard(filter.query)) { |
|
|
|
|
|
|
|
filter.options.unshift({text: 'All', value: '*'}); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
var allExpr = '{'; |
|
|
|
|
|
|
|
_.each(filter.options, function(option) { |
|
|
|
|
|
|
|
allExpr += option.text + ','; |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
allExpr = allExpr.substring(0, allExpr.length - 1) + '}'; |
|
|
|
|
|
|
|
filter.options.unshift({text: 'All', value: allExpr}); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
filterSrv.filterOptionSelected(filter, filter.options[0]); |
|
|
|
filterSrv.filterOptionSelected(filter, filter.options[0]); |
|
|
@ -66,5 +77,13 @@ function (angular, app, _) { |
|
|
|
$rootScope.$broadcast('render'); |
|
|
|
$rootScope.$broadcast('render'); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function endsWithWildcard(query) { |
|
|
|
|
|
|
|
if (query.length === 0) { |
|
|
|
|
|
|
|
return false; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return query[query.length - 1] === '*'; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
}); |
|
|
|
}); |
|
|
|
}); |
|
|
|
}); |