kinda working
This commit is contained in:
72
web/api/inc/core.php
Normal file
72
web/api/inc/core.php
Normal file
@ -0,0 +1,72 @@
|
||||
<?php
|
||||
|
||||
spl_autoload_register('autoload');
|
||||
function autoload($className)
|
||||
{
|
||||
//one of the global classes?
|
||||
if (file_exists(ROOT . DS . 'inc'. DS. 'classes' . DS . $className . '.class.php'))
|
||||
require_once(ROOT . DS . 'inc'. DS. 'classes' . DS . $className . '.class.php');
|
||||
else if (file_exists(ROOT . DS . 'pages' . DS . strtolower($className) . DS . 'controller.php'))
|
||||
require_once(ROOT . DS . 'pages' . DS . strtolower($className) . DS . 'controller.php');
|
||||
}
|
||||
|
||||
function includeManagement()
|
||||
{
|
||||
require_once(ROOT.DS.'inc'.DS.'helpers.php');
|
||||
require_once(ROOT.DS.'inc'.DS.'config.inc.php');
|
||||
|
||||
//settings from config
|
||||
if(defined('DEV') && DEV===true)
|
||||
ini_set("display_errors", 1);
|
||||
else ini_set("display_errors", 0);
|
||||
|
||||
if(file_exists(ROOT.DS.'inc'.DS.'vendor'.DS.'autoload.php'))
|
||||
require_once(ROOT.DS.'inc'.DS.'vendor'.DS.'autoload.php');
|
||||
}
|
||||
|
||||
function callHook($url)
|
||||
{
|
||||
$queryString = array();
|
||||
|
||||
if (!$url[0]) {
|
||||
$component = 'home';
|
||||
$action = 'index';
|
||||
} else {
|
||||
$urlArray = $url;
|
||||
$component = $urlArray[0];
|
||||
array_shift($urlArray);
|
||||
$params = $urlArray;
|
||||
if (isset($urlArray[0])) {
|
||||
$action = $urlArray[0];
|
||||
array_shift($urlArray);
|
||||
} else
|
||||
$action = 'index'; // Default Action
|
||||
$queryString = $urlArray;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (!file_exists(ROOT . DS . 'pages' . DS . $component . DS . 'controller.php')) {
|
||||
$component = 'err';
|
||||
$action = 'notfound';
|
||||
$queryString = array($url);
|
||||
}
|
||||
|
||||
$componentName = ucfirst($component);
|
||||
|
||||
$dispatch = new $componentName($component, $action, false);
|
||||
|
||||
if (!$dispatch->maySeeThisPage()) {
|
||||
$componentName = 'err';
|
||||
$action = 'notallowed';
|
||||
$dispatch = new $componentName('error', $action, true);
|
||||
} else
|
||||
$dispatch = new $componentName($component, $action, true, $queryString);
|
||||
|
||||
if (method_exists($componentName, $action)) {
|
||||
call_user_func_array(array($dispatch, $action), $queryString);
|
||||
} else if (method_exists($componentName, 'catchAll'))
|
||||
call_user_func_array(array($dispatch, 'catchAll'), array($params));
|
||||
|
||||
return $dispatch->renderPagecontent();
|
||||
}
|
Reference in New Issue
Block a user