<?php
namespace bdrem;
-class Cli
+class Cli extends UserInterface
{
- public function run()
+ protected function loadParameters()
{
- $cfg = new Config();
- $cfg->load();
- $source = $cfg->loadSource();
+ $parser = parent::loadParameters();
+ //set default renderer to console
+ $parser->options['renderer']->default = 'console';
- $arEvents = $source->getEvents(
- date('Y-m-d'), $cfg->daysBefore, $cfg->daysAfter
+ //only on CLI
+ $parser->addCommand(
+ 'readme', array(
+ 'description' => 'Show README.rst file'
+ )
);
- usort($arEvents, '\\bdrem\\Event::compare');
+ $parser->addCommand(
+ 'config', array(
+ 'description' => 'Extract configuration file'
+ )
+ );
+
+ return $parser;
+ }
+
+ protected function handleCommands($res)
+ {
+ if ($res->command_name == '') {
+ return;
+ } else if ($res->command_name == 'readme') {
+ $this->showReadme();
+ } else if ($res->command_name == 'config') {
+ $this->extractConfig();
+ } else {
+ throw new \Exception('Unknown command');
+ }
+ }
- $r = new Renderer_Console();
- echo $r->render($arEvents);
+ protected function showReadme()
+ {
+ readfile(__DIR__ . '/../../README.rst');
+ exit();
+ }
+
+ protected function extractConfig()
+ {
+ readfile(__DIR__ . '/../../data/bdrem.config.php.dist');
+ exit();
}
}
?>