Skip to content

Commit 19bb968

Browse files
committed
Added in and notin filters (translate to whereIn, whereNotIn, orWhereIn, orWhereNotIn)
1 parent df3e8b3 commit 19bb968

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

src/Matthenning/EloquentApiFilter/EloquentApiFilter.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,8 @@ private function applyNestedFilter(Builder $query, array $fields, $operator, $va
215215
*/
216216
private function applyWhereClause(Builder $query, $field, $operator, $value, $or = false) {
217217
$verb = $or ? 'orWhere' : 'where';
218+
$in_verb = $or ? 'orWhereIn' : 'whereIn';
219+
$not_in_verb = $or ? 'orWhereNotIn' : 'whereNotIn';
218220
$null_verb = $or ? 'orWhereNull' : 'whereNull';
219221
$not_null_verb = $or ? 'orWhereNotNull' : 'whereNotNull';
220222

@@ -233,6 +235,13 @@ private function applyWhereClause(Builder $query, $field, $operator, $value, $or
233235
case 'notnull':
234236
return $query->$not_null_verb($field);
235237
default:
238+
if ($operator == 'in') {
239+
return $query->$in_verb($field, explode(',', $value));
240+
}
241+
if ($operator == 'notin') {
242+
return $query->$not_in_verb($field, explode(',', $value));
243+
}
244+
236245
return $query->$verb($field, $operator, $value);
237246
}
238247
}

0 commit comments

Comments
 (0)