summaryrefslogtreecommitdiffstats
path: root/admin/WebConsole
diff options
context:
space:
mode:
authorramon <ramongomez@us.es>2012-11-06 12:56:20 +0000
committerramon <ramongomez@us.es>2012-11-06 12:56:20 +0000
commitdf440ce7a78ba6bbe51008980d39c105147d2f56 (patch)
treeaae2557ef7fb8366a5af94cf1959f7a87abef3bd /admin/WebConsole
parente79394ebd9a818eaee87169576c821451ff81206 (diff)
Versión 1.0.5, #453: Integrar código del ticket:453, autenticación para acceso a clientes.
git-svn-id: https://opengnsys.es/svn/branches/version1.0@3397 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'admin/WebConsole')
-rw-r--r--admin/WebConsole/gestores/gestor_aulas.php48
-rw-r--r--admin/WebConsole/gestores/gestor_ordenadores.php29
-rw-r--r--admin/WebConsole/idiomas/php/esp/propiedades_aulas_esp.php5
-rw-r--r--admin/WebConsole/idiomas/php/esp/propiedades_ordenadores_esp.php5
-rw-r--r--admin/WebConsole/includes/ConfiguracionesParticiones.php2
-rw-r--r--admin/WebConsole/propiedades/propiedades_aulas.php83
-rw-r--r--admin/WebConsole/propiedades/propiedades_ordenadores.php46
-rw-r--r--admin/WebConsole/validacion/access_controller.php93
-rw-r--r--admin/WebConsole/validacion/functions.php175
-rw-r--r--admin/WebConsole/validacion/html/close.php5
-rw-r--r--admin/WebConsole/validacion/html/images/opengnsys.pngbin0 -> 7003 bytes
-rw-r--r--admin/WebConsole/validacion/html/login_prueba.php102
-rw-r--r--admin/WebConsole/validacion/html/validacion_ldap.php75
-rw-r--r--admin/WebConsole/validacion/html/validacion_prueba.php24
-rw-r--r--admin/WebConsole/validacion/html/validacion_template.php20
-rw-r--r--admin/WebConsole/varios/menucliente.php315
16 files changed, 771 insertions, 256 deletions
diff --git a/admin/WebConsole/gestores/gestor_aulas.php b/admin/WebConsole/gestores/gestor_aulas.php
index a2630809..29dd0ac0 100644
--- a/admin/WebConsole/gestores/gestor_aulas.php
+++ b/admin/WebConsole/gestores/gestor_aulas.php
@@ -1,4 +1,4 @@
-<?
+<?php
// *************************************************************************************************************************************************
// Aplicación WEB: ogAdmWebCon
// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
@@ -47,15 +47,19 @@ $netmask=0;
$modp2p=0;
$timep2p=0;
############ ADV
+############ UHU
+$validacion="";
+$paginalogin="";
+$paginavalidacion="";
+############ UHU
//##agp
-if($_FILES['archivo']['type']=="image/gif" || $_FILES['archivo']['type']=="image/jpeg" || $_FILES['archivo']['type']=="image/jpg" || $_FILES['archivo']['type']=="image/png" || $_FILES['archivo']['type']=="image/JPG")
-{
- $uploaddir ="../images/fotos/";
-
- $uploadfile = $uploaddir.$_FILES['archivo']['name'];
-
-move_uploaded_file($_FILES['archivo']['tmp_name'], $uploadfile);
-#copy($_FILES['archivo']['tmp_name'], $uploadfile);
+if (isset($_FILES['archivo'])) {
+ if($_FILES['archivo']['type']=="image/gif" || $_FILES['archivo']['type']=="image/jpeg" || $_FILES['archivo']['type']=="image/jpg" || $_FILES['archivo']['type']=="image/png" || $_FILES['archivo']['type']=="image/JPG") {
+ $uploaddir ="../images/fotos/";
+ $uploadfile = $uploaddir.$_FILES['archivo']['name'];
+ move_uploaded_file($_FILES['archivo']['tmp_name'], $uploadfile);
+ #copy($_FILES['archivo']['tmp_name'], $uploadfile);
+ }
}
//##agp
if (isset($_POST["opcion"])) $opcion=$_POST["opcion"]; // Recoge parametros
@@ -88,6 +92,11 @@ if (isset($_POST["netmask"])) $netmask=$_POST["netmask"];
if (isset($_POST["modp2p"])) $modp2p=$_POST["modp2p"];
if (isset($_POST["timep2p"])) $timep2p=$_POST["timep2p"];
################# ADV
+################# UHU
+if (isset($_POST["validacion"])) $validacion=$_POST["validacion"];
+if (isset($_POST["paginalogin"])) $paginalogin=$_POST["paginalogin"];
+if (isset($_POST["paginavalidacion"])) $paginavalidacion=$_POST["paginavalidacion"];
+################# UHU
$gidmenu=0;
$gidproautoexec=0;
@@ -194,6 +203,11 @@ function Gestiona(){
global $modp2p;
global $timep2p;
########################## ADV
+########################## UHU
+ global $validacion;
+ global $paginalogin;
+ global $paginavalidacion;
+########################## UHU
global $op_alta;
global $op_modificacion;
@@ -230,13 +244,18 @@ function Gestiona(){
$cmd->CreaParametro("@modp2p",$modp2p,0);
$cmd->CreaParametro("@timep2p",$timep2p,1);
############### ADV
+############### UHU
+ $cmd->CreaParametro("@validacion",$validacion,1);
+ $cmd->CreaParametro("@paginalogin",$paginalogin,0);
+ $cmd->CreaParametro("@paginavalidacion",$paginavalidacion,0);
+############### UHU
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,router,netmask,modp2p,timep2p)
+ puestos,horaresevini,horaresevfin,modomul,ipmul,pormul,velmul,router,netmask,modp2p,timep2p,validacion,paginalogin,paginavalidacion)
VALUES (@idcentro,@grupoid,@nombreaula,@urlfoto,@cagnon,@pizarra,@ubicacion,@comentarios,
- @puestos,@horaresevini,@horaresevfin,@modomul,@ipmul,@pormul,@velmul,@router,@netmask,@modp2p,@timep2p)";
+ @puestos,@horaresevini,@horaresevfin,@modomul,@ipmul,@pormul,@velmul,@router,@netmask,@modp2p,@timep2p,@validacion,@paginalogin,@paginavalidacion)";
$resul=$cmd->Ejecutar();
if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta
$idaula=$cmd->Autonumerico();
@@ -250,7 +269,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,router=@router,netmask=@netmask,modp2p=@modp2p,timep2p=@timep2p WHERE idaula=@idaula";
+ horaresevfin=@horaresevfin,modomul=@modomul,ipmul=@ipmul,pormul=@pormul,velmul=@velmul,router=@router,netmask=@netmask,modp2p=@modp2p,timep2p=@timep2p,validacion=@validacion,paginalogin=@paginalogin,paginavalidacion=@paginavalidacion WHERE idaula=@idaula";
$resul=$cmd->Ejecutar();
//echo $cmd->texto;
if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta
@@ -265,6 +284,11 @@ function Gestiona(){
$clsUpdate.="idperfilhard=@idperfilhard,";
if($cache!=0 || $gcache>0)
$clsUpdate.="cache=@cache,";
+ // UHU - Actualiza la validacion en los ordenadores
+ $clsUpdate .="validacion=@validacion,";
+ $clsUpdate .="paginalogin=@paginalogin,";
+ $clsUpdate .="paginavalidacion=@paginavalidacion,";
+
if(!empty($clsUpdate)){
$clsUpdate=substr($clsUpdate,0,strlen($clsUpdate)-1); // Quita última coma
diff --git a/admin/WebConsole/gestores/gestor_ordenadores.php b/admin/WebConsole/gestores/gestor_ordenadores.php
index 3d754106..50971e56 100644
--- a/admin/WebConsole/gestores/gestor_ordenadores.php
+++ b/admin/WebConsole/gestores/gestor_ordenadores.php
@@ -36,6 +36,12 @@ $cache=0;
$netiface="";
$netdriver="";
### ADV
+### UHU
+$validacion="";
+$paginalogin="";
+$paginavalidacion="";
+### UHU
+
//##agp
if (isset($_FILES['archivo'])) {
if($_FILES['archivo']['type']=="image/gif" || $_FILES['archivo']['type']=="image/jpeg" || $_FILES['archivo']['type']=="image/jpg" || $_FILES['archivo']['type']=="image/png" || $_FILES['archivo']['type']=="image/JPG") {
@@ -64,6 +70,11 @@ if(empty($cache)) $cache=0;
if (isset($_POST["netiface"])) $netiface=$_POST["netiface"];
if (isset($_POST["netdriver"])) $netdriver=$_POST["netdriver"];
+######## UHU
+if (isset($_POST["validacion"])) $validacion=$_POST["validacion"];
+if (isset($_POST["paginalogin"])) $paginalogin=$_POST["paginalogin"];
+if (isset($_POST["paginavalidacion"])) $paginavalidacion=$_POST["paginavalidacion"];
+######## UHU
$tablanodo=""; // Arbol para nodos insertados
//________________________________________________________________________________________________________
@@ -158,6 +169,11 @@ function Gestiona(){
global $cache;
global $netiface;
global $netdriver;
+######################## UHU
+ global $validacion;
+ global $paginalogin;
+ global $paginavalidacion;
+######################## UHU
global $op_alta;
global $op_modificacion;
@@ -180,14 +196,19 @@ function Gestiona(){
$cmd->CreaParametro("@netiface",$netiface,0);
$cmd->CreaParametro("@netdriver",$netdriver,0);
$cmd->CreaParametro("@fotoordenador",$fotoordenador,0);
-
+######################################################### UHU
+ $cmd->CreaParametro("@validacion",$validacion,0);
+ $cmd->CreaParametro("@paginalogin",$paginalogin,0);
+ $cmd->CreaParametro("@paginavalidacion",$paginavalidacion,0);
+######################################################### UHU
+
switch($opcion){
case $op_alta :
//Insertar fotoord con Values @fotoordenador
$cmd->texto="INSERT INTO ordenadores(nombreordenador,ip,mac,idperfilhard,idrepositorio,
- idmenu,idproautoexec,idaula,grupoid,cache,netiface,netdriver,fotoord) VALUES (@nombreordenador,@ip,@mac,@idperfilhard,@idrepositorio,
- @idmenu,@idprocedimiento,@idaula,@grupoid,@cache,@netiface,@netdriver,@fotoordenador)";
+ idmenu,idproautoexec,idaula,grupoid,cache,netiface,netdriver,fotoord,validacion,paginalogin,paginavalidacion) VALUES (@nombreordenador,@ip,@mac,@idperfilhard,@idrepositorio,
+ @idmenu,@idprocedimiento,@idaula,@grupoid,@cache,@netiface,@netdriver,@fotoordenador,@validacion,@paginalogin,@paginavalidacion)";
$resul=$cmd->Ejecutar();
//echo $cmd->texto;
@@ -202,7 +223,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,netiface=@netiface,netdriver=@netdriver,fotoord=@fotoordenador
+ idrepositorio=@idrepositorio,idmenu=@idmenu,idproautoexec=@idprocedimiento,cache=@cache,netiface=@netiface,netdriver=@netdriver,fotoord=@fotoordenador,validacion=@validacion,paginalogin=@paginalogin,paginavalidacion=@paginavalidacion
WHERE idordenador=@idordenador";
$resul=$cmd->Ejecutar();
//echo $cmd->texto;
diff --git a/admin/WebConsole/idiomas/php/esp/propiedades_aulas_esp.php b/admin/WebConsole/idiomas/php/esp/propiedades_aulas_esp.php
index 8327b7bc..c2fc3ab0 100644
--- a/admin/WebConsole/idiomas/php/esp/propiedades_aulas_esp.php
+++ b/admin/WebConsole/idiomas/php/esp/propiedades_aulas_esp.php
@@ -35,6 +35,11 @@ $TbMsg[26]="Modo P2P -semillero durante la descarga-";
$TbMsg[27]="Tiempo P2P -semillero despu&eacute;s de descarga-";
$TbMsg[28]="Direcci&oacute;n gateway del aula";
$TbMsg[29]="M&aacute;scara de red del aula";
+// UHU
+$TbMsg[30]="Validaci&oacute;n";
+$TbMsg[31]="P&aacute;gina login";
+$TbMsg[32]="P&aacute;gina validaci&oacute;n";
+// UHU
$TbMsg[495]="Contenido cach&eacute;";
$TbMsg[509]="Foto ordenador";
$TbMsg[5091]="Insertar foto";
diff --git a/admin/WebConsole/idiomas/php/esp/propiedades_ordenadores_esp.php b/admin/WebConsole/idiomas/php/esp/propiedades_ordenadores_esp.php
index 5f7d68df..90bcc4d0 100644
--- a/admin/WebConsole/idiomas/php/esp/propiedades_ordenadores_esp.php
+++ b/admin/WebConsole/idiomas/php/esp/propiedades_ordenadores_esp.php
@@ -20,6 +20,11 @@ $TbMsg[11]="Men&uacute;";
$TbMsg[12]="Tama&ntilde;o cach&eacute; (KB)";
$TbMsg[13]="Interfaz de red";
$TbMsg[14]="Driver de red";
+// UHU
+$TbMsg[15]="Validación";
+$TbMsg[16]="Pagina login";
+$TbMsg[17]="Pagina validación";
+// UHU
$TbMsg[509]="Foto ordenador";
$TbMsg[5091]="Insertar foto";
$TbMsg[5092]="Ver fotos";
diff --git a/admin/WebConsole/includes/ConfiguracionesParticiones.php b/admin/WebConsole/includes/ConfiguracionesParticiones.php
index 84303b37..16633f88 100644
--- a/admin/WebConsole/includes/ConfiguracionesParticiones.php
+++ b/admin/WebConsole/includes/ConfiguracionesParticiones.php
@@ -145,7 +145,7 @@ function cargaCaves($cmd,$idambito,$ambito,$sws,$swr)
$tbKeys[$idx]["repositorio"]=$rs->campos["repositorio"];
$tbKeys[$idx]["idperfilsoft"]=$rs->campos["idperfilsoft"];
$tbKeys[$idx]["perfilsoft"]=$rs->campos["perfilsoft"];
- $tbKeys[$idx]["cache"]=$rs->campos["cache"];
+ //$tbKeys[$idx]["cache"]=$rs->campos["cache"];
$idx++;
$rs->Siguiente();
}
diff --git a/admin/WebConsole/propiedades/propiedades_aulas.php b/admin/WebConsole/propiedades/propiedades_aulas.php
index 3d755f71..8d68b2e4 100644
--- a/admin/WebConsole/propiedades/propiedades_aulas.php
+++ b/admin/WebConsole/propiedades/propiedades_aulas.php
@@ -377,6 +377,44 @@ function abrir_ventana(URL){
?>
</TR>
<!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
+<!--------------------------------------------------------------UHU comprobar si se requiere validacion ------------------------------------------------------------------------>
+
+ <TR>
+ <TH align=center>&nbsp;<?echo $TbMsg[30]?>&nbsp;</TD>
+ <?
+ if ($opcion==$op_eliminacion)
+ echo '<TD colspan=3>'.(($validacion == 1)?"Si":"No").'</TD>';
+ else{
+ echo '<TD colspan=3>';
+ $validaciones="1=Si".chr(13);
+ $validaciones.="0=No";
+ echo HTMLCTESELECT($validaciones,"validacion","estilodesple","",$validacion,100).'</TD>';
+ }
+
+ ?>
+ </TR>
+ <TR>
+ <TH align=center>&nbsp;<?echo $TbMsg[31]?>&nbsp;</TD>
+ <?
+ if ($opcion==$op_eliminacion)
+ echo '<TD colspan=3>'.$paginalogin.'</TD>';
+ else
+ echo '<TD colspan=3><INPUT class="formulariodatos" name=paginalogin type=text value="'.$paginalogin.'"></TD>';
+ ?>
+ </TR>
+ <TR>
+ <TH align=center>&nbsp;<?echo $TbMsg[32]?>&nbsp;</TD>
+ <?
+ if ($opcion==$op_eliminacion)
+ echo '<TD colspan=3>'.$paginavalidacion.'</TD>';
+ else
+ echo '<TD colspan=3><INPUT class="formulariodatos" name=paginavalidacion type=text value="'.$paginavalidacion.'"></TD>';
+ ?>
+ </TR>
+
+
+<!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
+
</TABLE>
</FORM>
</DIV>
@@ -409,8 +447,6 @@ function TomaPropiedades($cmd,$ida)
global $horaresevfin;
global $grupoid;
-
-
global $idmenu;
global $idprocedimiento;
global $idrepositorio;
@@ -432,6 +468,11 @@ function TomaPropiedades($cmd,$ida)
global $ipmul;
global $pormul;
global $velmul;
+###################### UHU
+ global $validacion;
+ global $paginalogin;
+ global $paginavalidacion;
+###################### UHU
$idaula=0;
$nombreaula="";
@@ -448,14 +489,16 @@ function TomaPropiedades($cmd,$ida)
## ADV #########################################
$router=0;
$netmask=0;
- $modp2p=0;
+ $modp2p=0;
$timep2p=0;
### ADV ########################################
$modomul=0;
$ipmul=0;
$pormul=0;
$velmul=0;
-
+### UHU ########################################
+ $validacion="";
+
$idmenu=0;
$idprocedimiento=0;
$idrepositorio=0;
@@ -468,26 +511,22 @@ function TomaPropiedades($cmd,$ida)
$gidperfilhard=0;
$gcache=0;
-
-
$rs=new Recordset;
- $cmd->texto="SELECT COUNT(ordenadores.idordenador) AS numordenadores, aulas.* ,
- group_concat(DISTINCT cast( ordenadores.idmenu AS char( 11 ) )
+ $cmd->texto="SELECT COUNT(ordenadores.idordenador) AS numordenadores, aulas.* ,
+ GROUP_CONCAT(DISTINCT CAST( ordenadores.idmenu AS char( 11 ) )
ORDER BY ordenadores.idmenu SEPARATOR ',' ) AS idmenus,
- group_concat(DISTINCT cast( ordenadores.idrepositorio AS char( 11 ) )
+ GROUP_CONCAT(DISTINCT CAST( ordenadores.idrepositorio AS char( 11 ) )
ORDER BY ordenadores.idrepositorio SEPARATOR ',' ) AS idrepositorios,
- group_concat(DISTINCT cast( ordenadores.idperfilhard AS char( 11 ) )
+ GROUP_CONCAT(DISTINCT CAST( ordenadores.idperfilhard AS char( 11 ) )
ORDER BY ordenadores.idperfilhard SEPARATOR ',' ) AS idperfileshard,
- group_concat(DISTINCT cast( ordenadores.cache AS char( 11 ) )
+ GROUP_CONCAT(DISTINCT CAST( ordenadores.cache AS char( 11 ) )
ORDER BY ordenadores.cache SEPARATOR ',' ) AS caches,
- group_concat(DISTINCT cast( ordenadores.idproautoexec AS char( 11 ) )
- ORDER BY ordenadores.idproautoexec SEPARATOR ',' ) AS idprocedimientos
- FROM aulas
- LEFT OUTER JOIN ordenadores ON ordenadores.idaula = aulas.idaula
- WHERE aulas.idaula =".$ida."
- GROUP BY aulas.idaula";
-
- // echo $cmd->texto;
+ GROUP_CONCAT(DISTINCT CAST( ordenadores.idproautoexec AS char( 11 ) )
+ ORDER BY ordenadores.idproautoexec SEPARATOR ',' ) AS idprocedimientos
+ FROM aulas
+ LEFT OUTER JOIN ordenadores ON ordenadores.idaula = aulas.idaula
+ WHERE aulas.idaula =".$ida."
+ GROUP BY aulas.idaula";
$rs->Comando=&$cmd;
if (!$rs->Abrir()) return(false); // Error al abrir recordset
@@ -514,6 +553,11 @@ function TomaPropiedades($cmd,$ida)
$modp2p=$rs->campos["modp2p"];
$timep2p=$rs->campos["timep2p"];
###################### ADV
+###################### UHU
+ $validacion=$rs->campos["validacion"];
+ $paginalogin=$rs->campos["paginalogin"];
+ $paginavalidacion=$rs->campos["paginavalidacion"];
+###################### UHU
$ordenadores=$rs->campos["numordenadores"];
$idmenu=$rs->campos["idmenus"];
@@ -542,3 +586,4 @@ function TomaPropiedades($cmd,$ida)
return(false);
}
?>
+
diff --git a/admin/WebConsole/propiedades/propiedades_ordenadores.php b/admin/WebConsole/propiedades/propiedades_ordenadores.php
index 534b396a..c21657d7 100644
--- a/admin/WebConsole/propiedades/propiedades_ordenadores.php
+++ b/admin/WebConsole/propiedades/propiedades_ordenadores.php
@@ -83,7 +83,7 @@ function abrir_ventana(URL){
<th align="center">&nbsp;<?php echo $TbMsg[5]?> <sup>*</sup>&nbsp;</th>
<?php if ($opcion==$op_eliminacion)
echo '<td>'.$nombreordenador.'</td>';
- else
+ else
echo '<td><input class="formulariodatos" name=nombreordenador type=text value="'.$nombreordenador.'"></td>';
if (empty ($fotoordenador)) {
$fotoordenador="fotoordenador.gif";
@@ -226,6 +226,37 @@ function abrir_ventana(URL){
</tr>
<!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
+<!--------------------------------------------------------------UHU comprobar si se requiere validacion ------------------------------------------------------------------------------->
+
+ <TR>
+ <TH align=center&nbsp;><? echo $TbMsg[15]; ?> &nbsp;</TD>
+ <?
+ echo '<TD colspan=3>';
+ $validaciones="1=Si".chr(13);
+ $validaciones.="0=No";
+ echo HTMLCTESELECT($validaciones,"validacion","estilodesple","",$validacion,100).'</TD>';
+ ?>
+ </TR>
+ <TR>
+ <TH align=center>&nbsp;<?echo $TbMsg[16]?>&nbsp;</TD>
+ <?
+ if ($opcion==$op_eliminacion)
+ echo '<TD colspan=3>'.$paginalogin.'</TD>';
+ else
+ echo '<TD colspan=3><INPUT class="formulariodatos" name=paginalogin type=text value="'.$paginalogin.'"></TD>';
+ ?>
+ </TR>
+ <TR>
+ <TH align=center>&nbsp;<?echo $TbMsg[17]?>&nbsp;</TD>
+ <?
+ if ($opcion==$op_eliminacion)
+ echo '<TD colspan=3>'.$paginavalidacion.'</TD>';
+ else
+ echo '<TD colspan=3><INPUT class="formulariodatos" name=paginavalidacion type=text value="'.$paginavalidacion.'"></TD>';
+ ?>
+ </TR>
+
+<!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
<tr>
<th colspan="4" align="center">&nbsp;<sup>*</sup> <?php echo $TbMsg["WARN_NETBOOT"]?>&nbsp;</th>
</tr>
@@ -271,6 +302,12 @@ function TomaPropiedades($cmd,$id){
global $cache;
global $netiface;
global $netdriver;
+########################### UHU
+ global $validacion;
+ global $paginalogin;
+ global $paginavalidacion;
+########################### UHU
+
$rs=new Recordset;
$cmd->texto="SELECT * FROM ordenadores WHERE idordenador=".$id;
$rs->Comando=&$cmd;
@@ -288,6 +325,12 @@ function TomaPropiedades($cmd,$id){
$netiface=$rs->campos["netiface"];
$fotoordenador=$rs->campos["fotoord"]; //Creado para foto
$netdriver=$rs->campos["netdriver"];
+########################### UHU
+ $validacion=$rs->campos["validacion"];
+ $paginalogin=$rs->campos["paginalogin"];
+ $paginavalidacion=$rs->campos["paginavalidacion"];
+########################### UHU
+
$rs->Cerrar();
return(true);
}
@@ -295,3 +338,4 @@ function TomaPropiedades($cmd,$id){
return(false);
}
?>
+
diff --git a/admin/WebConsole/validacion/access_controller.php b/admin/WebConsole/validacion/access_controller.php
new file mode 100644
index 00000000..05e31875
--- /dev/null
+++ b/admin/WebConsole/validacion/access_controller.php
@@ -0,0 +1,93 @@
+<?php
+/** Universidad de Huelva
+ Fichero para validacion de usuarios antes del menu
+ Es necesario crear la variable de sesion $validated y asignar true o false dependiendo del caso
+
+**/
+include_once("functions.php");
+
+
+$action=(isset($_POST["action"]))?$_POST["action"]:$action;
+
+
+
+if($action == "checkValidation"){
+ $idordenador;
+ $nombreordenador;
+ $ip = TomaIP();
+ $validacion;
+ $paginalogin;
+ $paginavalidacion;
+
+ // Carga la configuracion del ordenador
+ $cmd=CreaComando($cadenaconexion); // Crea objeto comando
+ if (!$cmd)
+ Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D.
+
+ $resul=TomaPropiedades($cmd);
+ if (!$resul)
+ Header('Location: '.$pagerror.'?herror=3'); // Error de recuperación de datos.
+ // Registramos las variables en sesion
+ $_SESSION["validacion"] = $validacion;
+ $_SESSION["paginalogin"] = $paginalogin;
+ $_SESSION["paginavalidacion"] = $paginavalidacion;
+}
+else{
+ // Cogemos las variables de sesion
+ $validacion = $_SESSION["validacion"];
+ $paginalogin = $_SESSION["paginalogin"];
+ $paginavalidacion = $_SESSION["paginavalidacion"];
+
+}
+
+
+/**/
+// Solo se usa si se requiere validacion
+if($_SESSION["validacion"] == true && isset($paginavalidacion) && $paginavalidacion != "")
+ include_once($paginavalidacion);
+
+
+switch($action){
+ case "checkValidation":
+ // Comprobamos si es necesaria la validacion
+ if($validacion == 1){
+ $action="Login";
+ // Comprobamos si es necesaria la validacion, y llamamos a synchronize
+ // La funcion synchronize se usa por si hace falta sincronizar alguna base de datos externa a opengnsys
+ // Es obligatoria en el fichero de validacion, pero puede no hacer nada
+ synchronize($validacion);
+ }
+ else{
+ $action="default";
+ }
+ include("access_controller.php");
+
+ break;
+ case "Login":
+ include($paginalogin);
+ break;
+ case "validate":
+ if(!isset($_SESSION)){
+ session_start();
+ }
+ // en la pagina "paginavalidacion" debe existir la funcion validate($_POST) forzosamente
+ $_SESSION["validated"]=validate($_POST);
+ if($_SESSION["validated"] == true){
+ include("../varios/menucliente.php");
+ }
+ else{
+ $_error="Usuario no v&aacute;lido";
+ include($paginalogin);
+ }
+ break;
+ default:
+ if(!isset($_SESSION)){
+ session_start();
+ }
+ $_SESSION["validated"]=true;
+ include("menucliente.php");
+}
+/**/
+
+?>
+
diff --git a/admin/WebConsole/validacion/functions.php b/admin/WebConsole/validacion/functions.php
new file mode 100644
index 00000000..c605c9eb
--- /dev/null
+++ b/admin/WebConsole/validacion/functions.php
@@ -0,0 +1,175 @@
+<?php
+include_once("../includes/ctrlacc.php");
+include_once("../clases/AdoPhp.php");
+include_once("../includes/TomaDato.php");
+include_once("../includes/CreaComando.php");
+include_once("../idiomas/php/".$idioma."/menucliente_".$idioma.".php");
+//___________________________________________________________________________________________________
+//
+// Redupera la ip del cliente web
+//___________________________________________________________________________________________________
+function TomaIP(){
+ // Se asegura que la pagina se solicita desde la IP que viene
+ global $HTTP_SERVER_VARS;
+ if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"] != "")
+ $ipcliente = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
+ else
+ $ipcliente = $HTTP_SERVER_VARS["REMOTE_ADDR"];
+ if (empty ($ipcliente))
+ $ipcliente = $_SERVER["REMOTE_ADDR"];
+ return($ipcliente);
+}
+/**/
+
+function TomaPropiedades($cmd){
+ global $idordenador;
+ global $nombreordenador;
+ global $ip;
+ global $validacion;
+ global $paginalogin;
+ global $paginavalidacion;
+
+
+ $rs=new Recordset;
+ $cmd->texto="SELECT * FROM ordenadores WHERE ip='".$ip."'";
+ $rs->Comando=&$cmd;
+ if (!$rs->Abrir()) return(false); // Error al abrir recordset
+ $rs->Primero();
+ if (!$rs->EOF){
+ $nombreordenador=$rs->campos["nombreordenador"];
+ $ip=$rs->campos["ip"];
+ $validacion=$rs->campos["validacion"];
+ $paginalogin=$rs->campos["paginalogin"];
+ $paginavalidacion=$rs->campos["paginavalidacion"];
+ $rs->Cerrar();
+ return(true);
+ }
+ else
+ return(false);
+
+ return true;
+}
+
+//
+// Recupera Men
+//___________________________________________________________________________________________________
+function RecuperaMenu($cmd,$iph){
+ $rs=new Recordset;
+ $cmd->texto="SELECT menus.idcentro,menus.resolucion,menus.titulo,menus.idurlimg,menus.coorx,menus.coory,
+ menus.modalidad,menus.scoorx,menus.scoory,menus.smodalidad,menus.htmlmenupub,menus.htmlmenupri,
+ acciones_menus.tipoaccion,acciones_menus.idaccionmenu,acciones_menus.idtipoaccion,
+ acciones_menus.tipoitem,acciones_menus.descripitem,iconos.urlicono
+ FROM ordenadores
+ INNER JOIN menus ON menus.idmenu = ordenadores.idmenu
+ LEFT OUTER JOIN acciones_menus ON acciones_menus.idmenu = menus.idmenu
+ LEFT OUTER JOIN iconos ON iconos.idicono=acciones_menus.idurlimg
+ WHERE ordenadores.ip='".$iph."' ORDER by acciones_menus.orden";
+
+ $rs->Comando=&$cmd;
+ $resul=$rs->Abrir();
+ if (!$rs->Abrir()) return(false);
+ if ($rs->EOF) return(false);
+ return($rs);
+}
+//___________________________________________________________________________________________________
+//
+// Muestra el menu pblico
+//___________________________________________________________________________________________________
+function GeneraMenu($rs,$tipo,$iph){
+ global $ITEMS_PUBLICOS;
+ global $ITEMS_PRIVADOS;
+ global $UrlPaginaIconos;
+
+ $titulo=$rs->campos["titulo"];
+ $coorx=$rs->campos["coorx"];
+ $coory=$rs->campos["coory"];
+ $modalidad=$rs->campos["modalidad"];
+ $scoorx=$rs->campos["scoorx"];
+ $scoory=$rs->campos["scoory"];
+ $smodalidad=$rs->campos["smodalidad"];
+ $scoory=$rs->campos["scoory"];
+ $resolucion=$rs->campos["resolucion"];
+ $htmlmenupub=$rs->campos["htmlmenupub"];
+ $htmlmenupri=$rs->campos["htmlmenupri"];
+
+ if($tipo==$ITEMS_PRIVADOS)
+ $mod=$smodalidad;
+ else
+ $mod=$modalidad;
+ $codeHTML="";
+
+ // Genera HTML de la p�ina en funci� de las propiedades del Men del clioente
+ //$codeHTML.='<DIV style="POSITION:absolute;TOP:'.$coory."px;LEFT:".$coorx.'px">';
+ $codeHTML.='<P align=center>';
+ $codeHTML.='<SPAN style="COLOR: #999999;FONT-FAMILY: Arial, Helvetica, sans-serif;FONT-SIZE: 20px;"><U>'.$titulo.'</U></SPAN>';
+ $codeHTML.='</BR>';
+
+ $codeHTML.='<TABLE cellspacing=4 cellpadding=0 align="center" border=0 >';
+ $codeHTML.='<TR>';
+ $codeHTML.='<TD colspan="'.(($mod*2)+1).'" >&nbsp;</TD>';
+ $codeHTML.='</TR>';
+ $codeHTML.='<TR>';
+
+ $c=0; // Contador de columnas
+
+ while (!$rs->EOF){ // Recorre acciones del menu
+ $tipoitem=$rs->campos["tipoitem"];
+ if($tipoitem==$tipo){
+ $tipoaccion=$rs->campos["tipoaccion"];
+ $idtipoaccion=$rs->campos["idtipoaccion"];
+ $idaccionmenu=$rs->campos["idaccionmenu"];
+ $descripitem=$rs->campos["descripitem"];
+ $urlicono=$rs->campos["urlicono"];
+ if(empty($urlicono))
+ $urlicono="defaultitem.gif";
+
+ $codeHTML.='<TD align=center>
+ <A href="ejecutaritem.php?iph='.$iph.'&idt='.$idaccionmenu.'">
+ <IMG border=0 src="http://'.$UrlPaginaIconos.'/'.$urlicono.'" width=64></A></TD>';
+ $codeHTML.='<TD style="font-family:Arial;color: #a71026;FONT-SIZE:14">
+ <A style="text-decoration:none" href="ejecutaritem.php?iph='.$iph.'&idt='.$idaccionmenu.'">
+ <span style="FONT-FAMILY: Verdana,Arial, Helvetica, sans-serif;FONT-SIZE: 12px;COLOR:#999999">'.$descripitem.'</span></A></TD>';
+ if($mod>1){
+ //separación de columnas
+ $codeHTML.='<TD width=10>&nbsp;</TD>';
+ }
+ $c++;
+ if($c%$mod==0){
+ $codeHTML.='</TR>';
+ $codeHTML.='<TR>';
+ }
+ }
+ $rs->Siguiente();
+ }
+ $codeHTML.='</TR>';
+ $rs->Cerrar();
+ $codeHTML.='</TABLE>';
+ $codeHTML.='</P>';
+ $codeHTML.='<BR><BR>';
+ $codeHTML.='<P align=center>';
+
+ switch($tipo){
+ case $ITEMS_PUBLICOS:
+ $url.='acceso_operador.php';
+ $lit="Administrar";
+ break;
+ case $ITEMS_PRIVADOS:
+ $url.='menucliente.php';
+ $lit="Volver";
+ break;
+ }
+ $codeHTML.='<A style="text-decoration:none" href="'.$url.'?iph='.$iph.'">';
+ $codeHTML.='<SPAN style="
+ BORDER-BOTTOM: #999999 1px solid;
+ BORDER-LEFT: #999999 1px solid;
+ BORDER-RIGHT: #999999 1px solid;
+ BORDER-TOP: #999999 1px solid;
+ COLOR:#999999;FONT-FAMILY: Arial, Helvetica, sans-serif;FONT-SIZE:9px;">&nbsp;'.$lit.'&nbsp;</SPAN></A>';
+
+ $codeHTML.='</P>';
+ //$codeHTML.='</DIV>';
+ return($codeHTML);
+}
+
+?>
+
diff --git a/admin/WebConsole/validacion/html/close.php b/admin/WebConsole/validacion/html/close.php
new file mode 100644
index 00000000..11a3c2e8
--- /dev/null
+++ b/admin/WebConsole/validacion/html/close.php
@@ -0,0 +1,5 @@
+<?
+session_start();
+$_SESSION["validated"] = false;
+?>
+
diff --git a/admin/WebConsole/validacion/html/images/opengnsys.png b/admin/WebConsole/validacion/html/images/opengnsys.png
new file mode 100644
index 00000000..72e5df72
--- /dev/null
+++ b/admin/WebConsole/validacion/html/images/opengnsys.png
Binary files differ
diff --git a/admin/WebConsole/validacion/html/login_prueba.php b/admin/WebConsole/validacion/html/login_prueba.php
new file mode 100644
index 00000000..78b3c5ae
--- /dev/null
+++ b/admin/WebConsole/validacion/html/login_prueba.php
@@ -0,0 +1,102 @@
+<?
+$path_parts = pathinfo(__FILE__);
+?>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<title>OpenGnSys :::: Inicio de equipo - Men de opciones</title>
+<style>
+ body {
+ margin:0;
+ padding:0;
+ background-color:#FFFFFF;
+}
+#contenedor{
+ position:absolute;
+ /*width:1270px;
+ height:1014px;
+ */
+ margin:0;
+ padding:0;
+/*
+ left: 50%;
+ top: 50%;
+ margin-top: -512px;
+ margin-left: -640px;
+*/
+ overflow:hidden;
+}
+.boton{
+ margin:0 0 0 40px;
+}
+#form1{
+ margin:120px 0 0 200px;
+}
+img {
+ vertical-align:middle;
+}
+a:link, a:visited { text-decoration: none; color:#ffffff; }
+a:hover, a:active { color:#ffff00; }
+/*#menu{
+ width:800px;
+ height:600px;
+
+}*/
+h1{
+ margin:120px auto 0px auto;
+ padding:0;
+ width:624px;
+ height:0px;
+ /*background:url(../menus/imagenes/titulo.png);*/
+}
+
+.tituloElementoLista {
+ padding:0 0 0 10px;
+}
+.descripcionElementoLista {
+ color:#acd6ff;
+ position:absolute;
+ left:360px;
+ padding-top:15px;
+}
+</style>
+
+</head>
+
+<body>
+ <div id="contenedor" style="margin: 10px 300px 15px 300px">
+ <div align="center">
+ <h1>
+ <div style="float:left">
+ <img src="../validacion/html/images/opengnsys.png" />
+ </div>
+ Validaci&oacute;n de usuario</h1>
+ </div>
+ <div id="menu" style="margin: 0px auto 0px auto">
+ <h1></h1>
+ <form id="form1" name="form1" method="post" action="../validacion/access_controller.php">
+ <div>
+ usuario:
+ </div>
+ <div>
+ <input type="text" name="login" id="login">
+ </div>
+ <br />
+ <div>
+ password:
+ </div>
+ <div>
+ <input type="password" name="password" id="password">
+ </div>
+ <br />
+ <p><span class="boton"><input type="submit" name="access_button" id="access_button" value="Acceder" /></span></p>
+ <input name="action" type="hidden" value="validate" />
+ </form>
+ <span class="descripcionElementoLista"><?php if(isset($_error)) echo $_error; ?></span>
+ </div>
+ </div>
+</body>
+</html>
+
diff --git a/admin/WebConsole/validacion/html/validacion_ldap.php b/admin/WebConsole/validacion/html/validacion_ldap.php
new file mode 100644
index 00000000..992bca05
--- /dev/null
+++ b/admin/WebConsole/validacion/html/validacion_ldap.php
@@ -0,0 +1,75 @@
+<?
+
+function connect_to_ldap(){
+ $server = "IP_SERVIDOR";
+ $port = '389';
+ $user = "USUARIO";
+ $pass = "PASSWORD";
+
+ $result = null;
+ $ds=ldap_connect($server,$port);
+ if ($ds){
+ if ($r=@ldap_bind($ds,$user,$pass))
+ $result = $ds;
+ }
+ return $result;
+}
+
+function validate_user($user,$password){
+ if (($user=='') || ($password=='')){
+ $result['validation'] = -1;
+ }else{
+ if($ds = connect_to_ldap()){
+ $dc = "dc=uhu, dc=es";
+ $search = "uid=".$user;
+ $sr=@ldap_search($ds,$dc,$search);
+ $info = @ldap_get_entries($ds, $sr);
+
+ if ($info["count"]==1){
+ $thedata = $info[0]["dn"];
+ if ($r=@ldap_bind($ds,$thedata,$password)){
+ $result['validation'] = 1;
+ // A parte de la validacion, se podrían coger otros datos...
+ /*
+ $result['name'] = $info[0]["cn"][0];
+ $result['dni'] = $info[0]["uhuuserdni"][0];
+ $result['email'] = $info[0]["mail"][0];
+ */
+ }
+ else{
+ $result['validation'] = -1;
+ }
+ }
+ else{
+ $result['validation'] = -1;
+ }
+ }
+ ldap_close($ds);
+ }
+ return $result;
+}
+
+/**
+ * Sincroniza una base de datos externa con la de opengnsys.
+ * No es necesaria su implementacion, puede dejarse en blanco
+ */
+function synchronize($validation){
+
+}
+
+
+/**
+ * Funcion de validacion para el cliente opengnsys.
+ * Recibe como parametros la variable $_POST proveniente de la pagina de login
+ * debe devolver true o false
+ */
+function validate($VARS){
+ $result=false;
+ $validationInfo = validate_user($VARS["login"], $VARS["password"]);
+ if($validationInfo["validation"] == 1){
+ $result = true;
+ }
+ return $result;
+}
+
+?>
diff --git a/admin/WebConsole/validacion/html/validacion_prueba.php b/admin/WebConsole/validacion/html/validacion_prueba.php
new file mode 100644
index 00000000..35c6c033
--- /dev/null
+++ b/admin/WebConsole/validacion/html/validacion_prueba.php
@@ -0,0 +1,24 @@
+<?
+/**
+ * Sincroniza una base de datos externa con la de opengnsys.
+ * No es necesaria su implementacion, puede dejarse en blanco
+ */
+function synchronize($validation){
+
+}
+
+
+/**
+ * Funcion de validacion para el cliente opengnsys.
+ * Recibe como parametros la variable $_POST proveniente de la pagina de login
+ * debe devolver true o false
+ */
+function validate($VARS){
+ $result = false;
+ if($VARS["login"] == "usuprueba" && $VARS["password"] == "prueba"){
+ $result = true;
+ }
+ return $result;
+}
+
+?>
diff --git a/admin/WebConsole/validacion/html/validacion_template.php b/admin/WebConsole/validacion/html/validacion_template.php
new file mode 100644
index 00000000..77672a91
--- /dev/null
+++ b/admin/WebConsole/validacion/html/validacion_template.php
@@ -0,0 +1,20 @@
+<?
+/**
+ * Sincroniza una base de datos externa con la de opengnsys.
+ * No es necesaria su implementacion, puede dejarse en blanco
+ */
+function synchronize($validation){
+
+}
+
+
+/**
+ * Funcion de validacion para el cliente opengnsys.
+ * Recibe como parametros la variable $_POST proveniente de la pagina de login
+ * debe devolver true o false
+ */
+function validate($VARS){
+ return true;
+}
+
+?>
diff --git a/admin/WebConsole/varios/menucliente.php b/admin/WebConsole/varios/menucliente.php
index 1a8913f5..5f1f405d 100644
--- a/admin/WebConsole/varios/menucliente.php
+++ b/admin/WebConsole/varios/menucliente.php
@@ -14,236 +14,113 @@ include_once("../includes/TomaDato.php");
include_once("../includes/CreaComando.php");
include_once("../controlacceso.php");
include_once("../idiomas/php/".$idioma."/menucliente_".$idioma.".php");
-//________________________________________________________________________________________________________
-$cmd=CreaComando($cadenaconexion);
-if (!$cmd)
- Header('Location: '.$pagerror.'?herror=2'); // Error de conexión servidor B.D.
-//________________________________________________________________________________________________________
-$ITEMS_PUBLICOS=1;
-$ITEMS_PRIVADOS=2;
+/** Universidad de Huelva, comprueba si existe la variable de sesion validated
+ Si validated no es true, hay que comprobar si se requiere validacion, a partir de aqui se
+ encarga de todo access_controller.php
+*/
+if(!isset($_SESSION["validated"]) || $_SESSION["validated"] != true)
+{
+ $action="checkValidation";
+ include("../validacion/access_controller.php");
+}
+else{
-$tip=$ITEMS_PUBLICOS; // Tipo de items 1=Públicos 2=privados
-if (isset($_GET["tip"])) $tip=$_GET["tip"];
+//___________________________________________________________________________________________________
+ //________________________________________________________________________________________________________
+ $cmd=CreaComando($cadenaconexion);
+ if (!$cmd)
+ Header('Location: '.$pagerror.'?herror=2'); // Error de conexión servidor B.D.
+ //________________________________________________________________________________________________________
+ $ITEMS_PUBLICOS=1;
+ $ITEMS_PRIVADOS=2;
-$iph=tomaIP();
-if(empty($iph))
- die($TbMsg[0].": ".$TbMsg[1]."=".$iph);
+ $tip=$ITEMS_PUBLICOS; // Tipo de items 1=Públicos 2=privados
+ if (isset($_GET["tip"])) $tip=$_GET["tip"];
-$UrlPagina=$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; // Url página
-$UrlPagina=dirname($UrlPagina);
-$UrlPaginaIconos=dirname($UrlPagina)."/images/iconos";
-//________________________________________________________________________________________________________
-//agp
-$nombre_archivo = "/opt/opengnsys/log/clients/".$iph.".cache.txt";
-$gestor = fopen($nombre_archivo, 'r');
-$contenidofichero = fread($gestor, filesize($nombre_archivo));
-fclose($gestor);
-if (! empty ($contenidofichero)) {
- $cmd->texto="UPDATE ordenadores_particiones
- SET cache='".$contenidofichero."'
- WHERE idordenador=(SELECT idordenador FROM ordenadores
- WHERE ip='".$iph."') AND
- idsistemafichero=(SELECT idsistemafichero FROM sistemasficheros
- WHERE descripcion='CACHE')";
- $resul=$cmd->Ejecutar();
-}
-//agp
-//________________________________________________________________________________________________________
-$rsmenu=RecuperaMenu($cmd,$iph); // Recupera un recordset con los datos del m en
-$codeHtml="";
-if(!empty($rsmenu)){
- switch($tip){
- case $ITEMS_PUBLICOS:
- if(!empty($rsmenu->campos["htmlmenupub"])){
- $urlHtml=$rsmenu->campos["htmlmenupub"];
- if(strtoupper(substr($urlHtml,0,7))!="HTTP://") $urlHtml="http://".$urlHtml;
- Header('Location: '.$urlHtml); // Url del menu personalizado
- }
- else{
- $_SESSION["widcentro"]=$rsmenu->campos["idcentro"];
- $codeHtml=GeneraMenu($rsmenu,$ITEMS_PUBLICOS,$iph); // Genera men pblico
- }
- break;
-
- case $ITEMS_PRIVADOS:
- if(!empty($rsmenu->campos["htmlmenupri"])){
- $urlHtml=$rsmenu->campos["htmlmenupri"];
-
- if(strtoupper(substr($urlHtml,0,7))!="HTTP://") $urlHtml="http://".$urlHtml;
- Header('Location: '.$urlHtml); // Url del menu personalizado
- }
- else{
- $_SESSION["widcentro"]=$rsmenu->campos["idcentro"];
- $codeHtml=GeneraMenu($rsmenu,$ITEMS_PRIVADOS,$iph); // Genera men pblico
- }
- break;
- }
-}
-else{
- $codeHtml='<div align="center" style="font-family: Arial, Helvetica, sans-serif;">';
- $codeHtml.='<p style="color:#999999; font-size: 16px; margin: 2em;">'.$TbMsg[2].'</p>';
- $codeHtml.='<p style="font-size: 14px; margin: 2em;">';
- $codeHtml.=' <a href="command:poweroff">'.$TbMsg[3].'</a>';
- $codeHtml.='</p>';
- $codeHtml.='</div>';
-}
-?>
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-</head>
- <?php
+ $iph=tomaIP();
+ if(empty($iph))
+ die($TbMsg[0].": ".$TbMsg[1]."=".$iph);
- if(!empty($rsmenu->campos["idurlimg"])){ // Imagen de fondo
- $urlimg=TomaDato($cmd,0,'iconos',$rsmenu->campos["idurlimg"],'idicono','urlicono');
- $urlimgfondo="../images/iconos/".$urlimg;
- echo '<body bgcolor="white" background="'.$urlimgfondo.'">';
+ $UrlPagina=$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; // Url página
+ $UrlPagina=dirname($UrlPagina);
+ $UrlPaginaIconos=dirname($UrlPagina)."/images/iconos";
+ //________________________________________________________________________________________________________
+ //agp
+ $nombre_archivo = "/opt/opengnsys/log/clients/".$iph.".cache.txt";
+ $gestor = fopen($nombre_archivo, 'r');
+ $contenidofichero = fread($gestor, filesize($nombre_archivo));
+ fclose($gestor);
+ if (! empty ($contenidofichero)) {
+ $cmd->texto="UPDATE ordenadores_particiones
+ SET cache='".$contenidofichero."'
+ WHERE idordenador=(SELECT idordenador FROM ordenadores
+ WHERE ip='".$iph."') AND
+ idsistemafichero=(SELECT idsistemafichero FROM sistemasficheros
+ WHERE descripcion='CACHE')";
+ $resul=$cmd->Ejecutar();
+ }
+ //agp
+ //________________________________________________________________________________________________________
+ $rsmenu=RecuperaMenu($cmd,$iph); // Recupera un recordset con los datos del m en
+ if(!empty($rsmenu)){
+ switch($tip){
+ case $ITEMS_PUBLICOS:
+ if(!empty($rsmenu->campos["htmlmenupub"])){
+ $urlHtml=$rsmenu->campos["htmlmenupub"];
+ if(strtoupper(substr($urlHtml,0,7))!="HTTP://") $urlHtml="http://".$urlHtml;
+ Header('Location: '.$urlHtml); // Url del menu personalizado
+ }
+ else{
+ $_SESSION["widcentro"]=$rsmenu->campos["idcentro"];
+ $codeHtml=GeneraMenu($rsmenu,$ITEMS_PUBLICOS,$iph); // Genera men pblico
+ }
+ break;
+
+ case $ITEMS_PRIVADOS:
+ if(!empty($rsmenu->campos["htmlmenupri"])){
+ $urlHtml=$rsmenu->campos["htmlmenupri"];
+
+ if(strtoupper(substr($urlHtml,0,7))!="HTTP://") $urlHtml="http://".$urlHtml;
+ Header('Location: '.$urlHtml); // Url del menu personalizado
+ }
+ else{
+ $_SESSION["widcentro"]=$rsmenu->campos["idcentro"];
+ $codeHtml=GeneraMenu($rsmenu,$ITEMS_PRIVADOS,$iph); // Genera men pblico
+ }
+ break;
+ }
}
else{
- echo'<body bgcolor="white" background="../images/iconos/fondo800x600.png">';
+ $codeHtml='<div align="center" style="font-family: Arial, Helvetica, sans-serif;">';
+ $codeHtml.='<p style="color:#999999; font-size: 16px; margin: 2em;">'.$TbMsg[2].'</p>';
+ $codeHtml.='<p style="font-size: 14px; margin: 2em;">';
+ $codeHtml.=' <a href="command:poweroff">'.$TbMsg[3].'</a>';
+ $codeHtml.='</p>';
+ $codeHtml.='</div>';
}
- include_once("/opt/opengnsys/log/clients/".$iph.".info.html");
- echo $codeHtml;
?>
-</body>
-</html>
-<?php
-//___________________________________________________________________________________________________
-//
-// Recupera Men
-//___________________________________________________________________________________________________
-function RecuperaMenu($cmd,$iph){
- $rs=new Recordset;
- $cmd->texto="SELECT menus.idcentro,menus.resolucion,menus.titulo,menus.idurlimg,menus.coorx,menus.coory,
- menus.modalidad,menus.scoorx,menus.scoory,menus.smodalidad,menus.htmlmenupub,menus.htmlmenupri,
- acciones_menus.tipoaccion,acciones_menus.idaccionmenu,acciones_menus.idtipoaccion,
- acciones_menus.tipoitem,acciones_menus.descripitem,iconos.urlicono
- FROM ordenadores
- INNER JOIN menus ON menus.idmenu = ordenadores.idmenu
- LEFT OUTER JOIN acciones_menus ON acciones_menus.idmenu = menus.idmenu
- LEFT OUTER JOIN iconos ON iconos.idicono=acciones_menus.idurlimg
- WHERE ordenadores.ip='".$iph."' ORDER by acciones_menus.orden";
+ <html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ </head>
+ <?
- $rs->Comando=&$cmd;
- $resul=$rs->Abrir();
- if (!$rs->Abrir()) return(false);
- if ($rs->EOF) return(false);
- return($rs);
-}
-//___________________________________________________________________________________________________
-//
-// Muestra el menu pblico
-//___________________________________________________________________________________________________
-function GeneraMenu($rs,$tipo,$iph){
- global $ITEMS_PUBLICOS;
- global $ITEMS_PRIVADOS;
- global $UrlPaginaIconos;
-
- $titulo=$rs->campos["titulo"];
- $coorx=$rs->campos["coorx"];
- $coory=$rs->campos["coory"];
- $modalidad=$rs->campos["modalidad"];
- $scoorx=$rs->campos["scoorx"];
- $scoory=$rs->campos["scoory"];
- $smodalidad=$rs->campos["smodalidad"];
- $scoory=$rs->campos["scoory"];
- $resolucion=$rs->campos["resolucion"];
- $htmlmenupub=$rs->campos["htmlmenupub"];
- $htmlmenupri=$rs->campos["htmlmenupri"];
-
- if($tipo==$ITEMS_PRIVADOS)
- $mod=$smodalidad;
- else
- $mod=$modalidad;
- $codeHTML="";
-
- // Genera HTML de la p�ina en funci� de las propiedades del Men del clioente
- //$codeHTML.='<DIV style="POSITION:absolute;TOP:'.$coory."px;LEFT:".$coorx.'px">';
- $codeHTML.='<P align=center>';
- $codeHTML.='<SPAN style="COLOR: #999999;FONT-FAMILY: Arial, Helvetica, sans-serif;FONT-SIZE: 20px;"><U>'.$titulo.'</U></SPAN>';
- $codeHTML.='</BR>';
-
- $codeHTML.='<TABLE cellspacing=4 cellpadding=0 align="center" border=0 >';
- $codeHTML.='<TR>';
- $codeHTML.='<TD colspan="'.(($mod*2)+1).'" >&nbsp;</TD>';
- $codeHTML.='</TR>';
- $codeHTML.='<TR>';
-
- $c=0; // Contador de columnas
-
- while (!$rs->EOF){ // Recorre acciones del menu
- $tipoitem=$rs->campos["tipoitem"];
- if($tipoitem==$tipo){
- $tipoaccion=$rs->campos["tipoaccion"];
- $idtipoaccion=$rs->campos["idtipoaccion"];
- $idaccionmenu=$rs->campos["idaccionmenu"];
- $descripitem=$rs->campos["descripitem"];
- $urlicono=$rs->campos["urlicono"];
- if(empty($urlicono))
- $urlicono="defaultitem.gif";
-
- $codeHTML.='<TD align=center>
- <A href="ejecutaritem.php?iph='.$iph.'&idt='.$idaccionmenu.'">
- <IMG border=0 src="http://'.$UrlPaginaIconos.'/'.$urlicono.'" width=64></A></TD>';
- $codeHTML.='<TD style="font-family:Arial;color: #a71026;FONT-SIZE:14">
- <A style="text-decoration:none" href="ejecutaritem.php?iph='.$iph.'&idt='.$idaccionmenu.'">
- <span style="FONT-FAMILY: Verdana,Arial, Helvetica, sans-serif;FONT-SIZE: 12px;COLOR:#999999">'.$descripitem.'</span></A></TD>';
- if($mod>1){
- //separación de columnas
- $codeHTML.='<TD width=10>&nbsp;</TD>';
- }
- $c++;
- if($c%$mod==0){
- $codeHTML.='</TR>';
- $codeHTML.='<TR>';
- }
+ if(!empty($rsmenu->campos["idurlimg"])){ // Imagen de fondo
+ $urlimg=TomaDato($cmd,0,'iconos',$rsmenu->campos["idurlimg"],'idicono','urlicono');
+ $urlimgfondo="../images/iconos/".$urlimg;
+ echo '<body bgcolor="white" background="'.$urlimgfondo.'">';
}
- $rs->Siguiente();
- }
- $codeHTML.='</TR>';
- $rs->Cerrar();
- $codeHTML.='</TABLE>';
- $codeHTML.='</P>';
- $codeHTML.='<BR><BR>';
- $codeHTML.='<P align=center>';
-
- switch($tipo){
- case $ITEMS_PUBLICOS:
- $url.='acceso_operador.php';
- $lit="Administrar";
- break;
- case $ITEMS_PRIVADOS:
- $url.='menucliente.php';
- $lit="Volver";
- break;
- }
- $codeHTML.='<A style="text-decoration:none" href="'.$url.'?iph='.$iph.'">';
- $codeHTML.='<SPAN style="
- BORDER-BOTTOM: #999999 1px solid;
- BORDER-LEFT: #999999 1px solid;
- BORDER-RIGHT: #999999 1px solid;
- BORDER-TOP: #999999 1px solid;
- COLOR:#999999;FONT-FAMILY: Arial, Helvetica, sans-serif;FONT-SIZE:9px;">&nbsp;'.$lit.'&nbsp;</SPAN></A>';
-
- $codeHTML.='</P>';
- //$codeHTML.='</DIV>';
- return($codeHTML);
-}
-//___________________________________________________________________________________________________
-//
-// Redupera la ip del cliente web
-//___________________________________________________________________________________________________
-function tomaIP(){
- // Se asegura que la pagina se solicita desde la IP que viene
- global $HTTP_SERVER_VARS;
- if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"] != "")
- $ipcliente = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
- else
- $ipcliente = $HTTP_SERVER_VARS["REMOTE_ADDR"];
- if (empty ($ipcliente))
- $ipcliente = $_SERVER["REMOTE_ADDR"];
+ else{
+ echo'<body bgcolor="white" background="../images/iconos/fondo800x600.png">';
+ //echo '<p align="left"><img border=0 src="../images/iconos/logoopengnsys.png"><p>';
+ }
+ include_once("/opt/opengnsys/log/clients/".$iph.".info.html");
+ echo $codeHtml;
- return($ipcliente);
+ ?>
+ </body>
+ </html>
+ <?
}
?>