X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=classes%2Fenv.php;h=7d67d4a306533f730284810728501e73f04468bc;hb=7446ea512d015e4b6b07ed378bed4bb9fd5418ba;hp=23ebd50abacd7ffeceb02063e81dce3f8baebc46;hpb=42a50827dc2ac2b13ddaf77ea16c0989cd8b960d;p=platal.git diff --git a/classes/env.php b/classes/env.php index 23ebd50..7d67d4a 100644 --- a/classes/env.php +++ b/classes/env.php @@ -1,6 +1,6 @@ cookie_ns . $key; return isset($_COOKIE[$key]) ? $_COOKIE[$key] : $default; } - // }}} - // {{{ function has - - function has($key) + public static function has($key) { + global $globals; + $key = $globals->cookie_ns . $key; return isset($_COOKIE[$key]); } - // }}} - // {{{ function kill - - function kill($key) + public static function kill($key) { + global $globals; + $key = $globals->cookie_ns . $key; + setcookie($key, '', time() - 3600, $globals->cookie_path); unset($_COOKIE[$key]); } - // }}} - // {{{ function v + public static function set($key, $value, $days, $secure = false) { + global $globals; + $key = $globals->cookie_ns . $key; + if (!$secure || @$_SERVER['HTTPS']) { + setcookie($key, $value, time() + 86400 * $days, $globals->cookie_path, '', + $secure, $secure); + $_COOKIE[$key] = $value; + Env::set($key, $value); + } + } - function v($key, $default = null) + public static function v($key, $default = null) { return Cookie::_get($key, $default); } - // }}} - // {{{ function b + public static function s($key, $default = '') + { + return (string)Cookie::_get($key, $default); + } - function b($key, $default = false) + public static function t($key, $default = '') { - return (bool)Cookie::_get($key, $default); + return trim(Cookie::s($key, $default)); } - // }}} - // {{{ function i + public static function blank($key, $strict = false) + { + if (!Cookie::has($key)) { + return true; + } + $var = $strict ? Cookie::s($key) : Cookie::t($key); + return empty($var); + } - function i($key, $default = 0) + public static function b($key, $default = false) { - $i = Cookie::_get($key, $default); - return is_numeric($i) ? intval($i) : $default; + return (bool)Cookie::_get($key, $default); } - // }}} + public static function i($key, $default = 0) + { + $i = to_integer(Cookie::_get($key, $default)); + return $i === false ? $default : $i; + } + + public static function l(array $keys) + { + return array_map(array('Cookie', 'v'), $keys); + } } function fix_gpc_magic(&$item, $key) { @@ -247,5 +322,5 @@ if (ini_get('magic_quotes_gpc') && empty($DONT_FIX_GPC)) { array_walk($_REQUEST, 'fix_gpc_magic'); } -// vim:set et sw=4 sts=4 sws=4 foldmethod=marker: +// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: ?>