<?php
// Entry point for script.
define("API", true);
define("ID", uniqid("webapi_", true));
define("ROOTDIR", dirname(__FILE__));
// Startup the autoloader
require ROOTDIR . '/app/main/Autoloader.php';
MAIN_Autoloader::getInstance(ROOTDIR);
// Get the controller and load the configuration.
$config = new MAIN_Config();
$config->updateFromFile(ROOTDIR . '/config.php');
// Load the custom classes and plugins
MAIN_Autoloader::loadFile(ROOTDIR . '/custom.php');
foreach(scandir(ROOTDIR . '/plugins') as $filename) {
if(substr($filename, -5) == '.conf') {
$config->insertPlugin(substr($filename, 0, -5),
ROOTDIR . '/plugins/$filename');
$plugin = ROOTDIR . '/plugins/' . substr($filename, 0, -5) . '.php';
MAIN_Autoloader::loadFile($plugin);
}
}
$controller = new MAIN_Controller();
// Perform the request.
$controller->boot($config);
$controller->initiate();
$controller->send();
// Check for error.
if(!$controller->cleanup()) {
// ERROR: Create error page and exit.
$controller->initiate();
$controller->send();
$controller->cleanup();
exit(1);
} else {
// NO ERROR: Exit.
exit(0);
}
|