示例#1
0
 /**
  * __Construct($Aplicacion = false, $Carpeta = false)
  * 
  * Constructor de Direccion
  * */
 function __Construct($Aplicacion = false, $Carpeta = false)
 {
     if ($Aplicacion == true) {
         $AplicacionCache = $Aplicacion . '/';
     } else {
         $URL = SysMisNeural::LeerURLModReWrite();
         $this->AplicacionCache = $AplicacionCache = $URL[0] !== '' ? $URL[0] . '/' : 'Default/';
     }
     if ($Carpeta == true) {
         $this->CacheCarpeta = $Carpeta . '/';
     }
     $this->PathCache = $this->DireccionCache . $AplicacionCache;
     if (isset($this->CacheCarpeta)) {
         $this->RutaFinalArchivo = $this->PathCache . $this->CacheCarpeta;
     } else {
         $this->RutaFinalArchivo = $this->PathCache;
     }
 }
 /**
  * NeuralConexionBaseDatos($Base)
  * 
  * Genera la conexi�n a la base de datos previamente configurada
  * Este metodo utiliza Doctrine 2 DBAL para el crud correspondiente 
  * 
  * $Aplicacion: nombre en mayusculas de la aplicacion correspondiente
  * en caso de no seleccionar aplicacion tomara el valor de la aplicacion actual
  * si no se reconoce configuracion de la aplicacion o no existe envia valores null
  * generando error en doctrine
  */
 public static function ObtenerConexionBase($Aplicacion = 'DEFAULT')
 {
     //Leemos el archivo de configuraciones de bases de datos
     $DatosBaseDatos = SysMisNeural::CargarArchivoYAMLAplicacion('Configuracion/BasesDatos.yaml');
     //Validamos si existe la base de datos
     if (array_key_exists(mb_strtoupper($Aplicacion), $DatosBaseDatos['BASEDATOS'])) {
         foreach ($DatosBaseDatos['BASEDATOS'][trim(mb_strtoupper($Aplicacion))] as $key => $value) {
             $ParametrosConexion[trim($key)] = trim($value);
         }
     } else {
         //Tomamos la variable del Mod_Rewrite y validamos el url para determinar el path correspondiente
         $Url = SysMisNeural::LeerURLModReWrite();
         if (!empty($Url[0])) {
             //Leemos el archivo de configuracion de accesos y lo convertimos en un array
             $AplicacionActiva = SysMisNeural::CargarArchivoYAMLAplicacion('Configuracion\\ConfiguracionAcceso.yaml');
             //Validamos si se encuentra la aplicacion correspondiente
             if (array_key_exists(mb_strtoupper($Url[0]), $AplicacionActiva['APLICACIONES'])) {
                 //Cargamos los parametros de la aplicacion correspondiente
                 if (array_key_exists(trim(mb_strtoupper($Url[0])), $DatosBaseDatos['BASEDATOS'])) {
                     foreach ($DatosBaseDatos['BASEDATOS'][trim(mb_strtoupper($Url[0]))] as $key => $value) {
                         $ParametrosConexion[trim($key)] = trim($value);
                     }
                 } else {
                     $ParametrosConexion = array();
                 }
             } else {
                 $ParametrosConexion = array();
             }
         } else {
             $ParametrosConexion = array();
         }
     }
     require_once __SysNeuralFileRootVendors__ . 'Doctrine/Common/ClassLoader.php';
     $classLoader = new \Doctrine\Common\ClassLoader('Doctrine');
     $classLoader->register();
     return \Doctrine\DBAL\DriverManager::getConnection($ParametrosConexion);
 }
示例#3
0
 public function CargarModelo($Nombre)
 {
     //Tomamos la variable del Mod_Rewrite y validamos el url para determinar el path correspondiente
     $Url = SysMisNeural::LeerURLModReWrite();
     //Leemos el archivo de configuracion de accesos y lo convertimos en un array
     $Array = SysMisNeural::CargarArchivoYAMLAplicacion('Configuracion/ConfiguracionAcceso.yaml');
     //Validamos si cargamos el default o la aplicación seleccionada
     if (!empty($Url[0])) {
         //Validamos si existe la aplicacion correspondiente
         if (array_key_exists(mb_strtoupper($Url[0]), $Array['APLICACIONES'])) {
             //Generamos las rutas de accesos
             $Carpeta = $Array['APLICACIONES'][mb_strtoupper($Url[0])]['CARPETA'];
             $Modelos = $Array['APLICACIONES'][mb_strtoupper($Url[0])]['MODELOS'];
             //Generamos el Nombre del Modelo y la Ruta correspondiente
             $Archivo = SysMisNeural::GenerarNombreModeloRuta($Carpeta, $Modelos, $Url[1]);
             //validamos si existe el archivo, si existe lo cargamos de lo contrario lo omitimos
             if (file_exists($Archivo['Archivo'])) {
                 //Incluimos el modelo correspondiente
                 require $Archivo['Archivo'];
                 $this->Modelo = new $Archivo['Nombre']();
             }
         }
     } else {
         //Generamos las rutas de accesos
         $Carpeta = $Array['APLICACIONES']['DEFAULT']['CARPETA'];
         $Modelos = $Array['APLICACIONES']['DEFAULT']['MODELOS'];
         //Generamos la ruta del archivo correspondiente
         $Archivo = SysMisNeural::GenerarNombreModeloRuta($Carpeta, $Modelos, 'Index');
         //validamos si existe el archivo, si existe lo cargamos de lo contrario lo omitimos
         if (file_exists($Archivo['Archivo'])) {
             //Incluimos el modelo correspondiente
             require $Archivo['Archivo'];
             $this->Modelo = new $Archivo['Nombre']();
         }
     }
 }
示例#4
0
 public function __Construct()
 {
     //Tomamos la variable del Mod_Rewrite y validamos el url para determinar el path correspondiente
     $Url = SysMisNeural::LeerURLModReWrite();
     //Leemos el archivo de configuracion de accesos y lo convertimos en un array
     $Array = SysMisNeural::CargarArchivoYAMLAplicacion('Configuracion/ConfiguracionAcceso.yaml');
     //Validamos si hay una aplicacion seleccionada
     if (!empty($Url[0])) {
         //Validamos si la aplicacion existe
         if (array_key_exists(mb_strtoupper($Url[0]), $Array['APLICACIONES'])) {
             //Generamos las rutas de accesos
             $Carpeta = $Array['APLICACIONES'][mb_strtoupper($Url[0])]['CARPETA'];
             $Configuraciones = $Array['APLICACIONES'][mb_strtoupper($Url[0])]['CONFIGURACION'];
             $Ayudas = $Array['APLICACIONES'][mb_strtoupper($Url[0])]['AYUDAS'];
             $Controladores = $Array['APLICACIONES'][mb_strtoupper($Url[0])]['CONTROLADORES'];
             //Validamos que exista la carpeta correspondiente
             if (is_dir(__SysNeuralFileRootAplicacion__ . $Carpeta)) {
                 //Cargamos las Configuraciones de las ayudas y configuraciones aplicacion
                 SysMisNeural::IncluirAyudasConfiguracionesAplicacion($Carpeta, $Configuraciones, $Ayudas);
                 //Validamos si se ha ingresado un Controlador
                 if (isset($Url[1]) == true and empty($Url[1]) != true) {
                     //Generamos la ruta del Controlador
                     $Archivo = SysMisNeural::GenerarRutasArchivoAplicacion($Carpeta, $Controladores, $Url[1] . '.php');
                     //Validamos si existe el controlador correspondiente
                     if (file_exists($Archivo)) {
                         //Incluimos el archivo controlador correspondiente
                         require $Archivo;
                         //Validamos si tenemos un metodo
                         if (isset($Url[2]) == true and empty($Url[2]) != true) {
                             //Validamos si Existe el Metodo correspondiente
                             if (method_exists($Url[1], $Url[2])) {
                                 //Validamos que el metodo exista y sea publico
                                 if (array_key_exists($Url[2], SysMisNeural::ListarOrganizarMetodosClase($Url[1]))) {
                                     //Validamos que se haya enviado un parametro
                                     if (isset($Url[3]) == true and empty($Url[3]) != true) {
                                         //Cargamos el Controlador correspondiente
                                         $Controlador = new $Url[1]();
                                         $Controlador->CargarModelo($Url[1]);
                                         $Cantidad = count($Url) - 1;
                                         for ($i = 3; $i <= $Cantidad; $i++) {
                                             $Datos[] = '$Url[' . $i . ']';
                                         }
                                         $Lista = implode(', ', $Datos);
                                         eval("\$Controlador->\$Url[2](" . $Lista . ");");
                                         unset($Cantidad, $Datos, $Lista);
                                     } else {
                                         //Cargamos el Controlador correspondiente
                                         $Controlador = new $Url[1]();
                                         $Controlador->CargarModelo($Url[1]);
                                         $Controlador->{$Url}[2](false);
                                     }
                                 } else {
                                     //Indicamos el error de no encontrarse el Metodo correspondiente
                                     require __SysNeuralFileRootNeuralMensajesError__ . 'NoMetodo.php';
                                 }
                             } else {
                                 //Generamos el require para incluir el controlador correspondiente
                                 require SysMisNeural::GenerarRutasArchivoAplicacion($Carpeta, $Controladores, 'Error.php');
                                 //No existe el metodo generamos el error correspondiente
                                 $Controlador = new Error();
                                 $Controlador->CargarModelo('Error');
                                 $Controlador->Index(false);
                             }
                         } else {
                             //Instanciamos y procesamos los procedimientos correspondientes
                             $Controlador = new $Url[1]();
                             $Controlador->CargarModelo('Index');
                             $Controlador->Index(false);
                         }
                     } else {
                         //Indicamos el error de no encontrarse el controlador
                         require __SysNeuralFileRootNeuralMensajesError__ . 'NoControlador.php';
                     }
                 } else {
                     //Generamos el nombre del controlador correspondiente
                     $Archivo = SysMisNeural::GenerarRutasArchivoAplicacion($Carpeta, $Controladores, 'Index.php');
                     //Validamos si existe el controlador correspondiente
                     if (file_exists($Archivo)) {
                         //Incluimos el controlador correspondiente
                         require $Archivo;
                         //Instanciamos y procesamos los procedimientos correspondientes
                         $Controlador = new Index();
                         $Controlador->CargarModelo('Index');
                         $Controlador->Index(false);
                     } else {
                         //Indicamos el error de no existencia de controlador Index
                         require __SysNeuralFileRootNeuralMensajesError__ . 'NoIndex.php';
                     }
                 }
             } else {
                 //Generamos un Mensaje de Error de problema de la aplicacion configurada
                 require __SysNeuralFileRootNeuralMensajesError__ . 'AplicacionNoConfigurada.php';
             }
         } else {
             //Generamos error 404
             require __SysNeuralFileRootNeuralMensajesError__ . '404.php';
         }
     } else {
         //Generamos las rutas de accesos
         $Carpeta = $Array['APLICACIONES']['DEFAULT']['CARPETA'];
         $Configuraciones = $Array['APLICACIONES']['DEFAULT']['CONFIGURACION'];
         $Ayudas = $Array['APLICACIONES']['DEFAULT']['AYUDAS'];
         $Controladores = $Array['APLICACIONES']['DEFAULT']['CONTROLADORES'];
         //Validamos que la aplicacion se encuentre configurada y exista la carpeta de la aplicacion
         if (is_dir(__SysNeuralFileRootAplicacion__ . $Carpeta)) {
             //Cargamos las Configuraciones de las ayudas y configuraciones aplicacion
             SysMisNeural::IncluirAyudasConfiguracionesAplicacion($Carpeta, $Configuraciones, $Ayudas);
             //Generamos el require para incluir el controlador correspondiente
             require SysMisNeural::GenerarRutasArchivoAplicacion($Carpeta, $Controladores, 'Index.php');
             //Instanciamos y procesamos los procedimientos correspondientes
             $Controlador = new Index();
             $Controlador->CargarModelo('Index');
             $Controlador->Index(false);
         } else {
             require __SysNeuralFileRootNeuralMensajesError__ . 'AplicacionNoConfigurada.php';
         }
     }
 }
