示例#1
0
文件: ci_efs.php 项目: emma5021/toba
 function conf__param_varios(toba_ei_formulario $form)
 {
     $tipo_ef = $this->get_tipo_ef();
     if (in_array($tipo_ef, array('ef_editable_numero', 'ef_editable_moneda', 'ef_editable_numero_porcentaje'))) {
         $form->set_descripcion('Definir los [wiki:Referencia/efs/numero parámetros del número]');
         $form->set_modo_descripcion(false);
     }
     $fila = $this->get_tabla()->get_fila($this->s__seleccion_efs_anterior);
     //--- Se desactivan los efs que no forman parte de la definicion
     $param = $this->get_definicion_parametros(false);
     $todos = $this->dependencia('param_varios')->get_nombres_ef();
     $efs_a_desactivar = array();
     foreach ($todos as $disponible) {
         if (!in_array($disponible, $param)) {
             $efs_a_desactivar[] = $disponible;
             if (isset($this->parametros[$disponible])) {
                 unset($this->parametros[$disponible]);
             }
         }
     }
     //-- Si es un popup no eliminar la carpeta (es cosmetico)
     if (!in_array('popup_item', $efs_a_desactivar)) {
         array_borrar_valor($efs_a_desactivar, 'popup_carpeta');
         array_borrar_valor($efs_a_desactivar, 'popup_carga_desc_estatico');
         //-- Si esta seteado el item, buscar la carpeta asociada
         if (isset($fila['popup_item']) && isset($fila['popup_proyecto'])) {
             $fila['popup_carpeta'] = toba_info_editores::get_carpeta_de_item($fila['popup_item'], $fila['popup_proyecto']);
         }
     }
     $this->dependencia('param_varios')->desactivar_efs($efs_a_desactivar);
     //--- Si es un popup y tiene carga estatica chequear el checkbox
     $tiene_clase = isset($fila['popup_carga_desc_clase']) && $fila['popup_carga_desc_clase'] != '';
     $tiene_include = isset($fila['popup_carga_desc_include']) && $fila['popup_carga_desc_include'] != '';
     if ($tiene_clase || $tiene_include) {
         $fila['popup_carga_desc_estatico'] = 1;
     }
     return $fila;
 }