profile(true); $emails = array(); if (in_array('source', $retrieve)) { $emails['Emails polytechniciens'] = XDB::fetchColumn('SELECT CONCAT(s.email, \'@\', d.name) FROM email_source_account AS s INNER JOIN email_virtual_domains AS m ON (s.domain = m.id) INNER JOIN email_virtual_domains AS d ON (d.aliasing = m.id) WHERE s.uid = {?} ORDER BY s.email, d.name', $user->id()); } if (in_array('redirect', $retrieve)) { $redirect = new Redirect($user); $emails['Redirections'] = array(); foreach ($redirect->emails as $redirect_it) { if ($redirect_it->is_redirection()) { $emails['Redirections'][] = $redirect_it->email; } } } if ($profile) { if (in_array('job', $retrieve)) { $emails['Emails professionels'] = XDB::fetchColumn('SELECT email FROM profile_job WHERE pid = {?} AND email IS NOT NULL AND email != \'\'', $profile->id()); } if ($profile->email_directory) { if (in_array('directory', $retrieve)) { foreach ($emails as &$email_list) { foreach ($email_list as $key => $email) { if ($profile->email_directory == $email) { unset($email_list[$key]); } } } $emails['Email annuaire AX'] = array($profile->email_directory); } elseif (in_array('stripped_directory', $retrieve)) { if (User::isForeignEmailAddress($profile->email_directory)) { $is_redirect = XDB::fetchOneCell('SELECT COUNT(*) FROM email_redirect_account WHERE uid = {?} AND redirect = {?}', $user->id(), $profile->email_directory); if ($is_redirect == 0) { $emails['Email annuaire AX'] = array($profile->email_directory); } } } } if (isset($emails['Emails professionels']) && isset($emails['Redirections'])) { $intersect = array_intersect($emails['Emails professionels'], $emails['Redirections']); foreach ($intersect as $key => $email) { unset($emails['Emails professionels'][$key]); } } } $emails_count = 0; foreach ($emails as $email_list) { $emails_count += count($email_list); } $page->assign('emails_count', $emails_count); $page->assign('email_lists', $emails); } // vim:set et sw=4 sts=4 sws=4 foldmethod=marker fenc=utf-8: ?>