diff options
-rw-r--r-- | admin/WebConsole/gestores/gestor_aulas.php | 35 | ||||
-rw-r--r-- | admin/WebConsole/gestores/gestor_ordenadores.php | 18 | ||||
-rwxr-xr-x | admin/WebConsole/gestores/gestor_pxe.php | 179 | ||||
-rw-r--r-- | admin/WebConsole/jscripts/aulas.js | 47 | ||||
-rw-r--r-- | admin/WebConsole/principal/aula.php | 14 | ||||
-rw-r--r-- | admin/WebConsole/principal/aulas.php | 66 | ||||
-rw-r--r-- | admin/WebConsole/principal/boot.php | 217 | ||||
-rw-r--r-- | admin/WebConsole/principal/verlog.php | 88 | ||||
-rw-r--r-- | admin/WebConsole/principal/verlogseguimiento.php | 88 | ||||
-rw-r--r-- | admin/WebConsole/propiedades/propiedades_aulas.php | 86 | ||||
-rw-r--r-- | admin/WebConsole/propiedades/propiedades_ordenadores.php | 35 | ||||
-rw-r--r-- | admin/WebConsole/varios/incorporaordenadores.php | 3 |
12 files changed, 864 insertions, 12 deletions
diff --git a/admin/WebConsole/gestores/gestor_aulas.php b/admin/WebConsole/gestores/gestor_aulas.php index 27447ac5..013c03c1 100644 --- a/admin/WebConsole/gestores/gestor_aulas.php +++ b/admin/WebConsole/gestores/gestor_aulas.php @@ -41,7 +41,12 @@ $modomul=0; $ipmul=""; $pormul=0; $velmul=0; - +############## ADV +$router=0; +$netmask=0; +$modp2p=0; +$timep2p=0; +############ ADV if (isset($_POST["opcion"])) $opcion=$_POST["opcion"]; // Recoge parametros if (isset($_POST["grupoid"])) $grupoid=$_POST["grupoid"]; @@ -66,6 +71,12 @@ if (isset($_POST["modomul"])) $modomul=$_POST["modomul"]; if (isset($_POST["ipmul"])) $ipmul=$_POST["ipmul"]; if (isset($_POST["pormul"])) $pormul=$_POST["pormul"]; if (isset($_POST["velmul"])) $velmul=$_POST["velmul"]; +############## ADV +if (isset($_POST["router"])) $router=$_POST["router"]; +if (isset($_POST["netmask"])) $netmask=$_POST["netmask"]; +if (isset($_POST["modp2p"])) $modp2p=$_POST["modp2p"]; +if (isset($_POST["timep2p"])) $timep2p=$_POST["timep2p"]; +################# ADV $gidmenu=0; $gidproautoexec=0; @@ -166,12 +177,20 @@ function Gestiona(){ global $ipmul; global $pormul; global $velmul; - +######################### ADV + global $router; + global $netmask; + global $modp2p; + global $timep2p; +########################## ADV + global $op_alta; global $op_modificacion; global $op_eliminacion; global $tablanodo; + + $cmd->CreaParametro("@grupoid",$grupoid,1); $cmd->CreaParametro("@idcentro",$idcentro,1); @@ -194,13 +213,19 @@ function Gestiona(){ $cmd->CreaParametro("@ipmul",$ipmul,0); $cmd->CreaParametro("@pormul",$pormul,1); $cmd->CreaParametro("@velmul",$velmul,1); +############ ADV + $cmd->CreaParametro("@netmask",$netmask,0); + $cmd->CreaParametro("@router",$router,0); + $cmd->CreaParametro("@modp2p",$modp2p,0); + $cmd->CreaParametro("@timep2p",$timep2p,1); +############### ADV switch($opcion){ case $op_alta : $cmd->texto="INSERT INTO aulas(idcentro,grupoid,nombreaula,urlfoto,cagnon,pizarra,ubicacion,comentarios, - puestos,horaresevini,horaresevfin,modomul,ipmul,pormul,velmul) + puestos,horaresevini,horaresevfin,modomul,ipmul,pormul,velmul,router,netmask,modp2p,timep2p) VALUES (@idcentro,@grupoid,@nombreaula,@urlfoto,@cagnon,@pizarra,@ubicacion,@comentarios, - @puestos,@horaresevini,@horaresevfin,@modomul,@ipmul,@pormul,@velmul)"; + @puestos,@horaresevini,@horaresevfin,@modomul,@ipmul,@pormul,@velmul,@router,@netmask,@modp2p,@timep2p)"; $resul=$cmd->Ejecutar(); if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta $idaula=$cmd->Autonumerico(); @@ -214,7 +239,7 @@ function Gestiona(){ case $op_modificacion: $cmd->texto="UPDATE aulas SET nombreaula=@nombreaula,urlfoto=@urlfoto,cagnon=@cagnon,pizarra=@pizarra, ubicacion=@ubicacion,comentarios=@comentarios,puestos=@puestos,horaresevini=@horaresevini, - horaresevfin=@horaresevfin,modomul=@modomul,ipmul=@ipmul,pormul=@pormul,velmul=@velmul WHERE idaula=@idaula"; + horaresevfin=@horaresevfin,modomul=@modomul,ipmul=@ipmul,pormul=@pormul,velmul=@velmul,router=@router,netmask=@netmask,modp2p=@modp2p,timep2p=@timep2p WHERE idaula=@idaula"; $resul=$cmd->Ejecutar(); //echo $cmd->texto; if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta diff --git a/admin/WebConsole/gestores/gestor_ordenadores.php b/admin/WebConsole/gestores/gestor_ordenadores.php index 3316c428..3b5645b4 100644 --- a/admin/WebConsole/gestores/gestor_ordenadores.php +++ b/admin/WebConsole/gestores/gestor_ordenadores.php @@ -31,6 +31,10 @@ $idmenu=0; $idprocedimiento=0; $idimagen=0; $cache=0; +#### ADV +$netiface=""; +$netdriver=""; +### ADV if (isset($_POST["opcion"])) $opcion=$_POST["opcion"]; // Recoge parametros if (isset($_POST["grupoid"])) $grupoid=$_POST["grupoid"]; @@ -48,6 +52,9 @@ if (isset($_POST["cache"])) $cache=$_POST["cache"]; if(empty($cache)) $cache=0; +if (isset($_POST["netiface"])) $netiface=$_POST["netiface"]; +if (isset($_POST["netdriver"])) $netdriver=$_POST["netdriver"]; + $tablanodo=""; // Arbol para nodos insertados //________________________________________________________________________________________________________ $cmd=CreaComando($cadenaconexion); // Crea objeto comando @@ -138,6 +145,8 @@ function Gestiona(){ global $idmenu; global $idprocedimiento; global $cache; + global $netiface; + global $netdriver; global $op_alta; global $op_modificacion; @@ -156,12 +165,15 @@ function Gestiona(){ $cmd->CreaParametro("@idmenu",$idmenu,1); $cmd->CreaParametro("@idprocedimiento",$idprocedimiento,1); $cmd->CreaParametro("@cache",$cache,1); + $cmd->CreaParametro("@netiface",$netiface,0); + $cmd->CreaParametro("@netdriver",$netdriver,0); + switch($opcion){ case $op_alta : $cmd->texto="INSERT INTO ordenadores(nombreordenador,ip,mac,idperfilhard,idrepositorio, - idmenu,idproautoexec,idaula,grupoid,cache) VALUES (@nombreordenador,@ip,@mac,@idperfilhard,@idrepositorio, - @idmenu,@idprocedimiento,@idaula,@grupoid,@cache)"; + idmenu,idproautoexec,idaula,grupoid,cache,netiface,netdriver) VALUES (@nombreordenador,@ip,@mac,@idperfilhard,@idrepositorio, + @idmenu,@idprocedimiento,@idaula,@grupoid,@cache,@netiface,@netdriver)"; $resul=$cmd->Ejecutar(); //echo $cmd->texto; @@ -176,7 +188,7 @@ function Gestiona(){ break; case $op_modificacion: $cmd->texto="UPDATE ordenadores SET nombreordenador=@nombreordenador,ip=@ip,mac=@mac,idperfilhard=@idperfilhard, - idrepositorio=@idrepositorio,idmenu=@idmenu,idproautoexec=@idprocedimiento,cache=@cache + idrepositorio=@idrepositorio,idmenu=@idmenu,idproautoexec=@idprocedimiento,cache=@cache,netiface=@netiface,netdriver=@netdriver WHERE idordenador=@idordenador"; $resul=$cmd->Ejecutar(); //echo $cmd->texto; diff --git a/admin/WebConsole/gestores/gestor_pxe.php b/admin/WebConsole/gestores/gestor_pxe.php new file mode 100755 index 00000000..cbde8883 --- /dev/null +++ b/admin/WebConsole/gestores/gestor_pxe.php @@ -0,0 +1,179 @@ +<?php +include_once("../includes/ctrlacc.php"); +include_once("../clases/AdoPhp.php"); +include_once("../clases/XmlPhp.php"); +include_once("../clases/MenuContextual.php"); +include_once("../clases/SockHidra.php"); +include_once("../includes/constantes.php"); +include_once("../includes/comunes.php"); +include_once("../includes/CreaComando.php"); +include_once("../idiomas/php/".$idioma."/aulas_".$idioma.".php"); + +$cmd=CreaComando($cadenaconexion); +if (!$cmd) + Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D. +//________________________________________________________________________________________________________ + + +echo "<html>"; +echo "<head>"; +echo "<meta http-equiv='Refresh' content='1;URL=../principal/boot.php?idambito=". $_GET['idaula'] ."&nombreambito=" . $_GET['nombreambito'] . "&litambito=" . $_GET['litambito'] . "'>"; +echo "<title> gestion de equipos </title>"; +echo "<base target='principal'>"; +echo "</head>"; +echo "<body>"; + + + +#echo('litambito con valor: '. $_GET['litambito']); +#echo ('idambito con valor: ' . $_GET['idaula']); +#echo ('nombreambito con valor: ' . $_GET['nombreambito']); + +$lista = explode(";",$_POST['listOfItems']); +foreach ($lista as $sublista) { + $elementos = explode("|",$sublista); + $hostname=$elementos[1]; + $optboot=$elementos[0]; + ogBootServer($cmd,$optboot,$hostname); +} +echo " </body>"; +echo " </html> "; + +function ogBootServer($cmd,$optboot,$hostname) +{ +global $cmd; +global $hostname; +global $optboot; +$cmd->CreaParametro("@optboot",$optboot,0); +$cmd->CreaParametro("@hostname",$hostname,0); +$cmd->texto="update ordenadores set arranque=@optboot where nombreordenador=@hostname"; +$cmd->Ejecutar(); + +$cmd->texto="SELECT ordenadores.ip AS ip, ordenadores.mac AS mac, + ordenadores.netiface AS netiface, aulas.netmask AS netmask, aulas.router AS router, + repositorios.ip AS iprepo FROM ordenadores + join aulas on ordenadores.idaula=aulas.idaula + join repositorios on ordenadores.idrepositorio=repositorios.idrepositorio + where ordenadores.nombreordenador='". $hostname ."'"; +$rs=new Recordset; +$rs->Comando=&$cmd; +if (!$rs->Abrir()) echo "error"; +$rs->Primero(); + $mac=$rs->campos["mac"]; + $netiface=$rs->campos["netiface"]; + $ip=$rs->campos["ip"]; + $router=$rs->campos["router"]; + $netmask=$rs->campos["netmask"]; + $repo=$rs->campos["iprepo"]; + $infohost=" IP=" + . $ip . ":" + . $repo .":" + . $router . ":" + . $netmask .":" + . $hostname .":" + . $netiface . ":none repo=" + . $repo; +$rs->Cerrar(); + +###################obtenemos las variables de red del aula. + + #02.1 obtenemos nombre fichero mac + $mac= substr($mac,0,2) . ":" . substr($mac,2,2) . ":" . substr($mac,4,2) . ":" . substr($mac,6,2) . ":" . substr($mac,8,2) . ":" . substr($mac,10,2); + $macfile="01-" . str_replace(":","-",strtolower($mac)); + $nombre_archivo="/var/lib/tftpboot/pxelinux.cfg/" . $macfile; + + +########## Escribimos el fichero mac +if (!$gestion=fopen($nombre_archivo, 'w+')) +{ + echo "No se puede abrir el archivo ($nombre_archivo)"; + return; +} +# cuales son los parametros del menu +fwrite($gestion, "DEFAULT syslinux/vesamenu.c32 \n"); +fwrite($gestion, "MENU TITLE Aplicacion OpenGnsys \n"); + +$cmd->texto="SELECT itemboot.label, itemboot.kernel, + itemboot.append, menuboot.timeout, menuboot.prompt, + menuboot.description, menuboot_itemboot.default + From itemboot,menuboot_itemboot,menuboot + WHERE menuboot_itemboot.labelmenu=menuboot.label + AND menuboot_itemboot.labelitem=itemboot.label + AND menuboot.label='" . $optboot . "'"; + +$rs->Comando=&$cmd; +if (!$rs->Abrir()) echo "error"; +$rs->Primero(); +while (!$rs->EOF) +{ + fwrite($gestion, " \n"); + fwrite($gestion, "LABEL " . $rs->campos['label'] . " \n"); + fwrite($gestion, "MENU LABEL " . $rs->campos['label'] . " \n"); + if ( $rs->campos["default"] == true) + { + fwrite($gestion, "MENU DEFAULT \n"); + } + fwrite($gestion, $rs->campos["kernel"] . " \n"); + # set netmask cird para ogclient + $isnfsroot=substr_count($rs->campos["append"] , "boot=oginit"); + if ($isnfsroot > 0) + { + $netmask=$netmask; + } + else + { + $netmask=netmask2cidr($netmask); + } + + $iseac=substr_count($rs->campos["append"] , "engine=testing"); + $isinitrd=substr_count($rs->campos["append"] , "initrd.gz"); + + if ($iseac > 0) + { + $append=$rs->campos["append"]; + fwrite($gestion, $append . " " . $infohost . " \n "); + } + + elseif ($isinitrd > 0) + { + $append=$rs->campos["append"]; + fwrite($gestion, $append . " repo=" . $repo . " \n"); + } + else + { + fwrite($gestion, $rs->campos["append"] . " \n"); + } + + $prompt=$rs->campos["prompt"]; + $timeout=$rs->campos["timeout"]; + + $rs->Siguiente(); +} +$rs->Cerrar(); + + + + fwrite($gestion, " \n"); + fwrite($gestion, "PROMPT " . $prompt ." \n"); + fwrite($gestion, "TIMEOUT " . $timeout . " \n"); + fwrite($gestion, " \n"); + fclose($gestion); + exec("chown www-data:www-data /var/lib/tftpboot/pxelinux.cfg/". $macfile); + exec("chmod 777 /var/lib/tftpboot/pxelinux.cfg/". $macfile); + + + + +} + +function netmask2cidr($netmask) { + $cidr = 0; + foreach (explode('.', $netmask) as $number) { + for (;$number> 0; $number = ($number <<1) % 256) { + $cidr++; + } + } + return $cidr; + } + +?>
\ No newline at end of file diff --git a/admin/WebConsole/jscripts/aulas.js b/admin/WebConsole/jscripts/aulas.js index fb3fe373..b845ec7d 100644 --- a/admin/WebConsole/jscripts/aulas.js +++ b/admin/WebConsole/jscripts/aulas.js @@ -130,6 +130,31 @@ function consola_remota(ambito){ Ambito=ambito; consola_eco(1); } + +//________________________________________________________________________________________________________ +// +// Abre una ventana independiente, para ver el log del ordenador cliente +//________________________________________________________________________________________________________ + + +function ver_log(ambito){ + var nombre_ordenador=currentNodo.toma_infonodo(); + var whref="../principal/verlog.php?nombreordenador="+nombre_ordenador; + window.open(whref,"","width=400,height=100,scrollbars=YES,resizable=YES") +} + +//________________________________________________________________________________________________________ +// +// Abre una ventana independiente, para ver el log del ordenador cliente +//________________________________________________________________________________________________________ + + +function ver_log_seguimiento(ambito){ + var nombre_ordenador=currentNodo.toma_infonodo(); + var whref="../principal/verlogseguimiento.php?nombreordenador="+nombre_ordenador; + window.open(whref,"","width=400,height=100,scrollbars=YES,resizable=YES") +} + //________________________________________________________________________________________________________ // // Abre una ventana para mostrar el eco de una consola @@ -334,4 +359,26 @@ function incorporarordenador(){ window.open(whref,"frame_contenidos") } +function ver_boot(){ + reset_contextual(-1,-1) // Oculta menu contextual + var idambito=currentNodo.toma_identificador(); + var litambito=currentNodo.toma_sufijo(); + var nombreambito=currentNodo.toma_infonodo(); + //alert(idambito); + //alert('nombreambito' + nombreambito); + //alert('litambito' + litambito); + var whref="boot.php?litambito="+litambito+"&idambito="+idambito+"&nombreambito="+nombreambito + window.open(whref,"frame_contenidos") +} +function ver_startpages(){ + reset_contextual(-1,-1) // Oculta menu contextual + var idambito=currentNodo.toma_identificador(); + var litambito=currentNodo.toma_sufijo(); + var nombreambito=currentNodo.toma_infonodo(); + //alert(idambito); + //alert('nombreambito' + nombreambito); + //alert('litambito' + litambito); + var whref="./startpages/startpage.php?litambito="+litambito+"&idambito="+idambito+"&nombreambito="+nombreambito + window.open(whref,"frame_contenidos") +} diff --git a/admin/WebConsole/principal/aula.php b/admin/WebConsole/principal/aula.php index b7b878ae..a4f6136e 100644 --- a/admin/WebConsole/principal/aula.php +++ b/admin/WebConsole/principal/aula.php @@ -300,6 +300,8 @@ function ContextualXMLAulas(){ $layerXML.='<SEPARADOR>'; $layerXML.='</SEPARADOR>'; + + $layerXML.='<ITEM'; $layerXML.=' alpulsar="actualizar_ordenadores(this)"'; @@ -419,6 +421,18 @@ function ContextualXMLOrdenadores(){ $layerXML.='<SEPARADOR>'; $layerXML.='</SEPARADOR>'; + + $layerXML.='<ITEM'; + $layerXML.=' alpulsar="ver_log('.$AMBITO_ORDENADORES.')"'; + $layerXML.=' imgitem="../images/iconos/acciones.gif"'; + $layerXML.=' textoitem="Log"'; + $layerXML.='></ITEM>'; + + $layerXML.='<ITEM'; + $layerXML.=' alpulsar="ver_log_seguimiento('.$AMBITO_ORDENADORES.')"'; + $layerXML.=' imgitem="../images/iconos/acciones.gif"'; + $layerXML.=' textoitem="Log_seguimiento"'; + $layerXML.='></ITEM>'; $layerXML.='<ITEM'; $layerXML.=' alpulsar="actualizar_ordenadores()"'; diff --git a/admin/WebConsole/principal/aulas.php b/admin/WebConsole/principal/aulas.php index bcb68755..51f16f63 100644 --- a/admin/WebConsole/principal/aulas.php +++ b/admin/WebConsole/principal/aulas.php @@ -83,6 +83,11 @@ $XMLcontextual=ContextualXMLComandos($LITAMBITO_GRUPOSORDENADORES,$AMBITO_GRUPOS echo $flotante->CreaMenuContextual($XMLcontextual); $XMLcontextual=ContextualXMLComandos($LITAMBITO_ORDENADORES,$AMBITO_ORDENADORES); echo $flotante->CreaMenuContextual($XMLcontextual); + +// Crea submenu contextual de clase de gestion de arranque pxe +$XMLcontextual=ContextualXMLNetBoot(); // Crea submenu contextual de acciones +echo $flotante->CreaMenuContextual($XMLcontextual); + //___________________________________________________________________________________________________ ?> </BODY> @@ -342,6 +347,8 @@ function ContextualXMLGruposAulas(){ $layerXML.=' clase="menu_contextual"'; $layerXML.='>'; + + $layerXML.='<ITEM'; $layerXML.=' alpulsar="ver_aulas()"'; $layerXML.=' textoitem='.$TbMsg[1]; @@ -354,6 +361,12 @@ function ContextualXMLGruposAulas(){ $layerXML.=' textoitem='.$TbMsg[6]; $layerXML.='></ITEM>'; + $layerXML.='<ITEM'; + $layerXML.=' subflotante="flo_netboot"'; + $layerXML.=' imgitem="../images/iconos/ordenadores.gif"'; + $layerXML.=' textoitem="NetBoot Gestion"'; + $layerXML.='></ITEM>'; + $layerXML.='<SEPARADOR>'; $layerXML.='</SEPARADOR>'; @@ -456,6 +469,12 @@ function ContextualXMLAulas(){ $layerXML.=' clase="menu_contextual"'; $layerXML.='>'; + $layerXML.='<ITEM'; + $layerXML.=' subflotante="flo_netboot"'; + $layerXML.=' imgitem="../images/iconos/ordenadores.gif"'; + $layerXML.=' textoitem="NetBoot Gestion"'; + $layerXML.='></ITEM>'; + $layerXML.='<ITEM'; $layerXML.=' alpulsar="ver_aulas()"'; $layerXML.=' textoitem='.$TbMsg[1]; @@ -646,6 +665,12 @@ function ContextualXMLGruposOrdenadores(){ $layerXML.=' clase="menu_contextual"'; $layerXML.='>'; + $layerXML.='<ITEM'; + $layerXML.=' subflotante="flo_netboot"'; + $layerXML.=' imgitem="../images/iconos/ordenadores.gif"'; + $layerXML.=' textoitem="NetBoot Gestion"'; + $layerXML.='></ITEM>'; + $layerXML.='<ITEM'; $layerXML.=' alpulsar="ver_aulas()"'; $layerXML.=' textoitem='.$TbMsg[1]; @@ -772,6 +797,13 @@ function ContextualXMLOrdenadores(){ $layerXML.='<SEPARADOR>'; $layerXML.='</SEPARADOR>'; + + $layerXML.='<ITEM'; + $layerXML.=' alpulsar="ver_log('.$AMBITO_ORDENADORES.')"'; + $layerXML.=' imgitem="../images/iconos/acciones.gif"'; + $layerXML.=' textoitem="Log"'; + $layerXML.='></ITEM>'; + $layerXML.='<ITEM'; $layerXML.=' alpulsar="mover_ordenador()"'; @@ -887,4 +919,38 @@ function ContextualXMLComandos($litambito,$ambito){ return($finallayerXML); } } + +function ContextualXMLNetBoot(){ + #global $TbMsg; + #global $EJECUCION_COMANDO; + #global $EJECUCION_TAREA; + #global $EJECUCION_TRABAJO; + + $layerXML='<MENUCONTEXTUAL'; + $layerXML.=' idctx="flo_netboot"'; + $layerXML.=' maxanchu=190'; + $layerXML.=' swimg=1'; + $layerXML.=' clase="menu_contextual"'; + $layerXML.='>'; + + +//adv compatiblidad Gestor de arranque remoto + $layerXML.='<ITEM'; + $layerXML.=' alpulsar="ver_boot()"'; + $layerXML.=' textoitem="NetBoot AVANZADO"'; + $layerXML.=' imgitem="../images/iconos/ordenadores.gif"'; + $layerXML.='></ITEM>'; +//adv compatiblidad Gestor de arranque remoto +//adv compatiblidad Configurador de Startpages + // $layerXML.='<ITEM'; + // $layerXML.=' alpulsar="ver_startpages()"'; + // $layerXML.=' textoitem="Gestor Startpages"'; + // $layerXML.=' imgitem="../images/iconos/ordenadores.gif"'; + // $layerXML.='></ITEM>'; +//adv compatiblidad Configurador de Startpages + + $layerXML.='</MENUCONTEXTUAL>'; + return($layerXML); +} + ?> diff --git a/admin/WebConsole/principal/boot.php b/admin/WebConsole/principal/boot.php new file mode 100644 index 00000000..39e01c9d --- /dev/null +++ b/admin/WebConsole/principal/boot.php @@ -0,0 +1,217 @@ +<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"> + <SCRIPT language="javascript" src="../jscripts/propiedades_aulas.js"></SCRIPT> + <SCRIPT language="javascript" src="../jscripts/opciones.js"></SCRIPT> + <SCRIPT language="javascript" src="../idiomas/javascripts/esp/propiedades_aulas_esp.js"></SCRIPT></HEAD> + +<script language="javascript" type="text/javascript"> + +function move(fbox, tbox) { + var arrFbox = new Array(); + var arrTbox = new Array(); + var arrLookup = new Array(); + var i; + for (i = 0; i < tbox.options.length; i++) { + arrLookup[tbox.options[i].text] = tbox.options[i].value; + arrTbox[i] = tbox.options[i].text; + } + var fLength = 0; + var tLength = arrTbox.length; + for(i = 0; i < fbox.options.length; i++) { + arrLookup[fbox.options[i].text] = fbox.options[i].value; + if (fbox.options[i].selected && fbox.options[i].value != "") { + arrTbox[tLength] = fbox.options[i].text; + tLength++; + } + else { + arrFbox[fLength] = fbox.options[i].text; + fLength++; + } + } + arrFbox.sort(); + arrTbox.sort(); + fbox.length = 0; + tbox.length = 0; + var c; + +for(c = 0; c < arrFbox.length; c++) { +var no = new Option(); +no.value = arrLookup[arrFbox[c]]; +no.text = arrFbox[c]; +fbox[c] = no; +} + +for(c = 0; c < arrTbox.length; c++) { +var no = new Option(); +no.value = arrLookup[arrTbox[c]]; +no.text = arrTbox[c]; +tbox[c] = no; + } +} + +function allSelect() +{ +var saveString = ""; +// seleccionamos cada uno de los select +var input = document.getElementsByTagName('select'); +//alert(input.length); +for(var i=0; i<input.length; i++){ +//if(inputs[i].getAttribute('type')=='button'){ +// your statements +patron = "L"; +parm = input[i].name; +//alert(parm); +parm = parm.replace(patron,''); +//alert(parm); +for (j=0;j<input[i].length;j++) + { + //List.options[i].selected = true; + saveString = saveString + parm + '|' + input[i].options[j].value + ';'; + //alert(saveString); + } +} +document.forms['myForm'].listOfItems.value = saveString; +} + + +</script> +</head> +<body> + +<?php +include_once("../includes/ctrlacc.php"); +include_once("../clases/AdoPhp.php"); +include_once("../clases/XmlPhp.php"); +include_once("../clases/MenuContextual.php"); +include_once("../clases/SockHidra.php"); +include_once("../includes/constantes.php"); +include_once("../includes/comunes.php"); +include_once("../includes/CreaComando.php"); +include_once("../idiomas/php/".$idioma."/aulas_".$idioma.".php"); + +$cmd=CreaComando($cadenaconexion); +if (!$cmd) + Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D. +//________________________________________________________________________________________________________ + +$litambito=0; +$idambito=0; +$nombreambito=""; + + +if (isset($_GET["litambito"])) $litambito=$_GET["litambito"]; // Recoge parametros +if (isset($_GET["idambito"])) $idambito=$_GET["idambito"]; +if (isset($_GET["nombreambito"])) $nombreambito=$_GET["nombreambito"]; + + +switch($litambito){ + case "aulas": + $seleccion="and idaula=" . $idambito .""; + break; + case "gruposordenadores": + $seleccion= "and grupoid=" . $idambito . ""; + break; +} +?> + +<TABLE align=center border=1 cellPadding=1 cellSpacing=1 class=tabla_datos > +<form name="myForm" method="post" action="../gestores/gestor_pxe.php?idaula=<?php echo $idambito ?>&nombreambito=<?php echo $nombreambito?>&litambito=<?php echo $litambito?>" > + + + <P align=center class=cabeceras>Gestión Arranque Avanzado<BR> + <SPAN align=center class=subcabeceras> <?php echo $nombreambito; ?> </SPAN> + <SPAN <input type="submit" value="GUARDAR" name="saveButton" onclick="allSelect()"> </SPAN> </P> + + + + + + +<input type="hidden" name="listOfItems" value=""> +<?php +echo "<input type='hidden' name='rungrupo' value='" . $_GET['id_aula'] . "'>"; +?> + + +<!-- primer file, nombre de las equipos por pxe hace falta <td> </td>--> +<tr> +<td> + <!-- <a href="./muestramenu.php?labelmenu=pxe"> OGclient </a><br> pxe <br> --> +OGclient <br> +<select multiple size="30" name="Lpxe" id="Lpxe" style="width:100"> + +<?php +#### listado de equipos con menu pxe +$menupxe=pxe; +$listadopxe=listaequipos($cmd,$menupxe,$seleccion); +echo $listadopxe; +?> +</select> +</td> + + +<?php + +$cmd->texto="SELECT * FROM menuboot where label <> 'pxe' "; +$rsmenu=new Recordset; +$rsmenu->Comando=&$cmd; +if (!$rsmenu->Abrir()) echo "error"; +$rsmenu->Primero(); +while (!$rsmenu->EOF) +{ + echo "<td></td>"; + echo "<td> "; + echo $rsmenu->campos['description']; + #echo "<a href='./muestramenu.php?labelmenu=" . $rsmenu->campos['label'] ."'> " . $rsmenu->campos['description'] . " </a> <br>". $rs->campos['label'] . "<br>"; + echo " <br>"; + echo "<input type='button' onClick='move(this.form.L" . $rsmenu->campos['label'] . ",this.form.Lpxe)' value='OUT' style='height: 25px; width: 50px' >"; + echo "<input type='button' onClick='move(this.form.Lpxe,this.form.L" . $rsmenu->campos['label'] .")' value='IN' style='height: 25px; width: 35px' >"; + echo " <br>"; + echo "<select multiple size='30' name='L" . $rsmenu->campos['label'] . "' style='width:100'>"; + $listadopxe=""; + $listadopxe=listaequipos($cmd,$rsmenu->campos['label'],$seleccion); + echo $listadopxe; + echo "</select>"; + echo "</td>"; + $rsmenu->Siguiente(); +} +$rsmenu->Cerrar(); + + + + + + + +// esta funcion genera los elementos de un select(formulario html) donde aparecen los nombres de los ordenadores, según su menu pxe +function listaequipos($cmd,$menupxe,$seleccion) +{ +$cmd->texto="SELECT * FROM ordenadores where arranque='" . $menupxe ."' " . $seleccion; +$rs=new Recordset; +$rs->Comando=&$cmd; +if (!$rs->Abrir()) echo "error"; +$rs->Primero(); +while (!$rs->EOF) +{ + echo "<option value='"; + echo $rs->campos["nombreordenador"]; + echo "'>"; + echo $rs->campos["nombreordenador"]; + echo "</option>"; + $rs->Siguiente(); +} +$rs->Cerrar(); +} + +?> + +</tr> + +</form> +</table> + +</body> +</html> diff --git a/admin/WebConsole/principal/verlog.php b/admin/WebConsole/principal/verlog.php new file mode 100644 index 00000000..f971afff --- /dev/null +++ b/admin/WebConsole/principal/verlog.php @@ -0,0 +1,88 @@ +<? +// ************************************************************************************************************************************************* +// Aplicación WEB: +// Autor: +// Fecha Creación: +// Fecha Última modificación: +// Nombre del fichero: +// Descripción : +// muestra los log del equipo +// ************************************************************************************************************************************************* +include_once("../includes/ctrlacc.php"); +include_once("../clases/AdoPhp.php"); +include_once("../includes/constantes.php"); +include_once("../includes/comunes.php"); +include_once("../includes/CreaComando.php"); +include_once("../includes/HTMLSELECT.php"); +include_once("../idiomas/php/".$idioma."/comandos/ejecutarscripts_".$idioma.".php"); +include_once("../idiomas/php/".$idioma."/consolaremota_".$idioma.".php"); +//________________________________________________________________________________________________________ +$cmd=CreaComando($cadenaconexion); +if (!$cmd) + Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D. +//___________________________________________________________________________________________________ + +$nombreordenador=$_GET["nombreordenador"]; + +if (isset($_GET["ip"])) +{ +$ip=$_GET["ip"]; +} +else +{ + $rs=new Recordset; + $cmd->texto="SELECT * FROM ordenadores WHERE nombreordenador='".$nombreordenador."'"; + $rs->Comando=&$cmd; + if (!$rs->Abrir()) return(false); // Error al abrir recordset + $rs->Primero(); + if (!$rs->EOF){ + $ip=$rs->campos["ip"]; + $rs->Cerrar(); + } +} + +?> + + +<HTML> +<TITLE>Log: <? echo $_GET["nombreordenador"] ?> </TITLE> +<HEAD> +<? +#echo "<meta http-equiv='Refresh' content='2;URL=./verlog.php?nombreordenador=". $_GET["nombreordenador"] ."&ip=".$ip ."'"; +?> + + +</HEAD> + +<BODY> + + +<form name="leerficherolog" action="" method="GET"> +<table> +<tr> +<?php + $nombreordenador=$_GET["nombreordenador"]; + echo "<td> Log del equipo ". $nombreordenador ." con ip " . $ip ." </td> "; +?> +</tr> +</table> +<TEXTAREA NAME="contenido" ROWS="50" COLS="150" > +<?php + $fp = "/opt/opengnsys/log/clients/" . $ip . ".log"; + $array=file($fp); + foreach($array as $line) + { + echo($line); + } + #lectura del fichero tipo tail + #for($i=count($array);$i>0;$i--) + #{ + # echo "$array[$i]"; + #} +?> +</TEXTAREA> + +</form> + +</BODY> +</HTML>
\ No newline at end of file diff --git a/admin/WebConsole/principal/verlogseguimiento.php b/admin/WebConsole/principal/verlogseguimiento.php new file mode 100644 index 00000000..2a537998 --- /dev/null +++ b/admin/WebConsole/principal/verlogseguimiento.php @@ -0,0 +1,88 @@ +<? +// ************************************************************************************************************************************************* +// Aplicación WEB: +// Autor: +// Fecha Creación: +// Fecha Última modificación: +// Nombre del fichero: +// Descripción : +// muestra los log del equipo +// ************************************************************************************************************************************************* +include_once("../includes/ctrlacc.php"); +include_once("../clases/AdoPhp.php"); +include_once("../includes/constantes.php"); +include_once("../includes/comunes.php"); +include_once("../includes/CreaComando.php"); +include_once("../includes/HTMLSELECT.php"); +include_once("../idiomas/php/".$idioma."/comandos/ejecutarscripts_".$idioma.".php"); +include_once("../idiomas/php/".$idioma."/consolaremota_".$idioma.".php"); +//________________________________________________________________________________________________________ +$cmd=CreaComando($cadenaconexion); +if (!$cmd) + Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D. +//___________________________________________________________________________________________________ + +$nombreordenador=$_GET["nombreordenador"]; + +if (isset($_GET["ip"])) +{ +$ip=$_GET["ip"]; +} +else +{ + $rs=new Recordset; + $cmd->texto="SELECT * FROM ordenadores WHERE nombreordenador='".$nombreordenador."'"; + $rs->Comando=&$cmd; + if (!$rs->Abrir()) return(false); // Error al abrir recordset + $rs->Primero(); + if (!$rs->EOF){ + $ip=$rs->campos["ip"]; + $rs->Cerrar(); + } +} + +?> + + +<HTML> +<TITLE>Log: <? echo $_GET["nombreordenador"] ?> </TITLE> +<HEAD> +<? +echo "<meta http-equiv='Refresh' content='2;URL=./verlogseguimiento.php?nombreordenador=". $_GET["nombreordenador"] ."&ip=".$ip ."'"; +?> + + +</HEAD> + +<BODY> + + +<form name="leerficherolog" action="" method="GET"> +<table> +<tr> +<?php + $nombreordenador=$_GET["nombreordenador"]; + echo "<td> Log del equipo ". $nombreordenador ." con ip " . $ip ." </td> "; +?> +</tr> +</table> +<TEXTAREA NAME="contenido" ROWS="50" COLS="150" > +<?php + $fp = "/opt/opengnsys/log/clients/" . $ip . ".log"; + #echo exec('tail -n 50 ' . $fp); + $handle = popen("tail " . $fp ." 2>&1", 'r'); + while(!feof($handle)) { + $buffer = fgets($handle); + echo "$buffer<br/>\n"; + ob_flush(); + flush(); +} +pclose($handle); + +?> +</TEXTAREA> + +</form> + +</BODY> +</HTML>
\ No newline at end of file diff --git a/admin/WebConsole/propiedades/propiedades_aulas.php b/admin/WebConsole/propiedades/propiedades_aulas.php index e77efe11..afd914dd 100644 --- a/admin/WebConsole/propiedades/propiedades_aulas.php +++ b/admin/WebConsole/propiedades/propiedades_aulas.php @@ -167,7 +167,62 @@ else ?> </TR> <!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> +<!----ADV ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> <TR> + <TH align=center > Router </TD> + <? + if ($opcion==$op_eliminacion) + echo '<TD colspan=3>'.$router.'</TD>'; + else + echo '<TD colspan=3><INPUT class="formulariodatos" name=router style="width:100" type=text value='.$router.'></TD>'; + ?> + </TR> +<!-----ADV --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> + <TR> + <TH align=center > Netmask </TD> + <? + if ($opcion==$op_eliminacion) + echo '<TD colspan=3>'.$netmask.'</TD>'; + else + echo '<TD colspan=3><INPUT class="formulariodatos" name=netmask style="width:100" type=text value='.$netmask.'></TD>'; + ?> + </TR> +<!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> + +<!-----ADV --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> + <TR> + <TH align=center > P2P Modo: </TD> + <? + if ($opcion==$op_eliminacion) + echo '<TD colspan=3>'.$modp2p.'</TD>'; + else + echo '<TD colspan=3>'; + $p2pmetodos="seeder=seeder".chr(13); + $p2pmetodos.="leecher=leecher".chr(13); + $p2pmetodos.="peer=peer"; + echo HTMLCTESELECT($p2pmetodos,"modp2p","estilodesple","",$modp2p,100).'</TD>'; + ?> + </TR> +<!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> + +<!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> + <TR> + <TH align=center > P2P tiempo (seg) para semilla: </TD> + <? + if ($opcion==$op_eliminacion) + echo '<TD colspan=3>'.$timep2p.'</TD>'; + else + echo '<TD colspan=3><INPUT class="formulariodatos" name=timep2p style="width:100" type=text value='.$timep2p.'></TD>'; + ?> + </TR> +<!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> + + + + + + + <TR> <TH align=center ><?echo $TbMsg[22]?> </TD> <? if ($opcion==$op_eliminacion){ @@ -201,7 +256,15 @@ else if ($opcion==$op_eliminacion) echo '<TD colspan=3>'.$pormul.'</TD>'; else - echo '<TD colspan=3><INPUT class="formulariodatos" name=pormul style="width:100" type=text value='.$pormul.'></TD>'; + echo '<TD colspan=3>'; + $pormulmetodos="9000=9000".chr(13); + $pormulmetodos.="9002=9002".chr(13); + $pormulmetodos.="9004=9004".chr(13); + $pormulmetodos.="9006=9006".chr(13); + $pormulmetodos.="9010=9010".chr(13); + $pormulmetodos.="9012=9012".chr(13); + $pormulmetodos.="9014=9014"; + echo HTMLCTESELECT($pormulmetodos,"pormul","estilodesple","",$pormul,100).'</TD>'; ?> </TR> <!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> @@ -314,7 +377,12 @@ function TomaPropiedades($cmd,$ida) global $gidrepositorio; global $gidperfilhard; global $gcache; - +###################### ADV + global $router; + global $netmask; + global $modp2p; + global $timep2p; +###################### ADV global $modomul; global $ipmul; global $pormul; @@ -332,6 +400,12 @@ function TomaPropiedades($cmd,$ida) $horaresevini=0; $horaresevfin=0; $grupoid=0; +## ADV ######################################### + $router=0; + $netmask=0; + $modp2p=0; + $timep2p=0; +### ADV ######################################## $modomul=0; $ipmul=0; $pormul=0; @@ -349,6 +423,8 @@ function TomaPropiedades($cmd,$ida) $gidperfilhard=0; $gcache=0; + + $rs=new Recordset; $cmd->texto="SELECT count( * ) AS numordenadores, aulas.* , group_concat(DISTINCT cast( ordenadores.idmenu AS char( 11 ) ) @@ -387,6 +463,12 @@ function TomaPropiedades($cmd,$ida) $ipmul=$rs->campos["ipmul"]; $pormul=$rs->campos["pormul"]; $velmul=$rs->campos["velmul"]; +#################### ADV + $router=$rs->campos["router"]; + $netmask=$rs->campos["netmask"]; + $modp2p=$rs->campos["modp2p"]; + $timep2p=$rs->campos["timep2p"]; +###################### ADV $ordenadores=$rs->campos["numordenadores"]; $idmenu=$rs->campos["idmenus"]; diff --git a/admin/WebConsole/propiedades/propiedades_ordenadores.php b/admin/WebConsole/propiedades/propiedades_ordenadores.php index ab8c832d..1d3e7b41 100644 --- a/admin/WebConsole/propiedades/propiedades_ordenadores.php +++ b/admin/WebConsole/propiedades/propiedades_ordenadores.php @@ -14,6 +14,7 @@ include_once("../includes/constantes.php"); include_once("../includes/CreaComando.php"); include_once("../includes/TomaDato.php"); include_once("../includes/HTMLSELECT.php"); +include_once("../includes/HTMLCTESELECT.php"); include_once("../clases/AdoPhp.php"); include_once("../idiomas/php/".$idioma."/propiedades_ordenadores_".$idioma.".php"); //________________________________________________________________________________________________________ @@ -31,6 +32,10 @@ $idprocedimiento=0; $idaula=0; $cache=""; $grupoid=0; +######################## ADV +$netiface=""; +$netdriver=""; +########################### ADV if (isset($_GET["opcion"])) $opcion=$_GET["opcion"]; // Recoge parametros if (isset($_GET["idordenador"])) $idordenador=$_GET["idordenador"]; @@ -146,8 +151,32 @@ if ($opcion!=$op_alta){ else echo '<TD colspan=3><INPUT style="width=250" class="formulariodatos" name=cache type=text value="'. $cache.'"></TD>'; ?> - </TR> + </TR> <!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> +<!-----ADV --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> + <TR> + <TH align=center > P2P Modo: </TD> + <? + echo '<TD colspan=3>'; + $iface="eth0=eth0".chr(13); + $iface.="eth1=eth1".chr(13); + $iface.="eth2=eth2"; + echo HTMLCTESELECT($iface,"netiface","estilodesple","",$netiface,100).'</TD>'; + ?> + </TR> +<!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> + + <TR> + <TH align=center> > Driver de Red: </TD> + <? + echo '<TD colspan=3>'; + $driver="generic=generic"; + echo HTMLCTESELECT($driver,"netdriver","estilodesple","",$netdriver,100).'</TD>'; + ?> + </TR> + +<!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> + </TABLE> </FORM> </DIV> @@ -186,6 +215,8 @@ function TomaPropiedades($cmd,$id){ global $idmenu; global $idprocedimiento; global $cache; + global $netiface; + global $netdriver; $rs=new Recordset; $cmd->texto="SELECT * FROM ordenadores WHERE idordenador=".$id; $rs->Comando=&$cmd; @@ -200,6 +231,8 @@ function TomaPropiedades($cmd,$id){ $idmenu=$rs->campos["idmenu"]; $idprocedimiento=$rs->campos["idproautoexec"]; $cache=$rs->campos["cache"]; + $netiface=$rs->campos["netiface"]; + $netdriver=$rs->campos["netdriver"]; $rs->Cerrar(); return(true); } diff --git a/admin/WebConsole/varios/incorporaordenadores.php b/admin/WebConsole/varios/incorporaordenadores.php index 3e2ae333..a9ed0163 100644 --- a/admin/WebConsole/varios/incorporaordenadores.php +++ b/admin/WebConsole/varios/incorporaordenadores.php @@ -146,7 +146,8 @@ function Inserta($cmd,$idaula,$nombre,$lamac,$laip) return(true); } $idperfilhard=0; - $idrepositorio=0; +## ADV: modificacion para asignar a los ordenadores, cuando se crean desde "incorpoar ordenadores" el repositorio "default" + $idrepositorio=1; $idconfiguracion=0; $cmd->CreaParametro("@grupoid",$grupoid,1); $cmd->CreaParametro("@idaula",$idaula,1); |