Enables creation of multiple Xnet accounts for groups.
[platal.git] / bin / cron / cron_xnet_accounts.php
CommitLineData
c329751f
SJ
1#!/usr/bin/php5 -q
2<?php
3/***************************************************************************
4 * Copyright (C) 2003-2011 Polytechnique.org *
5 * http://opensource.polytechnique.org/ *
6 * *
7 * This program is free software; you can redistribute it and/or modify *
8 * it under the terms of the GNU General Public License as published by *
9 * the Free Software Foundation; either version 2 of the License, or *
10 * (at your option) any later version. *
11 * *
12 * This program is distributed in the hope that it will be useful, *
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15 * GNU General Public License for more details. *
16 * *
17 * You should have received a copy of the GNU General Public License *
18 * along with this program; if not, write to the Free Software *
19 * Foundation, Inc., *
20 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
21 ***************************************************************************/
22
23require_once 'connect.db.inc.php';
24require_once 'plmailer.php';
25$limit = 60;
26
27$users = XDB::fetchAllAssoc('SELECT a.uid, a.hruid, r.hash, r.group_name, r.sender_name, r.email
28 FROM register_pending_xnet AS r
29 INNER JOIN accounts AS a ON (r.uid = a.uid)
30 WHERE a.state = \'disabled\'
31 ORDER BY r.date, a.uid');
32
33$mailer = new PlMailer('xnet/account.mail.tpl');
34
35$i = 0;
36foreach ($users as $user) {
37 $mailer->setTo($user['email']);
38 $mailer->assign('hash', $user['hash']);
39 $mailer->assign('hruid', $user['hruid']);
40 $mailer->assign('group', $user['group_name']);
41 $mailer->assign('sender_name', $user['sender_name']);
42 $mailer->send();
43
44 XDB::execute('UPDATE accounts
45 SET state = \'pending\'
46 WHERE uid = {?}',
47 $user['uid']);
48
49 if ($i == $limit) {
50 $i = 0;
51 sleep(60);
52 } else {
53 ++$i;
54 }
55}
56
57
58// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
59?>