X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=include%2Fxorg%2Fsession.inc.php;h=3e368e43b9a636091d84ec93bfe41786148b85ef;hb=7674ad0547292059134711708eb3068150f47054;hp=a0467b9ca25fe7dbab5c27984c406ef7e6c90e23;hpb=fd38b30e72448ad4ae848e4c7f87343d938bd781;p=platal.git diff --git a/include/xorg/session.inc.php b/include/xorg/session.inc.php index a0467b9..3e368e4 100644 --- a/include/xorg/session.inc.php +++ b/include/xorg/session.inc.php @@ -25,7 +25,7 @@ class XorgSession { // {{{ public static function init - public static function init() + public static function init() { S::init(); if (!S::has('uid')) { @@ -158,7 +158,7 @@ class XorgSession * @param page the calling page (by reference) */ public static function doAuthCookie() - + { if (S::logged()) { return true; @@ -241,18 +241,23 @@ function start_connexion ($uid, $identified) $res = XDB::query(" SELECT u.user_id AS uid, prenom, prenom_ini, nom, nom_ini, nom_usage, perms, promo, promo_sortie, matricule, password, FIND_IN_SET('femme', u.flags) AS femme, - UNIX_TIMESTAMP(s.start) AS lastlogin, s.host, a.alias AS forlife, a2.alias AS bestalias, + a.alias AS forlife, a2.alias AS bestalias, q.core_mail_fmt AS mail_fmt, UNIX_TIMESTAMP(q.banana_last) AS banana_last, q.watch_last, q.core_rss_hash, FIND_IN_SET('watch', u.flags) AS watch_account, q.last_version 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)) - LEFT JOIN logger.sessions AS s ON (s.uid=u.user_id AND s.suid=0) - WHERE u.user_id = {?} AND u.perms IN('admin','user') - ORDER BY s.start DESC - LIMIT 1", $uid); + WHERE u.user_id = {?} AND u.perms IN('admin','user')", $uid); $sess = $res->fetchOneAssoc(); + $res = XDB::query("SELECT UNIX_TIMESTAMP(s.start) AS lastlogin, s.host + FROM logger.sessions AS s + WHERE s.uid = {?} AND s.suid = 0 + ORDER BY s.start DESC + LIMIT 1", $uid); + if ($res->numRows()) { + $sess = array_merge($sess, $res->fetchOneAssoc()); + } $suid = S::v('suid'); if ($suid) {