It's not currently possible to use negative filters, but this can be enabled by a small patch to ezfind/classes/ezfezpsolrquerybuilder.php
diff --git a/classes/ezfezpsolrquerybuilder.php b/classes/ezfezpsolrquerybuilder.php
index 3c997dc..f30813c 100755
--- a/classes/ezfezpsolrquerybuilder.php
+++ b/classes/ezfezpsolrquerybuilder.php
@@ -852,7 +852,10 @@ class ezfeZPSolrQueryBuilder
}
}
- return implode( " $booleanOperator ", $filterQueryList );
+ if ( $booleanOperator == 'NOT' )
+ return ' NOT ( ' . implode( " OR ", $filterQueryList ) .')';
+ else
+ return implode( " $booleanOperator ", $filterQueryList );
}
/**
@@ -1590,5 +1593,7 @@ ezfeZPSolrQueryBuilder::$FindINI = eZINI::instance( 'ezfind.ini' );
ezfeZPSolrQueryBuilder::$allowedBooleanOperators = array( 'AND',
'and',
'OR',
- 'or' );
+ 'or',
+ 'NOT',
+ 'not' );
?>