#!/usr/bin/env php
<?php

define('LARAVEL_START', microtime(true));

define('DS', DIRECTORY_SEPARATOR);
define('PAYMENT_TYPE', [
    'cancel'      => null,
    'unpaid'      => 0,
    'cash'        => 1,
    'credit-card' => 2,
    'ticket'      => 3,
    'online'      => 4,
    'credit'      => 5,
    'sabee'       => 6,
    'treat'       => 10,
    'other'       => 11,
    null          => 'cancel',
    0             => 'unpaid',
    1             => 'cash',
    2             => 'credit-card',
    3             => 'ticket',
    4             => 'online',
    5             => 'credit',
    6             => 'sabee',
    10            => 'treat',
    11            => 'other',
]);

define('COLORS', [
    'primary',
    'info',
    'success',
    'warning',
    'danger',
    'gray',
    'navy',
    'teal',
    'purple',
    'orange',
    'maroon',
    'black',
]);

define('VAT_OPTS', [0, 1, 8, 18]);

define('ACCOUNT_TYPES', [
    'generic',
    'housekeeper',
    'common_terminal'
]);

define('DATETIME_FORMAT', 'd.m.Y H:i:s');
define('DATE_FORMAT', 'd.m.Y');

define('ADDRESS_TYPES', [
    'home',
    'office',
    'campus'
]);


/*
|--------------------------------------------------------------------------
| Register The Auto Loader
|--------------------------------------------------------------------------
|
| Composer provides a convenient, automatically generated class loader
| for our application. We just need to utilize it! We'll require it
| into the script here so that we do not have to worry about the
| loading of any our classes "manually". Feels great to relax.
|
*/

// load custom functions before Laravel's functions to be able to override them
require __DIR__ . '/app/helpers.php';
require __DIR__.'/vendor/autoload.php';

$app = require_once __DIR__.'/bootstrap/app.php';

/*
|--------------------------------------------------------------------------
| Run The Artisan Application
|--------------------------------------------------------------------------
|
| When we run the console application, the current CLI command will be
| executed in this console and the response sent back to a terminal
| or another output device for the developers. Here goes nothing!
|
*/

$kernel = $app->make(Illuminate\Contracts\Console\Kernel::class);

$status = $kernel->handle(
    $input = new Symfony\Component\Console\Input\ArgvInput,
    new Symfony\Component\Console\Output\ConsoleOutput
);

/*
|--------------------------------------------------------------------------
| Shutdown The Application
|--------------------------------------------------------------------------
|
| Once Artisan has finished running, we will fire off the shutdown events
| so that any final work may be done by the application before we shut
| down the process. This is the last thing to happen to the request.
|
*/

$kernel->terminate($input, $status);

exit($status);
