- if ($ret) {
- foreach(Array($liste, $liste."-owner", $liste."-admin", $liste."-bounces") as $l) {
- XDB::execute("INSERT INTO aliases (alias,type) VALUES({?}, 'liste')", $l);
+ if ($ret && !$this->asso) {
+ foreach(Array($liste, $liste . "-owner", $liste . "-admin", $liste . "-bounces", $liste . "-unsubscribe") as $l) {
+ XDB::execute("INSERT INTO aliases (alias, type) VALUES({?}, 'liste')", $l);
+ }
+ } elseif ($ret) {
+ foreach (Array('', 'owner', 'admin', 'bounces', 'unsubscribe') as $app) {
+ $mdir = $app == '' ? '+post' : '+' . $app;
+ if (!empty($app)) {
+ $app = '-' . $app;
+ }
+ $red = $this->domain . '_' . $liste;
+ XDB::execute('INSERT INTO x4dat.virtual (alias, type)
+ VALUES({?}, {?})', $liste . $app . '@' . $this->domain, 'list');
+ XDB::execute('INSERT INTO x4dat.virtual_redirect (vid, redirect)
+ VALUES ({?}, {?})', XDB::insertId(),
+ $red . $mdir . '@listes.polytechnique.org');
+ $list->mass_subscribe($liste, join(' ', $this->members));