-
Notifications
You must be signed in to change notification settings - Fork 106
/
queuescanner.php
74 lines (63 loc) · 2.47 KB
/
queuescanner.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?php
// $Id$
/*
All files in this work, except the modules/ticketsmith directory, are now
covered by the following copyright notice. The ticketsmith module is
under the Voxel Public License. See modules/ticketsmith/LICENSE
for details. Please note that included libraries in lib may have their
own license.
Copyright (c) 2003-2005 The dotProject Development Team <core-developers@dotproject.net>
This file is part of dotProject.
dotProject is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
dotProject is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with dotProject; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
The full text of the GPL is in the COPYING file.
*/
// Function to scan the event queue and execute any functions required.
require_once 'base.php';
require_once DP_BASE_DIR.'/includes/config.php';
require_once DP_BASE_DIR.'/includes/main_functions.php';
require_once DP_BASE_DIR.'/includes/db_connect.php';
require_once DP_BASE_DIR.'/classes/ui.class.php';
require_once DP_BASE_DIR.'/classes/event_queue.class.php';
require_once DP_BASE_DIR.'/classes/query.class.php';
$AppUI = new CAppUI;
$AppUI->setUserLocale();
$perms =& $AppUI->acl();
echo "Scanning Queue ...\n";
$queue = EventQueue::getInstance();
# Determine if we are called from the command line or from a web page,
# In either case we may have an argument telling us if we are scanning
# the batch or the immediate queue. If no argument, scan everything.
$batch = null;
if (isset($_REQUEST['batch'])) {
$batch = strtolower($_REQUEST['batch']);
} else if (isset($argv) && !empty($argv[1])) {
$batch = strtolower($argv[1]);
}
if (!empty($batch)) {
if ( is_numeric($batch)) {
$batch = intval($batch);
if ($batch[0] == 'y' || $batch[0] == 't') {
$batch = 1;
} else {
$batch = 0;
}
}
if ($batch) {
$queue->scanBatched();
} else {
$queue->scanImmediate();
}
} else {
$queue->scan();
}
echo 'Done, '.$queue->eventCount().' events processed'."\n";