<?php

require 'controller/class.inputfilter.php';

//La carpeta donde buscaremos los controladores
$carpetaControladores = "controller/";
//Si no se indica un controlador, este es el controlador que se usará
$controladorPredefinido = "panel";

//Si no se indica una accion, esta accion es la que se usará
$accionPredefinida = "panel";

$filter = new InputFilter();

if(! empty($_GET['page'])){
	//contamos las mayusculas en la cadena
	$totalUpper = preg_match_all('/([A-Z-]{1})/',$_GET['page']);
	$modulo = substr($_GET['page'], 0, $totalUpper).'/';
	
	
	// print_r($modulo.'<br>');
	
	// list($raiz, $submodulo) = explode('-', $modulo);
	$modulo = str_replace('-', '/', $modulo);
	// print_r($modulo.'<br>');
	
	// print_r('path: '.$strong.'<br>');
	// print_r('Raiz: '.$raiz.' -- Submodulo: '.$submodulo.'<br>');
	
	$controlador = substr($filter->process($_GET['page']), $totalUpper);
	// print_r($controlador.'<br>');

	// $controlador = $modulo.'/'.$pre_controlador;
}else{
	$modulo = null;
	$controlador = $controladorPredefinido;
}

if(! empty($_GET['action']))
	$accion = $filter->process($_GET['action']) . 'Action';
else
	$accion = $accionPredefinida . 'Action';

//un poco de limpieza
$controlador = preg_replace('/[^a-zA-Z0-9]/', '', $controlador);
$accion = '_' . preg_replace('/[^a-zA-Z0-9]/', '', $accion);

//Ya tenemos el controlador y la accion

//Formamos el nombre del fichero que contiene nuestro controlador
$controlador = $carpetaControladores . $modulo .$controlador . '-controller.php';
// print_r($controlador);
//Incluimos el controlador o detenemos todo si no existe
if(is_file($controlador))
	require_once $controlador;
else
	die('La pagina no existe - 404 not found');

//Llamamos la accion o detenemos todo si no existe
if(is_callable($accion))
	$accion();
else
	die('La accion no existe - 404 not found');

  // Incluimos footer :P    

?>

