*/
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';
$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*$/');
$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');
// 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') {
$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);
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');