summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFbenas <philbeansburton@gmail.com>2020-06-07 03:09:35 +0100
committerFbenas <philbeansburton@gmail.com>2020-06-07 03:09:35 +0100
commit37594ccdf6581d669045e097114be37d221dba24 (patch)
tree95e78a51857e5e56be74ca31b7ef1a5a275b374a /src
parent8cd1dfe6acea4b5cd87b72cb951197a91d6026c1 (diff)
First pass at making an IRC compatiable warapper to taskwarrior
Diffstat (limited to 'src')
-rw-r--r--src/IRC/Application.php47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/IRC/Application.php b/src/IRC/Application.php
new file mode 100644
index 0000000..4bb6d71
--- /dev/null
+++ b/src/IRC/Application.php
@@ -0,0 +1,47 @@
+<?php
+
+namespace FBeans\Blatask\IRC;
+
+use FBeans\BlaIRC\Command;
+use FBeans\BlaIRC\Application As BlaApplication;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\Process\Process;
+
+class Application extends BlaApplication
+{
+ public function command(): Command
+ {
+ $command = new Command;
+ $command->setName('task:list');
+
+ // argument 0 is the command name
+ $command->addArgument(1);
+
+ $command->setExecuteCallback(
+ function (InputInterface $input, OutputInterface $output) {
+ $filter = $input->getArgument(1);
+
+ $process_argument = ["task", "list"];
+
+ if ($filter) {
+ $process_argument[] = $filter;
+ }
+
+ $process = new Process($process_argument);
+
+ $process->run();
+
+ if (!$process->isSuccessful()) {
+ $output->write($process->getErrorOutput());
+ return Command::SUCCESS;
+ }
+
+ $output->write($process->getOutput());
+ return Command::FAILURE;
+ }
+ );
+
+ return $command;
+ }
+}