<?php
/*
 * Copyright 2017-08-02  Cámara de Comercio de Santa Marta para el Magdalena.
 * Autor: Juan Pablo Llinás Ramírez <www.ccsm.org.co>.
 * Archivo: api. 
 *
 * Licenciado bajo la Licencia Apache, Versión 2.0;
 * Usted no puede usar este archivo excepto en conformidad con la Licencia. 
 * Usted puede obtener una copia de la Licencia en 
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 * A menos que sea requerido por la ley aplicable o acordado por escrito, el software
 * Distribuido bajo la licencia se distribuye en una "AS IS" o  "COMO ESTA" BASE,
 * SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, expresas o implícitas.
 * Consulte la Licencia para los permisos y Limitaciones bajo la Licencia.
 */
require __DIR__.'/config.php';
if (isset($_GET['2be7395c'])) {
    $datos = explode("/", $_GET['2be7395c']);
    if (count($datos)) {
        if (count($datos) == 1) {
            $_GET['apps'] = $datos[0];
            include_once 'plantilla/apps.php';
        } else if (count($datos) >= 2) {
            include 'plantilla/cab.php';
            echo '<area_apps>';
            $_POST['controlador'] = $datos[0];
            $_POST['operacion'] = $datos[1];

            $datos = array_reverse($datos);
            //print_r($datos);
            array_pop($datos);
            array_pop($datos);
           // print_r($datos);
            $datos = array_reverse($datos);

            $_POST['datos'] = $datos;
            //array_push($_POST['datos'], $datos);

            ejecutarPeticion();
            
            echo '</area_apps>';
            include 'plantilla/pie.php';
        }
    }
}else{
    ejecutarPeticion();
}



function ejecutarPeticion() {
    $componente = "tienda-apps";
    if (isset($_POST['componente'])) {
        $componente = $_POST['componente'];
    }
    if (isset($_POST['controlador'])) {
        $archivoControlador = DIR_COMPONENTES.$componente.'/controladores' . DS . ucwords($_POST['controlador']) . EXT_CONTROLADOR;
        if (file_exists($archivoControlador)) {
             include $archivoControlador;
             $nombreClase = ucwords($_POST['controlador']) . 'Controlador';
            if (class_exists($nombreClase)) {
                $classCtrl = new $nombreClase();
                if ($classCtrl instanceof $nombreClase) {
                    $nombreFuncion = $_POST['operacion'];
                    if (method_exists($classCtrl, $nombreFuncion)) {
                         $classCtrl->$nombreFuncion();
                     } else {
                         echo json_encode(array('RESPONSE' => "NO EXISTE LA OPERACION [$nombreFuncion] "));
                    }
                } else {
                    echo json_encode(array('RESPONSE' => "NO ES UN OBJETO VALIDO $classCtrl "));
                }
            } else {
                echo json_encode(array('RESPONSE' => "No existe la clase $nombreClase "));
            }
        } else {
            echo json_encode(array('RESPONSE' => "NOE STA EL ARCHIVO $archivoControlador "));
        }
    }
}

