Skip to content

Commit 1c3e4f0

Browse files
jkabatcurry684
authored andcommitted
Fix filtering for empty(zero, false) and string values (#99)
* allow to filter by values treated as empty * fix criteria builder when filtering by string values
1 parent 406482b commit 1c3e4f0

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

src/Adapter/Doctrine/ORM/SearchCriteriaProvider.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ private function processSearchColumns(QueryBuilder $queryBuilder, DataTableState
4444
$column = $searchInfo['column'];
4545
$search = $searchInfo['search'];
4646

47-
if (!empty($search) && null !== ($filter = $column->getFilter())) {
47+
if ('' !== trim($search) && null !== ($filter = $column->getFilter())) {
48+
$search = $queryBuilder->expr()->literal($search);
4849
$queryBuilder->andWhere(new Comparison($column->getField(), $filter->getOperator(), $search));
4950
}
5051
}

src/DataTableState.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ private function handleSearch(ParameterBag $parameters)
122122
$column = $this->dataTable->getColumn((int) $key);
123123
$value = $this->isInitial ? $search : $search['search']['value'];
124124

125-
if ($column->isSearchable() && !empty($value) && null !== $column->getFilter() && $column->getFilter()->isValidValue($value)) {
125+
if ($column->isSearchable() && '' !== trim($value) && null !== $column->getFilter() && $column->getFilter()->isValidValue($value)) {
126126
$this->setColumnSearch($column, $value);
127127
}
128128
}

0 commit comments

Comments
 (0)