+ // Eventually adds the alias to the right domain.
+ if ($domain == $globals->mail->alias_dom || $domain == $globals->mail->alias_dom2) {
+ $req = new AliasReq($user, $alias, 'Admin request', false);
+ if ($req->commit()) {
+ $page->trigSuccess("Nouvel alias '$alias@$domain' attribué");
+ } else {
+ $page->trigError("Impossible d'ajouter l'alias '$alias@$domain', il est probablement déjà attribué");
+ }
+ } elseif ($domain == $globals->mail->domain || $domain == $globals->mail->domain2) {
+ $res = XDB::execute("INSERT INTO aliases (id, alias, type)
+ VALUES ({?}, {?}, 'alias')",
+ $user->id(), $alias);
+ $page->trigSuccess("Nouvel alias '$alias' ajouté");
+ } else {
+ $page->trigError("Le domaine '$domain' n'est pas valide");
+ }
+ } else if (!Post::blank('del_alias')) {
+ XDB::execute("DELETE FROM aliases
+ WHERE id = {?} AND alias = {?} AND
+ type NOT IN ('a_vie', 'homonyme')",
+ $user->id(), $val);
+ XDB::execute("UPDATE emails
+ SET rewrite = ''
+ WHERE uid = {?} AND rewrite LIKE CONCAT({?}, '@%')",
+ $user->id(), $val);
+ fix_bestalias($user);
+ $page->trigSuccess("L'alias '$val' a été supprimé");
+ } else if (!Post::blank('best')) {
+ XDB::execute("UPDATE aliases
+ SET flags = TRIM(BOTH ',' FROM REPLACE(CONCAT(',', flags, ','), ',bestalias,', ','))
+ WHERE id = {?}", $user->id());
+ XDB::execute("UPDATE aliases
+ SET flags = CONCAT_WS(',', IF(flags = '', NULL, flags), 'bestalias')
+ WHERE id = {?} AND alias = {?}", $user->id(), $val);
+ // As having a non-null bestalias value is critical in
+ // plat/al's code, we do an a posteriori check on the
+ // validity of the bestalias.
+ fix_bestalias($user);
+ }
+ // }}}
+
+ // Forum form {{{
+ if (Post::has('b_edit')) {
+ XDB::execute("DELETE FROM forum_innd
+ WHERE uid = {?}", $user->id());
+ if (Env::v('write_perm') != "" || Env::v('read_perm') != "" || Env::v('commentaire') != "" ) {
+ XDB::execute("INSERT INTO forum_innd
+ SET ipmin = '0', ipmax = '4294967295',
+ write_perm = {?}, read_perm = {?},
+ comment = {?}, priority = '200', uid = {?}",
+ Env::v('write_perm'), Env::v('read_perm'), Env::v('comment'), $user->id());