{site}.inc.php is the base for all jobs.
[platal.git] / bin / emails.broken.php
index 93155a4..d371854 100755 (executable)
@@ -1,6 +1,7 @@
+#!/usr/bin/php5 -q
 <?php
 /***************************************************************************
- *  Copyright (C) 2003-2006 Polytechnique.org                              *
+ *  Copyright (C) 2003-2008 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
@@ -22,8 +23,8 @@
 ini_set('include_path', '.:../include:/usr/share/php');
 
 require_once('connect.db.inc.php');
-require_once('xorg.inc.php');
 require_once('emails.inc.php');
+require_once('../classes/plmailer.php');
 
 $opts = getopt('i:o:');
 if (($opts['i'] && $opts['i'] == '-') || empty($opts['i'])) {
@@ -57,7 +58,7 @@ foreach ($emails as $_email) {
     if ($x = $sel->fetchOneAssoc()) {
         if (!$x['panne']) {
             XDB::execute("UPDATE emails
-                             SET panne=NOW(), last=NOW()
+                             SET panne=NOW(), last=NOW(),
                                  panne_level = 1
                            WHERE email = {?}",
                           $email);
@@ -66,52 +67,18 @@ foreach ($emails as $_email) {
                              SET last = CURDATE(),
                                  panne_level = panne_level + 1
                            WHERE email = {?}
-                                 AND DATE_ADD(last, INTERVAL 15 DAY) < CURDATE()", $email);
+                                 AND DATE_ADD(last, INTERVAL 7 DAY) < CURDATE()", $email);
         }
 
         if (empty($x['nb_mails'])) {
             echo "$email : seule adresse active de {$x['prenom']} {$x['nom']}\n";
         } else {
-            $message = "  Bonjour !
-       
-  Nous t'écrivons car lors de l'envoi de la lettre d'information mensuelle
-de Polytechnique.org à ton adresse polytechnicienne :
-
-    {$x['alias']}@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 :
-
-    {$globals->baseurl}/emails/redirect
-
-
-  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
-
-    {$globals->baseurl}/recovery
-
-elle te permettra de créer un nouveau mot de passe après avoir rentré ton
-login ({$x['alias']}) et ta date de naissance !";
-
-            require_once("diogenes/diogenes.hermes.inc.php");
-            $mail = new HermesMailer();
-            $mail->setFrom('"Polytechnique.org" <support@polytechnique.org>');
-            $mail->addTo("\"{$x['prenom']} {$x['nom']}\" <{$x['alias']}@polytechnique.org>");
-            $mail->setSubject("Une de tes adresse de redirection Polytechnique.org ne marche plus !!");
-            $mail->setTxtBody($message);
+            $mail = new PlMailer('emails/broken.mail.tpl');
+            $mail->addTo("\"{$x['prenom']} {$x['nom']}\" <{$x['alias']}@" . $globals->mail->domain . '>');
+            $mail->assign('x', $x);
+            $mail->assign('email', $email);
             $mail->send();
-            echo "$email : mail envoyé\n";
+            echo "$email : mail envoyé\n";
         }
 
         if (!isset($list[$x['alias']])) {
@@ -120,7 +87,7 @@ login ({$x['alias']}) et ta date de naissance !";
             $list[$x['alias']][] = $email;
         }
     } else {
-        echo "$email : cette addresse n'est pas dans la base\n";
+        echo "$email : cette adresse n'est pas dans la base\n";
     }
 }
 
@@ -128,6 +95,10 @@ XDB::execute("UPDATE emails
                  SET panne_level = panne_level - 1
                WHERE flags = 'active' AND panne_level > 1
                      AND last != CURDATE()");
+XDB::execute("UPDATE emails
+                 SET panne_level = 0
+               WHERE flags = 'active' AND panne_level = 1
+                     AND DATE_ADD(last, INTERVAL 1 YEAR) < CURDATE()");
 
 $csv = "nom;prenom;promo;alias;bounce;nbmails\n";
 foreach ($list as $alias=>$mails) {
@@ -147,4 +118,5 @@ $fo = fopen($output, 'w+');
 fwrite($fo, $csv);
 fclose($fo);
 
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
 ?>