X-Git-Url: https://git.llucax.com/mecon/ai.git/blobdiff_plain/69a744cc170e8e853ec7946e9b61e7f35f0b2ae7..493cf2effdb418f10f2ae77cec0786c5cef0bbcc:/sistema/local_lib/AI/Form.php diff --git a/sistema/local_lib/AI/Form.php b/sistema/local_lib/AI/Form.php index f83c623..0d26902 100644 --- a/sistema/local_lib/AI/Form.php +++ b/sistema/local_lib/AI/Form.php @@ -53,14 +53,13 @@ class AI_Form extends MECON_HTML_QuickForm { * Construye un formulario para el objecto especificado. * * @param object &$obj Objeto con el cual rellenar el formulario. Puede ser GrupoSecciones, Servicio o Sistema. - * @param int $accion Accion que realizar?el formulario a crear. Puede ser AI_ALTA, AI_BAJA o AI_MODIFICACION. - * @param HTML_Arbol $arbol ?bol de donde sacar los padres. - * @param DB $db Base de datos. + * @param int $accion Accion que realizará el formulario a crear. Puede ser AI_ALTA, AI_BAJA o AI_MODIFICACION. + * @param DB $db Base de datos a usar. * * @return void * @access public */ - function iniciar(&$obj, $accion, $arbol, $db) // ~X2C + function iniciar(&$obj, $accion, $db) // ~X2C { $tipo = substr(get_class($obj), 3); $s_tipo = ucfirst($tipo); @@ -81,9 +80,10 @@ class AI_Form extends MECON_HTML_QuickForm { $s_accion = 'Agregar'; } // Construyo con el padre y seteos generales. - $this->setRendererOpts(array('width' => '400')); + $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('' => '--'); @@ -106,7 +106,10 @@ 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); $tipos = array('' => '--', '0' => 'Página Principal') + $arbol->toArray(); // Saco el elemento actual si hay uno cargado (no puede ser padre de si mismo). @@ -126,11 +129,12 @@ 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')); $fSecciones =& $this->addElement('select', 'secciones', 'Secciones', - AI_GrupoSecciones::getSeccionesArray($db), + AI_GrupoSecciones::getSeccionesArray($db, (int)$obj->$tipo), array('multiple' => 'multiple', 'size' => 8)); $fMostrarHijos =& $this->addElement('checkbox', 'mostrar_hijos', 'Mostrar hijos'); // Validación. @@ -143,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'); @@ -154,12 +159,13 @@ 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'); //$fIcono =& $this->addElement('text', 'icono', 'Ícono'); $fIcono =& $this->addElement('select', 'icono', 'Ícono', - listarArchivos('/var/www/sistemas/intranet/www/images', $tipo . '_', '\.gif')); + listarArchivos('/var/www/sistemas/intranet/sistema/www/images', $tipo . '_', '\.gif')); // Carga datos. if ($accion & (AI_BAJA | AI_MODIF)) { $fLink->setValue($obj->link); @@ -172,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', 'Usa 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. @@ -227,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');