summaryrefslogtreecommitdiff
path: root/app/Console/CronjobCommand.php
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2016-04-12 21:26:17 -0400
committerFrederic Guillot <fred@kanboard.net>2016-04-12 21:26:17 -0400
commitaf7027ea31a691e2eea6d813f6aa3cf08f8b9d0a (patch)
tree8524395f06b30f812dca5cd68dd15fa09e3a2410 /app/Console/CronjobCommand.php
parent2a74ed6e63b05627928e1dd6eeb67d824f4c1903 (diff)
Rename CLI classes
Diffstat (limited to 'app/Console/CronjobCommand.php')
-rw-r--r--app/Console/CronjobCommand.php32
1 files changed, 32 insertions, 0 deletions
diff --git a/app/Console/CronjobCommand.php b/app/Console/CronjobCommand.php
new file mode 100644
index 00000000..dae13af9
--- /dev/null
+++ b/app/Console/CronjobCommand.php
@@ -0,0 +1,32 @@
+<?php
+
+namespace Kanboard\Console;
+
+use Symfony\Component\Console\Input\ArrayInput;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\Console\Output\NullOutput;
+
+class CronjobCommand extends BaseCommand
+{
+ private $commands = array(
+ 'projects:daily-stats',
+ 'notification:overdue-tasks',
+ 'trigger:tasks',
+ );
+
+ protected function configure()
+ {
+ $this
+ ->setName('cronjob')
+ ->setDescription('Execute daily cronjob');
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output)
+ {
+ foreach ($this->commands as $command) {
+ $job = $this->getApplication()->find($command);
+ $job->run(new ArrayInput(array('command' => $command)), new NullOutput());
+ }
+ }
+}