/
TASKS.php
71 lines (59 loc) · 1.63 KB
/
TASKS.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
<?php
/***********************************************
DAVE PHP API
https://github.com/evantahler/PHP-DAVE-API
Evan Tahler | 2011
I am the task runner.
Tasks can be run with the following syntax: php API/TASK.php --task=name_of_task, or by instantitaiting the class directly
***********************************************/
$parts = explode("/",__FILE__);
$ThisFile = $parts[count($parts) - 1];
chdir(substr(__FILE__,0,(strlen(__FILE__) - strlen($ThisFile))));
require_once("LoadEnv.php"); unset($parts); unset($ThisFile);
require_once("helper_functions/parseArgs.php");
$ARGS = __parseArgs();
$TaskNames = load_tasks();
// help / List
if ($ARGS["h"] == true || $ARGS["help"] == true || $ARGS["l"] == true || $ARGS["list"] == true)
{
echo "Task List:\r\n\r\n";
$max_name_length = 0;
foreach($TaskNames as $class_name)
{
if (strlen($class_name) > $max_name_length)
{
$max_name_length = strlen($class_name);
}
}
foreach($TaskNames as $class_name)
{
echo "- ".$class_name::class_name();
$i = strlen($class_name);
while ($i < ($max_name_length + 4)) { echo " "; $i++; }
echo $class_name::get_description();
echo "\r\n";
}
exit;
}
// which task?
$ThisTask = ($ARGS["t"]);
if (strlen($ThisTask) == 0){ $ThisTask = ($ARGS["T"]); }
if (strlen($ThisTask) == 0){ $ThisTask = ($ARGS["task"]); }
if (strlen($ThisTask) == 0)
{
echo "No task provided. Please provide one with -t or --task. Use --list to show available tasks.\r\n";
exit;
}
else
{
if (in_array(($ThisTask), $TaskNames))
{
echo run_task($ThisTask, $ARGS);
}
else
{
echo "That task cannot be found. Use --list to show available tasks.\r\n";
exit;
}
}
?>