public static function instance($tagsArray = array(), $attrArray = array(), $tagsMethod = 0, $attrMethod = 0, $xssAuto = 1) { !JDEBUG ?: joosDebug::inc('joosInputFilter::instance'); if (self::$instance === null) { self::$instance = new self($tagsArray, $attrArray, $tagsMethod, $attrMethod, $xssAuto); } return self::$instance; }
/** * Системный 301 редирект * * @param string $url ссылка, на которую надо перейти * @param string $msg текст сообщения, отображаемый после перехода * @param string $type тип перехода - ошибка, предупреждение, сообщение и т.д. * @return void */ public function redirect($url, $msg = '', $type = 'success') { $iFilter = joosInputFilter::instance(); $url = $iFilter->process($url); empty($msg) ? null : joosFlashMessage::add($iFilter->process($msg), $type); $url = preg_split("/[\r\n]/", $url); $url = $url[0]; if ($iFilter->badAttributeValue(array('href', $url))) { $url = JPATH_SITE; } if (headers_sent()) { echo "<script>document.location.href='{$url}';</script>\n"; } else { !ob_get_level() ?: ob_end_clean(); joosRequest::send_headers_by_code(301); joosRequest::send_headers("Location: " . $url); } exit; }
public static function get_user_state_from_request($var_name, $req_name, $var_default = null) { if (is_array(self::$_userstate)) { if (isset($_REQUEST[$req_name])) { self::set_user_state($var_name, $_REQUEST[$req_name]); } elseif (!isset(self::$_userstate[$var_name])) { self::set_user_state($var_name, $var_default); } self::$_userstate[$var_name] = joosInputFilter::instance()->process(self::$_userstate[$var_name]); return self::$_userstate[$var_name]; } else { return null; } }
/** * Очищает значения публоичных свойств модели от HTML тэгов * Пример $this->filter( array('desc','extra') ); * * @param array $ignoreList массив названий полей модели, которые НЕ требуется очистить от HTML кода */ public function filter(array $ignoreList = null) { $ignore = is_array($ignoreList); $filter = joosInputFilter::instance(); foreach ($this->get_public_properties() as $k) { if ($ignore && in_array($k, $ignoreList)) { continue; } $this->{$k} = $filter->process($this->{$k}); } }