diff --git a/src/Grid/Filter.php b/src/Grid/Filter.php index a4135887c9..9d66d22d63 100644 --- a/src/Grid/Filter.php +++ b/src/Grid/Filter.php @@ -104,6 +104,16 @@ public function disableIdFilter() $this->useIdFilter = false; } + /** + * Remove ID filter if needed. + */ + public function removeIDFilterIfNeeded() + { + if (!$this->useIdFilter) { + array_shift($this->filters); + } + } + /** * Get all conditions of the filters. * @@ -129,6 +139,8 @@ public function conditions() $conditions = []; + $this->removeIDFilterIfNeeded(); + foreach ($this->filters() as $filter) { $conditions[] = $filter->condition($params); } @@ -177,9 +189,7 @@ public function execute() */ public function render() { - if (!$this->useIdFilter) { - array_shift($this->filters); - } + $this->removeIDFilterIfNeeded(); if (empty($this->filters)) { return '';