summaryrefslogtreecommitdiffstats
path: root/admin
diff options
context:
space:
mode:
authoririna <irinagomez@us.es>2015-11-25 10:46:08 +0000
committeririna <irinagomez@us.es>2015-11-25 10:46:08 +0000
commit4ceafc1420f2d80e84af62f188747d632c2496c5 (patch)
tree4227bc0c0f2cdab6929723da9595a365ba81d2bc /admin
parentd4bff1aff781b7c3de85a8af1cd8b6bfa68959cf (diff)
#679 Varios repos: crear imagen permite elegir el repositorio de destino de la imagen
git-svn-id: https://opengnsys.es/svn/branches/version1.1@4745 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'admin')
-rwxr-xr-xadmin/Interface/CrearImagen14
-rw-r--r--admin/WebConsole/comandos/CrearImagen.php45
-rw-r--r--admin/WebConsole/comandos/jscripts/CrearImagen.js6
-rw-r--r--admin/WebConsole/includes/pintaTablaConfiguraciones.php13
4 files changed, 27 insertions, 51 deletions
diff --git a/admin/Interface/CrearImagen b/admin/Interface/CrearImagen
index c3fa9b45..d7d1edc3 100755
--- a/admin/Interface/CrearImagen
+++ b/admin/Interface/CrearImagen
@@ -53,9 +53,14 @@ fi
# Valor por defecto para el repositorio.
REPO=${4:-"REPO"}
-[ "$REPO" == "$(ogGetRepoIp)" ] && REPO="REPO"
[ "$REPO" == "$(ogGetIpAddress)" ] && REPO="CACHE"
-[ "$REPO" == "CACHE" ] && REPO="CACHE"
+# Si es una ip y es distinta a la del recurso samba cambiamos de REPO.
+ogCheckIpAddress $REPO
+if [ $? == 0 -o $REPO == "REPO" ] ; then
+ # Si falla el cambio -> salimos con error repositorio no valido
+ ogChangeRepo $REPO || exit $(ogRaiseError $OG_ERR_NOTFOUND '$REPO'; echo $?)
+ REPO="REPO"
+fi
# Si el destino es REPO y el cliente no está en modo "admin"; activar repositorio para escritura,
if [ "$REPO" == "REPO" -a "$boot" != "admin" ]
@@ -65,11 +70,12 @@ then
[ $RETVAL -gt 0 ] && exit $RETVAL
fi
+ogEcho createImage "$1" "$2" "$4" /"$3"
# Si existe, ejecuta script personalizado "createImageCustom"; si no, llama al genérico "createImage".
if which createImageCustom &>/dev/null; then
- createImageCustom "$1" "$2" "$REPO" /"$3" &>> $OGLOGCOMMAND
+ createImageCustom "$1" "$2" "$4" /"$3" &>> $OGLOGCOMMAND
else
- createImage "$1" "$2" "$REPO" /"$3" &>> $OGLOGCOMMAND
+ createImage "$1" "$2" "$4" /"$3" &>> $OGLOGCOMMAND
fi
RETVAL=$?
diff --git a/admin/WebConsole/comandos/CrearImagen.php b/admin/WebConsole/comandos/CrearImagen.php
index 8e741bac..a4c5568a 100644
--- a/admin/WebConsole/comandos/CrearImagen.php
+++ b/admin/WebConsole/comandos/CrearImagen.php
@@ -33,8 +33,8 @@ if (!$resul){
//________________________________________________________________________________________________________
?>
<HTML>
-<TITLE>Administración web de aulas</TITLE>
<HEAD>
+<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="./jscripts/CrearImagen.js"></SCRIPT>
@@ -108,11 +108,15 @@ function HTMLSELECT_imagenes($cmd,$idrepositorio,$idperfilsoft,$disk,$particion,
{
global $IMAGENES_MONOLITICAS;
$SelectHtml="";
- $cmd->texto="SELECT imagenes.idimagen,imagenes.descripcion,imagenes.nombreca,
- imagenes.idperfilsoft, repositorios.nombrerepositorio
- FROM imagenes INNER JOIN repositorios on imagenes.idrepositorio = repositorios.idrepositorio
- WHERE imagenes.tipo=".$IMAGENES_MONOLITICAS."
- AND imagenes.idrepositorio=".$idrepositorio ." OR repositorios.ip='" .$masterip ."'";
+ $cmd->texto="SELECT DISTINCT imagenes.idimagen,imagenes.descripcion,imagenes.nombreca,
+ imagenes.idperfilsoft, repositorios.nombrerepositorio, repositorios.ip
+ FROM imagenes INNER JOIN repositorios ON imagenes.idrepositorio = repositorios.idrepositorio
+ INNER JOIN aulas ON aulas.idcentro = repositorios.idcentro
+ INNER JOIN ordenadores ON ordenadores.idaula = aulas.idaula
+ WHERE imagenes.tipo=".$IMAGENES_MONOLITICAS."
+ AND ordenadores.ip='".$masterip."' OR repositorios.ip='" .$masterip ."'
+ ORDER BY imagenes.descripcion";
+
$rs=new Recordset;
$rs->Comando=&$cmd;
$SelectHtml.= '<SELECT class="formulariodatos" id="despleimagen_'.$disk."_".$particion.'" style="WIDTH: 300">';
@@ -120,7 +124,7 @@ function HTMLSELECT_imagenes($cmd,$idrepositorio,$idperfilsoft,$disk,$particion,
if ($rs->Abrir()){
$rs->Primero();
while (!$rs->EOF){
- $SelectHtml.='<OPTION value="'.$rs->campos["idimagen"]."_".$rs->campos["nombreca"]."_".$rs->campos["nombreca"].'"';
+ $SelectHtml.='<OPTION value="'.$rs->campos["idimagen"]."_".$rs->campos["nombreca"]."_".$rs->campos["ip"].'"';
if($idperfilsoft==$rs->campos["idperfilsoft"]) $SelectHtml.=" selected ";
$SelectHtml.='>';
$SelectHtml.= $rs->campos["descripcion"]. ' -- '. $rs->campos['nombrerepositorio'] . '</OPTION>';
@@ -131,31 +135,4 @@ function HTMLSELECT_imagenes($cmd,$idrepositorio,$idperfilsoft,$disk,$particion,
$SelectHtml.= '</SELECT>';
return($SelectHtml);
}
-
-/*________________________________________________________________________________________________________
- Crea la etiqueta html <SELECT> de los repositorios
- UHU - 2013/05/17 - Ahora las imagenes pueden ser en cualquier disco
-________________________________________________________________________________________________________*/
-function HTMLSELECT_repositorios($cmd,$idcentro,$idrepositorio,$disk,$particion,$masterip){
- $SelectHtml="";
- $rs=new Recordset;
- $cmd->texto='SELECT idrepositorio, nombrerepositorio, ip FROM repositorios WHERE idrepositorio="'.$idrepositorio .'" OR ip="'.$masterip.'"';
- $rs->Comando=&$cmd;
-
- if (!$rs->Abrir()) return($SelectHtml); // Error al abrir recordset
- $SelectHtml.= '<SELECT class="formulariodatos" id="desplerepositorios_'.$disk."_".$particion.'" style="WIDTH: 250">';
- $rs->Primero();
- while (!$rs->EOF){
- $SelectHtml.='<OPTION value="'.$rs->campos["ip"].'"';
- if($rs->campos["idrepositorio"]==$idrepositorio) $SelectHtml.=" selected ";
- $SelectHtml.='>';
- $SelectHtml.= $rs->campos["nombrerepositorio"];
- $SelectHtml.='</OPTION>';
- $rs->Siguiente();
- }
- $SelectHtml.= '</SELECT>';
- $rs->Cerrar();
- return($SelectHtml);
-}
-
?>
diff --git a/admin/WebConsole/comandos/jscripts/CrearImagen.js b/admin/WebConsole/comandos/jscripts/CrearImagen.js
index 00283885..1e9f4ef0 100644
--- a/admin/WebConsole/comandos/jscripts/CrearImagen.js
+++ b/admin/WebConsole/comandos/jscripts/CrearImagen.js
@@ -28,11 +28,9 @@
var despleimagen=document.getElementById("despleimagen_"+parcod[0]+"_"+parcod[1]);
var imgcan=despleimagen.value.split("_");
atributos+="idi="+imgcan[0]+RC; // Identificador de la imagen
- atributos+="nci="+imgcan[1]+RC; // Nonbre canónico
+ atributos+="nci="+imgcan[1]+RC; // Nombre canónico
+ atributos+="ipr="+imgcan[2]+RC; // Ip repositorio
- var desplerepositorios=document.getElementById("desplerepositorios_"+parcod[0]+"_"+parcod[1]);
- var idx=desplerepositorios.selectedIndex;
- atributos+="ipr="+desplerepositorios.options[idx].value+RC;
break;
}
}
diff --git a/admin/WebConsole/includes/pintaTablaConfiguraciones.php b/admin/WebConsole/includes/pintaTablaConfiguraciones.php
index 21c9c69b..27e6fac4 100644
--- a/admin/WebConsole/includes/pintaTablaConfiguraciones.php
+++ b/admin/WebConsole/includes/pintaTablaConfiguraciones.php
@@ -195,7 +195,6 @@ function tablaConfiguracionesCrearImagen($cmd,$idordenador,$idrepositorio)
global $idcentro;
global $TbMsg;
$tablaHtml="";
- $rs=new Recordset;
$cmd->texto="SELECT ordenadores.ip AS masterip,ordenadores_particiones.numdisk, ordenadores_particiones.numpar,ordenadores_particiones.codpar,ordenadores_particiones.tamano,
ordenadores_particiones.idnombreso,nombresos.nombreso,tipospar.tipopar,tipospar.clonable,
imagenes.nombreca,imagenes.descripcion as imagen,perfilessoft.idperfilsoft,
@@ -208,20 +207,18 @@ function tablaConfiguracionesCrearImagen($cmd,$idordenador,$idrepositorio)
LEFT OUTER JOIN perfilessoft ON perfilessoft.idperfilsoft=ordenadores_particiones.idperfilsoft
LEFT OUTER JOIN sistemasficheros ON sistemasficheros.idsistemafichero=ordenadores_particiones.idsistemafichero
WHERE ordenadores.idordenador=".$idordenador." ORDER BY ordenadores_particiones.numdisk,ordenadores_particiones.numpar";
- //echo $cmd->texto;
- $rs->Comando=&$cmd;
$rs=new Recordset;
$rs->Comando=&$cmd;
if (!$rs->Abrir())
return($tablaHtml."</table>"); // Error al abrir recordset
$rs->Primero();
$actualDisk = 0;
- $columns = 6;
+ $columns = 5;
while (!$rs->EOF){
if($actualDisk != $rs->campos["numdisk"]){
$actualDisk = $rs->campos["numdisk"];
- $tablaHtml.='<td colspan="'.$columns.'" style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #D4D0C8;">&nbsp;<strong>'.$TbMsg["DISK"].'&nbsp;'.$actualDisk.'</strong></td>'.chr(13);
+ $tablaHtml.='<TR><td colspan="'.$columns.'" style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #D4D0C8;">&nbsp;<strong>'.$TbMsg["DISK"].'&nbsp;'.$actualDisk.'</strong></td></TR>'.chr(13);
}
$swcc=$rs->campos["clonable"] && !empty($rs->campos["idnombreso"]);
@@ -236,9 +233,8 @@ function tablaConfiguracionesCrearImagen($cmd,$idordenador,$idrepositorio)
$tablaHtml.='<TD align=center>&nbsp;'.'<span style="FONT-SIZE:10px; COLOR: red;" >'.$TbMsg[12].'</span></TD>'.chr(13);
else
$tablaHtml.='<TD>&nbsp;'.$rs->campos["nombreso"].'&nbsp;</TD>'.chr(13);
+
$tablaHtml.='<TD>'.HTMLSELECT_imagenes($cmd,$idrepositorio,$rs->campos["idperfilsoft"],$rs->campos["numdisk"],$rs->campos["numpar"],$rs->campos["masterip"]).'</TD>';
- $tablaHtml.='<TD>'.HTMLSELECT_repositorios($cmd,$idcentro,$idrepositorio,$rs->campos["numdisk"],$rs->campos["numpar"],$rs->campos["masterip"]).'</TD>';
- //$tablaHtml.='<TD>&nbsp;</TD>';
}
$tablaHtml.='</TR>'.chr(13);
$rs->Siguiente();
@@ -259,8 +255,7 @@ function tablaConfiguracionesCrearImagen($cmd,$idordenador,$idrepositorio)
$inicioTabla.=' <TH align=center>&nbsp;'. $TbMsg["PARTITION"] .'&nbsp;</TH>'.chr(13);
$inicioTabla.=' <TH align=center>&nbsp;'. $TbMsg["PARTITION_TYPE"] .'&nbsp;</TH>'.chr(13);
$inicioTabla.=' <TH align=center>&nbsp;'. $TbMsg["SO_NAME"] .'&nbsp;</TH>'.chr(13);
- $inicioTabla.=' <TH align=center>&nbsp;'. $TbMsg["IMAGE_TO_CREATE"] .'&nbsp;</TH>'.chr(13);
- $inicioTabla.=' <TH align=center>&nbsp;'. $TbMsg["DESTINATION_REPOSITORY"] .'&nbsp;</TH>'.chr(13);
+ $inicioTabla.=' <TH align=center>&nbsp;'. $TbMsg["IMAGE_TO_CREATE"].' -- '.$TbMsg["DESTINATION_REPOSITORY"] .'&nbsp;</TH>'.chr(13);
$inicioTabla.=' </TR>'.chr(13);
$tablaHtml=$inicioTabla.$tablaHtml;