Fixes the gapps reminder.
[platal.git] / classes / xnetsession.php
index 839abb2..e69e6eb 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /***************************************************************************
- *  Copyright (C) 2003-2008 Polytechnique.org                              *
+ *  Copyright (C) 2003-2009 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
@@ -19,7 +19,7 @@
  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
  ***************************************************************************/
 
-class XnetSession extends PlSession
+class XnetSession extends XorgSession
 {
     public function __construct()
     {
@@ -92,19 +92,13 @@ class XnetSession extends PlSession
 
     protected function startSessionAs($user, $level)
     {
-        global $globals;
-
         if ($level == -1) {
             S::set('auth', AUTH_MDP);
         }
         $res  = XDB::query("SELECT  u.user_id AS uid, u.hruid, prenom, nom, perms, promo, password, FIND_IN_SET('femme', u.flags) AS femme,
-                                    CONCAT(a.alias, '@{$globals->mail->domain}') AS forlife,
-                                    CONCAT(a2.alias, '@{$globals->mail->domain}') AS bestalias,
                                     q.core_mail_fmt AS mail_fmt, q.core_rss_hash
                               FROM  auth_user_md5   AS u
                         INNER JOIN  auth_user_quick AS q  USING(user_id)
-                        INNER JOIN  aliases         AS a  ON (u.user_id = a.id AND a.type = 'a_vie')
-                        INNER JOIN  aliases         AS a2 ON (u.user_id = a2.id AND FIND_IN_SET('bestalias', a2.flags))
                              WHERE  u.user_id = {?} AND u.perms IN('admin', 'user')
                              LIMIT  1", $user);
         $sess = $res->fetchOneAssoc();
@@ -126,20 +120,6 @@ class XnetSession extends PlSession
         return true;
     }
 
-    public function tokenAuth($login, $token)
-    {
-        $res = XDB::query('SELECT  u.hruid
-                             FROM  aliases         AS a
-                       INNER JOIN  auth_user_md5   AS u ON (a.id = u.user_id AND u.perms IN ("admin", "user"))
-                       INNER JOIN  auth_user_quick AS q ON (a.id = q.user_id AND q.core_rss_hash = {?})
-                            WHERE  a.alias = {?} AND a.type != "homonyme"', $token, $login);
-        if ($res->numRows() == 1) {
-            $data = $res->fetchOneAssoc();
-            return new User($res->fetchOneCell());
-        }
-        return null;
-    }
-
     public function doSelfSuid()
     {
         if (!$this->startSUID(S::i('uid'))) {
@@ -161,30 +141,6 @@ class XnetSession extends PlSession
         S::set('perms', $suid['perms']);
         return true;
     }
-
-    public function makePerms($perm)
-    {
-        $flags = new PlFlagSet();
-        if ($perm == 'disabled' || $perm == 'ext') {
-            S::set('perms', $flags);
-            return;
-        }
-        $flags->addFlag(PERMS_USER);
-        if ($perm == 'admin') {
-            $flags->addFlag(PERMS_ADMIN);
-        }
-        S::set('perms', $flags);
-    }
-
-    public function loggedLevel()
-    {
-        return AUTH_COOKIE;
-    }
-
-    public function sureLevel()
-    {
-        return AUTH_MDP;
-    }
 }
 
 // {{{ function may_update
@@ -206,7 +162,7 @@ function may_update($force = false, $lose = false)
         return false;
     } elseif ($lose) {
         $may_update[$asso_id] = false;
-    } elseif (S::has_perms() || (S::has('suid') && $force)) {
+    } elseif (S::admin() || (S::has('suid') && $force)) {
         $may_update[$asso_id] = true;
     } elseif (!isset($may_update[$asso_id]) || $force) {
         $res = XDB::query("SELECT  perms