예제 #1
0
 protected function updateCampoFromRequest()
 {
     $campo = $this->getRequestParameter('campo');
     $this->campo->setEsGeneral(isset($campo['es_general']) ? true : false);
     $this->campo->setEsNombre(isset($campo['es_nombre']) ? true : false);
     $this->campo->setObligatorio(isset($campo['obligatorio']) ? true : false);
     $this->campo->setMismaFila(isset($campo['misma_fila']) ? true : false);
     $this->campo->setEnLista(isset($campo['en_lista']) ? true : false);
     if (isset($campo['id_empresa'])) {
         $this->campo->setIdEmpresa($campo['id_empresa'] ? $campo['id_empresa'] : null);
     }
     if (isset($campo['nombre'])) {
         $this->campo->setNombre($campo['nombre']);
     }
     if (isset($campo['descripcion'])) {
         $this->campo->setDescripcion($campo['descripcion']);
     }
     if (isset($campo['tipo'])) {
         $this->campo->setTipo(isset($campo['tipo']) ? $campo['tipo'] : CampoPeer::getDefaultId());
     }
     $this->campo->setSeleccionMultiple(isset($campo['seleccion_multiple']) ? true : false);
     $this->campo->setDesplegable(isset($campo['desplegable']) ? true : false);
     if (isset($campo['tipo_items'])) {
         $this->campo->setTipoItems($campo['tipo_items'] ? $campo['tipo_items'] : CampoPeer::getDefaultIdTipoItems());
     }
     if (isset($campo['unidad_rangos'])) {
         $this->campo->setUnidadRangos($campo['unidad_rangos'] ? $campo['unidad_rangos'] : null);
     }
     if (isset($campo['tipo_periodo'])) {
         $this->campo->setTipoPeriodo($campo['tipo_periodo'] ? $campo['tipo_periodo'] : null);
     }
     if (isset($campo['tipo_tabla'])) {
         $this->campo->setValorTabla($campo['tipo_tabla'] ? $campo['tipo_tabla'] : null);
     }
     //Si el tipo es otra tabla, significa que se ha de mostrar en el padre, si es fecha significa que es ALARMA
     $this->campo->setMostrarEnPadre(isset($campo['mostrar_en_padre']) ? true : false);
     if (isset($campo['tipo_objeto'])) {
         $this->campo->setValorObjeto($campo['tipo_objeto'] ? $campo['tipo_objeto'] : null);
     }
     switch ($this->campo->getTipo()) {
         case CampoPeer::ID_TEXTO_CORTO:
             $this->campo->setTamano($campo['tamano_texto_corto'] ? $campo['tamano_texto_corto'] : null);
             break;
         case CampoPeer::ID_TEXTO_LARGO:
             $this->campo->setTamano($campo['tamano_texto_largo'] ? $campo['tamano_texto_largo'] : null);
             break;
         case CampoPeer::ID_NUMERO:
             $this->campo->setTamano($campo['tamano_numero'] ? $campo['tamano_numero'] : null);
             break;
     }
     switch ($this->campo->getTipo()) {
         case CampoPeer::ID_TEXTO_CORTO:
             $this->campo->setDefecto($campo['defecto_texto_corto']);
             break;
         case CampoPeer::ID_TEXTO_LARGO:
             $this->campo->setDefecto($campo['defecto_texto_largo']);
             break;
         case CampoPeer::ID_BOOLEANO:
             $this->campo->setDefecto($campo['defecto_sino']);
             break;
         case CampoPeer::ID_LISTA:
             $this->campo->setDefecto($campo['defecto_lista']);
             break;
         case CampoPeer::ID_TABLA:
             $this->campo->setDefecto($campo['defecto_tabla']);
             break;
         case CampoPeer::ID_OBJETO:
             $this->campo->setDefecto($campo['defecto_objeto']);
             break;
         case CampoPeer::ID_NUMERO:
             $this->campo->setDefecto($campo['defecto_numero']);
             break;
         case CampoPeer::ID_FECHA:
             $this->campo->setDefecto($campo['defecto_fecha']);
             break;
     }
 }
}
?>
">
  <?php 
if ($sf_request->hasError('campo{tipo_items}')) {
    ?>
    <?php 
    echo form_error('campo{tipo_items}', array('class' => 'form-error-msg'));
    ?>
  <?php 
}
?>
  <?php 
$lista_tipos = CampoPeer::getTiposItems();
$value = "<ul class=\"sf_admin_checklist\">\n";
$tipo_items_campo = $campo->getTipoItems() ? $campo->getTipoItems() : CampoPeer::getDefaultIdTipoItems();
foreach ($lista_tipos as $id => $nombre_tipo) {
    $value .= "<li>";
    $value .= radiobutton_tag('campo[tipo_items]', $id, $tipo_items_campo == $id, array('id' => 'campo_tipo_items_' . $id));
    $value .= label_for('campo_tipo_items_' . $id, __($nombre_tipo), '');
    $value .= "</li>\n";
}
$value .= "</ul>\n";
echo $value ? $value : '-';
?>
  <div class="sf_edit_help"><?php 
echo __('Indique el tipo de los elementos de la lista');
?>
</div>
  </div>
</div>