diff options
author | irina <irinagomez@us.es> | 2015-06-17 08:29:14 +0000 |
---|---|---|
committer | irina <irinagomez@us.es> | 2015-06-17 08:29:14 +0000 |
commit | 0285a3929552837bd4cfb988f6cd459ad5892ee7 (patch) | |
tree | ebc0830489d940375edb3ebe420e6cd6c741e7cb | |
parent | fe6843b59fa8ac9ce2e704443d2501ba172f4813 (diff) |
#679 Varios repos: cambios en consola web en el comando restaurar imagen y el asistente de deploy de imágenes para permitan restaurar las imágenes de todos los repositorios de la UO.
git-svn-id: https://opengnsys.es/svn/branches/version1.1@4654 a21b9725-9963-47de-94b9-378ad31fedc9
4 files changed, 50 insertions, 20 deletions
diff --git a/admin/WebConsole/asistentes/includes/asistentes/AyudanteFormularios.php b/admin/WebConsole/asistentes/includes/asistentes/AyudanteFormularios.php index 9381d5cf..b78356ed 100644 --- a/admin/WebConsole/asistentes/includes/asistentes/AyudanteFormularios.php +++ b/admin/WebConsole/asistentes/includes/asistentes/AyudanteFormularios.php @@ -1,4 +1,8 @@ <?php +// version 1.1: cliente con varios repositorios - htmlOPTION_images: Imagenes de todos los repositorios de la UO. +// autor: Irina Gomez, Universidad de Sevilla +// fecha 2015-06-17 + /// funciones php #devuelve los elementos [texto] multicast para un formulario. @@ -172,33 +176,36 @@ $cmd->texto='SELECT nombreordenador,idordenador,ip FROM ordenadores where idaul function htmlOPTION_images($cmd,$ambito,$idambito) { +// 1.1 Imagenes de todos los repositorios de la UO. if ($ambito == 4) { -$subconsultarepo='SELECT DISTINCT idrepositorio from ordenadores where idaula=' . $idambito ; +// ambito aulas +$subconsultarepo='select idrepositorio from repositorios INNER JOIN aulas where repositorios.idcentro=aulas.idcentro AND idaula='.$idambito; } if ($ambito == 8) { -$subconsultarepo='SELECT DISTINCT idrepositorio FROM ordenadores where grupoid=' . $idambito ; +$subconsultarepo='select idrepositorio from repositorios INNER JOIN aulas INNER JOIN gruposordenadores where repositorios.idcentro=aulas.idcentro AND aulas.idaula=gruposordenadores.idaula AND idgrupo='.$idambito; } if ($ambito == 16) { -$subconsultarepo='SELECT idrepositorio FROM ordenadores where idordenador=' . $idambito ; +$subconsultarepo='select repositorios.idrepositorio from repositorios INNER JOIN aulas INNER JOIN ordenadores where repositorios.idcentro=aulas.idcentro AND aulas.idaula=ordenadores.idaula AND idordenador='.$idambito; } $SelectHtml=""; // 1.0.5 imagenes.tipo =1 para que solo muestre las monoloticas. - $cmd->texto="SELECT *,repositorios.ip as iprepositorio FROM imagenes - INNER JOIN repositorios ON repositorios.idrepositorio=imagenes.idrepositorio AND repositorios.idrepositorio=(" . $subconsultarepo . ") WHERE imagenes.tipo=1"; + $cmd->texto="SELECT *,repositorios.ip as iprepositorio, repositorios.nombrerepositorio as nombrerepo FROM imagenes + INNER JOIN repositorios ON repositorios.idrepositorio=imagenes.idrepositorio + AND repositorios.idrepositorio IN (" . $subconsultarepo . ") WHERE imagenes.tipo=1"; $rs=new Recordset; $rs->Comando=&$cmd; - + if ($rs->Abrir()){ $rs->Primero(); while (!$rs->EOF){ - $SelectHtml.='<OPTION value="'.$rs->campos["nombreca"] . '" '; + $SelectHtml.='<OPTION value="'.$rs->campos["iprepositorio"] ." /".$rs->campos["nombreca"]. '" '; $SelectHtml.='>'; - $SelectHtml.= $rs->campos["descripcion"] .'</OPTION>'; + $SelectHtml.= $rs->campos["descripcion"] .' ('.$rs->campos["nombrerepo"].') </OPTION>'; $rs->Siguiente(); } $rs->Cerrar(); diff --git a/admin/WebConsole/asistentes/jscripts/asistentes.js b/admin/WebConsole/asistentes/jscripts/asistentes.js index a9749c78..7d29deca 100644 --- a/admin/WebConsole/asistentes/jscripts/asistentes.js +++ b/admin/WebConsole/asistentes/jscripts/asistentes.js @@ -6,6 +6,9 @@ // Nombre del fichero: asistentes.js // Descripción : // Este fichero implementa las funciones javascript del fichero AsistentesEjecutarScripts.php (Comandos) +// version 1.1: cliente con varios repositorios - Imagenes de todos los repositorios de la UO. +// autor: Irina Gomez, Universidad de Sevilla +// fecha 2015-06-17 // *********************************************************************************************************** function codeCloneRemotePartition(form){ @@ -66,7 +69,7 @@ if (form.modo[0].checked) { // UHU - Distinguimos entre disco y particion, el valor de idparticion sera disco;particion. eje. 1;1 var diskPart = form.idparticion.value.split(";"); - command="deployImage REPO /" + form.idimagen.value + " "+diskPart[0]+" " + diskPart[1] + " " + protocol ; + command="deployImage " + form.idimagen.value + " "+diskPart[0]+" " + diskPart[1] + " " + protocol ; form.codigo.value="\ ogEcho log session \"[0] $MSG_SCRIPTS_TASK_START " + command + "\"\n \ " + command + " \n"; diff --git a/admin/WebConsole/comandos/RestaurarImagen.php b/admin/WebConsole/comandos/RestaurarImagen.php index ec61a10e..f8028063 100644 --- a/admin/WebConsole/comandos/RestaurarImagen.php +++ b/admin/WebConsole/comandos/RestaurarImagen.php @@ -7,6 +7,10 @@ // Nombre del fichero: RestaurarImagenOrdenador.php // Descripción : // Implementación del comando "RestaurarImagen" (Ordenadores) +// version 1.1: cliente con varios repositorios +// HTMLSELECT_imagenes: Imagenes de todos los repositorios de la UO - Cambia parametro idordenadores por idambito +// autor: Irina Gomez, Universidad de Sevilla +// fecha 2015-06-17 // ************************************************************************************************************************************************* include_once("../includes/ctrlacc.php"); include_once("../clases/AdoPhp.php"); @@ -114,6 +118,8 @@ if (isset($_POST["fk_nombreSO"])) $fk_nombreSO=$_POST["fk_nombreSO"]; </FORM> <?php } + + $sws=$fk_sysFi | $fk_tamano | $fk_nombreSO; pintaConfiguraciones($cmd,$idambito,$ambito,9,$sws,false,"pintaParticionesRestaurarImagen"); //________________________________________________________________________________________________________ @@ -135,12 +141,12 @@ if (isset($_POST["fk_nombreSO"])) $fk_nombreSO=$_POST["fk_nombreSO"]; // Version 0.1: En consulta SQL se quita imagenes.numpar>0. las imágenes recien creadas tienen numpar=0. // US ETSII - Irina Gomez - 2014-11-11 ________________________________________________________________________________________________________*/ -function HTMLSELECT_imagenes($cmd,$idimagen,$numpar,$codpar,$icp,$sw,$idordenadores,$ambito) +function HTMLSELECT_imagenes($cmd,$idimagen,$numpar,$codpar,$icp,$sw,$idambito,$ambito) { global $IMAGENES_MONOLITICAS; $SelectHtml=""; - $cmd->texto="SELECT *,repositorios.ip as iprepositorio FROM imagenes + $cmd->texto="SELECT *,repositorios.ip as iprepositorio, repositorios.nombrerepositorio as nombrerepo FROM imagenes INNER JOIN repositorios ON repositorios.idrepositorio=imagenes.idrepositorio"; if($sw) // Imágenes con el mismo tipo de partición $cmd->texto.= " WHERE imagenes.codpar=".$codpar; @@ -150,12 +156,22 @@ function HTMLSELECT_imagenes($cmd,$idimagen,$numpar,$codpar,$icp,$sw,$idordenado $cmd->texto.=" AND imagenes.codpar>0 AND imagenes.idrepositorio>0 "; // La imagene debe existir y $cmd->texto.=" AND imagenes.tipo=".$IMAGENES_MONOLITICAS; - $idordenador1 = explode(",",$idordenadores); - $idordenador=$idordenador1[0]; - if ($ambito == 16) - $cmd->texto.=" AND repositorios.idrepositorio=(select idrepositorio from ordenadores where ordenadores.idordenador=" .$idordenador .") OR repositorios.ip=(select ip from ordenadores where ordenadores.idordenador=". $idordenador .")"; - else - $cmd->texto.=" AND repositorios.idrepositorio=(select idrepositorio from ordenadores where ordenadores.idordenador=" .$idordenador .")"; + // 1.1 Imagenes de todos los repositorios de la UO. + switch ($ambito) { + case 16: + // ambito ordenador + $selectrepo='select repositorios.idrepositorio from repositorios INNER JOIN aulas INNER JOIN ordenadores where repositorios.idcentro=aulas.idcentro AND aulas.idaula=ordenadores.idaula AND idordenador='.$idambito; + break; + case 8: + // ambito grupo ordenadores + $selectrepo='select idrepositorio from repositorios INNER JOIN aulas INNER JOIN gruposordenadores where repositorios.idcentro=aulas.idcentro AND aulas.idaula=gruposordenadores.idaula AND idgrupo='.$idambito; + break; + case 4: + // ambito aulas + $selectrepo='select idrepositorio from repositorios INNER JOIN aulas where repositorios.idcentro=aulas.idcentro AND idaula='.$idambito; + break; + } + $cmd->texto.=" AND repositorios.idrepositorio IN (".$selectrepo.")"; $rs=new Recordset; $rs->Comando=&$cmd; @@ -169,7 +185,8 @@ function HTMLSELECT_imagenes($cmd,$idimagen,$numpar,$codpar,$icp,$sw,$idordenado $SelectHtml.='<OPTION value="'.$rs->campos["idimagen"]."_".$rs->campos["nombreca"]."_".$rs->campos["iprepositorio"]."_".$rs->campos["idperfilsoft"].'"'; if($idimagen==$rs->campos["idimagen"]) $SelectHtml.=" selected "; $SelectHtml.='>'; - $SelectHtml.= $rs->campos["descripcion"].'</OPTION>'; + $SelectHtml.= $rs->campos["descripcion"].' ('.$rs->campos["nombrerepo"].') </OPTION>'; + $rs->Siguiente(); } $rs->Cerrar(); diff --git a/admin/WebConsole/includes/pintaParticiones.php b/admin/WebConsole/includes/pintaParticiones.php index e818bb3e..e9f65270 100644 --- a/admin/WebConsole/includes/pintaParticiones.php +++ b/admin/WebConsole/includes/pintaParticiones.php @@ -188,6 +188,9 @@ function pintaParticiones($cmd,$configuraciones,$idordenadores,$cc) // Ejemplo:1;7;30000000;3;3;0;@2;130;20000000;5;4;0;@3;131;1000000;0;0;0;0 // Devuelve: // El código html de la tabla +// version 1.1: cliente con varios repositorios - HTMLSELECT_imagenes: cambia parametros idordenadores por idambito +// autor: Irina Gomez, Universidad de Sevilla +// fecha 2015-06-17 //________________________________________________________________________________________________________ function pintaParticionesRestaurarImagen($cmd,$configuraciones,$idordenadores,$cc,$ambito,$idambito) { @@ -237,8 +240,8 @@ function pintaParticionesRestaurarImagen($cmd,$configuraciones,$idordenadores,$c echo '<TD align=center> '.tomaNombresSO($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).' </TD>'.chr(13); echo'<TD align=center> '.tomaSistemasFicheros($tbKeys[$k]["numpar"],$idordenadores,false,$tbKeys[$k]["numdisk"]).' </TD>'.chr(13); echo'<TD align=center> '.tomaTamano($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).' </TD>'.chr(13); - echo '<TD>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,true,$idordenadores,$ambito).'</TD>'; - echo '<TD>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,false,$idordenadores,$ambito).'</TD>'; + echo '<TD>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,true,$idambito,$ambito).'</TD>'; + echo '<TD>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,false,$idambito,$ambito).'</TD>'; //Clonación $metodos="UNICAST=UNICAST-CACHE".chr(13); |