summaryrefslogtreecommitdiffstats
path: root/admin/WebConsole/jscripts
diff options
context:
space:
mode:
authorIrina Gómez <irinagomez@us.es>2020-08-13 19:52:15 +0200
committerIrina Gómez <irinagomez@us.es>2020-08-13 19:52:15 +0200
commit6c08a3f50101749c4aa003053b5e9ef78654e68d (patch)
treed58aae088098d8cc96555cca46d3f32f2c0702ae /admin/WebConsole/jscripts
parentab743e544de9efbc16340672a52283b613ba87c3 (diff)
# 969 The labs tree is adapted to jquery:969_node_tree
principal/aulas.php: the context menu uses identifiers for jquery. jscripts/arbol.js and jscripts/comunes.js: common functions include labs and computers. jscripts/aulas.js: new specific laboratory and computer functions. includes/arbol.php: the context menu call is modified to suit the case of computers.
Diffstat (limited to 'admin/WebConsole/jscripts')
-rw-r--r--admin/WebConsole/jscripts/arbol.js19
-rw-r--r--admin/WebConsole/jscripts/aulas.js294
-rw-r--r--admin/WebConsole/jscripts/comunes.js36
3 files changed, 329 insertions, 20 deletions
diff --git a/admin/WebConsole/jscripts/arbol.js b/admin/WebConsole/jscripts/arbol.js
index b8fcad8e..6cc8ea61 100644
--- a/admin/WebConsole/jscripts/arbol.js
+++ b/admin/WebConsole/jscripts/arbol.js
@@ -3,9 +3,9 @@
* Funciones para mostrar y ocultar el menú contextual del frame izquierdo.
*
* @note Nomenclatura menú:
- * Inicial menu-tipo-N , menu-grupo-N, menu-N.
+ * Inicial menu-type-N , menu-group-N, menu-node-N.
* mostrar_menu le incluye el identificador del elemento después de un subrayado:
- * menu-tipo-N_M , menu-grupo-N_M, menu-N_M
+ * menu-type-N_N_M , menu-group-N_N_M, menu-node-N_N_M
* ocultar_menu vuelve a su nombre original.
*/
@@ -36,6 +36,9 @@ function mostrar_menu(event, tipo, id, menu_id) {
//span = $('#' + menu_id + " span");
//span.html("»");
+ // Para los ordenadores quitamos segundo identificador (idaula)
+ if (menu_id.indexOf("_") != -1) menu_id=menu_id.substring(0,menu_id.indexOf("_"));
+
// Editando el codigo CSS para ciertos elementos
$('#' + menu_id).css({position: 'absolute',display: 'block',top: posY,left: posX,cursor: 'default',width: '200px',height: 'auto',padding: '2px 9px 2px 2px',listStyle: 'none',listStyleType: 'none'});
@@ -86,6 +89,12 @@ $(function() {
// hardware
var url="../varios/informacion_perfileshardware.php?idperfil="+id[2]+"&descripcionperfil="+description;
break;
+ case '70':
+ case '71':
+ case '72':
+ // imagen
+ var url="../varios/informacion_imagenes.php?idimagen="+id[2]+"&descripcionimagen="+description;
+ break;
case '64':
// menus
var url="../varios/informacion_menus.php?idmenu="+id[2]+"&descripcionmenu="+description;
@@ -108,12 +117,6 @@ $(function() {
var tipoaccion=34; // constantes.php AMBITO_GRUPOSTAREAS
var url="../varios/informacion_acciones.php?idtipoaccion="+id[2]+"&descripcionaccion="+description+"&tipoaccion="+tipoaccion;
break;
- case '70':
- case '71':
- case '72':
- // imagen
- var url="../varios/informacion_imagenes.php?idimagen="+id[2]+"&descripcionimagen="+description;
- break;
default:
console.log("case default");
break;
diff --git a/admin/WebConsole/jscripts/aulas.js b/admin/WebConsole/jscripts/aulas.js
index b580c2fc..554ba663 100644
--- a/admin/WebConsole/jscripts/aulas.js
+++ b/admin/WebConsole/jscripts/aulas.js
@@ -382,3 +382,297 @@ function ver_ubicarordenadores(){
window.open(whref,"frame_contenidos")
}
+$(function() {
+ /// @function actionsQueue
+ /// @brief Carga la página de la cola de acciones para el ámbito seleccionado.
+ $("[id^='actionsQueue']").on ('click', function() {
+ var data=scope($(this));
+ var url="../principal/colasacciones.php?ambito="+data[2]+"&idambito="+data[0]+"&nombreambito="+data[1];
+
+ console.log("id:" +url);
+ window.open(url,"frame_contenidos")
+ });
+
+ /// @function config
+ /// @brief Muestra formulario para incorporar un sólo ordenador.
+ $("[id^='config']").on ('click', function() {
+ var data=scope($(this));
+ var url="configuraciones.php?idambito="+data[0]+"&ambito="+data[2];
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function console
+ /// @brief Muestra el eco de una consola en una ventana.
+ /// FALTA algo seguro
+ $("[id^='console']").on ('click', function() {
+ var data=scope($(this));
+ //var sw=( data[2] == AMBITO_ORDENADORES ) ? 1 : 2 ;
+ var sw=1;
+ console.log("tipo amb: "+data[2]+ "AMBITO_ORDENADORES: "+AMBITO_ORDENADORES);
+ var url="../principal/consolaremota.php?litambito="+data[3]+"&idambito="+data[0]+"&nomambito="+data[1]+"&sw="+sw;
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos")
+ /*
+
+ if (data[2] == AMBITO_ORDENADORES) {
+ window.open(url,"frame_contenidos")
+ }
+ else{
+ var nomw="w_"+data[3]+"_"+data[0];
+ window.open(url,nomw,"width=720,height=640");
+ }
+ */
+ });
+
+ /// @function echo
+ /// @brief Muestra formulario para configurar arranque PXE
+ $("[id^='echo']").on ('click', function() {
+ var data=scope($(this));
+ //if (data[0] == null) alert(TbMsg[6]);
+ var sw=2;
+ var url="../principal/consolaremota.php?litambito="+data[3]+"&idambito="+data[0]+"&nomambito="+data[1]+"&sw="+sw;
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function includePC
+ /// @brief Muestra formulario para incorporar ordenadores partiendo de la configuración del dhcp
+ $("[id^='includePC']").on ('click', function() {
+ var data=scope($(this));
+ var url="../varios/incorporaordenadores.php?idaula="+data[0]+"&nombreaula="+data[1];
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function insertGrpPC
+ /// @brief Muestra formulario para insertar un grupo de ordenadores
+ $("[id^='insertGrpPC']").on ('click', function() {
+ var data=scope($(this));
+ // Para grupo de ordenadores necesitamos el idaula
+ if (data[2] == AMBITO_GRUPOSORDENADORES) {
+ var id=$(this).parent().attr('id').split("_");
+ var labId=id[1];
+ var groupID=data[0];
+ } else {
+ var labId=data[0];
+ var groupID=0;
+ }
+ var url="../propiedades/propiedades_grupos.php?opcion="+op_alta+"&grupoid="+groupID+"&idaula="+labId+"&tipo="+AMBITO_GRUPOSORDENADORES+"&literaltipo="+LITAMBITO_GRUPOSORDENADORES;
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function insertPC
+ /// @brief Muestra formulario para insertar un ordenador
+ $("[id^='insertPC']").on ('click', function() {
+ var data=scope($(this));
+ // Para grupo de ordenadores necesitamos el idaula
+ if (data[2] == AMBITO_GRUPOSORDENADORES) {
+ var id=$(this).parent().attr('id').split("_");
+ var labId=id[1];
+ var groupID=data[0];
+ } else {
+ var labId=data[0];
+ var groupID=0;
+ }
+ var url="../propiedades/propiedades_ordenadores.php?opcion="+op_alta+"&grupoid="+groupID+"&idaula="+labId;
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function liveLogPC
+ /// @brief Muestra log en tiempo real del equipo
+ $("[id^='liveLogPC']").on ('click', function() {
+ var data=scope($(this));
+ var url="../principal/verlogseguimiento.php?nombreordenador="+data[1];
+ console.log("url: "+url);
+ window.open(url,"","width=1024,height=870,scrollbars=YES,resizable=YES")
+ });
+
+ /// @function logPC
+ /// @brief Muestra log del equipo
+ $("[id^='logPC']").on ('click', function() {
+ var data=scope($(this));
+ console.log(data);
+ var url="../principal/verlog.php?nombreordenador="+data[1];
+ console.log("url: "+url);
+ window.open(url,"","width=1024,height=870,scrollbars=YES,resizable=YES")
+ });
+
+ /// @function modifyGrpPC
+ /// @brief Muestra propiedades del grupo
+ $("[id^='modifyGrpPC']").on ('click', function() {
+ var data=scope($(this));
+ console.log(data);
+ var url="../propiedades/propiedades_grupos.php?opcion="+op_modificacion+"&idgrupo="+data[0]+"&literaltipo="+data[3];
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos")
+ });
+
+ /// @function modifyPC
+ /// @brief Muestra propiedades del equipo
+ $("[id^='modifyPC']").on ('click', function() {
+ var data=scope($(this));
+ console.log(data);
+ var url="../propiedades/propiedades_ordenadores.php?opcion="+op_modificacion+"&identificador="+data[0];
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos")
+ });
+
+ /// @function movePC
+ /// @brief Guarda datos del equipo para moverlo.
+ /// FALTA
+ $("[id^='movePC']").on ('click', function() {
+ // No hay url
+ //var url="aula.php?litambito="+field[1]+"&idambito="+id[2]+"&nombreambito="+description;
+ console.log("antes: "+prefix[1]+" tipo: "+id[1]+" nodo; "+id[2]);
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos")
+ });
+
+ /// @function netBoot
+ /// @brief Muestra formulario para configurar arranque PXE
+ $("[id^='netBoot']").on ('click', function() {
+ var data=scope($(this));
+ var url="boot.php?litambito="+data[3]+"&idambito="+data[0]+"&nombreambito="+data[1];;
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function procedure
+ /// @brief Muestra pagina procedimientos
+ $("[id^='procedure']").on ('click', function() {
+ var data=scope($(this));
+ var url="../varios/ejecutaracciones.php?ambito="+data[2]+"&idambito="+data[0]+"&nombreambito="+data[1];
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function purgePC
+ /// @brief reinicia ogAdmclient del equipo
+ $("[id^='purgePC']").on ('click', function() {
+ var resul=window.confirm(TbMsg[4]);
+ if (!resul)return;
+ var data=scope($(this));
+ var url="purgar.php";
+ var param="idambito="+data[0]+"&ambito="+data[2];
+ console.log("url: "+url + " param: "+param);
+ CallPage(url,param,"retornoActualizar","POST");
+ });
+
+ /// @function putPC
+ /// @brief Situa el equipo movido en el grupo de destino.
+ /// FALTA
+ $("[id^='putPC']").on ('click', function() {
+
+ var url="../gestores/gestor_ordenadores.php";
+ if (swsf==0) // El ordenador se mueve a un grupo de ordenadores
+ var prm="opcion="+op_movida+"&grupoid="+identificador+"&idordenador="+identificador_ordenador+"&coloc="+colo;
+ else // El ordenador se mueve a un aula
+ var prm="opcion="+op_movida+"&idaula="+identificador+"&idordenador="+identificador_ordenador+"&coloc="+colo;
+
+ console.log("antes: "+prefix[1]+" tipo: "+id[1]+" nodo; "+id[2]);
+ console.log("url: "+url);
+ CallPage(wurl,prm,"retornoColocar","POST");
+ });
+
+ /// @function relocationPC
+ /// @brief Muestra formulario para reubicar ordenadores.
+ $("[id^='relocationPC']").on ('click', function() {
+ var data=scope($(this));
+ var url="ubicarordenadores.php?litambito="+data[3]+"&idambito="+data[0]+"&nombreambito="+data[1];
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function removeGrpPC
+ /// @brief Elimina grupo de ordenadores
+ $("[id^='removeGrpPC']").on ('click', function() {
+ var data=scope($(this));
+ var url="../propiedades/propiedades_grupos.php?opcion="+op_eliminacion+"&idgrupo="+data[0]+"&literaltipo="+data[3];
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function removePC
+ /// @brief Elimina ordenador
+ $("[id^='removePC']").on ('click', function() {
+ var data=scope($(this));
+ var url="../propiedades/propiedades_ordenadores.php?opcion="+op_eliminacion+"&identificador="+data[0];
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos");
+ });
+
+ /// @function status
+ /// @brief Carga la página de estado de los ordenadores para el ámbito seleccionado.
+ $("[id^='status']").on ('click', function() {
+ var data=scope($(this));
+ var url="aula.php?litambito="+data[3]+"&idambito="+data[0]+"&nombreambito="+data[1];
+ console.log("url: "+url);
+ window.open(url,"frame_contenidos")
+ });
+
+ /// @function updatePC
+ /// @brief Actualiza estado del equipo
+ $("[id^='updatePC']").on ('click', function() {
+ var data=scope($(this));
+ var url="actualizar.php";
+ var param="idambito="+data[0]+"&ambito="+data[2];
+ console.log("url: "+url + " param: "+param);
+ CallPage(url, param, "retornoActualizar", "POST");
+ });
+
+});
+
+/// @function scope
+/// @brief Devuelve array con valores del ámbito (ámbito, literalAmbito)
+/// @param 1 {Str} prefijo del id del elemento de la lista.
+/// @param 2 {Int} tipo de nodo.
+/// @param 3 {Int} identificador del nodo.
+/// @return {Array} array (idNodo, nombreNodo, idÁmbito, nombreÁmbito)
+/// @date: 2020-07-29
+function scope(node) {
+ // Id menu-node-tipoNodo_tipoNodo_idNodo
+ var id=node.parent().attr('id').split("_");
+ console.log("id: "+id[0]);
+ var prefixAux=id[0].split("-");
+ var nodeType=id[1];
+ var nodeId=id[2]
+ var prefix=prefixAux[1];
+
+ console.log("antes: "+prefixAux[1]+" tipo: "+id[1]+" nodo; "+id[2]);
+ var id = 0;
+ var name = '';
+ var tag="label:first"
+ switch (prefix) {
+ case 'type':
+ id = AMBITO_CENTROS;
+ name = LITAMBITO_CENTROS;
+ break;
+ case 'group':
+ if (nodeType == 2) {
+ id = AMBITO_GRUPOSAULAS;
+ name = LITAMBITO_GRUPOSAULAS;
+ } else {
+ id = AMBITO_GRUPOSORDENADORES;
+ name = LITAMBITO_GRUPOSORDENADORES;
+ }
+ break;
+ case 'node':
+ if (nodeType == 2) {
+ id = AMBITO_AULAS;
+ name = LITAMBITO_AULAS;
+ } else {
+ id = AMBITO_ORDENADORES;
+ name = LITAMBITO_ORDENADORES;
+ tag="a";
+ }
+ break;
+ }
+ // El id del nodo raíz no cumple el formato.
+ var idLi = (id == AMBITO_CENTROS) ? "#root" : "#"+prefix+"-"+nodeType+"_"+nodeId;
+ console.log("idLi: "+idLi);
+ var description=$(idLi).find(tag).text().trim();
+ return [ nodeId, description, id, name ];
+}
diff --git a/admin/WebConsole/jscripts/comunes.js b/admin/WebConsole/jscripts/comunes.js
index 286414b3..6c371168 100644
--- a/admin/WebConsole/jscripts/comunes.js
+++ b/admin/WebConsole/jscripts/comunes.js
@@ -447,10 +447,20 @@ $(function() {
var typeMove='';
// Inserta grupo
- // Hay que distingir en grupos de aulas y ordenadores
$("[id^='insertGroup']").on ('click', function() {
var id=$(this).parent().attr('id').split("_");
- var url="../propiedades/propiedades_grupos.php?opcion="+op_alta+"&grupoid="+id[2]+"&tipo="+id[1];
+ var url="../propiedades/propiedades_grupos.php?opcion="+op_alta+"&tipo="+id[1];
+
+ // Para aulas.
+ if (id[1] == 2) {
+ // Hay que añadir literaltipo
+ url+="&literaltipo="+LITAMBITO_GRUPOSAULAS;
+
+ // Al inertarla en la raíz del árbol hay que cambiar el grupo
+ var prefix=id[0].split("-");
+ if (prefix[1] == 'type') id[2]=0;
+ }
+ url+="&grupoid="+id[2];
// console.log("tipo: "+id[1]+" grupoPadre; "+id[2]);
console.log("id:" +url);
@@ -463,20 +473,15 @@ $(function() {
var id=$(this).parent().attr('id').split("_");
var url=urlProperty(id[1]);
+ // Para aulas: al insertarla en la raíz del árbol hay que cambiar el grupo
+ if (id[1] == 2) {
+ var prefix=id[0].split("-");
+ if (prefix[1] == 'type') id[2]=0;
+ }
console.log("tipo: "+id[1]+" nodo; "+id[2]);
url+="opcion="+op_alta+"&grupoid="+id[2];
console.log("id:" +url);
window.open(url,"frame_contenidos")
- // Usamos la uel del caso por defecto
- /*
- var auxsplit= pages.split('?'); // La variable pages lleva parametros
- if(auxsplit[1]!=null)
- var whref=pages+"&";
- else
- var whref=pages+"?";
- whref+="opcion="+op_alta+"&grupoid="+identificador;
- */
-
});
// Modifica grupo
@@ -535,6 +540,9 @@ $(function() {
var id=$(this).parent().attr('id').split("_");
var url="../propiedades/propiedades_grupos.php?opcion="+op_eliminacion+"&idgrupo="+id[2]+"&tipo="+id[1];
+ // Para aulas hay que añadir literaltipo
+ if (id[1] == 2) url+="&literaltipo="+LITAMBITO_GRUPOSAULAS;
+
console.log("tipo: "+id[1]+" nodo; "+id[2]);
console.log("id:" +url);
window.open(url,"frame_contenidos")
@@ -622,6 +630,10 @@ function urlProperty(nodeType) {
function urlPut(nodeType) {
// url según tipo de nodo
switch(nodeType) {
+ case '2':
+ // aula
+ var url="../propiedades/propiedades_aulas.php?";
+ break;
case '54':
// componente de hardware
var url="../gestores/gestor_componentehardwares.php";