Index: site/Qs/Form.php =================================================================== --- site/Qs/Form.php (revision 5727) +++ site/Qs/Form.php (revision 5728) @@ -237,14 +237,21 @@ return $this->_prependString; } + public function getRequestValues() + { + $method = strtoupper($this->getAttrib('method')); + return ('GET' == $method) ? $_GET : $_POST; + } + + public function getValidationValues() + { + return Qs_Array::mergeAssoc($this->getValues(), $this->getRequestValues()); + } + protected function _prepareData($data = null) { if (null === $data) { - $method = strtoupper($this->getAttrib('method')); - $data = ('GET' == $method) ? $_GET : $_POST; - if (version_compare(phpversion(), '5.3.0', '<') && 1 == get_magic_quotes_gpc()) { - $data = $this->_recursiveFilter('stripslashes', $data); - } + $data = $this->getRequestValues(); } return $data; } Index: site/Qs/ViewController.php =================================================================== --- site/Qs/ViewController.php (revision 5727) +++ site/Qs/ViewController.php (revision 5728) @@ -1169,7 +1169,7 @@ { if ($this->_hasFilter) { $form = $this->_getFilterForm(); - if ($form->isSubmitted() && $form->validate()) { + if ($form->validate($form->getValidationValues())) { $filter = $form->getValues(); $this->_getDataObj()->addFilter($filter); $this->_getList()->addUrlVariables(array_keys($filter));