alias = $_alias; $this->reason = $_reason; $this->public = $_public; $this->old = $_old; } // function get_request() {{{2 static public function get_request($uid) { return parent::get_typed_request($uid, 'alias'); } // function formu() {{{2 public function formu() { return 'include/form.valid.aliases.tpl'; } // function _mail_subj {{{2 protected function _mail_subj() { global $globals; return "[Polytechnique.org/MELIX] Demande de l'alias {$this->alias}@{$globals->mail->alias_dom}"; } // function _mail_body {{{2 protected function _mail_body($isok) { global $globals; if ($isok) { return " L'adresse email {$this->alias}@{$globals->mail->alias_dom} que tu avais demandée vient d'être créée, tu peux désormais l'utiliser à ta convenance." . ($this->public == 'public' ? ' À ta demande, cette adresse apparaît maintenant sur ta fiche.' : ''); } else { return " La demande que tu avais faite pour l'alias {$this->alias}@{$globals->mail->alias_dom} a été refusée."; } } // function commit() {{{2 public function commit() { if ($this->user->hasProfile()) { XDB::execute('UPDATE profiles SET alias_pub = {?} WHERE pid = {?}', $this->public, $this->user->profile()->id()); } if ($this->old) { $success = XDB::execute('UPDATE email_source_account SET email = {?} WHERE uid = {?} AND type = \'alias_aux\'', $this->alias, $this->user->id()); } else { $success = XDB::execute('INSERT INTO email_source_account (email, uid, domain, type, flags) SELECT {?}, {?}, id, \'alias_aux\', \'\' FROM email_virtual_domains WHERE name = {?}', $this->alias, $this->user->id(), Platal::globals()->mail->alias_dom); } if ($success) { // Update the local User object, to pick up the new bestalias. require_once 'emails.inc.php'; fix_bestalias($this->user); $this->user = User::getSilentWithUID($this->user->id()); } return $success; } } // vim:set et sw=4 sts=4 sws=4 foldmethod=marker fenc=utf-8: ?>