<?php
/***************************************************************************
- * Copyright (C) 2003-2007 Polytechnique.org *
+ * Copyright (C) 2003-2008 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
if (empty($_SESSION['challenge'])) {
$_SESSION['challenge'] = sha1(uniqid(rand(), true));
}
- if (!isset($_SESSION['perms'])) {
+ if (!isset($_SESSION['perms']) || !($_SESSION['perms'] instanceof FlagSet)) {
$_SESSION['perms'] = new FlagSet();
}
}
return isset($_SESSION[$key]) ? $_SESSION[$key] : $default;
}
+ public static function s($key, $default = '')
+ {
+ return (string)Session::v($key, $default);
+ }
+
public static function i($key, $default = 0)
{
$i = Session::v($key, $default);
return is_numeric($i) ? intval($i) : $default;
}
+ public static function l(array $keys)
+ {
+ return array_map(array('Session', 'v'), $keys);
+ }
+
public static function has_perms()
{
return Session::logged() && Session::v('perms')->hasFlag(PERMS_ADMIN);