source: admin/WebConsole/varios/menucliente.php @ 85fa51e

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 85fa51e was 3ec149c, checked in by alonso <alonso@…>, 15 years ago

git-svn-id: https://opengnsys.es/svn/trunk@1314 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100644
File size: 7.9 KB
Line 
1<?
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");
15//________________________________________________________________________________________________________
16$cmd=CreaComando($cadenaconexion);
17if (!$cmd)
18        Header('Location: '.$pagerror.'?herror=2'); // Error de conexión servidor B.D.
19//________________________________________________________________________________________________________
20$ITEMS_PUBLICOS=1;
21$ITEMS_PRIVADOS=2;
22
23$tip=$ITEMS_PUBLICOS; // Tipo de items 1=Públicos 2=privados
24if (isset($_GET["tip"]))        $tip=$_GET["tip"];
25
26$iph=tomaIP();
27if(empty($iph))
28        die("***ATENCION.- Usted no esta accediendo desde un ordenador permitido: Dirección IP=".$iph);
29
30$UrlPagina=$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; // Url página
31$UrlPagina=dirname($UrlPagina);
32$UrlPaginaIconos=dirname($UrlPagina)."/images/iconos";
33//________________________________________________________________________________________________________
34$rsmenu=RecuperaMenu($cmd,$iph);        // Recupera un recordset con los datos del m en
35if(!empty($rsmenu)){
36        switch($tip){
37                case $ITEMS_PUBLICOS:
38                        if(!empty($rsmenu->campos["htmlmenupub"])){
39                                $urlHtml=$rsmenu->campos["htmlmenupub"];
40                                if(strtoupper(substr($urlHtml,0,7)!="HTTP://")) $urlHtml="http://".$urlHtml;
41                                Header('Location: '.$urlHtml); // Url del menu personalizado
42                        }
43                        else{
44                                $_SESSION["widcentro"]=$rsmenu->campos["idcentro"];
45                                $codeHtml=GeneraMenu($rsmenu,$ITEMS_PUBLICOS,$iph); // Genera men pblico
46                        }
47                        break;
48                       
49                case $ITEMS_PRIVADOS:
50                        if(!empty($rsmenu->campos["htmlmenupri"])){
51                                $urlHtml=$rsmenu->campos["htmlmenupri"];
52                               
53                                if(strtoupper(substr($urlHtml,0,7)!="HTTP://")) $urlHtml="http://".$urlHtml;
54                                Header('Location: '.$urlHtml); // Url del menu personalizado
55                        }
56                        else{
57                                $_SESSION["widcentro"]=$rsmenu->campos["idcentro"];
58                                $codeHtml=GeneraMenu($rsmenu,$ITEMS_PRIVADOS,$iph); // Genera men pblico
59                        }
60                        break;
61        }                       
62}
63else{
64        $codeHtml='<P align=center>';
65        $codeHtml.='<BR><BR><SPAN style="COLOR:#999999;FONT-FAMILY: Arial, Helvetica, sans-serif;FONT-SIZE: 16px;">
66        NO SE HA DETECTADO NINGÚN MENÚ PARA ESTE CLIENTE</SPAN>';
67        $codeHtml.='</P>';
68}
69?>
70        <HTML>
71        <HEAD>
72        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
73        </HEAD>
74        <?
75
76        if(!empty($rsmenu->campos["idurlimg"])){ // Imagen de fondo
77                $urlimg=TomaDato($cmd,0,'iconos',$rsmenu->campos["idurlimg"],'idicono','urlicono');
78                $urlimgfondo="../images/iconos/".$urlimg;
79                echo '<BODY  bgcolor=white background="'.$urlimgfondo.'">';
80        }
81        else{
82                echo'<BODY  bgcolor=white background="../images/iconos/fondo800x600.png">';
83                echo '<P align=left><IMG border=0 src="../images/iconos/logoopengnsys.png"><P>';
84        }
85                echo $codeHtml;
86        ?>
87        </BODY>
88        </HTML>
89<?
90//___________________________________________________________________________________________________
91//
92// Recupera Men
93//___________________________________________________________________________________________________
94function RecuperaMenu($cmd,$iph){
95        $rs=new Recordset;
96        $cmd->texto="SELECT menus.idcentro,menus.resolucion,menus.titulo,menus.idurlimg,menus.coorx,menus.coory,
97                        menus.modalidad,menus.scoorx,menus.scoory,menus.smodalidad,menus.htmlmenupub,menus.htmlmenupri,
98                        acciones_menus.tipoaccion,acciones_menus.idaccionmenu,acciones_menus.idtipoaccion,
99                        acciones_menus.tipoitem,acciones_menus.descripitem,iconos.urlicono
100                        FROM ordenadores
101                        INNER JOIN menus ON menus.idmenu = ordenadores.idmenu
102                        LEFT OUTER JOIN acciones_menus ON acciones_menus.idmenu = menus.idmenu
103                        LEFT OUTER JOIN iconos ON iconos.idicono=acciones_menus.idurlimg
104                        WHERE ordenadores.ip='".$iph."' ORDER by acciones_menus.orden";
105
106        $rs->Comando=&$cmd;
107        $resul=$rs->Abrir();
108        if (!$rs->Abrir()) return(false);
109        if ($rs->EOF) return(false);
110        return($rs);
111}
112//___________________________________________________________________________________________________
113//
114// Muestra el menu pblico
115//___________________________________________________________________________________________________
116function GeneraMenu($rs,$tipo,$iph){   
117        global $ITEMS_PUBLICOS;
118        global $ITEMS_PRIVADOS;
119        global $UrlPaginaIconos;
120
121        $titulo=$rs->campos["titulo"];
122        $coorx=$rs->campos["coorx"];
123        $coory=$rs->campos["coory"];
124        $modalidad=$rs->campos["modalidad"];
125        $scoorx=$rs->campos["scoorx"];
126        $scoory=$rs->campos["scoory"];
127        $smodalidad=$rs->campos["smodalidad"];
128        $scoory=$rs->campos["scoory"];
129        $resolucion=$rs->campos["resolucion"];
130        $htmlmenupub=$rs->campos["htmlmenupub"];
131        $htmlmenupri=$rs->campos["htmlmenupri"];
132                       
133        if($tipo==$ITEMS_PRIVADOS)
134                $mod=$smodalidad;
135        else
136                $mod=$modalidad;
137        $codeHTML="";
138
139        //      Genera HTML de la p�ina en funci� de las propiedades del Men del clioente
140        //$codeHTML.='<DIV style="POSITION:absolute;TOP:'.$coory."px;LEFT:".$coorx.'px">';
141        $codeHTML.='<P align=center>';
142        $codeHTML.='<SPAN style="COLOR: #999999;FONT-FAMILY: Arial, Helvetica, sans-serif;FONT-SIZE: 20px;"><U>'.$titulo.'</U></SPAN>';
143        $codeHTML.='</BR>';
144       
145        $codeHTML.='<TABLE cellspacing=4 cellpadding=0 align="center" border=0 >';
146        $codeHTML.='<TR>';
147        $codeHTML.='<TD colspan="'.(($mod*2)+1).'" >&nbsp;</TD>';
148        $codeHTML.='</TR>';
149        $codeHTML.='<TR>';
150
151        $c=0; // Contador de columnas
152       
153        while (!$rs->EOF){ // Recorre acciones del menu
154                $tipoitem=$rs->campos["tipoitem"];
155                if($tipoitem==$tipo){
156                        $tipoaccion=$rs->campos["tipoaccion"];
157                        $idtipoaccion=$rs->campos["idtipoaccion"];
158                        $idaccionmenu=$rs->campos["idaccionmenu"];
159                        $descripitem=$rs->campos["descripitem"];
160                        $urlicono=$rs->campos["urlicono"];
161                        if(empty($urlicono))
162                                $urlicono="defaultitem.gif";
163
164                        $codeHTML.='<TD align=center>
165                                <A href="ejecutaritem.php?iph='.$iph.'&idt='.$idaccionmenu.'">
166                                        <IMG border=0 src="http://'.$UrlPaginaIconos.'/'.$urlicono.'" width=64></A></TD>';
167                        $codeHTML.='<TD style="font-family:Arial;color: #a71026;FONT-SIZE:14">
168                                <A style="text-decoration:none" href="ejecutaritem.php?iph='.$iph.'&idt='.$idaccionmenu.'">
169                                        <span style="FONT-FAMILY: Verdana,Arial, Helvetica, sans-serif;FONT-SIZE: 12px;COLOR:#999999">'.$descripitem.'</span></A></TD>';
170                        if($mod>1){
171                                //separación de columnas
172                                $codeHTML.='<TD width=10>&nbsp;</TD>';
173                        }
174                        $c++;
175                        if($c%$mod==0){
176                                $codeHTML.='</TR>';
177                                $codeHTML.='<TR>';
178                        }
179                }
180                $rs->Siguiente();
181        }
182        $codeHTML.='</TR>';
183        $rs->Cerrar();
184        $codeHTML.='</TABLE>';
185        $codeHTML.='</P>';
186        $codeHTML.='<BR><BR>';
187        $codeHTML.='<P align=center>';
188
189        switch($tipo){
190                case $ITEMS_PUBLICOS:
191                        $url.='acceso_operador.php';
192                        $lit="Administrar";
193                        break;
194                case $ITEMS_PRIVADOS:
195                        $url.='menucliente.php';
196                        $lit="Volver";
197                        break;
198        }               
199        $codeHTML.='<A style="text-decoration:none" href="'.$url.'?iph='.$iph.'">';
200        $codeHTML.='<SPAN style="
201                                BORDER-BOTTOM: #999999 1px solid;
202                                BORDER-LEFT: #999999 1px solid;
203                                BORDER-RIGHT: #999999 1px solid;
204                                BORDER-TOP: #999999 1px solid;
205                                COLOR:#999999;FONT-FAMILY: Arial, Helvetica, sans-serif;FONT-SIZE:9px;">&nbsp;'.$lit.'&nbsp;</SPAN></A>';
206       
207        $codeHTML.='</P>';
208        //$codeHTML.='</DIV>';
209        return($codeHTML);
210}
211//___________________________________________________________________________________________________
212//
213// Redupera la ip del cliente web
214//___________________________________________________________________________________________________
215function tomaIP(){     
216        // Se asegura que la pagina se solicita desde la IP que viene
217        global $HTTP_SERVER_VARS;
218        if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"] != "")
219                $ipcliente = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
220        else
221                $ipcliente = $HTTP_SERVER_VARS["REMOTE_ADDR"];
222
223        return($ipcliente);
224}
225?>
Note: See TracBrowser for help on using the repository browser.