X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=classes%2Fplsession.php;h=b1ddcd80d5ecc35f9138a684526dacb86706ffdb;hb=732e5855cffcd5e2eaaf5bd66760c4432d437244;hp=73426fde57dce13ad819c4157612ad646b9c3225;hpb=47fa97fed308292ab5e7bed6f870b39f55747aa8;p=platal.git diff --git a/classes/plsession.php b/classes/plsession.php index 73426fd..b1ddcd8 100644 --- a/classes/plsession.php +++ b/classes/plsession.php @@ -166,18 +166,18 @@ abstract class PlSession */ public function startSUID($user) { - if (isset($_SESSION['suid'])) { + if (S::has('suid')) { return false; } - $newsession = array(); - $backup =& $_SESSION; - $_SESSION =& $newsession; + $backup = $_SESSION; + $_SESSION = array(); $this->fillSession(); S::set('suid', $backup); if (!$this->startSessionAs($user, -1)) { $this->stopSUID(); return false; } + S::set('user', $user); return true; } @@ -185,10 +185,10 @@ abstract class PlSession */ public function stopSUID() { - if (!isset($_SESSION['suid'])) { + if (!S::has('suid')) { return false; } - $_SESSION =& $_SESSION['suid']; + $_SESSION = $_SESSION['suid']; return true; }