$id = Cookie::i('uid', -1);
$id = S::v($_SESSION['uid'], $id);
- if ($id<0) {
- return "";
+ if ($id < 0) {
+ return '';
}
if (Cookie::v('domain', 'login') != 'alias') {
- $res = XDB::query("SELECT alias FROM aliases
- WHERE uid={?} AND (type IN ('a_vie','alias') AND FIND_IN_SET('bestalias', flags))", $id);
+ $res = XDB::query("SELECT alias
+ FROM aliases
+ WHERE uid = {?} AND (type IN ('a_vie', 'alias') AND FIND_IN_SET('bestalias', flags))",
+ $id);
return $res->fetchOneCell();
} else {
$res = XDB::query("
SELECT v.alias
FROM virtual AS v
- INNER JOIN virtual_redirect USING(vid)
- INNER JOIN aliases AS a ON(uid={?} AND a.type='a_vie')
- WHERE redirect = CONCAT(a.alias, {?})
- OR redirect = CONCAT(a.alias, {?})",
- $id, "@".$globals->mail->domain, "@".$globals->mail->domain2);
- $alias = $res->fetchOneCell();
- return substr($alias, 0, strpos($alias, "@"));
+ INNER JOIN virtual_redirect USING (vid)
+ INNER JOIN aliases AS a ON (uid = {?} AND a.type = 'a_vie')
+ WHERE redirect = CONCAT(a.alias, {?}) OR redirect = CONCAT(a.alias, {?})",
+ $id, '@' . $globals->mail->domain, '@' . $globals->mail->domain2);
+ $aliases = $res->fetchAllAssoc();
+ foreach ($aliases as $alias) {
+ list($login, $domain) = explode('@', $alias['alias']);
+ if ($domain == $globals->mail->alias_dom || $domain == $globals->mail->alias_dom2) {
+ return $login;
+ }
+ }
}
- return $login;
+ return '';
}
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: