source: admin/WebConsole/varios/menucliente.php @ a06ac2d

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacionwebconsole3
Last change on this file since a06ac2d was d568b1f, checked in by ramon <ramongomez@…>, 13 years ago

Versión 1.0.4, #495: Sentencia correcta para actualizar datos de la caché.

git-svn-id: https://opengnsys.es/svn/branches/version1.0@3164 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100644
File size: 8.9 KB
RevLine 
[27d9f81]1<?php
[3ec149c]2// *************************************************************************
3// Aplicación WEB: ogAdmWebCon
4// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
5// Fecha Creación: Año 2009-2010
6// Fecha útima modificación: Marzo-2006
7// Nombre del fichero: menubrowser.php
8// Descripción :
9//              Muestra menu en el browser del cliente
10// ****************************************************************************
11include_once("../includes/ctrlacc.php");
12include_once("../clases/AdoPhp.php");
13include_once("../includes/TomaDato.php");
14include_once("../includes/CreaComando.php");
[1873b9a]15include_once("../controlacceso.php");
[375ee70]16include_once("../idiomas/php/".$idioma."/menucliente_".$idioma.".php");
[3ec149c]17//________________________________________________________________________________________________________
18$cmd=CreaComando($cadenaconexion);
19if (!$cmd)
20        Header('Location: '.$pagerror.'?herror=2'); // Error de conexión servidor B.D.
21//________________________________________________________________________________________________________
22$ITEMS_PUBLICOS=1;
23$ITEMS_PRIVADOS=2;
24
25$tip=$ITEMS_PUBLICOS; // Tipo de items 1=Públicos 2=privados
26if (isset($_GET["tip"]))        $tip=$_GET["tip"];
27
28$iph=tomaIP();
29if(empty($iph))
[d5fd843]30        die($TbMsg[0].": ".$TbMsg[1]."=".$iph);
[3ec149c]31
32$UrlPagina=$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; // Url página
33$UrlPagina=dirname($UrlPagina);
34$UrlPaginaIconos=dirname($UrlPagina)."/images/iconos";
35//________________________________________________________________________________________________________
[27d9f81]36//agp
37$nombre_archivo = "/opt/opengnsys/log/clients/".$iph.".cache.txt";
38$gestor = fopen($nombre_archivo, 'r');
39$contenidofichero = fread($gestor, filesize($nombre_archivo));
40fclose($gestor);
41if (! empty ($contenidofichero)) {
42        $cmd->texto="UPDATE ordenadores_particiones
43                        SET cache='".$contenidofichero."'
[d568b1f]44                        WHERE idordenador=(SELECT idordenador FROM ordenadores
45                                            WHERE ip='".$iph."') AND
46                              idsistemafichero=(SELECT idsistemafichero FROM sistemasficheros
47                                                 WHERE descripcion='CACHE')";
[27d9f81]48        $resul=$cmd->Ejecutar();
49}
50//agp
51//________________________________________________________________________________________________________
[3ec149c]52$rsmenu=RecuperaMenu($cmd,$iph);        // Recupera un recordset con los datos del m en
53if(!empty($rsmenu)){
54        switch($tip){
55                case $ITEMS_PUBLICOS:
56                        if(!empty($rsmenu->campos["htmlmenupub"])){
57                                $urlHtml=$rsmenu->campos["htmlmenupub"];
[6a6f1fb]58                                if(strtoupper(substr($urlHtml,0,7))!="HTTP://") $urlHtml="http://".$urlHtml;
[3ec149c]59                                Header('Location: '.$urlHtml); // Url del menu personalizado
60                        }
61                        else{
62                                $_SESSION["widcentro"]=$rsmenu->campos["idcentro"];
63                                $codeHtml=GeneraMenu($rsmenu,$ITEMS_PUBLICOS,$iph); // Genera men pblico
64                        }
65                        break;
66                       
67                case $ITEMS_PRIVADOS:
68                        if(!empty($rsmenu->campos["htmlmenupri"])){
69                                $urlHtml=$rsmenu->campos["htmlmenupri"];
70                               
[6a6f1fb]71                                if(strtoupper(substr($urlHtml,0,7))!="HTTP://") $urlHtml="http://".$urlHtml;
[3ec149c]72                                Header('Location: '.$urlHtml); // Url del menu personalizado
73                        }
74                        else{
75                                $_SESSION["widcentro"]=$rsmenu->campos["idcentro"];
76                                $codeHtml=GeneraMenu($rsmenu,$ITEMS_PRIVADOS,$iph); // Genera men pblico
77                        }
78                        break;
79        }                       
80}
81else{
[c3aa312]82        $codeHtml='<div align="center" style="font-family: Arial, Helvetica, sans-serif;">';
[d5fd843]83        $codeHtml.='<p style="color:#999999; font-size: 16px; margin: 2em;">'.$TbMsg[2].'</p>';
[c3aa312]84        $codeHtml.='<p style="font-size: 14px; margin: 2em;">';
[d5fd843]85        $codeHtml.='  <a href="command:poweroff">'.$TbMsg[3].'</a>';
[c3aa312]86        $codeHtml.='</p>';
87        $codeHtml.='</div>';
[3ec149c]88}
89?>
[375ee70]90        <html>
91        <head>
[3ec149c]92        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
[375ee70]93        </head>
[3ec149c]94        <?
95
96        if(!empty($rsmenu->campos["idurlimg"])){ // Imagen de fondo
97                $urlimg=TomaDato($cmd,0,'iconos',$rsmenu->campos["idurlimg"],'idicono','urlicono');
98                $urlimgfondo="../images/iconos/".$urlimg;
[375ee70]99                echo '<body bgcolor="white" background="'.$urlimgfondo.'">';
[3ec149c]100        }
101        else{
[375ee70]102                echo'<body bgcolor="white" background="../images/iconos/fondo800x600.png">';
[4e2e09b]103                //echo '<p align="left"><img border=0 src="../images/iconos/logoopengnsys.png"><p>';
[3ec149c]104        }
[4de181d]105                include_once("/opt/opengnsys/log/clients/".$iph.".info.html");
[3ec149c]106                echo $codeHtml;
[1873b9a]107
[3ec149c]108        ?>
[375ee70]109        </body>
110        </html>
[3ec149c]111<?
112//___________________________________________________________________________________________________
113//
114// Recupera Men
115//___________________________________________________________________________________________________
116function RecuperaMenu($cmd,$iph){
117        $rs=new Recordset;
118        $cmd->texto="SELECT menus.idcentro,menus.resolucion,menus.titulo,menus.idurlimg,menus.coorx,menus.coory,
119                        menus.modalidad,menus.scoorx,menus.scoory,menus.smodalidad,menus.htmlmenupub,menus.htmlmenupri,
120                        acciones_menus.tipoaccion,acciones_menus.idaccionmenu,acciones_menus.idtipoaccion,
121                        acciones_menus.tipoitem,acciones_menus.descripitem,iconos.urlicono
122                        FROM ordenadores
123                        INNER JOIN menus ON menus.idmenu = ordenadores.idmenu
124                        LEFT OUTER JOIN acciones_menus ON acciones_menus.idmenu = menus.idmenu
125                        LEFT OUTER JOIN iconos ON iconos.idicono=acciones_menus.idurlimg
126                        WHERE ordenadores.ip='".$iph."' ORDER by acciones_menus.orden";
127
128        $rs->Comando=&$cmd;
129        $resul=$rs->Abrir();
130        if (!$rs->Abrir()) return(false);
131        if ($rs->EOF) return(false);
132        return($rs);
133}
134//___________________________________________________________________________________________________
135//
136// Muestra el menu pblico
137//___________________________________________________________________________________________________
138function GeneraMenu($rs,$tipo,$iph){   
139        global $ITEMS_PUBLICOS;
140        global $ITEMS_PRIVADOS;
141        global $UrlPaginaIconos;
142
143        $titulo=$rs->campos["titulo"];
144        $coorx=$rs->campos["coorx"];
145        $coory=$rs->campos["coory"];
146        $modalidad=$rs->campos["modalidad"];
147        $scoorx=$rs->campos["scoorx"];
148        $scoory=$rs->campos["scoory"];
149        $smodalidad=$rs->campos["smodalidad"];
150        $scoory=$rs->campos["scoory"];
151        $resolucion=$rs->campos["resolucion"];
152        $htmlmenupub=$rs->campos["htmlmenupub"];
153        $htmlmenupri=$rs->campos["htmlmenupri"];
154                       
155        if($tipo==$ITEMS_PRIVADOS)
156                $mod=$smodalidad;
157        else
158                $mod=$modalidad;
159        $codeHTML="";
160
161        //      Genera HTML de la p�ina en funci� de las propiedades del Men del clioente
162        //$codeHTML.='<DIV style="POSITION:absolute;TOP:'.$coory."px;LEFT:".$coorx.'px">';
163        $codeHTML.='<P align=center>';
164        $codeHTML.='<SPAN style="COLOR: #999999;FONT-FAMILY: Arial, Helvetica, sans-serif;FONT-SIZE: 20px;"><U>'.$titulo.'</U></SPAN>';
165        $codeHTML.='</BR>';
166       
167        $codeHTML.='<TABLE cellspacing=4 cellpadding=0 align="center" border=0 >';
168        $codeHTML.='<TR>';
169        $codeHTML.='<TD colspan="'.(($mod*2)+1).'" >&nbsp;</TD>';
170        $codeHTML.='</TR>';
171        $codeHTML.='<TR>';
172
173        $c=0; // Contador de columnas
174       
175        while (!$rs->EOF){ // Recorre acciones del menu
176                $tipoitem=$rs->campos["tipoitem"];
177                if($tipoitem==$tipo){
178                        $tipoaccion=$rs->campos["tipoaccion"];
179                        $idtipoaccion=$rs->campos["idtipoaccion"];
180                        $idaccionmenu=$rs->campos["idaccionmenu"];
181                        $descripitem=$rs->campos["descripitem"];
182                        $urlicono=$rs->campos["urlicono"];
183                        if(empty($urlicono))
184                                $urlicono="defaultitem.gif";
185
186                        $codeHTML.='<TD align=center>
187                                <A href="ejecutaritem.php?iph='.$iph.'&idt='.$idaccionmenu.'">
188                                        <IMG border=0 src="http://'.$UrlPaginaIconos.'/'.$urlicono.'" width=64></A></TD>';
189                        $codeHTML.='<TD style="font-family:Arial;color: #a71026;FONT-SIZE:14">
190                                <A style="text-decoration:none" href="ejecutaritem.php?iph='.$iph.'&idt='.$idaccionmenu.'">
191                                        <span style="FONT-FAMILY: Verdana,Arial, Helvetica, sans-serif;FONT-SIZE: 12px;COLOR:#999999">'.$descripitem.'</span></A></TD>';
192                        if($mod>1){
193                                //separación de columnas
194                                $codeHTML.='<TD width=10>&nbsp;</TD>';
195                        }
196                        $c++;
197                        if($c%$mod==0){
198                                $codeHTML.='</TR>';
199                                $codeHTML.='<TR>';
200                        }
201                }
202                $rs->Siguiente();
203        }
204        $codeHTML.='</TR>';
205        $rs->Cerrar();
206        $codeHTML.='</TABLE>';
207        $codeHTML.='</P>';
208        $codeHTML.='<BR><BR>';
209        $codeHTML.='<P align=center>';
210
211        switch($tipo){
212                case $ITEMS_PUBLICOS:
213                        $url.='acceso_operador.php';
214                        $lit="Administrar";
215                        break;
216                case $ITEMS_PRIVADOS:
217                        $url.='menucliente.php';
218                        $lit="Volver";
219                        break;
220        }               
221        $codeHTML.='<A style="text-decoration:none" href="'.$url.'?iph='.$iph.'">';
222        $codeHTML.='<SPAN style="
223                                BORDER-BOTTOM: #999999 1px solid;
224                                BORDER-LEFT: #999999 1px solid;
225                                BORDER-RIGHT: #999999 1px solid;
226                                BORDER-TOP: #999999 1px solid;
227                                COLOR:#999999;FONT-FAMILY: Arial, Helvetica, sans-serif;FONT-SIZE:9px;">&nbsp;'.$lit.'&nbsp;</SPAN></A>';
228       
229        $codeHTML.='</P>';
230        //$codeHTML.='</DIV>';
231        return($codeHTML);
232}
233//___________________________________________________________________________________________________
234//
235// Redupera la ip del cliente web
236//___________________________________________________________________________________________________
237function tomaIP(){     
238        // Se asegura que la pagina se solicita desde la IP que viene
239        global $HTTP_SERVER_VARS;
240        if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"] != "")
241                $ipcliente = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
242        else
243                $ipcliente = $HTTP_SERVER_VARS["REMOTE_ADDR"];
[bf54d36]244        if (empty ($ipcliente))
245                $ipcliente = $_SERVER["REMOTE_ADDR"];
[3ec149c]246
247        return($ipcliente);
248}
249?>
[27d9f81]250
Note: See TracBrowser for help on using the repository browser.