forked from Wavyzz/dolibarr
Fix: Add not in operator
This commit is contained in:
@@ -12593,20 +12593,22 @@ function dolForgeCriteriaCallback($matches)
|
||||
|
||||
$operator = strtoupper(preg_replace('/[^a-z<>!=]/i', '', trim($tmp[1])));
|
||||
|
||||
if ($operator == 'NOTLIKE') {
|
||||
$operator = 'NOT LIKE';
|
||||
}
|
||||
if ($operator == 'ISNOT') {
|
||||
$operator = 'IS NOT';
|
||||
}
|
||||
if ($operator == '!=') {
|
||||
$operator = '<>';
|
||||
$realOperator = [
|
||||
'NOTLIKE' => 'NOT LIKE',
|
||||
'ISNOT' => 'IS NOT',
|
||||
'NOTIN' => 'NOT IN',
|
||||
'!=' => '<>',
|
||||
];
|
||||
|
||||
if (array_key_exists($operator, $realOperator)) {
|
||||
$operator = $realOperator[$operator];
|
||||
}
|
||||
|
||||
|
||||
$tmpescaped = $tmp[2];
|
||||
$regbis = array();
|
||||
|
||||
if ($operator == 'IN') { // IN is allowed for list of ID or code only
|
||||
if ($operator == 'IN' || $operator == 'NOT IN') { // IN is allowed for list of ID or code only
|
||||
//if (!preg_match('/^\(.*\)$/', $tmpescaped)) {
|
||||
$tmpescaped2 = '(';
|
||||
// Explode and sanitize each element in list
|
||||
|
||||
Reference in New Issue
Block a user