pattecassee après NL
authorx2000habouzit <x2000habouzit>
Wed, 11 Feb 2004 13:57:05 +0000 (13:57 +0000)
committerx2000habouzit <x2000habouzit>
Wed, 11 Feb 2004 13:57:05 +0000 (13:57 +0000)
configs/mails.conf
etat_migration
htdocs/admin/newsletter_pattecassee.php [new file with mode: 0644]
templates/admin/newsletter_pattecassee.tpl [new file with mode: 0644]
templates/mails/pattecasser.nl.tpl [new file with mode: 0644]

index f13b74c..f21223f 100644 (file)
@@ -26,3 +26,6 @@ cc=Equipe Polytechnique.org <validation+evts@polytechnique.org>
 from=Equipe Polytechnique.org <validation+sondages@polytechnique.org>
 cc=Equipe Polytechnique.org <validation+sondages@polytechnique.org>
 
+[pattecassee_nl]
+from=Polytechnique.org <support@polytechnique.org>
+
index 827d470..ab5d65d 100644 (file)
@@ -27,7 +27,6 @@ Etat  | Ancien nom                                                              | Nouveau nom
          | admin/marketing.php                                           | 
          | admin/marketing_promo.php                             | 
          | admin/marketing_volontaire.php                        | 
-         | admin/newsletter_pattecassee.php              | 
          | admin/pg.php                                                          | 
          | admin/relance.php                                             | 
          | admin/utilisateurs.php                                        | 
@@ -144,6 +143,7 @@ xx    | admin/FormatePrenomNOM.php                            | scripts/
 xx       | admin/graph_promo.php                                         | stats/graph_promo.php
 xx       | admin/index.php                                                       | -
 xx       | admin/newsletter_archi.php                            | -
+xx       | admin/newsletter_pattecassee.php              | -
 xx       | admin/newsletter_prep.php                             | -
 xx       | admin/postfix_blacklist.php                           | -
 xx       | admin/postfix_perm.php                                        | -
