source: admin/WebConsole/controlpostacceso.php @ 7382f7d

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 7382f7d was 06be672, checked in by alonso <alonso@…>, 15 years ago

Modificaciones de Alfonso

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

  • Property mode set to 100644
File size: 6.8 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: Diciembre-2003
6// Fecha Última modificación: Febrero-2005
7// Nombre del fichero: controlacceso.php
8// Descripción :Este fichero implementa el control de acceso a la aplicación
9// *********************************************************************
10include_once("controlacceso.php");
11include_once("./includes/CreaComando.php");
12include_once("./clases/AdoPhp.php");
13//________________________________________________________________________________________________________
14 $usu="";
15 $pss="";
16 $idc=0;
17 $iph=""; // Switch menu cliente
18 
19 if (isset($_POST["usu"])) $usu=$_POST["usu"]; 
20 if (isset($_POST["pss"])) $pss=$_POST["pss"]; 
21 if (isset($_POST["idcentro"])) $idc=$_POST["idcentro"];
22
23 if (isset($_GET["iph"])) $iph=$_GET["iph"]; 
24//________________________________________________________________________________________________________
25 $cmd=CreaComando($cnx); // Crea objeto comando
26 if (!$cmd)
27  die("Error de acceso");
28//________________________________________________________________________________________________________
29
30 $nmc="";
31 $idi="";
32
33 if(!empty($iph)){ // LLamada del browser del cliente
34     list($wip,$wusu,$wpwd,$wbd,$tbd)=split(";",$cnx);
35     $usu=$wusu;
36     $pss=$wpwd;
37 }
38
39 $resul=toma_datos($cmd,$idc,&$nmc,&$idi,$usu,&$tsu,$pss);
40 if(!$resul)
41     Header("Location: ".$wac."?herror=4"); // Error de conexión con servidor B.D.
42 
43 if(!empty($iph)){
44     $wurl="./varios/menucliente.php";
45     Header("Location:".$wurl); // Accede a la página de menus
46 }
47
48
49 session_start(); // Activa variables de sesión
50
51 $_SESSION["widcentro"]=$idc; 
52 $_SESSION["wnombrecentro"]=$nmc; 
53 $_SESSION["wusuario"]=$usu; 
54 $_SESSION["widtipousuario"]=$tsu; 
55 $_SESSION["widioma"]=$idi;
56 $_SESSION["wcadenaconexion"]=$cnx;
57 $_SESSION["wpagerror"]=$wer;
58 $_SESSION["wurlacceso"]=$wac;
59
60// Variables de entorno
61 $resul=toma_entorno($cmd,&$ips,&$prt);
62 if(!$resul)
63     Header("Location: ".$wac."?herror=4"); // Error de conexión con servidor B.D.
64
65 $_SESSION["wservidorhidra"]=$ips;
66 $_SESSION["whidraport"]=$prt;
67
68/*
69echo "<BR>Cadena=".$_SESSION["wcadenaconexion"];
70echo "<BR>servidorhidra=".$_SESSION["wservidorhidra"];
71echo "<BR>hidraport=".$_SESSION["whidraport"];
72echo "<BR>usuario=".$_SESSION["wusuario"];
73echo "<BR>idtipousuario=".$_SESSION["widtipousuario"];
74*/
75
76 //________________________________________________________________________________________________________
77 //    Busca datos del usuario que intenta acceder a la aplicación 
78 //        Parametros: 
79 //        - cmd:Una comando ya operativo (con conexión abierta)   
80 //        - usuario: Nombre del usuario   
81 //        - pasguor: Password del uuario   
82 //
83 //    Devuelve el identificador del centro, el nombre y el idioma utilizado por el usuario 
84 //_______________________________________________________________________________________________________
85 function toma_datos($cmd,$idcentro,$nombrecentro,$idioma,$usuario,$idtipousuario,$pasguor){
86     $rs=new Recordset; 
87                        if(!empty($idcentro)){
88                                 $cmd->texto="SELECT usuarios.idtipousuario,centros.nombrecentro,idiomas.nemonico AS idioma FROM usuarios";
89                                 $cmd->texto.=" INNER JOIN administradores_centros ON administradores_centros.idusuario=usuarios.idusuario";
90                                 $cmd->texto.=" INNER JOIN centros ON centros.idcentro=administradores_centros.idcentro";
91                                 $cmd->texto.=" INNER JOIN idiomas ON usuarios.ididioma=idiomas.ididioma";
92                                 $cmd->texto.=" WHERE idtipousuario<>3
93                                                                                                AND usuarios.usuario='".$usuario."'
94                                                                                                AND usuarios.pasguor='".$pasguor."'
95                                                                                                AND administradores_centros.idcentro=".$idcentro;
96                        }                       
97                        else{
98                                 $cmd->texto="SELECT usuarios.idtipousuario,idiomas.nemonico AS idioma FROM usuarios";
99                                 $cmd->texto.=" INNER JOIN idiomas ON usuarios.ididioma=idiomas.ididioma";
100                                 $cmd->texto.=" WHERE idtipousuario<>3
101                                                                                                AND usuarios.usuario='".$usuario."'
102                                                                                                AND usuarios.pasguor='".$pasguor."'";
103                               
104                        }
105     $rs->Comando=&$cmd;
106                 //echo $cmd->texto;
107                 if (!$rs->Abrir()) return($false); // Error al abrir recordset
108     if(!$rs->EOF){
109                    $idtipousuario=$rs->campos["idtipousuario"];
110                    $idioma=$rs->campos["idioma"];
111                    $usuario=$rs->campos["usuario"];
112                                if(!empty($idcentro)){
113                        $nombrecentro=$rs->campos["nombrecentro"];
114                            $idtipousuario=2; // Fuerza al acceso como administrador de UNidad organizativa
115                                        return(true);
116                                }
117                                else{
118                                        $nombrecentro="";
119                                        if($idtipousuario<>1) // Si NO es superadminsitrador
120                                   return(false);       
121                                        else
122                        return(true);                                   
123                                }
124    }
125    return(false);
126 }
127//________________________________________________________________________________________________________
128 //    Busca datos de configuración del sistema 
129 //        Parametros: 
130 //        - cmd:Una comando ya operativo (con conexión abierta)   
131 //        - ips: Dirección IP del servidor de administración   
132 //        - prt: Puerto de comunicaciones
133 //
134 //    Devuelve datos generales de configuración del sistema
135 //_______________________________________________________________________________________________________
136 function toma_entorno($cmd,$ips,$prt){
137        $rs=new Recordset; 
138        $cmd->texto="SELECT * FROM entornos";
139  $rs->Comando=&$cmd;
140        //echo $cmd->texto;
141        if (!$rs->Abrir()) return($false); // Error al abrir recordset
142  if(!$rs->EOF){
143          $ips=$rs->campos["ipserveradm"];
144          $prt=$rs->campos["portserveradm"];
145        }
146  return(true);
147 }
148 //_______________________________________________________________________________________________________
149?>
150 <HTML>
151     <TITLE> Administración web de aulas</TITLE>
152     <HEAD>
153     <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
154         <LINK rel="stylesheet" type="text/css" href="estilos.css">
155     </HEAD>
156     <BODY>
157         <DIV id="mensaje" style="Position:absolute;TOP:250;LEFT:330; visibility:visible">
158         <SPAN  align=center class=subcabeceras>Acceso permitido. Espere por favor ...</SPAN></P>
159         <SCRIPT LANGUAGE="JAVASCRIPT">
160             var vez=0;
161             setTimeout("acceso();",300);
162             function acceso(){
163                 o=document.getElementById("mensaje");
164                 var s=o.style.visibility;
165                 if(s=="hidden")
166                     o.style.visibility="visible";
167                 else
168                     o.style.visibility="hidden";
169                 if(vez>5){
170                     var w=window.top;
171                     w.location="frames.php";
172                 }
173                 vez++;
174                 setTimeout("acceso();",300);
175             }
176     </SCRIPT>
177  </BODY>
178 </HTML>
Note: See TracBrowser for help on using the repository browser.