summaryrefslogtreecommitdiffstats
path: root/admin/WebConsole
diff options
context:
space:
mode:
authoralonso <alonso@us.es>2010-06-30 13:55:00 +0000
committeralonso <alonso@us.es>2010-06-30 13:55:00 +0000
commite021aa874e093093ba67b1ca1877cac88590a088 (patch)
tree20f81db456faf3ecfe704753134fab666ea7b4ba /admin/WebConsole
parent81b43511317aad3531f28c8d3b204b9f62c9c32a (diff)
git-svn-id: https://opengnsys.es/svn/trunk@1074 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'admin/WebConsole')
-rw-r--r--admin/WebConsole/controlacceso.php2
-rw-r--r--admin/WebConsole/idiomas/php/esp/msgbrowser_esp.php1
-rw-r--r--admin/WebConsole/jscripts/aula.js174
-rw-r--r--admin/WebConsole/principal/aula.php64
-rwxr-xr-xadmin/WebConsole/principal/sondeo.php67
5 files changed, 242 insertions, 66 deletions
diff --git a/admin/WebConsole/controlacceso.php b/admin/WebConsole/controlacceso.php
index 3c4afed3..c37c61d6 100644
--- a/admin/WebConsole/controlacceso.php
+++ b/admin/WebConsole/controlacceso.php
@@ -11,8 +11,6 @@
//========================================================================================================
// Variables de sessión de configuración de servidor y base de datos( Modificar aquípara cambio global)
$cnx="localhost;usuog;passusuog;ogBDAdmin;mysql"; // Cadena de conexión a la base de datos
- $ips="SERVERIP"; // IP del servidor de Administración
- $prt="2008"; // Puerto de comunicación con el servidor
$wer="OPENGNSYSURL/pagerror.php"; // Página de redireccionamiento de errores
$wac="OPENGNSYSURL/acceso.php"; // Página de login de la aplicación
$idi="esp"; // Idioma por defecto
diff --git a/admin/WebConsole/idiomas/php/esp/msgbrowser_esp.php b/admin/WebConsole/idiomas/php/esp/msgbrowser_esp.php
index 1d1b866d..64c122e0 100644
--- a/admin/WebConsole/idiomas/php/esp/msgbrowser_esp.php
+++ b/admin/WebConsole/idiomas/php/esp/msgbrowser_esp.php
@@ -30,6 +30,7 @@ $TbMsg=array();
$TbMsg[20]='ATENCIÓN, ha habido algún error en el proceso de Inventario Software';
$TbMsg[21]='El proceso de jecuación del script bash ha terminado correctamente';
$TbMsg[22]='ATENCIÓN, ha habido algún error en el proceso de ejecución del script bash';
+ $TbMsg[23]='Sondeando, por favor espere...';
?>
diff --git a/admin/WebConsole/jscripts/aula.js b/admin/WebConsole/jscripts/aula.js
index 201c4db6..546fb0ea 100644
--- a/admin/WebConsole/jscripts/aula.js
+++ b/admin/WebConsole/jscripts/aula.js
@@ -7,12 +7,173 @@
// Descripción :
// Este fichero implementa las funciones javascript del fichero aulas.php
// *************************************************************************************************************************************************
-var litambito="";
-var idambito="";
-var nombreambito="";
-var currentObj=null;
-var wpadre=window.parent; // Toma frame padre
-var farbol=wpadre.frames["frame_arbol"];
+//________________________________________________________________________________________________________
+
+var cadenaip;
+//________________________________________________________________________________________________________
+
+ function NodoAux(){
+ this.idambito=0;
+ this.ambito=0;
+ this.litambito=null;
+ this.nombreambito=null;
+
+ this.toma_identificador= function(){
+ return(idambito);
+ }
+ this.toma_sufijo= function(){
+ return(litambito);
+ }
+ this.toma_infonodo= function(){
+ return(nombreambito);
+ }
+ // Fin de la clase
+}
+currentNodo=new NodoAux();
+//________________________________________________________________________________________________________
+function nwmenucontextual(o,idmnctx){
+ var menuctx=document.getElementById(idmnctx); // Toma objeto DIV
+ muestra_contextual(ClickX,ClickY,menuctx) // muestra menu
+ Toma_Datos(o);
+}
+//________________________________________________________________________________________________________
+//
+// Toma datos
+//________________________________________________________________________________________________________
+function Toma_Datos(o){
+ var identificador=o.getAttribute("nod");
+ litambito=identificador.split("-")[0];
+ idambito=identificador.split("-")[1];
+ nombreambito=o.getAttribute("value");
+ currentNodo.idambito=idambito;
+ currentNodo.litambito=litambito;
+ currentNodo.nombreambito=nombreambito;
+}
+//________________________________________________________________________________________________________
+function wactualizar_ordenadores(o){
+ Toma_Datos(o);
+ actualizar_ordenadores();
+}
+//________________________________________________________________________________________________________
+//
+// Refresca la visualizaci� del estado de los ordenadores(Clientes rembo y clientes Windows o Linux)
+//________________________________________________________________________________________________________
+function Sondeo(ipes){
+ cadenaip=ipes;
+ reset_contextual(-1,-1) // Oculta menu contextual
+ var wurl="../principal/sondeo.php";
+ var prm="cadenaip="+cadenaip+"&sw=1"; // La primera vez se manda sondeo a los clientes
+ CallPage(wurl,prm,"retornoSondeo","POST");
+ setTimeout("respuestaSondeo();",100);
+}
+//______________________________________________________________________________________________________
+function retornoSondeo(resul){
+ /*
+ if(resul==1)
+ alert(TbMsg[11]);
+ else
+ alert(TbMsg[12]);
+*/
+}
+//________________________________________________________________________________________________________
+function respuestaSondeo(){
+ var wurl="../principal/sondeo.php";
+ var prm="cadenaip="+cadenaip+"&sw=2"; // La primera vez se manda sondeo a los clientes
+ CallPage(wurl,prm,"retornorespuestaSondeo","POST");
+ setTimeout("respuestaSondeo();",5000);
+}
+//______________________________________________________________________________________________________
+function retornorespuestaSondeo(resul){
+ if(resul.length>0){
+ var ip=""; // Dirección IP del ordenador
+ var so=""; // Sistema operativo activo
+ var objOrd=null; // Objeto ordenador
+ var imgOrd="";
+ var cadena=resul.split(";"); // Trocea la cadena devuelta por el servidor de adminsitración
+ for (var i=0;i<cadena.length;i++){
+ var dual=cadena[i].split("/");
+ ip=dual[0];
+ so=dual[1];
+ objOrd=document.getElementById(ip);
+ tbobjOrd=getElementsByAttribute(document.body, "img","ip",ip);
+ if(tbobjOrd.length>0){ // Si existe el objeto
+ objOrd=tbobjOrd[0];
+ imgOrd=soIMG(so); // Toma url de la imagen según su s.o.
+ if(objOrd.sondeo!=so){ // Si es distinto al que tiene ...se cambia la imagen
+ objOrd.src="../images/"+imgOrd;
+ objOrd.sondeo=imgOrd;
+ }
+ }
+ }
+ }
+}
+//______________________________________________________________________________________________________
+function soIMG(so)
+{
+ var MimgOrdenador="";
+ switch(so){
+ case 'INI':
+ MimgOrdenador="ordenador_INI.gif"; // Cliente ocupado
+ break;
+ case 'BSY':
+ MimgOrdenador="ordenador_BSY.gif"; // Cliente ocupado
+ break;
+ case 'OPG':
+ MimgOrdenador="ordenador_RMB.gif"; // Cliente Rembo
+ break;
+ case 'RMB':
+ MimgOrdenador="ordenador_RMB.gif"; // Cliente Rembo
+ break;
+ case 'WS2':
+ MimgOrdenador="ordenador_WS2.gif"; // Windows Server 2003
+ break;
+ case 'W2K':
+ MimgOrdenador="ordenador_W2K.gif"; // Windows 2000
+ break;
+ case 'WXP':
+ MimgOrdenador="ordenador_WXP.gif"; // Windows XP
+ break;
+ case 'WNT':
+ MimgOrdenador="ordenador_WNT.gif"; // Windows NT
+ break;
+ case 'W95':
+ MimgOrdenador="ordenador_W95.gif"; // Windows 95
+ break;
+ case 'W98':
+ MimgOrdenador="ordenador_W98.gif"; // Windows 98
+ break;
+ case 'WML':
+ MimgOrdenador="ordenador_WML.gif"; // Windows Millenium
+ break;
+ case 'LNX':
+ MimgOrdenador="ordenador_LNX.gif"; // Linux
+ default:
+ MimgOrdenador="ordenador_OFF.gif"; // Linux
+ break;
+ }
+ return(MimgOrdenador);
+}
+//______________________________________________________________________________________________________
+// Copyright Robert Nyman, http://www.robertnyman.com
+// Free to use if this text is included
+//______________________________________________________________________________________________________
+function getElementsByAttribute(oElm, strTagName, strAttributeName, strAttributeValue){
+ var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
+ var arrReturnElements = new Array();
+ var oAttributeValue = (typeof strAttributeValue != "undefined")? new RegExp("(^|\\s)" + strAttributeValue + "(\\s|$)") : null;
+ var oCurrent;
+ var oAttribute;
+ for(var i=0; i<arrElements.length; i++){
+ oCurrent = arrElements[i];
+ oAttribute = oCurrent.getAttribute && oCurrent.getAttribute(strAttributeName);
+ if(typeof oAttribute == "string" && oAttribute.length > 0){
+ if(typeof strAttributeValue == "undefined" || (oAttributeValue && oAttributeValue.test(oAttribute))){
+ arrReturnElements.push(oCurrent);
+ }
+ }
+ }
+ return arrReturnElements;
+}
//________________________________________________________________________________________________________
//
// Muestra el formulario de captura de datos para modificación
@@ -229,4 +390,5 @@ function incorporarordenador(){
var whref="../varios/incorporaordenadores.php?idaula="+idambito+"&nombreaula="+nombreambito
window.open(whref,"frame_contenidos")
}
+
diff --git a/admin/WebConsole/principal/aula.php b/admin/WebConsole/principal/aula.php
index b3103f4a..72a2a5f0 100644
--- a/admin/WebConsole/principal/aula.php
+++ b/admin/WebConsole/principal/aula.php
@@ -56,6 +56,7 @@ if (!$cmd)
<SCRIPT language="javascript" src="../jscripts/aula.js"></SCRIPT>
<SCRIPT language="javascript" src="../jscripts/opciones.js"></SCRIPT>
<SCRIPT language="javascript" src="../jscripts/constantes.js"></SCRIPT>
+<SCRIPT language="javascript" src="../clases/jscripts/HttpLib.js"></SCRIPT>
<? echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/comunes_'.$idioma.'.js"></SCRIPT>'?>
<? echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/aulas_'.$idioma.'.js"></SCRIPT>'?>
<BODY OnContextMenu="return false">
@@ -102,6 +103,9 @@ echo $flotante->CreaMenuContextual($XMLcontextual);
include_once("../includes/iframecomun.php");
//________________________________________________________________________________________________________
?>
+<SCRIPT language="javascript">
+ Sondeo('<?php echo $cadenaip?>');
+</SCRIPT>
</BODY>
</HTML>
<?
@@ -231,75 +235,19 @@ function pintaordenadores(){
global $servidorhidra,$hidraport;
global $TbMsg;
- $shidra=new SockHidra($servidorhidra,$hidraport);
- $parametros="1"; // Ejecutor
- $parametros.="nfn=Sondeo".chr(13);
- $parametros.="iph=".$cadenaip.chr(13);
-
- $resul=$shidra->conectar(); // Se ha establecido la conexióncon el servidor hidra
- if($resul){
- $resul=$shidra->envia_comando($parametros);
- $trama=$shidra->recibe_respuesta();
- $parametros=substr($trama,$LONCABECERA,strlen($trama)-$LONCABECERA);
- $ValorParametros=extrae_parametros($parametros,chr(13),'=');
- $trama_notificacion=$ValorParametros["tso"];
- $shidra->desconectar();
- }
- for($i=0;$i<$k;$i++){ // Vuelve a recorrer los datos de ordenadores para crear HTML
- $patron=$Mip[$i].'/';
- $pos=EnCadena($trama_notificacion,$patron);
- if($pos>-1){
- $tiposo=substr($trama_notificacion,$pos+strlen($patron),3);
- switch($tiposo){
- case 'INI':
- $MimgOrdenador[$i]="ordenador_INI.gif"; // Cliente ocupado
- break;
- case 'BSY':
- $MimgOrdenador[$i]="ordenador_BSY.gif"; // Cliente ocupado
- break;
- case 'RMB':
- $MimgOrdenador[$i]="ordenador_RMB.gif"; // Cliente Rembo
- break;
- case 'WS2':
- $MimgOrdenador[$i]="ordenador_WS2.gif"; // Windows Server 2003
- break;
- case 'W2K':
- $MimgOrdenador[$i]="ordenador_W2K.gif"; // Windows 2000
- break;
- case 'WXP':
- $MimgOrdenador[$i]="ordenador_WXP.gif"; // Windows XP
- break;
- case 'WNT':
- $MimgOrdenador[$i]="ordenador_WNT.gif"; // Windows NT
- break;
- case 'W95':
- $MimgOrdenador[$i]="ordenador_W95.gif"; // Windows 95
- break;
- case 'W98':
- $MimgOrdenador[$i]="ordenador_W98.gif"; // Windows 98
- break;
- case 'WML':
- $MimgOrdenador[$i]="ordenador_WML.gif"; // Windows Millenium
- break;
- case 'LNX':
- $MimgOrdenador[$i]="ordenador_LNX.gif"; // Linux
- break;
- }
- }
- }
$ntr=0; // Numero de ordenadores por fila
if ($nombreaula!=""){
echo '<DIV>';
echo '<p align=center class=cabeceras><A href="#"><img border=0 id="'.$LITAMBITO_AULAS.'-'.$idaula.'" value="'.$nombreaula.'" src="../images/iconos/aula.gif" onclick="veraulas(this);" oncontextmenu="menucontextual(this,' ."'flo_".$LITAMBITO_AULAS."'" .')" ></A>&nbsp;&nbsp;'.$TbMsg[23].'</br><span id="'.$LITAMBITO_AULAS.'-'.$idaula.'" class=subcabeceras>'.$nombreaula.'</span></p>';
}
- echo '<TABLE style="BORDER-BOTTOM: #d4d0c8 1px solid;BORDER-LEFT: #d4d0c8 1px solid;BORDER-RIGHT: #d4d0c8 1px solid;BORDER-TOP: #d4d0c8 1px solid" align=center><TR>';
+echo '<TABLE style="BORDER-BOTTOM: #d4d0c8 1px solid;BORDER-LEFT: #d4d0c8 1px solid;BORDER-RIGHT: #d4d0c8 1px solid;BORDER-TOP: #d4d0c8 1px solid" align=center><TR>';
for($i=0;$i<$k;$i++){ // Vuelve a recorrer los datos de ordenadores para crear HTML
$ntr++;
echo '<TD>';
echo '<table border=0>';
echo '<tr>';
echo ' <td align=center width=70 height=40>';
- echo ' <a href="#"><img id="'.$LITAMBITO_ORDENADORES.'-'.$Midordenador[$i].'" border=0 value="'.$Mnombreordenador[$i].'" src="../images/'.$MimgOrdenador[$i].'" oncontextmenu="menucontextual(this,'."'flo_".$LITAMBITO_ORDENADORES."'" .')" width="32" height="32"></A>';
+ echo ' <a href="#"><img sondeo="" ip="'.$Mip[$i].'" id="'.$LITAMBITO_ORDENADORES.'-'.$Midordenador[$i].'" border=0 value="'.$Mnombreordenador[$i].'" src="../images/'.$MimgOrdenador[$i].'" oncontextmenu="menucontextual(this,'."'flo_".$LITAMBITO_ORDENADORES."'" .')" width="32" height="32"></A>';
echo ' </td>';
echo '</tr>';
echo '<tr>';
diff --git a/admin/WebConsole/principal/sondeo.php b/admin/WebConsole/principal/sondeo.php
new file mode 100755
index 00000000..8eb5dc70
--- /dev/null
+++ b/admin/WebConsole/principal/sondeo.php
@@ -0,0 +1,67 @@
+<?
+// *************************************************************************************************************************************************
+// Aplicación WEB: ogAdmWebCon
+// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
+// Fecha Creación: Año 2003-2004
+// Fecha Última modificación: Febrero-2005
+// Nombre del fichero: sondeo.php
+// Descripción :
+// Consulta el estado de los ordenadores
+// *************************************************************************************************************************************************
+ include_once("../includes/ctrlacc.php");
+ include_once("../clases/SockHidra.php");
+ include_once("../clases/AdoPhp.php");
+ include_once("../includes/constantes.php");
+ include_once("../includes/comunes.php");
+ include_once("../includes/CreaComando.php");
+ //________________________________________________________________________________________________________
+ $cadenaip=0;
+ $sw=0; // Swich para conmutar entre sondeo a clientes o sólo consulta a la tabla de sockets
+
+ if (isset($_POST["cadenaip"])) $cadenaip=$_POST["cadenaip"];
+ if (isset($_POST["sw"])) $sw=$_POST["sw"];
+ //________________________________________________________________________________________________________
+ $cmd=CreaComando($cadenaconexion);
+ if (!$cmd)
+ Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D.
+ //________________________________________________________________________________________________________
+ switch($sw){
+ case 1:
+ $funcion="Sondeo"; // Nombre de la función que procesa la petición
+ $atributos="sws=S";
+ break;
+ case 2:
+ $funcion="Sondeo"; // Nombre de la función que procesa la petición
+ $atributos="sws=T";
+ }
+ $aplicacion=""; // Ámbito de aplicación (cadena de ipes separadas por ";" y de identificadores de ordenadores por ","
+ $acciones=""; // Cadena de identificadores de acciones separadas por ";" para seguimiento
+ //________________________________________________________________________________________________________
+ // Ámbito de aplicación de la petición
+ //________________________________________________________________________________________________________
+ $aplicacion="iph=".$cadenaip.chr(13);
+ //________________________________________________________________________________________________________
+ // Envio al servidor de la petición
+ //________________________________________________________________________________________________________
+ $resul=false;
+ $trama="";
+
+ $parametros="1"; // Ejecutor
+ $parametros.="nfn=".$funcion.chr(13);
+ $parametros.=$atributos.chr(13);
+ $parametros.=$acciones.chr(13);
+ $parametros.=$aplicacion.chr(13);
+
+ //die($parametros);
+
+ $shidra=new SockHidra($servidorhidra,$hidraport);
+ if ($shidra->conectar()){ // Se ha establecido la conexión con el servidor hidra
+ $resul=$shidra->envia_comando($parametros);
+ $trama=$shidra->recibe_respuesta();
+ $parametros=substr($trama,$LONCABECERA,strlen($trama)-$LONCABECERA);
+ $ValorParametros=extrae_parametros($parametros,chr(13),'=');
+ $trama_notificacion=$ValorParametros["tso"];
+ $shidra->desconectar();
+ echo $trama_notificacion; // Devuelve respuesta
+ }
+?>