X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=modules%2Femail.php;h=764851576e5159f71ea3a80b2593242611e6098b;hb=cb6e7db980fcc5fcdd2dad5aa645cfdf98057cd4;hp=1496b04d247d42ccc73d3990308a9287b49384e2;hpb=52da49d8d4fdaa614f51b5e86815d79f8619126f;p=platal.git diff --git a/modules/email.php b/modules/email.php index 1496b04..7648515 100644 --- a/modules/email.php +++ b/modules/email.php @@ -72,9 +72,10 @@ class EmailModule extends PLModule WHERE uid = {?} AND email = {?}", $user->id(), $email); XDB::execute('UPDATE accounts AS a INNER JOIN email_virtual_domains AS d ON (d.name = {?}) + INNER JOIN email_virtual_domains AS m ON (d.aliasing = m.id) SET a.best_domain = d.id - WHERE a.uid = {?}', - $domain, $user->id()); + WHERE a.uid = {?} AND m.name = {?}', + $domain, $user->id(), $user->mainEmailDomain()); // As having a non-null bestalias value is critical in // plat/al's code, we do an a posteriori check on the @@ -307,7 +308,7 @@ class EmailModule extends PLModule $page->assign('googleapps', GoogleAppsAccount::account_status($user->id())); require_once 'emails.combobox.inc.php'; - fill_email_combobox($page); + fill_email_combobox($page, array('job', 'stripped_directory')); } function handler_antispam($page, $filter_status = null, $redirection = null) @@ -615,12 +616,12 @@ class EmailModule extends PLModule require_once 'emails.inc.php'; $page->assign('ok', false); if (S::logged() && (is_null($user) || $user->id() == S::i('uid'))) { - Email::activate_storage(S::user(), 'imap'); + Email::activate_storage(S::user(), 'imap', Bogo::IMAP_DEFAULT); $page->assign('ok', true); $page->assign('yourself', S::user()->displayName()); $page->assign('sexe', S::user()->isFemale()); } else if (!S::logged() && $user) { - Email::activate_storage($user, 'imap'); + Email::activate_storage($user, 'imap', Bogo::IMAP_DEFAULT); $page->assign('ok', true); $page->assign('yourself', $user->displayName()); $page->assign('sexe', $user->isFemale()); @@ -740,7 +741,7 @@ class EmailModule extends PLModule FROM email_watch AS w INNER JOIN email_redirect_account AS r ON (w.email = r.redirect) INNER JOIN email_source_account AS s ON (s.uid = r.uid AND s.type = \'forlife\') - INNER JOIN accounts AS a ON (w.uid = a.uid) + LEFT JOIN accounts AS a ON (w.uid = a.uid) WHERE w.email = {?} ORDER BY s.email', $email); @@ -872,10 +873,11 @@ class EmailModule extends PLModule $csv = fopen('php://output', 'w'); fputcsv($csv, array('nom', 'promo', 'bounces', 'nbmails', 'url', 'corps', 'job', 'networking'), ';'); + $corpsList = DirEnum::getOptions(DirEnum::CURRENTCORPS); foreach ($broken_user_list as $uid => $mails) { $profile = Profile::get($uid); $corps = $profile->getCorps(); - $current_corps = ($corps && $corps->current) ? $corps->current : ''; + $current_corps = ($corps && $corps->current) ? $corpsList[$corps->current] : ''; $jobs = $profile->getJobs(); $companies = array(); foreach ($jobs as $job) {