Uses default Xorg signature in marketing emails.
authorStéphane Jacob <sj@m4x.org>
Mon, 19 Jul 2010 13:13:33 +0000 (15:13 +0200)
committerStéphane Jacob <sj@m4x.org>
Tue, 20 Jul 2010 08:49:59 +0000 (10:49 +0200)
Signed-off-by: Stéphane Jacob <sj@m4x.org>
include/marketing.inc.php
modules/marketing.php
templates/include/signature.mail.tpl
templates/marketing/marketing.mail.tpl
templates/marketing/public.tpl

index af1ef1f..592f95a 100644 (file)
@@ -77,7 +77,7 @@ class Marketing
         global $globals;
 
         if ($from == 'staff' || !($user = User::getSilent($sender))) {
-            return '"L\'équipe de Polytechnique.org" <register@' . $globals->mail->domain . '>';
+            return "\"L'équipe de Polytechnique.org\" <register@" . $globals->mail->domain . '>';
         }
         return '"' . $user->fullName() . '" <' . $user->bestEmail() . '>';
     }
@@ -116,7 +116,7 @@ class Marketing
         }
         $sender = substr($this->sender_mail, 1, strpos($this->sender_mail, '"', 2)-1);
         $text = str_replace(array('%%hash%%', '%%sender%%', '%%personal_notes%%'),
-                            array($this->hash, $this->sender_mail, ''), $text);
+                            array($this->hash, "Cordialement,\n-- \n" . $this->sender_mail, ''), $text);
         $mailer = new PlMailer();
         $mailer->setFrom($this->sender_mail);
         $mailer->addTo($this->user['mail']);
@@ -136,7 +136,8 @@ class Marketing
         $this->engine->process($this->user);
         if ($valid) {
             require_once 'validations.inc.php';
-            $valid = new MarkReq(User::getSilent($this->sender), $this->user['user'], $this->user['mail'],
+            $sender = User::getSilent($this->sender);
+            $valid = new MarkReq($sender, $this->user['user'], $this->user['mail'],
                                  $this->from == 'user', $this->type, $this->data, $this->personal_notes);
             $valid->submit();
         }
@@ -248,10 +249,12 @@ class AnnuaireMarketing implements MarketingEngine
                      . "Pour y figurer, il te suffit de visiter cette page ou de copier cette adresse "
                      . "dans la barre de ton navigateur :";
         if ($from === null) {
-            $this->signature = "L'équipe de Polytechnique.org,\n"
-                             . "Le portail des élèves & anciens élèves de l'École polytechnique";
+            $page = new XorgPage();
+            $page->changeTpl('include/signature.mail.tpl', NO_SKIN);
+            $page->assign('mail_part', 'text');
+            $this->signature = $page->raw();
         } else {
-            $this->signature = "%%sender%%";
+            $this->signature = '%%sender%%';
         }
         if (is_null($personal_notes) || $personal_notes == '') {
             $this->personal_notes = '%%personal_notes%%';
index aad7164..b878478 100644 (file)
@@ -313,6 +313,7 @@ class MarketingModule extends PLModule
             require_once 'marketing.inc.php';
 
             $sender = User::getSilent(S::v('uid'));
+            $perso_signature = 'Cordialement,<br />-- <br />' . $sender->fullName();
             $market = new AnnuaireMarketing(null, true);
             $text = $market->getText(array(
                 'sexe'           => $user->isFemale(),
@@ -322,11 +323,10 @@ class MarketingModule extends PLModule
             $text = str_replace('%%hash%%', '', $text);
             $text = str_replace('%%personal_notes%%', '<em id="personal_notes_display"></em>', $text);
             $text = str_replace('%%sender%%',
-                                "<span id=\"sender\">" . $sender->fullName() . '</span>', $text);
+                                '<span id="sender">' . $perso_signature . '</span>', $text);
             $page->assign('text', nl2br($text));
-            // TODO (JAC): define a unique Xorg signature for all the emails we send.
-            $page->assign('xorg_signature', "L'équipe de Polytechnique.org,<br />Le portail des élèves & anciens élèves de l'École polytechnique");
-            $page->assign('perso_signature', $sender->fullName());
+            $page->assign('perso_signature', $perso_signature);
+            $page->assign('mail_part', 'escaped_html');
         }
     }
 
index d22689a..dc4cee0 100644 (file)
 {*                                                                        *}
 {**************************************************************************}
 
-{if mail_part eq "wiki"}
+{if $mail_part eq "wiki"}
 Cordialement,\\
 -- \\
 l'équipe de Polytechnique.org\\
 Le portail des élèves & anciens élèves de l'École polytechnique
-{elseif mail_part eq "text"}
+{elseif $mail_part eq "text"}
 Cordialement,
 -- 
 l'équipe de Polytechnique.org
 Le portail des élèves & anciens élèves de l'École polytechnique
-{elseif mail_part eq "html"}
+{elseif $mail_part eq "html"}
 Cordialement,<br />
 -- <br />
 l'équipe de Polytechnique.org<br />
 Le portail des élèves & anciens élèves de l'École polytechnique
-{/if}
+{elseif $mail_part eq "escaped_html"}Cordialement,<br />-- <br />l&#39;équipe de Polytechnique.org<br />Le portail des élèves & anciens élèves de l&#39;École polytechnique{/if}
 
 {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
index dbaff61..e7fdb79 100644 (file)
@@ -37,8 +37,6 @@ N'hésite pas à parler de Polytechnique.org à nos camarades pas encore inscrit
 {$personal_notes}
 À bientôt sur Polytechnique.org <https://www.polytechnique.org>,
 
-Bien cordialement,
--- 
 {$sign}
 
 {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}
index e0951c5..e20cfb5 100644 (file)
@@ -95,8 +95,8 @@ peut sans aucun doute l'aider à se décider&nbsp;!
         </label><br />
         <label>
           <input type="radio" name="origine" value="staff"
-                 onclick='$("#sender").html("{$xorg_signature}"); $("#tr_perso").hide();
-                          $("#personal_notes_display").hide();' />
+                 onclick='$("#sender").html("{include file=include/signature.mail.tpl mail_part=$mail_part}");
+                          $("#tr_perso").hide(); $("#personal_notes_display").hide();' />
           au nom de l'équipe Polytechnique.org
         </label>
       </td>