bf20e878b1e75473a646ca17c7ae4856770731a0
[platal.git] / bin / cron / registrations.php
1 #!/usr/bin/php5 -q
2 <?php
3
4 require 'connect.db.inc.php';
5
6 $message = '';
7
8 $res = XDB::iterRow("SELECT a.registration_date, a.hruid, e.email
9 FROM accounts AS a
10 INNER JOIN account_profiles AS ap ON (ap.uid = a.uid AND FIND_IN_SET('owner', ap.perms))
11 INNER JOIN profile_display AS pd ON (ap.pid = pd.pid)
12 LEFT JOIN emails AS e ON (a.uid = e.uid AND NOT FIND_IN_SET('filter', e.flags))
13 WHERE a.registration_date > {?}
14 GROUP BY a.hruid
15 ORDER BY pd.promo",
16 date("Ymd000000", strtotime('last Monday')));
17 if ($count = $res->total()) {
18 $message .= "$count INSCRIPTIONS CONFIRMÉES CETTE SEMAINE :\n";
19 while (list($date, $hruid, $email) = $res->next()) {
20 $message .= "$date, $hruid, $email\n";
21 }
22 }
23
24 $res = XDB::iterRow("SELECT r.date, a.hruid, r.email
25 FROM register_pending AS r
26 INNER JOIN accounts AS a ON (a.uid = r.uid)
27 INNER JOIN account_profiles AS ap ON (ap.uid = a.uid AND FIND_IN_SET('owner', ap.perms))
28 INNER JOIN profile_display AS pd ON (ap.pid = pd.pid)
29 WHERE r.hash != 'INSCRIT'
30 GROUP BY a.hruid
31 ORDER BY pd.promo");
32 if ($count = $res->total()) {
33 $message .= "\n$count INSCRIPTIONS NON CONFIRMÉES :\n";
34 while (list($date, $hruid, $email) = $res->next()) {
35 $message .= "$date, $hruid, $email\n";
36 }
37 }
38
39 $res = XDB::query('SELECT COUNT(DISTINCT uid), COUNT(*)
40 FROM register_marketing');
41 list($a, $b) = $res->fetchOneRow();
42 $message .= "\nINSCRIPTIONS SOLLICITÉES :\n";
43 $message .= " $a utilisateurs\n $b adresses email\n";
44
45 $message .= "\n\n";
46
47 $mailer = new PlMailer();
48 $mailer->setSubject('Rapport des inscriptions de la semaine');
49 $mailer->setFrom($globals->register->notif);
50 $mailer->addTo($globals->register->notif);
51 $mailer->setTxtBody($message);
52 $mailer->send();
53
54 // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
55 ?>