From 06d220975c26b86537a9055f897177550919b8fc Mon Sep 17 00:00:00 2001 From: "Jose M. Guisado" Date: Thu, 17 Dec 2020 11:19:50 +0000 Subject: #1015 Fix updateBootMode and use it when updating computer info When a computer info is updated sometimes their related pxe files need to be updated accordingly. In order to recreate the file the function createBootMode was being used inside gestor_ordenadores. Eg: createBootMode ($cmd, $arranque, $ip, $idioma) This had some problems because the POST message to gestor_ordenadores was sometimes lacking the ip field. This field is not necessary because updateBootMode takes the id of the computer and queries the database for the ip of the computer associated with it. Use updateBootMode ($cmd, "idordenador", $idordenador, $idioma) instead. Fixes related mass updater and "moving pc to another classroom" issues. --- admin/WebConsole/comandos/MoverordenadoresAulas.php | 2 ++ admin/WebConsole/gestores/gestor_ordenadores.php | 2 +- admin/WebConsole/includes/tftputils.php | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/admin/WebConsole/comandos/MoverordenadoresAulas.php b/admin/WebConsole/comandos/MoverordenadoresAulas.php index fc2d0020..b2b45158 100644 --- a/admin/WebConsole/comandos/MoverordenadoresAulas.php +++ b/admin/WebConsole/comandos/MoverordenadoresAulas.php @@ -19,6 +19,7 @@ include_once("../includes/HTMLCTESELECT.php"); include_once("../includes/TomaDato.php"); include_once("../includes/RecopilaIpesMacs.php"); include_once("../includes/opcionesprotocolos.php"); +include_once("../includes/tftputils.php"); include_once("../idiomas/php/".$idioma."/comandos/moverordenadoresAulas_".$idioma.".php"); //________________________________________________________________________________________________________ //include_once("./includes/capturaacciones.php"); @@ -153,6 +154,7 @@ if($confmovord == "si" ){ $cmd->texto = "UPDATE ordenadores SET idaula=$idaulamov, grupoid=0 WHERE idordenador=$idordmov"; $resulm=$cmd->Ejecutar(); ### AGP ###################################################################################### + updateBootMode($cmd, "idordenador", $idordmov, $idioma); } } }else{echo "";} diff --git a/admin/WebConsole/gestores/gestor_ordenadores.php b/admin/WebConsole/gestores/gestor_ordenadores.php index 165aaba4..e9f3c79f 100644 --- a/admin/WebConsole/gestores/gestor_ordenadores.php +++ b/admin/WebConsole/gestores/gestor_ordenadores.php @@ -323,7 +323,7 @@ EOD; $cmd->texto="UPDATE ordenadores SET idaula=@idaula, grupoid=@grupoid WHERE idordenador=@idordenador"; $resul=$cmd->Ejecutar(); // Actualizar fichero TFTP/PXE a partir de la plantilla asociada. - createBootMode ($cmd, $arranque, $ip, $idioma); + updateBootMode ($cmd, "idordenador", $idordenador, $idioma); break; default: break; diff --git a/admin/WebConsole/includes/tftputils.php b/admin/WebConsole/includes/tftputils.php index 5c97867c..f35e28d5 100644 --- a/admin/WebConsole/includes/tftputils.php +++ b/admin/WebConsole/includes/tftputils.php @@ -151,7 +151,7 @@ function updateBootMode ($cmd, $idfield, $idvalue, $lang) { $rs->Primero(); while (! $rs->EOF) { $ip = $rs->campos["ip"]; - if (! empty ($hostname)) { + if (! empty ($ip)) { $bootopt=$rs->campos["bootopt"]; // Volver a crear el fichero de arranque. -- cgit v1.2.3-18-g5258