X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=modules%2Fxnetgrp.php;h=bd2fdf2400566d298d19269d590e9e8a3cec79f2;hb=a5878ac19cc6ea75a753470cf68b7d2180d6cd51;hp=b3de66dcdfe11df5a528a997873cdfbacefde0b8;hpb=40d428d888fbbe36da4c6196caa7b346266934f3;p=platal.git diff --git a/modules/xnetgrp.php b/modules/xnetgrp.php index b3de66d..bd2fdf2 100644 --- a/modules/xnetgrp.php +++ b/modules/xnetgrp.php @@ -259,7 +259,7 @@ class XnetGrpModule extends PLModule Post::v('descr'), Post::v('site'), Post::v('mail'), Post::v('resp'), Post::v('forum'), Post::has('ax'), - Post::has('pub'), + Post::v('pub'), Post::v('sub_url'), Post::v('unsub_url'), $globals->asso('id')); } @@ -774,7 +774,7 @@ class XnetGrpModule extends PLModule $user_same_email = get_infos($user['email']); $domain = $globals->asso('mail_domain'); - if (!$domain || !empty($user_same_email)) { + if (!$domain || (!empty($user_same_email) && $user_same_email['uid'] != $user['uid'])) { return true; } @@ -898,20 +898,23 @@ class XnetGrpModule extends PLModule // Update subscription to aliases if ($email != $user['email']) { XDB::execute("UPDATE IGNORE virtual_redirect AS vr - INNER JOIN virtual AS v ON(vr.vid = v.vid AND SUBSTRING_INDEX(alias, '@', 2) = {?}) + INNER JOIN virtual AS v ON(vr.vid = v.vid AND SUBSTRING_INDEX(alias, '@', -1) = {?}) SET vr.redirect = {?} WHERE vr.redirect = {?}", $globals->asso('mail_domain'), $email, $user['email']); XDB::execute("DELETE vr.* FROM virtual_redirect AS vr - INNER JOIN virtual AS v ON(vr.vid = v.vid AND SUBSTRING_INDEX(alias, '@', 2) = {?}) + INNER JOIN virtual AS v ON(vr.vid = v.vid AND SUBSTRING_INDEX(alias, '@', -1) = {?}) WHERE vr.redirect = {?}", $globals->asso('mail_domain'), $user['email']); foreach (Env::v('ml1', array()) as $ml => $state) { $mmlist->replace_email($ml, $user['email'], $email); } } - return $login; + if ($sub) { + return $login; + } + return $user['email']; } function handler_admin_member(&$page, $user) @@ -1013,15 +1016,16 @@ class XnetGrpModule extends PLModule } $page->assign('user', $user); + echo $user['email2']; $listes = $mmlist->get_lists($user['email2']); $page->assign('listes', $listes); $res = XDB::query( 'SELECT alias, redirect IS NOT NULL as sub FROM virtual AS v - LEFT JOIN virtual_redirect AS vr ON(v.vid=vr.vid AND redirect={?}) + LEFT JOIN virtual_redirect AS vr ON(v.vid=vr.vid AND (redirect = {?} OR redirect = {?})) WHERE alias LIKE {?} AND type="user"', - $user['email'], '%@'.$globals->asso('mail_domain')); + $user['email'], $user['email2'], '%@'.$globals->asso('mail_domain')); $page->assign('alias', $res->fetchAllAssoc()); }