diff --git a/Configuracion.php b/Configuracion.php index 1fe4585..0f6978f 100644 --- a/Configuracion.php +++ b/Configuracion.php @@ -135,10 +135,7 @@ fclose($fsalida); unlink($this->confAnterior); rename($this->configuracion,$this->confAnterior); - rename($this->confNueva,$this->configuracion); - // Actualiza la plantilla bootstrap con los cambios de color - $plantilla = file_get_contents("css/dashboard.css"); - + rename($this->confNueva,$this->configuracion); } return $salida; } diff --git a/Mantenimiento.php b/Mantenimiento.php index 61edffb..5bf78a1 100644 --- a/Mantenimiento.php +++ b/Mantenimiento.php @@ -142,6 +142,7 @@ class Mantenimiento { } //$salida.=print_r($this->perfil); //$salida.=$comando; + //var_dump($this->campos); while ($fila = $this->bdd->procesaResultado()) { $salida.=''; foreach ($fila as $clave => $valor) { @@ -160,6 +161,10 @@ class Mantenimiento { $this->campoBusca = $dato[1]; $valor = '' . $valor; } + if ($this->campos[$clave]['Type'] == "Boolean(1)") { + $checked = $valor == '1' ? 'checked' : ''; + $valor = ''; + } $salida.="$valor\n"; } //Añade el icono de editar @@ -265,7 +270,15 @@ class Mantenimiento { } else { $coma = ","; } - $valor = $_POST[$campo] == "" ? "null" : '"' . $_POST[$campo] . '"'; + if ($this->campos[$campo]['Type'] == 'Boolean(1)') { + $valor = ""; + if (empty($_POST[$campo])) { + $valor = "0"; + } + $valor = $_POST[$campo] == "on" ? '1' : $valor; + } else { + $valor = $_POST[$campo] == "" ? "null" : '"' . $_POST[$campo] . '"'; + } $comando.="$coma " . $valor; } $comando.=")"; @@ -284,6 +297,7 @@ class Mantenimiento { //echo "id=$id pag=$pag orden=$orden sentido=$sentido";die(); $comando = "update " . $this->tabla . " set "; $lista = explode("&", $_POST['listacampos']); + //var_dump($lista); $primero = true; foreach ($lista as $campo) { if ($campo == "id" || $campo == "") @@ -291,13 +305,23 @@ class Mantenimiento { if ($primero) { $primero = false; $coma = " "; - } - else + } else { $coma = ","; - if (strlen(trim($_POST[$campo])) == 0) - $comando.="$coma $campo=null"; - else - $comando.=$coma . ' ' . $campo . '="' . $_POST[$campo] . '"'; + } + if ($this->campos[$campo]['Type'] == 'Boolean(1)') { + $valor = ""; + if (empty($_POST[$campo])) { + $valor = "0"; + } + $valor = $_POST[$campo] == "on" ? '1' : $valor; + $comando.=$coma . ' ' . $campo . '="' . $valor . '"'; + } else { + if (strlen(trim($_POST[$campo])) == 0) { + $comando.="$coma $campo=null"; + } else { + $comando.=$coma . ' ' . $campo . '="' . $_POST[$campo] . '"'; + } + } } $comando.=" where id=\"$id\""; if (!$this->bdd->ejecuta($comando)) { @@ -306,6 +330,7 @@ class Mantenimiento { list($enlace, $resto) = explode("&", $this->url); $enlace.="&opc=inicial&orden=" . $orden . "&sentido=" . $sentido . "&id=" . $pag; + //echo $comando; header('Location: ' . $enlace); return; } @@ -446,8 +471,10 @@ class Mantenimiento { //Se salta los campos que no deben aparecer continue; } + //Genera una lista con los campos que intervienen en el formulario. $salida .='
'; $campo = $valor['Campo']; + $campos.="$campo&"; $salida.=' "; $salida.='
'; //Se asegura que el id no se pueda modificar. @@ -473,13 +500,13 @@ class Mantenimiento { // //Prueba // - $salida .= '
- + $salida .= '
+
'; $salida .= '