fixes
[platal.git] / bin / emails.broken.php
CommitLineData
0337d704 1<?php
2/***************************************************************************
50a40a33 3 * Copyright (C) 2003-2006 Polytechnique.org *
0337d704 4 * http://opensource.polytechnique.org/ *
5 * *
6 * This program is free software; you can redistribute it and/or modify *
7 * it under the terms of the GNU General Public License as published by *
8 * the Free Software Foundation; either version 2 of the License, or *
9 * (at your option) any later version. *
10 * *
11 * This program is distributed in the hope that it will be useful, *
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14 * GNU General Public License for more details. *
15 * *
16 * You should have received a copy of the GNU General Public License *
17 * along with this program; if not, write to the Free Software *
18 * Foundation, Inc., *
19 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
20 ***************************************************************************/
21
22ini_set('include_path', '../include:/usr/share/php');
23
24require_once('../include/xorg.inc.php');
25require_once('../include/emails.inc.php');
26
27$opts = getopt('i:');
28if (($opts['i'] && $opts['i'] == '-') || empty($opts['i'])) {
29 $file = 'php://stdin';
30} else {
31 $file = $opts['i'];
32}
33
575dd9be 34$emails = explode("\n", file_get_contents($file));
0337d704 35foreach ($emails as $_email) {
36 $email = valide_email($_email);
37 if (empty($email) || $email=='@') {
38 continue;
39 }
40
08cce2ff 41 $sel = XDB::query(
0337d704 42 "SELECT e1.uid, e1.panne != 0 AS panne, count(e2.uid) AS nb_mails, u.nom, u.prenom, u.promo, a.alias
43 FROM emails AS e1
44 LEFT JOIN emails AS e2 ON (e1.uid = e2.uid AND FIND_IN_SET('active', e2.flags) AND e1.email != e2.email)
45 INNER JOIN auth_user_md5 AS u ON (e1.uid = u.user_id)
46 INNER JOIN aliases AS a ON (u.user_id = a.id AND FIND_IN_SET('bestalias',a.flags))
47 WHERE e1.email = {?}
48 GROUP BY e1.uid", $email);
49 if ($x = $sel->fetchOneAssoc()) {
50 if (!$x['panne']) {
08cce2ff 51 XDB::execute("UPDATE emails SET panne=NOW() WHERE email = {?}", $email);
0337d704 52 }
53
54 if (empty($x['nb_mails'])) {
55 echo "$email : seule adresse active de {$x['prenom']} {$x['nom']}\n";
56 } else {
57 $message = " Bonjour !
58
59 Nous t'écrivons car lors de l'envoi de la lettre d'information mensuelle
60de Polytechnique.org à ton adresse polytechnicienne :
61
62 {$x['alias']}@polytechnique.org,
63
64l'adresse {$email}, sur laquelle tu rediriges ton courrier, ne
65fonctionnait pas.
66
67 Estimant que cette information serait susceptible de t'intéresser, nous
68avons préféré t'en informer. Il n'est pas impossible qu'il ne s'agisse que
69d'une panne temporaire. Si tu souhaites changer la liste des adresses sur
70lesquelles tu reçois le courrier qui t'es envoyé à ton adresse
71polytechnicienne, il te suffit de te rendre sur la page :
72
8858cfc1 73 {$globals->baseurl}/emails/redirect
0337d704 74
75
76 A bientôt sur Polytechnique.org !
77 L'équipe d'administration <support@polytechnique.org>
78
79---------------------------------------------------------------------------
80
81 PS : si jamais tu ne disposes plus du mot de passe te permettant
82d'accéder au site, rends toi sur la page
83
8858cfc1 84 {$globals->baseurl}/recovery
0337d704 85
86elle te permettra de créer un nouveau mot de passe après avoir rentré ton
87login ({$x['alias']}) et ta date de naissance !";
88
89 require_once("diogenes/diogenes.hermes.inc.php");
90 $mail = new HermesMailer();
91 $mail->setFrom('"Polytechnique.org" <support@polytechnique.org>');
92 $mail->addTo("\"{$x['prenom']} {$x['nom']}\" <{$x['alias']}@polytechnique.org>");
93 $mail->setSubject("Une de tes adresse de redirection Polytechnique.org ne marche plus !!");
94 $mail->setTxtBody($message);
95 $mail->send();
96 echo "$email : mail envoyé\n";
97 }
98 } else {
99 echo "$email : cette addresse n'est pas dans la base\n";
100 }
101}
102
103?>