]> git.llucax.com Git - mecon/ai.git/commitdiff
Se agrega un campo para indicar si el sistema está hecho en EmbPerl.
authorLeandro Lucarella <llucax@gmail.com>
Thu, 2 Oct 2003 22:51:24 +0000 (22:51 +0000)
committerLeandro Lucarella <llucax@gmail.com>
Thu, 2 Oct 2003 22:51:24 +0000 (22:51 +0000)
doc/uml.xmi
lib/AI/Sistema.php
sistema/local_lib/AI/Arbol.php
sistema/local_lib/AI/Form.php
sql/sistema.sql

index d6351ef12c314e066a9d433c2d9f554e26d12acb..24229b78cd8c080d9fff6758d8b8a4d82ca4d06e 100644 (file)
@@ -10,7 +10,7 @@
   <XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
  </XMI.header>
  <XMI.content>
-  <docsettings viewid="412" documentation="" uniqueid="537" />
+  <docsettings viewid="412" documentation="" uniqueid="538" />
   <umlobjects>
    <UML:Class stereotype="" package="AI" xmi.id="413" abstract="0" documentation="Servicio." name="AI_Servicio" static="0" scope="200" >
     <UML:Operation stereotype="" package="" xmi.id="465" type="void" abstract="0" documentation="" name="AI_Servicio" static="0" scope="200" >
@@ -57,6 +57,7 @@
     <UML:Attribute stereotype="" package="" xmi.id="439" value="''" type="string" abstract="0" documentation="Enlace a donde se encuentra el sistema." name="link" static="0" scope="200" />
     <UML:Attribute stereotype="" package="" xmi.id="440" value="''" type="string" abstract="0" documentation="Enlace a la ayuda del sistema." name="link_ayuda" static="0" scope="200" />
     <UML:Attribute stereotype="" package="" xmi.id="533" value="true" type="bool" abstract="0" documentation="Indica si esta habilitado." name="habilitado" static="0" scope="200" />
+    <UML:Attribute stereotype="" package="" xmi.id="538" value="'php'" type="string" abstract="0" documentation="" name="tipo" static="0" scope="200" />
    </UML:Class>
    <UML:Class stereotype="" package="AI" xmi.id="469" abstract="0" documentation="" name="AI_Error" static="0" scope="200" >
     <UML:Operation stereotype="" package="" xmi.id="470" type="void" abstract="0" documentation="" name="AI_Error" static="0" scope="200" >
@@ -141,10 +142,10 @@ x2c:get" name="hijos" static="0" scope="202" />
    <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="500" rolea="413" roleb="524" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
   </umlobjects>
   <diagrams>
-   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="1" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="733" snapy="10" showatts="1" xmi.id="412" documentation="" type="402" showops="1" showpackage="0" name="Clases" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,12,-1,5,48,0,0,0,0,0" linecolor="#ff0000" canvasheight="619" >
+   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="1" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="733" snapy="10" showatts="1" xmi.id="412" documentation="" type="402" showops="1" showpackage="0" name="Clases" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,12,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="619" >
     <widgets>
      <UML:ClassWidget usesdiagramfillcolour="0" width="152" showattsigs="601" usesdiagramusefillcolour="0" x="386" linecolour="#ff0000" y="353" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="156" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="413" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="369" showattsigs="601" usesdiagramusefillcolour="0" x="9" linecolour="#ff0000" y="180" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="169" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="416" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="369" showattsigs="601" usesdiagramusefillcolour="0" x="9" linecolour="#ff0000" y="180" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="182" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="416" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
      <UML:ClassWidget usesdiagramfillcolour="0" width="241" showattsigs="601" usesdiagramusefillcolour="0" x="89" linecolour="#ff0000" y="430" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="45" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="469" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
      <UML:ClassWidget usesdiagramfillcolour="0" width="68" showattsigs="601" usesdiagramusefillcolour="0" x="175" linecolour="#ff0000" y="374" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#dcdcdc" height="23" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="471" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
      <UML:ClassWidget usesdiagramfillcolour="0" width="142" showattsigs="601" usesdiagramusefillcolour="0" x="572" linecolour="#ff0000" y="354" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="182" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="486" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
