#!/usr/bin/env php
<?php
require __DIR__.'/vendor/autoload.php';

use Symfony\Component\Console\Application;
use Symfony\Component\Console\Output\ConsoleOutput;


use Webrium\App;
use Webrium\File;
use Webrium\Debug;
use Webrium\Directory;
use Webrium\Event;


use Webrium\Console\GenerateModel;
use Webrium\Console\GenerateController;
use Webrium\Console\CallController;
use Webrium\Console\DbAction;
use Webrium\Console\TableAction;
use Webrium\Console\LogAction;
use Webrium\Console\InitBot;



App::root(__DIR__);
Debug::displayErrors(true);
Debug::$ErrorView = true;
Directory::initDefaultStructure();


Event::on('error',function($error){
    $output = new ConsoleOutput();
    $output->write('<error>'.$error['message']."</error>\n");
    die();
});


// Load config
File::source('config',['Config.php','DB.php', 'Console.php']);



$application = new Application();

$application->add(new GenerateModel());
$application->add(new GenerateController());
$application->add(new InitBot());
$application->add(new CallController());
$application->add(new DbAction());
$application->add(new TableAction());
$application->add(new LogAction());

$application->run();






