X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=plugins%2Finsert.getUserName.php;h=7d69ee991a5f12f0a5cad683d5bb024fcf21d78a;hb=c67b874fd8d442bfded35295a819e7ce11a2d6dc;hp=70a70f72accd6c8704e83b4c40ea7315feddd48b;hpb=f2ef84b551f385edbdc07afe5459967c5b89ec60;p=platal.git diff --git a/plugins/insert.getUserName.php b/plugins/insert.getUserName.php index 70a70f7..7d69ee9 100644 --- a/plugins/insert.getUserName.php +++ b/plugins/insert.getUserName.php @@ -1,6 +1,6 @@ fetchOneCell(); + $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(id={?} 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, "@")); + $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); + $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: