<?php // Instanciamos Aplicación Web $app = \Armazon\Nucleo\Aplicacion::instanciar(); // Configuramos aplicación $app->definirDirApp(__DIR__); $app->definirCodificacion('UTF-8'); $app->definirZonaTiempo('America/Managua'); $app->definirAmbiente(getenv('AMBIENTE') ?: 'desarrollo'); // Registramos componente Traductor $app->registrarComponente('traductor', function () use($app) { return new \Armazon\I18n\Traductor($app); }); // Registramos componente Sesion $app->registrarComponente('sesion', function () { $adaptador = new \Armazon\Sesion\Adaptador\Archivos(['dir' => sys_get_temp_dir()]); $sesion = new Armazon\Sesion\Manejador($adaptador); return $sesion; }); // Registramos componente Vista ** REQUERIDO ** $app->registrarComponente('vista', function () use($app) { $vista = new \Armazon\Mvc\Vista($app); // Registramos traductor en la vista como procesador $traductor = $app->obtenerComponente('traductor'); $vista->registrarFiltro('_', function ($texto) use($traductor) { return $traductor->t($texto); }); return $vista; }); // Registramos componente para consultar base de datos relacional $app->registrarComponente('bd', function () use($app) {
public function testCrearAplicacion() { $app = \Armazon\Nucleo\Aplicacion::instanciar(); $this->assertInstanceOf('\\Armazon\\Nucleo\\Aplicacion', $app); }
/** * Elimina registros filtrando con propiedades alteradas. * * @throws \RuntimeException */ public function eliminar() { // Preparamos variables a usar $filtro = []; $llavePrimaria = (array) $this->__llavePrimaria; // Hacemos recorrido de llave primaria para rellenar el filtro de consulta foreach ($llavePrimaria as $campo) { if ($this->campoVacio($campo)) { throw new \RuntimeException("Falta rellenar el campo llave '{$campo}'."); } $filtro[$campo . '|' . $this->__campos[$campo]['tipo']] = $this->{$campo}; } return Aplicacion::instanciar()->obtenerBdRelacional()->eliminar($this->__nombreTabla)->donde($filtro)->ejecutar(); }