Einige Feinheiten im CategoryFilter

git-svn-id: https://svn.libreccm.org/ccm/trunk@2340 8810af33-2d31-482b-a856-94f89814c4df
master
jensp 2013-10-08 12:35:06 +00:00
parent f1d71671ae
commit e36ecd9b7a
1 changed files with 19 additions and 10 deletions

View File

@ -62,11 +62,20 @@ public class CategoryFilter {
final FilterFactory filterFactory = objects.getFilterFactory(); final FilterFactory filterFactory = objects.getFilterFactory();
final CompoundFilter compoundFilter = filterFactory.and(); final CompoundFilter compoundFilter = filterFactory.and();
for (String value : values) { for (String value : values) {
if (catNameToCatId.containsKey(value)) { if (multiple) {
//When using multiple search we assume text input for now
if (catNameToCatId.containsKey(value)) {
final com.arsdigita.persistence.Filter filter = filterFactory.in(
"parent.id", "com.arsdigita.categorization.objectIDsInSubtree");
//filter.set("categoryID", value);
filter.set("categoryID", catNameToCatId.get(value));
compoundFilter.addFilter(filter);
}
} else {
//Otherwise, we assume that we get the ID of a single category
final com.arsdigita.persistence.Filter filter = filterFactory.in( final com.arsdigita.persistence.Filter filter = filterFactory.in(
"parent.id", "com.arsdigita.categorization.objectIDsInSubtree"); "parent.id", "com.arsdigita.categorization.objectIDsInSubtree");
//filter.set("categoryID", value); filter.set("categoryID", value);
filter.set("categoryID", catNameToCatId.get(value));
compoundFilter.addFilter(filter); compoundFilter.addFilter(filter);
} }
} }