diff options
Diffstat (limited to 'admin')
12 files changed, 109 insertions, 36 deletions
diff --git a/admin/WebConsole/idiomas/javascripts/cat/avisos_cat.js b/admin/WebConsole/idiomas/javascripts/cat/avisos_cat.js new file mode 100644 index 00000000..c4f8d01d --- /dev/null +++ b/admin/WebConsole/idiomas/javascripts/cat/avisos_cat.js @@ -0,0 +1,7 @@ +//____________________________________________________________________________ +// +// Fichero de idiomas javascript: avisos_cat.js +// Idioma: Catalán +//____________________________________________________________________________ +TbMsg=new Array; +TbMsg["WARN_NOREPO"]="No hay definido repositorio en la unidad organizativa, los ordenadores se darán de alta sin repositorio."; diff --git a/admin/WebConsole/idiomas/javascripts/cat/propiedades_repositorios_cat.js b/admin/WebConsole/idiomas/javascripts/cat/propiedades_repositorios_cat.js index 547d7e6b..7cf306b3 100644 --- a/admin/WebConsole/idiomas/javascripts/cat/propiedades_repositorios_cat.js +++ b/admin/WebConsole/idiomas/javascripts/cat/propiedades_repositorios_cat.js @@ -6,6 +6,6 @@ TbMsg=new Array; TbMsg[0]="El nombre del repositorio sólo puede contener caracteres alfanuméricos"; TbMsg[1]="Debe introducir una dirección IP"; -TbMsg[2]="ATENCIÓN: Hay imágenes alojadas por este repositorio. ¿Está seguro de querer eliminarlo ?"; +TbMsg[2]="ATENCIÓN: Hay ordenadores con este repositorio asignado. ¿Está seguro de querer eliminarlo ?"; TbMsg[3]="Debe introducir un puerto de comunicaciones para los clientes"; TbMsg[4]="Los comentarios sólo pueden contener caracteres alfanuméricos"; diff --git a/admin/WebConsole/idiomas/javascripts/eng/avisos_eng.js b/admin/WebConsole/idiomas/javascripts/eng/avisos_eng.js new file mode 100644 index 00000000..3dc1c0c9 --- /dev/null +++ b/admin/WebConsole/idiomas/javascripts/eng/avisos_eng.js @@ -0,0 +1,7 @@ +//____________________________________________________________________________ +// +// Fichero de idiomas javascript: avisos_eng.js +// Idioma: Inglés +//____________________________________________________________________________ +TbMsg=new Array; +TbMsg["WARN_NOREPO"]="There is no defined repository in the organizational unit, the computers will be registered without a repository."; diff --git a/admin/WebConsole/idiomas/javascripts/eng/propiedades_repositorios_eng.js b/admin/WebConsole/idiomas/javascripts/eng/propiedades_repositorios_eng.js index bc243de7..85dda095 100644 --- a/admin/WebConsole/idiomas/javascripts/eng/propiedades_repositorios_eng.js +++ b/admin/WebConsole/idiomas/javascripts/eng/propiedades_repositorios_eng.js @@ -1,11 +1,11 @@ //____________________________________________________________________________ // -// Fichero de idiomas javascript: propiedades_repositorios_eng.js -// Idioma: Ingles +// Javascript language file: propiedades_repositorios_eng.js +// Language: English //____________________________________________________________________________ TbMsg=new Array; -TbMsg[0]="El nombre del repositorio sólo puede contener caracteres alfanuméricos"; -TbMsg[1]="Debe introducir una dirección IP"; -TbMsg[2]="ATENCIÓN: Hay imágenes alojadas por este repositorio. ¿Está seguro de querer eliminarlo ?"; -TbMsg[3]="Debe introducir un puerto de comunicaciones para los clientes"; -TbMsg[4]="Los comentarios sólo pueden contener caracteres alfanuméricos"; +TbMsg[0]="Repository name can only contain alphanumeric characters"; +TbMsg[1]="You must enter IP address"; +TbMsg[2]="WARNING: There are computers assigned to this repository. Do you really want to delete it?"; +TbMsg[3]="You must enter Comm port for clients"; +TbMsg[4]="Comments can only contain alphanumeric characters."; diff --git a/admin/WebConsole/idiomas/javascripts/esp/avisos_esp.js b/admin/WebConsole/idiomas/javascripts/esp/avisos_esp.js new file mode 100644 index 00000000..9d1df6e0 --- /dev/null +++ b/admin/WebConsole/idiomas/javascripts/esp/avisos_esp.js @@ -0,0 +1,7 @@ +//____________________________________________________________________________ +// +// Fichero de idiomas javascript: avisos_esp.js +// Idioma: Español +//____________________________________________________________________________ +TbMsg=new Array; +TbMsg["WARN_NOREPO"]="No hay definido repositorio en la unidad organizativa, los ordenadores se darán de alta sin repositorio."; diff --git a/admin/WebConsole/idiomas/javascripts/esp/propiedades_repositorios_esp.js b/admin/WebConsole/idiomas/javascripts/esp/propiedades_repositorios_esp.js index 9145ffd8..8aa661dd 100644 --- a/admin/WebConsole/idiomas/javascripts/esp/propiedades_repositorios_esp.js +++ b/admin/WebConsole/idiomas/javascripts/esp/propiedades_repositorios_esp.js @@ -6,6 +6,6 @@ TbMsg=new Array; TbMsg[0]="El nombre del repositorio sólo puede contener caracteres alfanuméricos"; TbMsg[1]="Debe introducir una dirección IP"; -TbMsg[2]="ATENCIÓN: Hay imágenes alojadas por este repositorio. ¿Está seguro de querer eliminarlo ?"; +TbMsg[2]="ATENCIÓN: Hay ordenadores asignados a este repositorio. ¿Está seguro de querer eliminarlo ?"; TbMsg[3]="Debe introducir un puerto de comunicaciones para los clientes"; TbMsg[4]="Los comentarios sólo pueden contener caracteres alfanuméricos"; diff --git a/admin/WebConsole/idiomas/php/cat/buscar_cat.php b/admin/WebConsole/idiomas/php/cat/buscar_cat.php index 8ef4e461..96dfbdf6 100644 --- a/admin/WebConsole/idiomas/php/cat/buscar_cat.php +++ b/admin/WebConsole/idiomas/php/cat/buscar_cat.php @@ -15,5 +15,6 @@ $TbMsg["SEARCH_MAC"]="Adreça MAC"; $TbMsg["SEARCH_DUPLICATES"]="Duplicats"; $TbMsg["SEARCH_NOMATCHES"]="No es troben resultats"; $TbMsg["SEARCH_NOVALUE"]="Ha d\'introduir un valor pel criteri de cerca"; +$TbMsg["SEARCH_NOREPO"]="Ordenadores sin repositorio"; ?> diff --git a/admin/WebConsole/idiomas/php/eng/buscar_eng.php b/admin/WebConsole/idiomas/php/eng/buscar_eng.php index 9bd6e19f..15bffcb2 100644 --- a/admin/WebConsole/idiomas/php/eng/buscar_eng.php +++ b/admin/WebConsole/idiomas/php/eng/buscar_eng.php @@ -1,8 +1,8 @@ <?php //________________________________________________ // -// Fichero de idiomas php: buscar_eng.php -// Idioma: English +// Php language file: buscar_eng.php +// Language: English //________________________________________________ $TbMsg=array(); $TbMsg["SEARCH_TITLE"]="SEARCH COMPUTERS"; @@ -13,7 +13,6 @@ $TbMsg["SEARCH_NAME"]="Hostname"; $TbMsg["SEARCH_IP"]="IP address"; $TbMsg["SEARCH_MAC"]="MAC address"; $TbMsg["SEARCH_DUPLICATES"]="Duplicates"; -$TbMsg["SEARCH_NOMATCHES"]="There are no matches"; -$TbMsg["SEARCH_NOVALUE"]="You must enter a value for the search criteria"; -?> - +$TbMsg["SEARCH_NOMATCHES"]="No matches"; +$TbMsg["SEARCH_NOVALUE"]="You must enter a search criteria value."; +$TbMsg["SEARCH_NOREPO"]="Computers without repository"; diff --git a/admin/WebConsole/idiomas/php/esp/buscar_esp.php b/admin/WebConsole/idiomas/php/esp/buscar_esp.php index 9ea089e9..7a0c1411 100644 --- a/admin/WebConsole/idiomas/php/esp/buscar_esp.php +++ b/admin/WebConsole/idiomas/php/esp/buscar_esp.php @@ -15,5 +15,6 @@ $TbMsg["SEARCH_MAC"]="Dirección MAC"; $TbMsg["SEARCH_DUPLICATES"]="Duplicados"; $TbMsg["SEARCH_NOMATCHES"]="No se encuentran resultados"; $TbMsg["SEARCH_NOVALUE"]="Debe introducir un valor para el criterio de búsqueda"; +$TbMsg["SEARCH_NOREPO"]="Ordenadores sin repositorio"; ?> diff --git a/admin/WebConsole/propiedades/propiedades_repositorios.php b/admin/WebConsole/propiedades/propiedades_repositorios.php index 93b73687..87d95b0d 100644 --- a/admin/WebConsole/propiedades/propiedades_repositorios.php +++ b/admin/WebConsole/propiedades/propiedades_repositorios.php @@ -133,7 +133,7 @@ if($apiKeyRepo != ""){ <TH align=center> <?php echo $TbMsg[17]?> </TD> <?php if ($opcion==$op_eliminacion) - echo '<TD>'.$apiKeyRepo.'</TD>'; + echo '<TD>********</TD>'; else echo'<TD><INPUT class="formulariodatos" name="apiKeyRepo" type="text" style="width:200" value="'.$apiKeyRepo.'"></TD>'; ?> diff --git a/admin/WebConsole/varios/buscar.php b/admin/WebConsole/varios/buscar.php index a0d90934..7abdbe81 100644 --- a/admin/WebConsole/varios/buscar.php +++ b/admin/WebConsole/varios/buscar.php @@ -23,12 +23,12 @@ $valor=""; # Tomar varlores de sesión. if (isset($_POST["criterio"])) $criterio=htmlspecialchars($_POST["criterio"]); if (isset($_POST["valor"])) $valor=htmlspecialchars($_POST["valor"]); -if (!empty ($valor) || $criterio == "duplic") { +if (!empty ($valor) or $criterio == "duplic" or $criterio == "norepo") { $cmd=CreaComando($cadenaconexion); if ($cmd) { $rs=new Recordset; switch ($criterio) { - case "nombre": + case "nombre": // Buscar por nombre de equipo. $cmd->texto="SELECT grupos.nombregrupo AS grupo, aulas.nombreaula AS aula, ordenadores.idordenador AS id, @@ -42,7 +42,7 @@ if (!empty ($valor) || $criterio == "duplic") { AND aulas.idcentro='$idcentro' ORDER BY ordenadores.nombreordenador"; break; - case "ip": + case "ip": // Buscar por IP. $cmd->texto="SELECT grupos.nombregrupo AS grupo, aulas.nombreaula AS aula, ordenadores.idordenador AS id, @@ -56,7 +56,7 @@ if (!empty ($valor) || $criterio == "duplic") { AND aulas.idcentro='$idcentro' ORDER BY ordenadores.nombreordenador"; break; - case "mac": + case "mac": // Buscar por dirección MAC (Ethernet). $cmd->texto="SELECT grupos.nombregrupo AS grupo, aulas.nombreaula AS aula, ordenadores.idordenador AS id, @@ -70,7 +70,7 @@ if (!empty ($valor) || $criterio == "duplic") { AND aulas.idcentro='$idcentro' ORDER BY ordenadores.nombreordenador"; break; - case "duplic": + case "duplic": // Mostrar duplicados. $cmd->texto="SELECT grupos.nombregrupo AS grupo, aulas.nombreaula AS aula, ordenadores.idordenador AS id, @@ -93,6 +93,20 @@ if (!empty ($valor) || $criterio == "duplic") { GROUP BY mac HAVING count(*) > 1) AND aulas.idcentro='$idcentro'"; break; + case "norepo": // Mostrar ordenadores sin repositorio + $cmd->texto="SELECT grupos.nombregrupo AS grupo, + aulas.nombreaula AS aula, + ordenadores.idordenador AS id, + ordenadores.nombreordenador AS nombre, + ordenadores.ip AS ip, + ordenadores.mac AS mac + FROM ordenadores + JOIN aulas ON aulas.idaula=ordenadores.idaula + LEFT JOIN grupos ON grupos.idgrupo=aulas.grupoid + WHERE aulas.idcentro='$idcentro' + AND idrepositorio=0 + ORDER BY aulas.nombreaula;"; + break; } $rs->Comando=&$cmd; if ($rs->Abrir()) { @@ -126,9 +140,9 @@ function confirmar(){ } //_________________________________ function comprobar_datos(){ - if (document.fdatos.valor.value=="" && document.fdatos.criterio.value!="duplic") { - alert("<?php echo $TbMsg["SEARCH_NOVALUE"] ?>") - document.fdatos.valor.focus() + if (document.fdatos.valor.value=="" && document.fdatos.criterio.value!="duplic" && document.fdatos.criterio.value!="norepo") { + alert("<?php echo $TbMsg["SEARCH_NOVALUE"] ?>"); + document.fdatos.valor.focus(); return(false) } return(true) @@ -147,14 +161,13 @@ function PulsaEnter(oEvento){ if (iAscii == 13) confirmar(); return true; } -//_________________________________ </script> </head> <body> <p align="center"><u><span class="cabeceras"><?php echo $TbMsg["SEARCH_TITLE"] ?></span></u></p> <?php -if (!empty ($valor) || $criterio == "duplic") { +if (!empty ($valor) or $criterio == "duplic" or $criterio == "norepo") { if (empty ($aula)) { echo '<p class="subcabeceras" align="center">'.$TbMsg["SEARCH_NOMATCHES"].'</p>'; } else { @@ -186,11 +199,12 @@ if (!empty ($valor) || $criterio == "duplic") { <div align="center" style="margin:20;"> <form action="#" class="formulariodatos" name="fdatos" method="post"> <?php echo $TbMsg["SEARCH_CRITERIA"] ?>: - <select name="criterio" id="criterio" onchange="if (document.fdatos.criterio.value=='duplic') document.fdatos.valor.disabled=true; else document.fdatos.valor.disabled=false"> + <select name="criterio" id="criterio" onchange="if (document.fdatos.criterio.value=='duplic' || document.fdatos.criterio.value=='norepo') document.fdatos.valor.disabled=true; else document.fdatos.valor.disabled=false"> <option value="nombre"> <?php echo $TbMsg["SEARCH_NAME"] ?> </option> <option value="ip"> <?php echo $TbMsg["SEARCH_IP"] ?> </option> <option value="mac"> <?php echo $TbMsg["SEARCH_MAC"] ?> </option> <option value="duplic"> <?php echo $TbMsg["SEARCH_DUPLICATES"] ?> </option> + <option value="norepo"> <?php echo $TbMsg["SEARCH_NOREPO"] ?> </option> </select> <input type="text" name="valor" id="valor" size="20" /> <div align="center"> diff --git a/admin/WebConsole/varios/incorporaordenadores.php b/admin/WebConsole/varios/incorporaordenadores.php index 24b75cb3..ec303ea0 100644 --- a/admin/WebConsole/varios/incorporaordenadores.php +++ b/admin/WebConsole/varios/incorporaordenadores.php @@ -7,6 +7,8 @@ // Nombre del fichero: incorporaordenadores.php // Descripción : // Da de alta en la base de datos nuevos ordenadores desde un fichero de configuración dhcp +// Version 1.1.0: Se obtiene id del repositorio de la OU. Si no existe se muestra alerta para que confirme el alta. +// Fecha: 2018-10-24 // ************************************************************************************************************************************************* include_once("../includes/ctrlacc.php"); include_once("../clases/AdoPhp.php"); @@ -34,6 +36,7 @@ if (isset($_POST["nombreaula"])) $nombreaula=$_POST["nombreaula"]; $resul=0; $ordDup=""; +$idrepositorio = idrepoOU($cmd,$idaula); if(!empty($contenido)){ // Se ha introducido contenido en lugar de fichero $resul=procesaLineas($cmd,$idaula,$contenido); @@ -41,16 +44,27 @@ if(!empty($contenido)){ // Se ha introducido contenido en lugar de fichero //___________________________________________________________________________________________________ ?> <HTML> -<TITLE>Administración web de aulas</TITLE> <HEAD> - <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> -<LINK rel="stylesheet" type="text/css" href="../estilos.css"> + <TITLE>Administración web de aulas</TITLE> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> + <LINK rel="stylesheet" type="text/css" href="../estilos.css"> + <SCRIPT language="javascript" src="../idiomas/javascripts/<?php echo $idioma ?>/avisos_<?php echo $idioma ?>.js"></SCRIPT> + <SCRIPT> + function confirmar(){ + if (document.fdatos.idrepositorio.value == '' ){ + if(confirm(TbMsg["WARN_NOREPO"]) != true) + return(false); + } + document.fdatos.submit(); + } + </SCRIPT> </HEAD> <BODY> <FORM action="incorporaordenadores.php" method="post" name="fdatos"> - <INPUT type=hidden name=swf value=1> - <INPUT type=hidden name=idaula value=<?php echo $idaula?>> - <INPUT type=hidden name=nombreaula value=<?php echo $nombreaula?>> + <INPUT type="hidden" name="swf" value="1"> + <INPUT type="hidden" name="idaula" value="<?php echo $idaula?>"> + <INPUT type="hidden" name="nombreaula" value="<?php echo $nombreaula?>"> + <INPUT type="hidden" name="idrepositorio" value="<?php echo idrepoOU($cmd,$idaula);?>"> <BR> <P align=center class=cabeceras><?php echo $TbMsg[0]?><BR> <SPAN align=center class=subcabeceras><IMG src="../images/iconos/aula.gif"> <?php echo $TbMsg[1].":".$nombreaula ?></SPAN></P> @@ -70,7 +84,7 @@ if(!empty($contenido)){ // Se ha introducido contenido en lugar de fichero <TR> <TD><IMG src="../images/boton_cancelar.gif" style="cursor:hand" onclick=""></TD> <TD width=20></TD> - <TD><IMG src="../images/boton_confirmar.gif" style="cursor:hand" onclick="javascript:document.fdatos.submit();"></TD> + <TD><IMG src="../images/boton_confirmar.gif" style="cursor:hand" onclick="confirmar();"></TD> </TR> </TABLE> <?php @@ -155,7 +169,7 @@ function Inserta($cmd,$idaula,$nombre,$lamac,$laip) $idperfilhard=0; ## ADV: modificacion para asignar a los ordenadores, cuando se crean desde "incorpoar ordenadores" el repositorio "default" - $idrepositorio=1; + $idrepositorio=idrepoOU($cmd,$idaula); $idconfiguracion=0; $cmd->CreaParametro("@grupoid",$grupoid,1); $cmd->CreaParametro("@idaula",$idaula,1); @@ -172,6 +186,7 @@ function Inserta($cmd,$idaula,$nombre,$lamac,$laip) @idrepositorio, router, netmask, @idaula, @grupoid FROM aulas WHERE idaula=".$idaula; + $resul=$cmd->Ejecutar(); // Crear fichero de arranque PXE con plantilla por defecto. @@ -184,7 +199,7 @@ function Inserta($cmd,$idaula,$nombre,$lamac,$laip) //________________________________________________________________________________________________________ // Recupera los datos de un ordenador // Parametros: -// - cmd: Una comando ya operativo (con conexión abierta) +// - cmd: Un comando ya operativo (con conexión abierta) // - ip: Dirección IP //________________________________________________________________________________________________________ function existeOrdenador($cmd,$nombre,$MAC,$IP){ @@ -200,4 +215,26 @@ function existeOrdenador($cmd,$nombre,$MAC,$IP){ else return(false); } +//________________________________________________________________________________ +// Primer repositorio asignado a la unidad organizativa +// Parametros: +// - cmd: Un comando ya operativo (con conexión abierta) +// - idaula: identificador del aula +// Salida: idrepositorio del primer repositorio de la OU o '' +//________________________________________________________________________________ +function idrepoOU($cmd,$idaula) { + $idrepositorio = ''; + $rs=new Recordset; + $cmd->texto="SELECT idrepositorio FROM repositorios ". + " INNER JOIN centros USING (idcentro) ". + " INNER JOIN aulas USING (idcentro) ". + " WHERE idaula=$idaula ORDER BY idrepositorio LIMIT 1;"; + $rs->Comando=&$cmd; + if ($rs->Abrir()) { + $rs->Primero(); + $idrepositorio = $rs->campos["idrepositorio"]; + } + $rs->Cerrar(); + return $idrepositorio; +} ?> |