summaryrefslogtreecommitdiffstats
path: root/admin/WebConsole
diff options
context:
space:
mode:
authoralbertogp <albertogp@uma.es>2021-03-17 17:15:39 +0100
committeralbertogp <albertogp@uma.es>2021-05-03 16:31:13 +0200
commit72718fba4560f9f52f8b29c1b70b919a2d5c3605 (patch)
treeff452fe18627e796d2c70144112ee973bb2423a2 /admin/WebConsole
parenta8c0ce02da5ce003150aa75d18f9360f29650581 (diff)
ID-1039 #1039 Subiendo ficheros
Diffstat (limited to 'admin/WebConsole')
-rw-r--r--admin/WebConsole/gestores/gestor_aulas.php104
-rw-r--r--admin/WebConsole/idiomas/php/cat/avisos_cat.php2
-rw-r--r--admin/WebConsole/idiomas/php/eng/avisos_eng.php1
-rw-r--r--admin/WebConsole/idiomas/php/esp/avisos_esp.php2
-rw-r--r--admin/WebConsole/propiedades/propiedades_aulas.php114
-rw-r--r--admin/WebConsole/propiedades/propiedades_imagenes.php53
6 files changed, 259 insertions, 17 deletions
diff --git a/admin/WebConsole/gestores/gestor_aulas.php b/admin/WebConsole/gestores/gestor_aulas.php
index e947edb2..ea194275 100644
--- a/admin/WebConsole/gestores/gestor_aulas.php
+++ b/admin/WebConsole/gestores/gestor_aulas.php
@@ -37,8 +37,14 @@ $horaresevini=0;
$horaresevfin=0;
$idmenu=0;
$idproautoexec=0;
+######################## AGP
$idrepositorio=0;
-### AGP
+$diskremotepc=0;
+$partremotepc=0;
+$imaremotepc=0;
+$idimaremotepc=0;
+$idperfilsoftimaremotepc=0;
+######################## AGP
$oglive="ogLive";
$idperfilhard=0;
$modomul=0;
@@ -127,8 +133,48 @@ if ($cmd){
$resul=Gestiona();
$cmd->Conexion->Cerrar();
}
-// *************************************************************************************************************************************************
-?>
+//________________________________________________________________________________________________________
+### AGP remotePC ######################################################################################
+if (isset($_POST["diskremotepc"])) $diskremotepc=$_POST["diskremotepc"];
+if (isset($_POST["partremotepc"])) $partremotepc=$_POST["partremotepc"];
+if (isset($_POST["imaremotepc"])) $imaremotepc=$_POST["imaremotepc"];
+$imaremoPC=explode("_",$imaremotepc);
+$idimaremotepc=$imaremoPC[2];
+$idperfilsoftimaremotepc=$imaremoPC[3];
+
+### AGP remotePC ######################################################################################
+///*
+$cmd=CreaComando($cadenaconexion); // Crea objeto comando
+$rs=new Recordset;
+$cmd->texto="SELECT idordenador FROM ordenadores WHERE idaula=".$idaula;
+$rs->Comando=&$cmd;
+if (!$rs->Abrir()) return(true); // Error al abrir recordset
+$rs->Primero();
+while (!$rs->EOF){
+ $idordremotepc=$rs->campos["idordenador"];
+ RecorreOrdenadoresremotePC($cmd,$idordremotepc);
+ $rs->Siguiente();
+}
+$rs->Cerrar();
+//*/
+//________________________________________________________________________________________________________
+### AGP remotePC ######################################################################################
+/*________________________________________________________________________________________________________
+ Crea un arbol XML para el nuevo nodo insertado
+________________________________________________________________________________________________________*/
+function SubarbolXML_aulas($idaula,$nombreaula){
+ global $LITAMBITO_AULAS;
+ $cadenaXML='<AULAS ';
+ // Atributos
+ $cadenaXML.=' clickcontextualnodo="menu_contextual(this,' ."'flo_".$LITAMBITO_AULAS."'" .')"';
+ $cadenaXML.=' imagenodo="../images/iconos/aula.gif"';
+ $cadenaXML.=' infonodo="'.$nombreaula.'"';
+ $cadenaXML.=' nodoid='.$LITAMBITO_AULAS.'-'.$idaula;
+ $cadenaXML.='>';
+ $cadenaXML.='</AULAS>';
+ return($cadenaXML);
+}
+?>
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
@@ -355,4 +401,54 @@ function SubarbolXML_aulas($idaula,$nombreaula){
$cadenaXML.='</AULAS>';
return($cadenaXML);
}
-?>
+### AGP remotePC ######################################################################################
+///*
+//________________________________________________________________________________________________________
+function RecorreOrdenadoresRemotePC($cmd,$idordremotepc){
+ global $cmd;
+ global $idordremotepc;
+ global $diskremotepc;
+ global $partremotepc;
+ global $idimaremotepc;
+ global $idperfilsoftimaremotepc;
+
+ $cmd->CreaParametro("@idordremotepc",$idordremotepc,1);
+ $cmd->CreaParametro("@diskremotepc",$diskremotepc,1);
+ $cmd->CreaParametro("@partremotepc",$partremotepc,1);
+ $cmd->CreaParametro("@idimaremotepc",$idimaremotepc,1);
+ $cmd->CreaParametro("@idperfilsoftimaremotepc",$idperfilsoftimaremotepc,1);
+
+ $cmd->texto="SELECT numdisk,numpar FROM ordenadores_particiones
+ WHERE idordenador=@idordremotepc
+ AND numdisk=@diskremotepc
+ AND numpar=@partremotepc";
+ $rs=new Recordset;
+ $rs->Comando=&$cmd;
+ if (!$rs->Abrir()) return; // Error al abrir recordset
+ $NumdiskremoPC=$rs->campos["numdisk"];
+ // Si los 3 campos tienen datos realizamos cambios
+ if ( (!empty($diskremotepc)) && (!empty($partremotepc)) && (!empty($idimaremotepc)) ){
+ // Si tienen algun disco realizamos operacion
+ if ( !empty($NumdiskremoPC)){
+ // Si tiene algun Disco Actualizamos
+ $cmd->texto = "UPDATE ordenadores_particiones
+ SET idimagen=@idimaremotepc, idperfilsoft=@idperfilsoftimaremotepc
+ WHERE numdisk=@diskremotepc
+ AND numpar=@partremotepc
+ AND idordenador=@idordremotepc";
+ $resul=$cmd->Ejecutar();
+ }else{
+ // Si NO tiene ningun Disco Insertamos
+ $cmd->texto="INSERT INTO ordenadores_particiones (idordenador,numdisk,numpar,idimagen,idperfilsoft)
+ VALUES ( @idordremotepc, @diskremotepc ,@partremotepc, @idimaremotepc, @idperfilsoftimaremotepc ) ";
+ $resul=$cmd->Ejecutar();
+ }
+ }else{
+ // NO realiza ningun cambio
+ echo "";
+ }
+ $rs->Cerrar();
+}
+### AGP remotePC ######################################################################################
+///*
+?> \ No newline at end of file
diff --git a/admin/WebConsole/idiomas/php/cat/avisos_cat.php b/admin/WebConsole/idiomas/php/cat/avisos_cat.php
index 65522458..c269bd40 100644
--- a/admin/WebConsole/idiomas/php/cat/avisos_cat.php
+++ b/admin/WebConsole/idiomas/php/cat/avisos_cat.php
@@ -14,5 +14,5 @@ $TbMsg["WARN_NOTESOFMENU"]='NOTAS: Los men&uacute;s personalizados tienen mayor
$TbMsg["WARN_GPT"]='AVISO: Para tabla de particiones GPT es necesario que la primera partición sea tipo EFI <br>y se recomienda un tamaño en torno a 512Mb.';
$TbMsg["WARN_SCHEDULER"]='AVISO: activar calendario de eventos de la BD para habilitar esta propiedad.';
$TbMsg["WARN_SOURCE_PATH"]='AVISO: La ruta de origen sólo se utiliza en las sincronizadas tipo directorio.';
-
+$TbMsg["COMM_REMOTEACCESS_CREATEAULA"]='permitir gestión de acceso remoto a los ordenadores cuando Aula creada';
diff --git a/admin/WebConsole/idiomas/php/eng/avisos_eng.php b/admin/WebConsole/idiomas/php/eng/avisos_eng.php
index 2f0b887d..bd8e7d29 100644
--- a/admin/WebConsole/idiomas/php/eng/avisos_eng.php
+++ b/admin/WebConsole/idiomas/php/eng/avisos_eng.php
@@ -14,3 +14,4 @@ $TbMsg["WARN_NOTESOFMENU"]='NOTES: Personalized messages have priority over atom
$TbMsg["WARN_GPT"]='WARNING: In GPT partitions table first partition must be EFI, and it is recommended it has about 512 MB.';
$TbMsg["WARN_SCHEDULER"]='WARNING: Turn on database event scheduler to enable this property.';
$TbMsg["WARN_SOURCE_PATH"]='WARNING: The source path is only used in directory-type synchronized images.';
+$TbMsg["COMM_REMOTEACCESS_CREATEAULA"]='Allow remote access management to computers when Classroom created';
diff --git a/admin/WebConsole/idiomas/php/esp/avisos_esp.php b/admin/WebConsole/idiomas/php/esp/avisos_esp.php
index cfefbee2..500d3fce 100644
--- a/admin/WebConsole/idiomas/php/esp/avisos_esp.php
+++ b/admin/WebConsole/idiomas/php/esp/avisos_esp.php
@@ -14,5 +14,5 @@ $TbMsg["WARN_NOTESOFMENU"]='NOTAS: Los men&uacute;s personalizados tienen mayor
$TbMsg["WARN_GPT"]='AVISO: Para tabla de particiones GPT es necesario que la primera partición sea tipo EFI <br>y se recomienda un tamaño en torno a 512Mb.';
$TbMsg["WARN_SCHEDULER"]='AVISO: activar calendario de eventos de la BD para habilitar esta propiedad';
$TbMsg["WARN_SOURCE_PATH"]='AVISO: La ruta de origen sólo se utiliza en las sincronizadas tipo directorio.';
-
+$TbMsg["COMM_REMOTEACCESS_CREATEAULA"]='permitir gestión de acceso remoto a los ordenadores cuando Aula creada';
diff --git a/admin/WebConsole/propiedades/propiedades_aulas.php b/admin/WebConsole/propiedades/propiedades_aulas.php
index 8bf2f8b5..fdab3cfe 100644
--- a/admin/WebConsole/propiedades/propiedades_aulas.php
+++ b/admin/WebConsole/propiedades/propiedades_aulas.php
@@ -94,6 +94,21 @@ function abrir_ventana(URL){
window.open('../images/ver.php','Imagenes','scrollbars=yes,resizable=yes,width=950,height=640')
}
</script>
+<!-- ### AGP remotePC ###################################################################################### -->
+<script type="text/javascript">
+function MuestraAccesoR() {
+ element = document.getElementById("verinremotepc");
+ check = document.getElementById("check");
+ if (check.checked) {
+ element.style.display='';
+ }
+ else {
+ element.style.display='none';
+ }
+}
+</script>
+
+<!-- ### AGP remotePC ###################################################################################### -->
</HEAD>
<BODY>
<DIV align=center>
@@ -235,13 +250,17 @@ function abrir_ventana(URL){
echo '<td colspan="3"><input class="formulariodatos" name="inremotepc" type="checkbox" onclick="desabilita(this)" ';
if ($inremotepc) echo ' checked ';
echo '></td>';
- } else {
- echo '<td colspan="3"><input class="formulariodatos" name="inremotepc" type="checkbox" value="1" ';
- if ($inremotepc) echo ' checked ';
- if ($scheduler)
- echo '> <em>('.$TbMsg['COMM_REMOTEACCESS'].')<em></td>';
- else
- echo 'disabled> <em>'.$TbMsg['WARN_SCHEDULER'].'<em></td>';
+ } else { ### AGP Se activa la casilla verificacion cuando el Aula esta creada
+ echo '<td colspan="3"><input onchange="MuestraAccesoR();" class="formulariodatos" name="inremotepc" id="check" type="checkbox" value="1" ';
+ if ( !empty($idaula) ){
+ if ($inremotepc) echo ' checked ';
+ if ($scheduler)
+ echo '> <em>('.$TbMsg['COMM_REMOTEACCESS'].')<em></td>';
+ else
+ echo 'disabled> <em>'.$TbMsg['WARN_SCHEDULER'].'<em></td>';
+ }else{
+ echo 'disabled> <em><font color=red>('.$TbMsg['COMM_REMOTEACCESS_CREATEAULA'].')</font><em></td>';
+ }
}
?>
</tr>
@@ -375,7 +394,7 @@ function abrir_ventana(URL){
</TABLE><p>
<!-- ########################################### PROPIEDADES APLICABLES A TODOS LOS ORDENADORES #################################################################################-->
-<TABLE align=center border=7 cellPadding=3 cellSpacing=1 class=tabla_listados >
+<TABLE name=masivo id=masivo align=center border=7 cellPadding=3 cellSpacing=1 class=tabla_listados >
<TR>
<TH style="BACKGROUND-COLOR:#FFFFFF;COLOR:red" colspan=4 align=center>&nbsp;<?php echo $TbMsg[1888]?>&nbsp;</TH>
</TR>
@@ -465,7 +484,33 @@ function abrir_ventana(URL){
echo '<td colspan="3"><input class="formulariodatos" name="paginavalidacion" style="width:200px" type="text" value="'.$paginavalidacion.'"></td>';
?>
</tr>
-<!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
+<!------------------------------------------------------------------- UMA remotePC-------------------------------------------------------------------------------------->
+<!-- ### AGP remotePC ############################################################################################################################################# -->
+ <?php if ($inremotepc){
+ echo '<tr id="verinremotepc" style="display:">';
+ }else{
+ echo '<tr id="verinremotepc" style="display:none">';
+ }?>
+ <th align="center">&nbsp;<?php echo "remotePC"?>&nbsp;</th>
+ <?php if ($opcion==$op_eliminacion) //eliminacion=3
+ //echo '<td colspan="3">'.$paginavalidacion.'</td>';
+ echo '<td colspan="3">De momento nada</td>';
+ else // sino insertamos
+ $ambito=4; //Ambito aula 4
+ echo '<td colspan="3">Nº Disk&nbsp;----&nbsp;Nº Part&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Imagen remotePC<br>&nbsp;&nbsp;
+ <input class="formulariodatos" name="diskremotepc" style="width:20px" maxlength="1" align="center" type="text" value="'.$diskremotepc.'">
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ <input class="formulariodatos" name="partremotepc" style="width:20px" maxlength="1" align="center" type="text" value="'.$partremotepc.'">
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ <select class="formulariodatos" name="imaremotepc" align="center">
+ <option value="">-- Selecciona Imagen remotePC --</option>
+ '. htmlOPTION_images($cmd,$ambito,$idaula) .'
+ </select>
+ </td>';
+ ?>
+ </tr>
+<!-- ### AGP remotePC ############################################################################################################################################# -->
+<!------------------------------------------------------------------- UMA remotePC-------------------------------------------------------------------------------------->
</TABLE>
</FORM>
@@ -673,3 +718,54 @@ function TomaConfiguracion($cmd) {
}
return(false);
}
+### AGP remotePC ######################################################################################
+//________________________________________________________________________________________________________
+// Recupera los datos de una imagen
+// Parametros:
+// - cmd: Una comando ya operativo (con conexión abierta)
+// - ambito: El ambito del aula
+// - idambito: El identificador del aula
+//________________________________________________________________________________________________________
+function htmlOPTION_images($cmd,$ambito,$idambito)
+{
+// 1.1 Imagenes de todos los repositorios de la UO.
+if ($ambito == 4)
+{
+// ambito aulas
+$subconsultarepo='select idrepositorio from repositorios INNER JOIN aulas where repositorios.idcentro=aulas.idcentro AND idaula='.$idambito;
+}
+if ($ambito == 8)
+{
+$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 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, repositorios.nombrerepositorio as nombrerepo FROM imagenes
+ INNER JOIN repositorios ON repositorios.idrepositorio=imagenes.idrepositorio
+ AND repositorios.idrepositorio IN (" . $subconsultarepo . ") WHERE imagenes.inremotepc=1 AND imagenes.tipo=1 ORDER BY imagenes.descripcion";
+ $rs=new Recordset;
+ $rs->Comando=&$cmd;
+
+ if ($rs->Abrir()){
+ $rs->Primero();
+ while (!$rs->EOF){
+ $SelectHtml.='<OPTION value="'.$rs->campos["iprepositorio"] ."_".$rs->campos["nombreca"]."_".$rs->campos["idimagen"].'_'.$rs->campos["idperfilsoft"].'" ';
+ //$SelectHtml.='<OPTION value="'.$rs->campos["nombreca"] . '" ';
+ $SelectHtml.='>';
+ $SelectHtml.= $rs->campos["descripcion"] .' ('.$rs->campos["nombrerepo"].') </OPTION>';
+ $rs->Siguiente();
+ }
+ $rs->Cerrar();
+ }
+ else
+ {
+ $SelectHtml.='<option value=""> ERROR: Ambito con multiples Repositorios --</option>';
+
+ }
+ return($SelectHtml);
+}
+### AGP remotePC ######################################################################################
diff --git a/admin/WebConsole/propiedades/propiedades_imagenes.php b/admin/WebConsole/propiedades/propiedades_imagenes.php
index 116d5a95..9816e046 100644
--- a/admin/WebConsole/propiedades/propiedades_imagenes.php
+++ b/admin/WebConsole/propiedades/propiedades_imagenes.php
@@ -75,6 +75,7 @@ if (!$resul)
if ($opcion == 1 && $datospost == 1) {
if (isset($_POST["opcion"])) $opcion=$_POST["opcion"];// Recoge parametros
if (isset($_POST["idrepositorio"])) $idrepositorio=$_POST["idrepositorio"];
+ if (isset($_POST["idperfilsoft"])) $idperfilsoft=$_POST["idperfilsoft"];
if (isset($_POST["idimagen"])) $idimagen=$_POST["idimagen"];
if (isset($_POST["nombreca"])) {
$nombreca=$_POST["nombreca"];
@@ -128,6 +129,28 @@ if ($opcion!=$op_alta and isset($repokey)) {
<SCRIPT language="javascript" src="../jscripts/propiedades_imagenes.js"></SCRIPT>
<SCRIPT language="javascript" src="../jscripts/opciones.js"></SCRIPT>
<?php echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/propiedades_imagenes_'.$idioma.'.js"></SCRIPT>'?>
+<!-- ### AGP remotePC ###################################################################################### -->
+<script type="text/javascript">
+function showContent() {
+ element = document.getElementById("content");
+ check = document.getElementById("check");
+ if (check.checked) {
+ element.style.display='';
+ }
+ else {
+ element.style.display='none';
+ }
+}
+</script>
+<script type="text/javascript">
+
+
+ check = document.getElementById("check");
+ if(check.value==1){
+ alert();
+ }
+</script>
+<!-- ### AGP remotePC ###################################################################################### -->
</HEAD>
<BODY>
<DIV align=center>
@@ -185,6 +208,17 @@ if ($opcion!=$op_alta and isset($repokey)) {
echo '</TD>';
} ?>
</TR>
+ <!-- ------------------------------------- TIPO PARTICION ------------------------- -->
+ <tr>
+ <th align="center">&nbsp;<?php echo $TbMsg[9]?>&nbsp;</th>
+ <?php
+ if ($opcion==$op_eliminacion || !empty($idperfilsoft))
+ echo '<td>'.$tipopar.' ('.dechex($codpar).')
+ &nbsp;<input type="hidden" name="codpar" value="'.$codpar.'"></td>';
+ else
+ echo '<td>'.HTMLSELECT($cmd,0,'tipospar',$codpar,'codpar',"CONCAT(CASE WHEN codpar BETWEEN 1 AND 255 THEN '1-MSDOS' WHEN codpar BETWEEN 256 AND 65535 THEN '2-GPT' ELSE codpar END,': ',tipopar,' (',HEX(codpar),')')",170,"","","clonable=1").'</td>';
+ ?>
+ </tr>
<!-- -------------------------------------------------------------------------------- -->
<?php if($tipoimg==$IMAGENES_INCREMENTALES){?>
<TR>
@@ -237,7 +271,8 @@ if ($opcion!=$op_alta and isset($repokey)) {
if ($inremotepc) echo ' checked ';
echo '></td>';
} else {
- echo '<td><input name="inremotepc" type="checkbox" value="1"';
+ echo '<td><input onchange="showContent();" name="inremotepc" id="check" type="checkbox" value="1" ';
+ // echo '<td><input name="inremotepc" type="checkbox" value="1"';
if ($inremotepc) echo ' checked ';
if ($scheduler)
echo '> <em>('.$TbMsg['COMM_REMOTEACCESS'].')<em></td>';
@@ -267,6 +302,8 @@ if ($opcion!=$op_alta and isset($repokey)) {
<td>&nbsp;<?php if (! empty ($modelo)) echo "$fechacreacion ".($revision>0 ? "(r$revision)" : "") ?>
<input type="hidden" name="fechacreacion" value="<?php echo $fechacreacion ?>"></td>
</tr>
+<!---------------------------------------------- AGP Perfil software------------------------------------------------------------------>
+<?php } if ($opcion!=$op_alta){ ?>
<!-- Perfil de software -->
<TR>
<TH align=center>&nbsp;<?php echo $TbMsg[6]?>&nbsp;</TH>
@@ -278,7 +315,19 @@ if ($opcion!=$op_alta and isset($repokey)) {
echo '<TD>'.HTMLSELECT($cmd,$idcentro,'perfilessoft',$idperfilsoft,'idperfilsoft','descripcion',300).'</TD>';
}
?>
- </TR>
+ </TR>
+<?php }else{ ?>
+ <!-- Perfil de software ALTA -->
+ <TR id="content" style="display:none">
+ <TH align=center>&nbsp;<?php echo $TbMsg[6]?>&nbsp;</TH>
+ <?php
+ // echo '<INPUT type="text" name="idperfilsoft" value="'.$idperfilsoft.'">';
+ echo '<TD>'.HTMLSELECT($cmd,$idcentro,'perfilessoft',$idperfilsoft,'idperfilsoft','descripcion',300).'</TD>';
+ ?>
+ </TR>
+<?php }?>
+<!---------------------------------------------- AGP Perfil software------------------------------------------------------------------>
+ <?php if ($opcion!=$op_alta) { ?>
<!-- Sistema Operativo -->
<tr>
<th align="center">&nbsp;<?php echo $TbMsg['PROP_OS']?>&nbsp;</th>