<?php
/**
 * This file bootstraps a Doctrine_Cli for HashBin.
 *
 * Configure your DSN in config/doctrine.php (example in config/doctrine.php-dist)
 *
 * @usage ./doctrine help
 * @author Romain Dorgueil <hartym@dakrazy.net>
 */
define('HASHBIN_ROOT_DIR', dirname(__FILE__));
define('DOCTRINE_PATH', HASHBIN_ROOT_DIR.DIRECTORY_SEPARATOR.'lib'.DIRECTORY_SEPARATOR.'vendor'. DIRECTORY_SEPARATOR.'doctrine');
define('DATA_FIXTURES_PATH', HASHBIN_ROOT_DIR.DIRECTORY_SEPARATOR.'data'.DIRECTORY_SEPARATOR.'fixtures');
define('MODELS_PATH', HASHBIN_ROOT_DIR.DIRECTORY_SEPARATOR.'lib'.DIRECTORY_SEPARATOR.'model'.DIRECTORY_SEPARATOR.'doctrine');
define('MIGRATIONS_PATH', HASHBIN_ROOT_DIR.DIRECTORY_SEPARATOR.'data'.DIRECTORY_SEPARATOR.'migrations');
define('SQL_PATH', HASHBIN_ROOT_DIR.DIRECTORY_SEPARATOR.'data'.DIRECTORY_SEPARATOR.'sql');
define('YAML_SCHEMA_PATH', HASHBIN_ROOT_DIR.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'doctrine');
define('DSN', require(HASHBIN_ROOT_DIR.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'doctrine.php'));

require_once(DOCTRINE_PATH.DIRECTORY_SEPARATOR.'Doctrine.php');

spl_autoload_register(array('Doctrine', 'autoload'));

Doctrine_Manager::connection(DSN, 'hashbin');
Doctrine_Manager::getInstance()->setAttribute('model_loading', 'conservative');

$config = array('data_fixtures_path'  =>  DATA_FIXTURES_PATH,
                'models_path'         =>  MODELS_PATH,
                'migrations_path'     =>  MIGRATIONS_PATH,
                'sql_path'            =>  SQL_PATH,
                'yaml_schema_path'    =>  YAML_SCHEMA_PATH);

$cli = new Doctrine_Cli($config);
$cli->run($_SERVER['argv']);