diff --git a/htdocs/admin/newsletter_pattecassee.php b/htdocs/admin/newsletter_pattecassee.php
new file mode 100644 (file)
index 0000000..c3fd87c
--- /dev/null
@@ -0,0 +1,61 @@
+<?php
+require("auto.prepend.inc.php");
+new_admin_page('admin/newsletter_pattecassee.tpl');
+
+function valide_email($str) {
+
+   $em = trim(rtrim($str));
+   list($ident, $dom) = explode("@", $em);
+   if ($dom == "m4x.org" or $dom == "polytechnique.org") {
+       list($ident1) = explode("_", $ident);
+       list($ident) = explode("+", $ident1);
+   }
+   return $ident . "@" . $dom;
+
+}
+
+require("tpl.mailer.inc.php");
+
+if (array_key_exists('email', $_GET) && array_key_exists('action', $_GET)) {
+    $email = valide_email($_GET['email']);
+    // vérifications d'usage
+    $sel = mysql_query(
+      "SELECT a.username
+       FROM emails AS e
+       INNER JOIN auth_user_md5 AS a ON e.uid = a.user_id
+       WHERE e.email='$email'");
+       
+    $mailer = new TplMailer('templates/mails/pattecasser.nl.tpl');
+    $mailer->assign('email', $email);
+    
+    if (list($dest) = mysql_fetch_row($sel)) {
+        $mailer->assign('dest', $dest);
+        $mailer->send();
+        $page->assign('erreur', "<p class='erreur'>Mail envoyé ! :o)</p>");
+    }
+} else if (array_key_exists('email', $_POST)) {
+    $email = valide_email($_POST['email']);
+    $sel = mysql_query(
+      "SELECT e.uid, e.panne, a.nom, a.prenom, a.promo, a.username
+       FROM emails AS e
+       INNER JOIN auth_user_md5 AS a ON e.uid = a.user_id
+       WHERE e.email = '$email'");
+    if (list($puid, $ppanne, $pnom, $pprenom, $ppromo, $pusername) = mysql_fetch_row($sel)) {
+        // on écrit dans la base que l'adresse est cassée
+        if ($ppanne == '0000-00-00')
+            mysql_query("UPDATE emails SET panne='".date("Y-m-d")."' WHERE email =  '$email'");
+        // on regarde s'il y a d'autres redirections actives
+        $sel = mysql_query("SELECT * FROM emails WHERE uid = " . $puid . " AND FIND_IN_SET('active', flags) AND email != '$email'");
+        $nb_emails = mysql_num_rows($sel);
+        $page->assign('nb_emails', $nb_emails);
+        $page->assign('username', $pusername);
+        $page->assign('prenom', $pprenom);
+        $page->assign('nom', $pnom);
+        $page->assign('promo', $ppromo);
+    } else
+        $page->assign('no_more', 1);
+    $page->assign('email', $email);
+}
+
+$page->display();
+?>
diff --git a/templates/admin/newsletter_pattecassee.tpl b/templates/admin/newsletter_pattecassee.tpl
new file mode 100644 (file)
index 0000000..ad9fdd2
--- /dev/null
@@ -0,0 +1,57 @@
+{* $id$ *}
+
+<div class="rubrique">
+  Vérifier une patte cassée suite à l'envoi de la newsletter
+</div>
+
+{dynamic}
+
+{$erreur}
+
+{if $smarty.post.email}
+
+{if $no_more}
+  <p class="erreur">
+  Désolé mais plus personne n'utilise l'adresse {$email} comme adresse de redirection.
+  Il est donc probable que ce problème de redirection ait été corrigé.
+  </p>
+{elseif $nb_emails}
+  <p class="erreur">
+  <a href="{"x.php?x=$username"|url}">{"$prenom $nom (X$promo)"}</a>
+  a à l'heure actuelle {$nb_emails} adresse(s) email(s) de redirection active(s)
+  en dehors de celle que tu as indiquée.
+  Cela ne veut pas forcément dire qu'il les avait déjà activées
+  lorsque la newsletter a été envoyée, mais c'est fort probable.
+  </p>
+  <p class="erreur">
+  Pour lui envoyer un mail qui l'avertira de son adresse en panne,
+  <a href="{$smarty.server.PHP_SELF}?email={$email}&amp;action=mail">il suffit de cliquer !</a>
+  </p>
+{else}
+  <p class="erreur">
+  Désolé, mais <a href="{"x.php?x=$username"|url}">{"$prenom $nom (X$promo)"}</a>,
+  n'a actuellement aucune adresse email de redirection active
+  autre que celle que tu viens de rentrer.
+  L'idéal serait de contacter son kessier de promo pour l'en avertir
+  et essayer de retrouver la trace de ce camarade !!
+  </p>
+{/if}
+
+{/if}
+
+{/dynamic}
+
+<p class="normal">
+Rentre dans la zone de saisie ci-dessous l'adresse email qui est revenue
+en erreur suite à la distribution de la newsletter :
+</p>
+<br />
+<form action="{$smarty.server.PHP_SELF}" method="post">
+  <table class="tinybicol" cellpadding="3" summary="Saisie email en panne">
+    <tr><th>Adresse email défectueuse</th></tr>
+    <tr><td class="center"><input type="text" name="email" size="40" maxlength="70" /></td></tr>
+    <tr><td class="center"><input type="submit" value="Ok" /></td></tr>
+  </table>
+</form>
+
+{* vim:set et sw=2 sts=2 sws=2: *}
diff --git a/templates/mails/pattecasser.nl.tpl b/templates/mails/pattecasser.nl.tpl
new file mode 100644 (file)
index 0000000..0558aba
--- /dev/null
@@ -0,0 +1,19 @@
+{* $Id: pattecasser.nl.tpl,v 1.1 2004-02-11 13:57:06 x2000habouzit Exp $ *}
+{config_load file="mails.conf" section="pattecassee_nl"}
+{subject text="Une de tes adresses de redirection Polytechnique.org ne marche plus !!"}
+{from full=#from#}
+{to addr=$dest}
+
+  Bonjour !
+       
+  Nous t'écrivons car lors de l'envoi de la lettre d'information mensuelle de Polytechnique.org à ton adresse polytechnicienne {$dest}@polytechnique.org, l'adresse {$email}, sur laquelle tu rediriges ton courrier, ne fonctionnait pas.
+  Estimant que cette information serait susceptible de t'intéresser, nous avons préféré t'en informer. Il n'est pas impossible qu'il ne s'agisse que d'une panne temporaire.
+  Si tu souhaites changer la liste des adresses sur lesquelles tu reçois le courrier qui t'es envoyé à ton adresse polytechnicienne, il te suffit de te rendre sur la page :
+  https://www.polytechnique.org/emails.php
+  
+  A bientôt sur Polytechnique.org !
+  L'équipe d'administration <support@polytechnique.org>
+  
+  PS : si jamais tu ne disposes plus du mot de passe te permettant d'accéder au site, rends toi sur la page https://www.polytechnique.org/recovery.php ; elle te permettra de créer un nouveau mot de passe après avoir rentré ton login ({$dest}) et ta date de naissance !";
+  
+{* vim:set nocindent noautoindent textwidth=0: *}