From 9bda297d8bc80de6eeadf311eb41bf5ed28e0dd9 Mon Sep 17 00:00:00 2001 From: Arunas Mazeika Date: Mon, 25 Oct 2021 10:20:37 +0200 Subject: [PATCH] #287 Filter current request query against internal states --- code/controller/model.php | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/code/controller/model.php b/code/controller/model.php index b5bce12d20..98b488609d 100644 --- a/code/controller/model.php +++ b/code/controller/model.php @@ -124,8 +124,16 @@ public function getModel() ); } - //Inject the request into the model state - $this->_model->setState($this->getRequest()->query->toArray()); + if ($query = $this->getRequest()->getQuery()->toArray()) + { + // Filter the current query against internal states + foreach ($this->_model->getState() as $state) { + if ($state->internal && isset($query[$state->name])) unset($query[$state->name]); + } + + //Inject the request into the model state + $this->_model->setState($query); + } } return $this->_model;