$this->client = new MMList(S::v('uid'), S::v('password'),
$globals->asso('mail_domain'));
- $page->useMenu();
$page->assign('asso', $globals->asso());
$page->setType($globals->asso('cat'));
{
global $globals;
+ if (!$globals->asso('mail_domain')) {
+ return PL_NOT_FOUND;
+ }
$this->prepare_client($page);
$page->changeTpl('xnetlists/index.tpl');
{
global $globals;
+ if (!$globals->asso('mail_domain')) {
+ return PL_NOT_FOUND;
+ }
$this->prepare_client($page);
$page->changeTpl('xnetlists/create.tpl');
XDB::execute('INSERT INTO x4dat.virtual (alias,type)
VALUES({?},{?})', $liste.'@'.$dom, 'list');
XDB::execute('INSERT INTO x4dat.virtual_redirect (vid,redirect)
- VALUES ({?}, {?})', mysql_insert_id(),
+ VALUES ({?}, {?})', XDB::insertId(),
"$red+post@listes.polytechnique.org");
XDB::execute('INSERT INTO x4dat.virtual (alias,type)
VALUES({?},{?})', $liste.'-owner@'.$dom, 'list');
XDB::execute('INSERT INTO x4dat.virtual_redirect (vid,redirect)
- VALUES ({?}, {?})', mysql_insert_id(),
+ VALUES ({?}, {?})', XDB::insertId(),
"$red+owner@listes.polytechnique.org");
XDB::execute('INSERT INTO x4dat.virtual (alias,type)
VALUES({?},{?})', $liste.'-admin@'.$dom, 'list');
XDB::execute('INSERT INTO x4dat.virtual_redirect (vid,redirect)
- VALUES ({?}, {?})', mysql_insert_id(),
+ VALUES ({?}, {?})', XDB::insertId(),
"$red+admin@listes.polytechnique.org");
XDB::execute('INSERT INTO x4dat.virtual (alias,type)
VALUES({?},{?})', $liste.'-bounces@'.$dom, 'list');
XDB::execute('INSERT INTO x4dat.virtual_redirect (vid,redirect)
- VALUES ({?}, {?})', mysql_insert_id(),
+ VALUES ({?}, {?})', XDB::insertId(),
"$red+bounces@listes.polytechnique.org");
pl_redirect('lists/admin/'.$liste);
{
global $globals;
+ if (!$globals->asso('mail_domain')) {
+ return PL_NOT_FOUND;
+ }
$this->prepare_client($page);
$page->changeTpl('xnetlists/sync.tpl');
list(,$members) = $this->client->get_members($liste);
$mails = array_map(create_function('$arr', 'return $arr[1];'), $members);
- $subscribers = array_unique(array_merge($subscribers, $mails));
+ $subscribers = array_unique($mails);
$not_in_group_x = array();
$not_in_group_ext = array();
$not_in_list = array();
while ($tmp = $ann->next()) {
- if (!in_array($tmp['email'], $subscribers)) {
+ if (!in_array(strtolower($tmp['email']), $subscribers)) {
$not_in_list[] = $tmp;
}
}
function handler_aadmin(&$page, $lfull = null)
{
- if (is_null($lfull)) {
+ global $globals;
+
+ if (!$globals->asso('mail_domain') || is_null($lfull)) {
return PL_NOT_FOUND;
}
pl_redirect('alias/admin/'.$lfull);
}
+ global $globals;
$res = XDB::iterator(
- "SELECT redirect
+ "SELECT redirect,
+ IF(u.nom IS NOT NULL, IF(u.nom_usage<>'', u.nom_usage, u.nom), m.nom) AS nom,
+ IF(u.prenom IS NOT NULL, u.prenom, m.prenom) AS prenom,
+ IF(u.promo IS NOT NULL, u.promo, 'extérieur') AS promo,
+ IF(m2.perms, m2.perms = 'admin', m.perms = 'admin') AS admin,
+ a.alias
FROM x4dat.virtual_redirect AS vr
INNER JOIN x4dat.virtual AS v USING(vid)
+ LEFT JOIN x4dat.aliases AS a ON(vr.redirect = CONCAT(a.alias, CONCAT('@', {?}))
+ OR vr.redirect = CONCAT(a.alias, CONCAT('@', {?})))
+ LEFT JOIN x4dat.auth_user_md5 AS u ON(a.id = u.user_id)
+ LEFT JOIN groupex.membres AS m2 ON(u.user_id = m2.uid AND m2.asso_id = {?})
+ LEFT JOIN groupex.membres AS m ON(m.email = vr.redirect AND m.asso_id = {?})
WHERE v.alias={?}
- ORDER BY redirect", $lfull);
+ ORDER BY redirect",
+ $globals->mail->domain, $globals->mail->domain2,
+ $globals->asso('id'), $globals->asso('id'), $lfull);
$page->assign('mem', $res);
}
{
global $globals;
+ if (!$globals->asso('mail_domain')) {
+ return PL_NOT_FOUND;
+ }
new_groupadmin_page('xnet/groupe/alias-create.tpl');
if (!Post::has('submit')) {