X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;ds=sidebyside;f=modules%2Femail.php;h=a3f7b2bf31f2d7384c06ba6afae22936c26a17b9;hb=dd9b361324a289efb9b4c9d67c5324a3d5036d53;hp=81fb7ba7a4a118eafd426acce96dcfa8cee132f2;hpb=2ab3486b89b57e612d6f412afa97f7442a0e2ac0;p=platal.git diff --git a/modules/email.php b/modules/email.php index 81fb7ba..a3f7b2b 100644 --- a/modules/email.php +++ b/modules/email.php @@ -24,14 +24,14 @@ class EmailModule extends PLModule function handlers() { return array( - 'emails' => $this->make_hook('emails', AUTH_COOKIE), - 'emails/alias' => $this->make_hook('alias', AUTH_MDP), - 'emails/antispam' => $this->make_hook('antispam', AUTH_MDP), + 'emails' => $this->make_hook('emails', AUTH_COOKIE, 'mail'), + 'emails/alias' => $this->make_hook('alias', AUTH_MDP, 'mail'), + 'emails/antispam' => $this->make_hook('antispam', AUTH_MDP, 'mail'), 'emails/broken' => $this->make_hook('broken', AUTH_COOKIE), - 'emails/redirect' => $this->make_hook('redirect', AUTH_MDP), - 'emails/send' => $this->make_hook('send', AUTH_MDP), + 'emails/redirect' => $this->make_hook('redirect', AUTH_MDP, 'mail'), + 'emails/send' => $this->make_hook('send', AUTH_MDP, 'mail'), 'emails/antispam/submit' => $this->make_hook('submit', AUTH_COOKIE), - 'emails/test' => $this->make_hook('test', AUTH_COOKIE, 'user', NO_AUTH), + 'emails/test' => $this->make_hook('test', AUTH_COOKIE, 'mail', NO_AUTH), 'emails/rewrite/in' => $this->make_hook('rewrite_in', AUTH_PUBLIC), 'emails/rewrite/out' => $this->make_hook('rewrite_out', AUTH_PUBLIC), @@ -106,8 +106,6 @@ class EmailModule extends PLModule function handler_alias(&$page, $action = null, $value = null) { - require_once 'validations.inc.php'; - global $globals; $page->changeTpl('emails/alias.tpl'); @@ -171,9 +169,9 @@ class EmailModule extends PLModule } //vérifier que l'alias n'est pas déja en demande - $it = new ValidateIterator(); + $it = Validate::iterate('alias'); while($req = $it->next()) { - if ($req->type == 'alias' and $req->alias == $alias_mail) { + if ($req->alias == $alias_mail) { $page->trigError("L'alias $alias_mail a déja été demandé. Tu ne peux donc pas l'obtenir pour l'instant."); return ; @@ -194,7 +192,7 @@ class EmailModule extends PLModule if ($user->hasProfile()) { XDB::execute("UPDATE profiles SET alias_pub = {?} - WHERE pid = {?}", + WHERE pid = {?}", $value, $user->profile()->id()); } $visibility = ($value == 'public'); @@ -387,8 +385,9 @@ class EmailModule extends PLModule $_POST['to_contacts'] = explode(';', @$_POST['to_contacts']); $_POST['cc_contacts'] = explode(';', @$_POST['cc_contacts']); $data = serialize($_POST); - XDB::execute("REPLACE INTO email_send_save - VALUES ({?}, {?})", + XDB::execute('INSERT INTO email_send_save (uid, data) + VALUES ({?}, {?}) + ON DUPLICATE KEY UPDATE data = VALUES(data)', S::user()->id('uid'), $data); } exit;