Make "readme" and "config" commands work again
[bdrem.git] / src / bdrem / UserInterface.php
index de6d3bbe922d9177318721ad73cb7dfe339fd5ad..b0b21ccff6249a3b7b523d1a8ba398bda52e6fda 100644 (file)
@@ -45,6 +45,9 @@ abstract class UserInterface
             $res = $this->parseParameters($parser);
 
             $this->config->load();
+            setlocale(LC_TIME, $this->config->locale);
+            $this->handleCommands($res);
+
             if (!$this->config->cfgFileExists) {
                 throw new \Exception(
                     "No config file found. Looked at the following places:\n"
@@ -52,9 +55,6 @@ abstract class UserInterface
                 );
             }
 
-            setlocale(LC_TIME, $this->config->locale);
-            $this->handleCommands($res);
-
             $source = $this->config->loadSource();
             $arEvents = $source->getEvents(
                 $this->config->date,
@@ -78,7 +78,7 @@ abstract class UserInterface
     {
         $parser = new \Console_CommandLine();
         $parser->description = 'Birthday reminder';
-        $parser->version = '0.1.0';
+        $parser->version = '0.6.0';
 
         $parser->addOption(
             'daysNext',
@@ -113,6 +113,7 @@ abstract class UserInterface
                     'console',
                     'html',
                     'htmltable',
+                    'ical',
                     'mail',
                 ),
                 'default'     => 'console',
@@ -173,6 +174,9 @@ abstract class UserInterface
             $this->config->renderer    = $result->options['renderer'];
             $this->config->stopOnEmpty = $result->options['stopOnEmpty'];
             $this->config->setDate($result->options['date']);
+            if (isset($result->options['ansi'])) {
+                $this->config->ansi = $result->options['ansi'];
+            }
             return $result;
         } catch (\Exception $exc) {
             $this->preRenderParameterError();