]> git.llucax.com Git - mecon/ai.git/commitdiff
Se completa el manejo de formularios para GrupoSecciones.
authorLeandro Lucarella <llucax@gmail.com>
Fri, 4 Jul 2003 22:21:24 +0000 (22:21 +0000)
committerLeandro Lucarella <llucax@gmail.com>
Fri, 4 Jul 2003 22:21:24 +0000 (22:21 +0000)
sistema/local_lib/AIForm.php

index 4c6b42370b248ff884f61386315f81af143ecfee..e931aa5ad99e1b0f94549ad73952bbbc644da4ce 100644 (file)
@@ -57,12 +57,14 @@ class AIForm extends MECON_HTML_QuickForm {
      */
     function iniciar(&$obj, $accion = ALTA) // ~X2C
     {
-        $clase = get_class($obj);
+        $clase   = get_class($obj);
+        $tipo    = $clase;
         $s_clase = ucfirst($clase);
         if ($clase == 'gruposecciones') {
+            $tipo    = 'grupo';
             $s_clase = 'Grupo de Secciones';
         }
-        $padre = $clase.'_padre';
+        $padre = $tipo.'_padre';
         switch ($accion) {
             case BAJA:
                 $s_accion = 'Borrar';
@@ -79,15 +81,15 @@ class AIForm extends MECON_HTML_QuickForm {
         $this->addElement('header','cabecera', $s_accion . ' ' . $s_clase);
         // Elementos.
         if ($accion & (BAJA | MODIFICACION)) {
-            $fId =& $this->addElement('text', $clase, 'Identificador');
-            $fId->setValue($obj->$clase);
+            $fId =& $this->addElement('text', $tipo, 'Identificador');
+            $fId->setValue($obj->$tipo);
             $fId->freeze();
         }
         if ($clase == 'gruposecciones' or $clase == 'servicio') {
             $fPadre  =& $this->addElement('text', $padre, 'Padre');
             $fNombre =& $this->addElement('text', 'nombre', 'Nombre');
             // Validación.
-            $this->addRule('nombre','Debe ingresar un nombre.',         'required');
+            $this->addRule('nombre', 'Debe ingresar un nombre.', 'required');
             $this->addRule($padre, 'Debe ingresar un padre.', 'required');
             $this->addRule($padre, 'El padre debe ser un número natural.',
                 'regex', '/^\d*$/');
@@ -97,6 +99,22 @@ class AIForm extends MECON_HTML_QuickForm {
                 $fNombre->setValue($obj->nombre);
             }
         }
+        if ($clase == 'gruposecciones') {
+            $fAntiguedad   =& $this->addElement('text', 'antiguedad', 'Antigüedad');
+            $fSecciones    =& $this->addElement('select', 'secciones', 'Secciones',
+                array(1=>'test1', 'test2', 'test3', 'test4', 'test5', 'test6', 'test7', 'test8'),
+                array('multiple' => 'multiple', 'size' => 5));
+            $fMostrarHijos =& $this->addElement('checkbox', 'mostrar_hijos', 'Mostrar hijos');
+            // Validación.
+            $this->addRule('antiguedad', 'La antigüedad debe ser un número natural.',
+                'regex', '/^\d*$/');
+            // Carga datos.
+            if ($accion & (BAJA | MODIFICACION)) {
+                $fAntiguedad->setValue($obj->antiguedad);
+                $fSecciones->setSelected($obj->secciones);
+                $fMostrarHijos->setChecked($obj->mostrar_hijos);
+            }
+        }
         if ($clase == 'servicio') {
             $fDescripcion =& $this->addElement('text', 'descripcion', 'Descripción');
             $fLogueo      =& $this->addElement('checkbox','logueo', 'Necesita login');
@@ -105,7 +123,7 @@ class AIForm extends MECON_HTML_QuickForm {
             // Carga datos.
             if ($accion & (BAJA | MODIFICACION)) {
                 $fDescripcion->setValue($obj->descripcion);
-                $fLogueo->setValue($obj->necesita_logueo);
+                $fLogueo->setChecked($obj->necesita_logueo);
             }
         }
         if ($clase == 'servicio' or $clase == 'sistema') {
@@ -118,12 +136,17 @@ class AIForm extends MECON_HTML_QuickForm {
                 $fLinkAyuda->setValue($obj->link_ayuda);
                 $fIcono->setValue($obj->icono);
             }
+            // Validación.
+            if ($clase == 'sistema') {
+                $this->addRule('link',  'Debe ingresar un nombre.', 'required');
+                $this->addRule('icono', 'Debe ingresar un padre.',  'required');
+            }
         }
         $fHabilitado =& $this->addElement('checkbox','habilitado', 'Está habilitado',
             '', array('checked' => 'checked'));
         // Carga datos.
         if ($accion & (BAJA | MODIFICACION)) {
-            $fHabilitado->setValue($obj->habilitado);
+            $fHabilitado->setChecked($obj->habilitado);
         }
         // Botones.
         $fBtnAccion =& parent::createElement('submit', 'aceptar' , $s_accion);
@@ -154,14 +177,24 @@ class AIForm extends MECON_HTML_QuickForm {
     function llenarObjeto(&$obj) // ~X2C
     {
         $clase = get_class($obj);
-        $padre = $clase.'_padre';
+        $tipo  = $clase;
+        if ($clase == 'gruposecciones') {
+            $tipo = 'grupo';
+        }
+        $padre = $tipo.'_padre';
         // Elementos.
-        $obj->$clase = $this->getSubmitValue($clase);
+        $obj->$tipo = $this->getSubmitValue($tipo);
         $obj->habilitado = $this->getSubmitValue('habilitado');
-        if ($clase == 'grupo' or $clase == 'servicio') {
+        if ($clase == 'gruposecciones' or $clase == 'servicio') {
             $obj->$padre = $this->getSubmitValue($padre);
             $obj->nombre = $this->getSubmitValue('nombre');
         }
+        if ($clase == 'gruposecciones') {
+            $obj->antiguedad    = $this->getSubmitValue('antiguedad');
+            $obj->secciones     = $this->getSubmitValue('secciones');
+var_dump($obj->secciones);
+            $obj->mostrar_hijos = $this->getSubmitValue('mostrar_hijos');
+        }
         if ($clase == 'servicio') {
             $obj->descripcion     = $this->getSubmitValue('descripcion');
             $obj->necesita_logueo = $this->getSubmitValue('logueo');