Skip to content

Commit

Permalink
Merge branch 'release/v3.1.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
enfoqueNativo committed Oct 25, 2018
2 parents a46543e + 43ee9d6 commit 51a1197
Show file tree
Hide file tree
Showing 6 changed files with 215 additions and 171 deletions.
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@

[CURRENT](https://github.com/SIU-Toba/framework/compare/master...develop)

[3.1.2](https://github.com/SIU-Toba/framework/releases/tag/v3.1.2) (2018-10-25)
- Merge desde 3.0.31 con fix a toba_ini
- Se agrega metodo para acceder al objeto db que se pasa al modelo durante la instanciacion via toba_modelo_catalogo
- Se agrega advertencia en pantalla inicia de toba_editor cuando se usa el id desarrolo por defecto

[3.1.1](https://github.com/SIU-Toba/framework/releases/tag/v3.1.1) (2018-09-20)
- Bugfix en toba_modelo_instalacion por merge incorrecto @[376e0370c752050329541c2dc689777187846de4]

Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.1.1
3.1.2
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"name": "siu-toba-framework",
"version": "3.0.11",
"version": "3.1.2",
"description": "Framework para desarrollo rápido de aplicaciones web",
"license": "SEE LICENSE IN licencia.txt",
"repository": "https://github.com/SIU-Toba/framework.git",
"author": "enfoqueNativo <rdalinger@siu.edu.ar>",
"private": false,
Expand Down
10 changes: 7 additions & 3 deletions php/lib/toba_ini.php
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,13 @@ private function generar_ini()
$ini .= "; $this->titulo \n";
$ini .= "\n";
}
// Config Gral
foreach ( $this->entradas as $nombre => $datos ) {
if (! is_array( $datos ) ) {
$ini .= "$nombre = \"$datos\"\n";
}
}

// Secciones
foreach ( $this->entradas as $nombre => $datos ) {
if ( is_array( $datos ) ) {
Expand All @@ -194,9 +201,6 @@ private function generar_ini()
foreach ( $datos as $directiva => $valor ) {
$ini .= "$directiva = \"$valor\"\n";
}

} else {
$ini .= "$nombre = \"$datos\"\n";
}
}
return $ini;
Expand Down
242 changes: 125 additions & 117 deletions php/modelo/toba_modelo_catalogo.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,128 +6,136 @@
*/
class toba_modelo_catalogo
{
private $instalacion; // Instalacion
private $instancia; // Array de instancias existentes en la instalacion
private $db; // Base externa
static private $singleton;
private $instalacion; // Instalacion
private $instancia; // Array de instancias existentes en la instalacion
private $db; // Base externa
static private $singleton;

private function __construct(){}
private function __construct(){}

/**
* Singleton
* @return toba_modelo_catalogo
*/
static function instanciacion($refrescar=false)
{
if (!isset(self::$singleton) || $refrescar) {
self::$singleton = new toba_modelo_catalogo();
}
return self::$singleton;
}

/**
* Devuelve una referencia a la INSTALACION
* @return toba_modelo_instalacion
*/
function get_instalacion( $manejador_interface = null )
{
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
if ( ! isset( $this->instalacion ) ) {
$this->instalacion = new toba_modelo_instalacion();
}
$this->instalacion->set_manejador_interface( $manejador_interface );
if (isset($this->db)) {
$this->instalacion->set_conexion_externa($this->db);
}
return $this->instalacion;
}
/**
* Singleton
* @return toba_modelo_catalogo
*/
static function instanciacion($refrescar=false)
{
if (!isset(self::$singleton) || $refrescar) {
self::$singleton = new toba_modelo_catalogo();
}
return self::$singleton;
}

/**
* Devuelve una referencia a un INSTANCIA.
* @return toba_modelo_instancia
*/
function get_instancia( $id_instancia, $manejador_interface=null)
{
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
if ( ! isset ( $this->instancia[ $id_instancia ] ) ) {
$instalacion = $this->get_instalacion( $manejador_interface );
$this->instancia[ $id_instancia ] = new toba_modelo_instancia( $instalacion, $id_instancia );
}
$this->instancia[ $id_instancia ]->set_manejador_interface( $manejador_interface );
return $this->instancia[ $id_instancia ];
}

/**
* Devuelve una referencia a un PROYECTO
* @return toba_modelo_proyecto
*/
function get_proyecto( $id_instancia, $id_proyecto, $manejador_interface=null )
{
$instancia = $this->get_instancia( $id_instancia, $manejador_interface );
$archivo_proy = $instancia->get_path_proyecto($id_proyecto)."/php/extension_toba/modelo_$id_proyecto.php";
if (file_exists($archivo_proy)) {
require_once($archivo_proy);
$clase = 'modelo_'.$id_proyecto;
$proyecto = new $clase( $instancia, $id_proyecto );
} else {
$proyecto = new toba_modelo_proyecto( $instancia, $id_proyecto );
}
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
$proyecto->set_manejador_interface( $manejador_interface );
return $proyecto;
}
/**
* Devuelve una referencia a la INSTALACION
* @return toba_modelo_instalacion
*/
function get_instalacion( $manejador_interface = null )
{
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
if ( ! isset( $this->instalacion ) ) {
$this->instalacion = new toba_modelo_instalacion();
}
$this->instalacion->set_manejador_interface( $manejador_interface );
if (isset($this->db)) {
$this->instalacion->set_conexion_externa($this->db);
}
return $this->instalacion;
}

/**
* Devuelve una referencia a los puntos de montaje de un proyecto
* @param toba_modelo_proyecto $proyecto
* @return toba_modelo_pms
*/
function get_pms(toba_modelo_proyecto $proyecto)
{
return new toba_modelo_pms($proyecto);
}
/**
* Devuelve una referencia a un INSTANCIA.
* @return toba_modelo_instancia
*/
function get_instancia( $id_instancia, $manejador_interface=null)
{
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
if ( ! isset ( $this->instancia[ $id_instancia ] ) ) {
$instalacion = $this->get_instalacion( $manejador_interface );
$this->instancia[ $id_instancia ] = new toba_modelo_instancia( $instalacion, $id_instancia );
}
$this->instancia[ $id_instancia ]->set_manejador_interface( $manejador_interface );
return $this->instancia[ $id_instancia ];
}

/**
* Devuelve una referencia al NUCLEO
* @return toba_modelo_nucleo
*/
function get_nucleo( $manejador_interface=null )
{
$nucleo = new toba_modelo_nucleo();
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
$nucleo->set_manejador_interface( $manejador_interface );
return $nucleo;
}
/**
* Devuelve una referencia a un PROYECTO
* @return toba_modelo_proyecto
*/
function get_proyecto( $id_instancia, $id_proyecto, $manejador_interface=null )
{
$instancia = $this->get_instancia( $id_instancia, $manejador_interface );
$archivo_proy = $instancia->get_path_proyecto($id_proyecto)."/php/extension_toba/modelo_$id_proyecto.php";
if (file_exists($archivo_proy)) {
require_once($archivo_proy);
$clase = 'modelo_'.$id_proyecto;
$proyecto = new $clase( $instancia, $id_proyecto );
} else {
$proyecto = new toba_modelo_proyecto( $instancia, $id_proyecto );
}
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
$proyecto->set_manejador_interface( $manejador_interface );
return $proyecto;
}

static function get_servicio_web( $proyecto, $identificador, $manejador_interface=null, $tipo=null)
{
$servicio = new toba_modelo_servicio_web($proyecto, $identificador, $tipo);
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
$servicio->set_manejador_interface($manejador_interface);
return $servicio;
}

function get_rdi(toba_modelo_proyecto $proyecto, $manejador_interface=null)
{
$rdi = new toba_cliente_rdi();
$rdi->set_proyecto($proyecto);
$rdi->set_instalacion($this->get_instalacion($manejador_interface));
return $rdi->get_cliente();
}

function set_db($db)
{
$this->db = $db;
}
/**
* Devuelve una referencia a los puntos de montaje de un proyecto
* @param toba_modelo_proyecto $proyecto
* @return toba_modelo_pms
*/
function get_pms(toba_modelo_proyecto $proyecto)
{
return new toba_modelo_pms($proyecto);
}

/**
* Devuelve una referencia al NUCLEO
* @return toba_modelo_nucleo
*/
function get_nucleo( $manejador_interface=null )
{
$nucleo = new toba_modelo_nucleo();
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
$nucleo->set_manejador_interface( $manejador_interface );
return $nucleo;
}

static function get_servicio_web( $proyecto, $identificador, $manejador_interface=null, $tipo=null)
{
$servicio = new toba_modelo_servicio_web($proyecto, $identificador, $tipo);
if (! isset($manejador_interface)) {
$manejador_interface = new toba_mock_proceso_gui();
}
$servicio->set_manejador_interface($manejador_interface);
return $servicio;
}

function get_rdi(toba_modelo_proyecto $proyecto, $manejador_interface=null)
{
$rdi = new toba_cliente_rdi();
$rdi->set_proyecto($proyecto);
$rdi->set_instalacion($this->get_instalacion($manejador_interface));
return $rdi->get_cliente();
}

function set_db($db)
{
$this->db = $db;
}

/**
* @ignore
*/
function get_db()
{
return $this->db;
}
}
?>

0 comments on commit 51a1197

Please sign in to comment.