|
@@ -2,15 +2,27 @@
|
|
|
|
|
|
/**
|
|
|
* ChamiloSession class definition
|
|
|
- * @todo don't use global
|
|
|
- */
|
|
|
+ */
|
|
|
class ChamiloSession
|
|
|
{
|
|
|
+ public static $session;
|
|
|
|
|
|
+ /**
|
|
|
+ * @param $session
|
|
|
+ */
|
|
|
+ public static function setSession($session)
|
|
|
+ {
|
|
|
+ self::$session = $session;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @param $variable
|
|
|
+ * @param null $default
|
|
|
+ * @return null
|
|
|
+ */
|
|
|
public static function read($variable, $default = null)
|
|
|
{
|
|
|
- global $app;
|
|
|
- $result = $app['session']->get($variable);
|
|
|
+ $result = self::$session->get($variable);
|
|
|
// check if the value exists in the $_SESSION array
|
|
|
if (empty($result)) {
|
|
|
return isset($_SESSION[$variable]) ? $_SESSION[$variable] : $default;
|
|
@@ -19,19 +31,24 @@ class ChamiloSession
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param $variable
|
|
|
+ * @param $value
|
|
|
+ */
|
|
|
public static function write($variable, $value)
|
|
|
{
|
|
|
- global $app;
|
|
|
// Writing the session in 2 instances because
|
|
|
$_SESSION[$variable] = $value;
|
|
|
- $app['session']->set($variable, $value);
|
|
|
+ self::$session->set($variable, $value);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param $variable
|
|
|
+ */
|
|
|
public static function erase($variable)
|
|
|
{
|
|
|
- global $app;
|
|
|
$variable = (string) $variable;
|
|
|
- $app['session']->remove($variable);
|
|
|
+ self::$session->remove($variable);
|
|
|
|
|
|
if (isset($GLOBALS[$variable])) {
|
|
|
unset($GLOBALS[$variable]);
|
|
@@ -46,9 +63,7 @@ class ChamiloSession
|
|
|
*/
|
|
|
public static function clear()
|
|
|
{
|
|
|
- global $app;
|
|
|
- $app['session']->clear();
|
|
|
- //$_SESSION = array();
|
|
|
+ self::$session->clear();
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -56,11 +71,6 @@ class ChamiloSession
|
|
|
*/
|
|
|
public static function destroy()
|
|
|
{
|
|
|
- global $app;
|
|
|
- $app['session']->invalidate();
|
|
|
- /*
|
|
|
- session_unset();
|
|
|
- $_SESSION = array();
|
|
|
- session_destroy();*/
|
|
|
+ self::$session->invalidate();
|
|
|
}
|
|
|
}
|