- return -2;
-}
-
-// }}}
-// {{{ function start_connexion()
-
-/** place les variables de session dépendants de auth_user_md5
- * et met à jour les dates de dernière connexion si nécessaire
- * @return void
- * @see controlpermanent.inc.php controlauthentication.inc.php
- */
-function start_connexion ($uid, $identified)
-{
- $res = XDB::query("
- SELECT u.user_id AS uid, prenom, nom, perms, promo, 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,
- q.core_mail_fmt AS mail_fmt, UNIX_TIMESTAMP(q.banana_last) AS banana_last, q.watch_last, 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))
- 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);
- $sess = $res->fetchOneAssoc();
- $suid = S::v('suid');
-
- if ($suid) {
- $logger = new CoreLogger($uid, $suid);
- $logger->log("suid_start", S::v('forlife')." by {$suid['uid']}");
- $sess['suid'] = $suid;
- } else {
- $logger = S::v('log', new CoreLogger($uid));
- $logger->log("connexion", $_SERVER['PHP_SELF']);
- setcookie('ORGuid', $uid, (time()+25920000), '/', '', 0);
+ public function setSkin()
+ {
+ global $globals;
+ if (S::logged() && (!S::has('skin') || S::has('suid'))) {
+ $uid = S::v('uid');
+ $res = XDB::query("SELECT skin_tpl
+ FROM auth_user_quick AS a
+ INNER JOIN skins AS s ON a.skin = s.id
+ WHERE user_id = {?} AND skin_tpl != ''", $uid);
+ S::set('skin', $res->fetchOneCell());
+ }