示例#5
0
 /**
  * GenerarVista($Archivo, $Tipo = 0)
  * 
  * General las vistas correspondientes segun el mapa cargado
  * $Archivo: ruta del archivo sin extension .php dentro de vistas
  * $Tipo: es el mapa que se ha creado, por defecto ya esta uno creado pero se pueden agregar mas
  */
 public function GenerarVista($Archivo, $Tipo = 0)
 {
     //Tomamos la variable del Mod_Rewrite y validamos el url para determinar el path correspondiente
     $Url = SysMisNeural::LeerURLModReWrite();
     //Leemos el archivo de configuracion de accesos y lo convertimos en un array
     $Array = SysMisNeural::CargarArchivoYAMLAplicacion('Configuracion/ConfiguracionAcceso.yaml');
     //Validamos si cargamos el default o la aplicación seleccionada
     if (!empty($Url[0])) {
         //Validamos si existe la aplicacion correspondiente
         if (array_key_exists(mb_strtoupper($Url[0]), $Array['APLICACIONES'])) {
             //Generamos las rutas de accesos
             $Carpeta = $Array['APLICACIONES'][mb_strtoupper($Url[0])]['CARPETA'];
             $Vistas = $Array['APLICACIONES'][mb_strtoupper($Url[0])]['VISTAS'];
             //Convertimos el array en una variable para su manupulacion
             $ArrayVistas = NeuralAsignacionVistas::SeleccionVista($Tipo);
             foreach ($ArrayVistas as $Llave => $Valor) {
                 if ($Valor == 'NOMBREARCHIVO') {
                     $File = __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/' . $Archivo . '.php';
                     if (file_exists($File)) {
                         //Generamos el require para incluir la vista correspondiente
                         require __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/' . $Archivo . '.php';
                     } else {
                         require __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/Error/NoExisteArchivo.php';
                     }
                 } else {
                     //Generamos el require para incluir la vista correspondiente
                     require __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/' . $Valor;
                 }
             }
         } else {
             //Generamos las rutas de accesos
             $Carpeta = $Array['APLICACIONES']['DEFAULT']['CARPETA'];
             $Vistas = $Array['APLICACIONES']['DEFAULT']['VISTAS'];
             //Convertimos el array en una variable para su manupulacion
             $ArrayVistas = NeuralAsignacionVistas::SeleccionVista($Tipo);
             foreach ($ArrayVistas as $Llave => $Valor) {
                 if ($Valor == 'NOMBREARCHIVO') {
                     $File = __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/' . $Archivo . '.php';
                     if (file_exists($File)) {
                         //Generamos el require para incluir la vista correspondiente
                         require __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/' . $Archivo . '.php';
                     } else {
                         require __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/Error/NoExisteArchivo.php';
                     }
                 } else {
                     //Generamos el require para incluir la vista correspondiente
                     require __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/' . $Valor;
                 }
             }
         }
     } else {
         //Generamos las rutas de accesos
         $Carpeta = $Array['APLICACIONES']['DEFAULT']['CARPETA'];
         $Vistas = $Array['APLICACIONES']['DEFAULT']['VISTAS'];
         //Convertimos el array en una variable para su manupulacion
         $ArrayVistas = NeuralAsignacionVistas::SeleccionVista($Tipo);
         foreach ($ArrayVistas as $Llave => $Valor) {
             if ($Valor == 'NOMBREARCHIVO') {
                 $File = __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/' . $Archivo . '.php';
                 if (file_exists($File)) {
                     //Generamos el require para incluir la vista correspondiente
                     require __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/' . $Archivo . '.php';
                 } else {
                     require __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/Error/NoExisteArchivo.php';
                 }
             } else {
                 //Generamos el require para incluir la vista correspondiente
                 require __SysNeuralFileRootAplicacion__ . '/' . $Carpeta . '/' . $Vistas . '/' . $Valor;
             }
         }
     }
 }