/** * Método que dispara o projeto * - Fax a conexão como banco utilizando o array $connection * - Especifica o TablePrefix * - Especifica a topLevelClass * - Faz o tratamento da URL * - Exibe o tratamento chamando a URL * * @return void */ public static function init() { define("PROTOCOLO", 'http://'); self::$configurationArray = parse_ini_file(self::$globalConfiurationFile, true); if (!defined('WEB_DIR')) { define('WEB_DIR', self::$configurationArray['project']['directory']); } if (!defined("WEB_URL")) { define("WEB_URL", self::$configurationArray['project']['url']); } if (!defined("SMARTY_DIR")) { define("SMARTY_DIR", WEB_DIR . "classes/smarty/"); } set_include_path(WEB_DIR . 'classes/smarty/' . PATH_SEPARATOR . WEB_DIR . 'classes/' . PATH_SEPARATOR . "."); /******************************************************************************* * AUTO_LOAD * define se o método mágico para autoload de classes esta ativo ******************************************************************************/ if (Samus::$useAutoloadFunction) { require_once 'util/AutoRequire.php'; function __autoload($className) { AutoRequire::showSugests(); AutoRequire::requireClass($className); } } include_once 'samus/Samus_Keeper.php'; require_once 'samus/Samus_Exception.php'; require_once 'samus/Samus_Model.php'; require_once 'samus/Samus_Filter.php'; require_once 'CRUD/Properties.php'; require_once 'CRUD/TableFactory.php'; require_once 'samus/Samus_Object.php'; require_once 'database/Connection.php'; require_once 'CRUD/CRUDQuery.php'; require_once 'database/ConnectionMySqli.php'; //////////////////////////////////////////////////////////////////////// // CONFIGURAÇÃO DA CONEXÃO // faz a configuração da conexão a partir do global_configuration.ini //////////////////////////////////////////////////////////////////////// self::setConnection(self::$configurationArray['connection']); // lê arquivo de conexão e realiza a conexão CRUDQuery::setModo(self::$connection["queryMode"]); if (self::$connection["queryMode"] == CRUDQuery::QUERY_MODE_MYSQLI) { ConnectionMySqli::connect(self::$connection['name'], self::$connection['user'], self::$connection['password'], self::$connection['host'], self::$connection['charset'], self::$connection['engine']); CRUDQuery::setConn(ConnectionMySqli::getConn()); // essalinha ta meio redundante verificar depois CRUD::setConn(ConnectionMySqli::getConn()); } else { Connection::connect(self::$connection['adapter'], self::$connection['host'], self::$connection['name'], self::$connection['user'], self::$connection['password']); CRUDQuery::setConn(Connection::getConn()); CRUD::setConn(Connection::getPdo()); } self::$tablePrefix = self::$connection["table_prefix"]; CRUD::$tablePrefix = self::getTablePrefix(); CRUD::$topLevelClass = "Samus_Model"; //////////////////////////////////////////////////////////////////////// // EXIBINDO AS PÁGINAS // aqui o fazendeiro exibe as páginas //////////////////////////////////////////////////////////////////////// self::setHttpHost($_GET['httpHost']); $samus_keeper = new Samus_Keeper($_GET['__cod'], $_GET['httpHost']); $samus_keeper->displayPage(); }