/** * Applies recursive and non-recursive filters on element value * * @param mixed $value Element value * * @return mixed Filtered value */ protected function applyFilters($value) { $recursive = $this->recursiveFilters; $container = $this->getContainer(); while (!empty($container)) { $recursive = array_merge($container->recursiveFilters, $recursive); $container = $container->getContainer(); } foreach ($recursive as $filter) { if (is_array($value)) { array_walk_recursive($value, array('HTML_QuickForm2_Node', 'applyFilter'), $filter); } else { self::applyFilter($value, null, $filter); } } return parent::applyFilters($value); }