@@ -251,7 +252,7 @@ x2c:get" name="hijos" static="0" scope="202" />
        <listitem open="0" type="815" id="465" label="AI_Servicio" />
        <listitem open="0" type="815" id="458" label="guardar" />
       </listitem>
-      <listitem open="0" type="813" id="416" label="AI_Sistema" >
+      <listitem open="1" type="813" id="416" label="AI_Sistema" >
        <listitem open="0" type="814" id="514" label="descripcion" />
        <listitem open="0" type="814" id="533" label="habilitado" />
        <listitem open="0" type="814" id="438" label="icono" />
@@ -259,6 +260,7 @@ x2c:get" name="hijos" static="0" scope="202" />
        <listitem open="0" type="814" id="440" label="link_ayuda" />
        <listitem open="0" type="814" id="513" label="nombre" />
        <listitem open="0" type="814" id="437" label="sistema" />
+       <listitem open="0" type="814" id="538" label="tipo" />
        <listitem open="0" type="815" id="466" label="AI_Sistema" />
        <listitem open="0" type="815" id="536" label="cargar" />
        <listitem open="0" type="815" id="531" label="getSistemas" />
index 19eac36702b94df7529781ed0ccdef1afb3f7a6c..2f65ea84da5b998c6d4828aca023f272c3f4d1e7 100644 (file)
@@ -102,6 +102,12 @@ class AI_Sistema extends AI_DBObject {
      */
     var $habilitado = true;
 
+    /**
+     * @var    string $tipo
+     * @access public
+     */
+    var $tipo = 'php';
+
     // ~X2C
 
     // +X2C Operation 466
@@ -133,7 +139,6 @@ class AI_Sistema extends AI_DBObject {
             $db     = $result->dbh;
         // Si no es un resultado, hago el query.
         } else {
-            // FIXME - ver como manejar JOINs - Ver de hacer el JOIN tambien en cargar.
             $result = $db->query(
                 "SELECT AI.*, SA.nombre_sistema as nombre, SA.desc_sistema as descripcion
                     FROM {$this->conf['base']}.{$this->conf['tabla']} as AI, samurai.sistema as SA
@@ -172,6 +177,7 @@ class AI_Sistema extends AI_DBObject {
             'link'       => $this->link,
             'link_ayuda' => $this->link_ayuda,
             'habilitado' => $this->habilitado ? 1 : 0,
+            'tipo'       => $this->tipo,
         );
         $err = parent::guardar($db, $datos, $nuevo);
         if (PEAR::isError($err)) {
@@ -198,7 +204,6 @@ class AI_Sistema extends AI_DBObject {
             $conf = parse_ini_file(AI_SISTEMA_CONFFILE, true);
         }
         extract($conf);
-        // FIXME - ver como manejar JOINs - Ver de hacer el JOIN tambien en cargar.
         $query = "
             SELECT    SA.id_sistema, SA.nombre_sistema
             FROM      samurai.sistema as SA
@@ -231,7 +236,6 @@ class AI_Sistema extends AI_DBObject {
         }
         $id_field = $conf['id'];
         $tabla    = $conf['base'].'.'.$conf['tabla'];
-        // FIXME - ver como manejar JOINs - Ver de hacer el JOIN tambien en cargar.
         $query = "
             SELECT AI.*, SA.nombre_sistema as nombre, SA.desc_sistema as descripcion
             FROM   $tabla as AI, samurai.sistema as SA
index 02f55f389e76f1669b40e5307ff6b641133b5a89..a9691abebf3d28b449df03613c47467df49a4152 100644 (file)
@@ -82,7 +82,7 @@ class AI_Arbol extends MECON_HTML_ArbolDB {
         );
         if ($tipo == 'grupo' or $tipo == 'servicio') {
             $dbdata['id_padre'] = $tipo . '_padre';
-        } elseif ($tipo == 'sistema') { // FIXME - horrible!!!
+        } elseif ($tipo == 'sistema') { // FIXME - es bastante poco ortodoxo esto.
             $dbdata =
                 array(
                     'tabla'         => "intranet.$tabla as A, samurai.sistema as S",
index ea7c5c8c178708ec8d667693d6128f750e70fbbb..6faef90aff3b2e9a0c4cc360139195531afd4aef 100644 (file)
@@ -82,7 +82,8 @@ class AI_Form extends MECON_HTML_QuickForm {
         // Construyo con el padre y seteos generales.
         $this->renderer->updateAttributes(array('width' => '400'));
         $this->addElement('header','cabecera', $s_accion . ' ' . $s_tipo);
-        // Elementos.
+        // Elementos:
+        // ID.
         if ($tipo == 'sistema') {
             require_once 'SAMURAI/Sistema.php';
             $sistemas = array('' => '--');
@@ -105,6 +106,7 @@ class AI_Form extends MECON_HTML_QuickForm {
             }
             $fId->freeze();
         }
+        // Padre / Nombre.
         if ($tipo == 'grupo' or $tipo == 'servicio') {
             require_once 'AI/Arbol.php';
             $arbol = new AI_Arbol($obj, $db, true);
@@ -127,6 +129,7 @@ class AI_Form extends MECON_HTML_QuickForm {
                 $fNombre->setValue($obj->nombre);
             }
         }
+        // Antigüedad / Secciones / Mostrar Hijos.
         if ($tipo == 'grupo') {
             $fAntiguedad   =& $this->addElement('select', 'antiguedad', 'Antigüedad',
                 array(3 => '3 días', 1 => '1 día', 7 => '1 semana'));
@@ -144,6 +147,7 @@ class AI_Form extends MECON_HTML_QuickForm {
                 $fMostrarHijos->setChecked($obj->mostrar_hijos);
             }
         }
+        // Descripción / Necesita Logueo.
         if ($tipo == 'servicio') {
             $fDescripcion =& $this->addElement('text', 'descripcion', 'Descripción');
             $fLogueo      =& $this->addElement('checkbox','logueo', 'Necesita login');
@@ -155,6 +159,7 @@ class AI_Form extends MECON_HTML_QuickForm {
                 $fLogueo->setChecked($obj->necesita_logueo);
             }
         }
+        // Link / Link Ayuda.
         if ($tipo == 'servicio' or $tipo == 'sistema') {
             $fLink      =& $this->addElement('text', 'link', 'Enlace');
             $fLinkAyuda =& $this->addElement('text', 'link_ayuda', 'Enlace de la ayuda');
@@ -173,10 +178,18 @@ class AI_Form extends MECON_HTML_QuickForm {
                 $this->addRule('icono', 'Debe ingresar un ícono.',  'required');
             }
         }
+        // Tipo de sistema.
+        if ($tipo == 'sistema') {
+            $fTipo =& $this->addElement('checkbox', 'tipo', 'Programado en EmbPerl');
+            // Carga datos.
+            if ($accion & (AI_BAJA | AI_MODIF)) {
+                $fTipo->setChecked($obj->tipo == 'embperl');
+            }
+        }
+        // Habilitado.
         $fHabilitado =& $this->addElement('checkbox','habilitado', 'Está habilitado',
             '', array('checked' => 'checked'));
-        // Carga datos.
-        if ($accion & (AI_BAJA | AI_MODIF)) {
+        if ($accion & (AI_BAJA | AI_MODIF)) { // Carga datos.
             $fHabilitado->setChecked($obj->habilitado);
         }
         // Botones.
@@ -228,6 +241,9 @@ class AI_Form extends MECON_HTML_QuickForm {
             $obj->descripcion     = $this->getSubmitValue('descripcion');
             $obj->necesita_logueo = $this->getSubmitValue('logueo');
         }
+        if ($tipo == 'sistema') {
+            $obj->tipo = $this->getSubmitValue('tipo') ? 'embperl' : 'php';
+        }
         if ($tipo == 'servicio' or $tipo == 'sistema') {
             $obj->link       = $this->getSubmitValue('link');
             $obj->link_ayuda = $this->getSubmitValue('link_ayuda');
index d2cc0a58307c2703fb0ad7da3faee4e202c12790..81ffc4139dfaa71ead31cc9ec9bb5835b3292c33 100644 (file)
@@ -33,5 +33,6 @@ CREATE TABLE sistema (
     link            VARCHAR(255)            NOT NULL default '',
     link_ayuda      VARCHAR(255)            NOT NULL default '',
     habilitado      TINYINT(1)              NOT NULL default 1,
+    tipo            ENUM('php', 'embperl')  NOT NULL default 'php',
     PRIMARY KEY (sistema)
 );