Current File : /var/www/pharmacius/controller/front_controller.php |
<?php
function console_log( $data ){
echo '<script>';
echo 'console.log('. json_encode( $data ) .')';
echo '</script>';
}
//La carpeta donde buscaremos los controladores
define('CONTROLLERS_FOLDER',"controller/");
//Si no se indica un controlador, este es el controlador que se usará por defecto
define('DEFAULT_CONTROLLER',"home");
//Si no se indica una acción, esta acción es la que se usará por defecto
define('DEFAULT_ACTION', "home");
// Obtenemos el controlador por defecto.
$controller = DEFAULT_CONTROLLER;
// Si el usuario lo indica, seleccionamos el controlador indicado.
if (!empty($_REQUEST['controlador'])) $controller = $_REQUEST['controlador'];
// Obtenemos la acción por defecto.
$action = DEFAULT_ACTION;
// Si el usuario la indica, seleccionamos la indicada.
if (!empty($_REQUEST['action'])) $action = $_REQUEST['action'];
//Ya tenemos el controlador y la accion
//Formamos el nombre del fichero que contiene nuestro controlador
$controller = CONTROLLERS_FOLDER . $controller . '_controller.php';
//Si la variable $controller es un fichero lo requerimos
try {
if ( is_file ($controller ) ) require_once($controller);
else
throw new Exception('El controlador no existe- 404 not found');
//Si la variable $action es una funcion la ejecutamos o detenemos el script
if ( is_callable($action) ) $action();
else
throw new Exception('La accion no existe- 404 not found');
}catch(Exception $e) {
console_log($e->getMessage());
}
?>