source: admin/WebConsole/controlpostacceso.php @ 9c58aa6

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 9c58aa6 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.0 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,&$pclo,&$rep);
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 $_SESSION["protclonacion"]=$pclo;
68 $_SESSION["repcentralizado"]=$rep;
69
70/*
71echo "<BR>Cadena=".$_SESSION["wcadenaconexion"];
72echo "<BR>servidorhidra=".$_SESSION["wservidorhidra"];
73echo "<BR>hidraport=".$_SESSION["whidraport"];
74echo "<BR>usuario=".$_SESSION["wusuario"];
75echo "<BR>idtipousuario=".$_SESSION["widtipousuario"];
76*/
77
78 //________________________________________________________________________________________________________
79 //    Busca datos del usuario que intenta acceder a la aplicación 
80 //        Parametros: 
81 //        - cmd:Una comando ya operativo (con conexión abierta)   
82 //        - usuario: Nombre del usuario   
83 //        - pasguor: Password del uuario   
84 //
85 //    Devuelve el identificador del centro, el nombre y el idioma utilizado por el usuario 
86 //_______________________________________________________________________________________________________
87 function toma_datos($cmd,$idcentro,$nombrecentro,$idioma,$usuario,$idtipousuario,$pasguor){
88     $rs=new Recordset; 
89                        if(!empty($idcentro)){
90                                 $cmd->texto="SELECT usuarios.idtipousuario,centros.nombrecentro,idiomas.nemonico AS idioma FROM usuarios";
91                                 $cmd->texto.=" INNER JOIN administradores_centros ON administradores_centros.idusuario=usuarios.idusuario";
92                                 $cmd->texto.=" INNER JOIN centros ON centros.idcentro=administradores_centros.idcentro";
93                                 $cmd->texto.=" INNER JOIN idiomas ON usuarios.ididioma=idiomas.ididioma";
94                                 $cmd->texto.=" WHERE idtipousuario<>3
95                                                                                                AND usuarios.usuario='".$usuario."'
96                                                                                                AND usuarios.pasguor='".$pasguor."'
97                                                                                                AND administradores_centros.idcentro=".$idcentro;
98                        }                       
99                        else{
100                                 $cmd->texto="SELECT usuarios.idtipousuario,idiomas.nemonico AS idioma FROM usuarios";
101                                 $cmd->texto.=" INNER JOIN idiomas ON usuarios.ididioma=idiomas.ididioma";
102                                 $cmd->texto.=" WHERE idtipousuario<>3
103                                                                                                AND usuarios.usuario='".$usuario."'
104                                                                                                AND usuarios.pasguor='".$pasguor."'";
105                               
106                        }
107     $rs->Comando=&$cmd;
108                 //echo $cmd->texto;
109                 if (!$rs->Abrir()) return($false); // Error al abrir recordset
110     if(!$rs->EOF){
111                    $idtipousuario=$rs->campos["idtipousuario"];
112                    $idioma=$rs->campos["idioma"];
113                    $usuario=$rs->campos["usuario"];
114                                if(!empty($idcentro)){
115                        $nombrecentro=$rs->campos["nombrecentro"];
116                            $idtipousuario=2; // Fuerza al acceso como administrador de UNidad organizativa
117                                        return(true);
118                                }
119                                else{
120                                        $nombrecentro="";
121                                        if($idtipousuario<>1) // Si NO es superadminsitrador
122                                   return(false);       
123                                        else
124                        return(true);                                   
125                                }
126    }
127    return(false);
128 }
129//________________________________________________________________________________________________________
130 //    Busca datos de configuración del sistema 
131 //        Parametros: 
132 //        - cmd:Una comando ya operativo (con conexión abierta)   
133 //        - ips: Dirección IP del servidor de administración   
134 //        - prt: Puerto de comunicaciones
135 //        - pclo: Protocolo de clonación
136 //          - rep: Uso de repositorio centralizado
137 //
138 //    Devuelve datos generales de configuración del sistema
139 //_______________________________________________________________________________________________________
140 function toma_entorno($cmd,$ips,$prt,$pclo,$rep){
141        $rs=new Recordset; 
142        $cmd->texto="SELECT * FROM entornos";
143  $rs->Comando=&$cmd;
144        //echo $cmd->texto;
145        if (!$rs->Abrir()) return($false); // Error al abrir recordset
146  if(!$rs->EOF){
147          $ips=$rs->campos["ipserveradm"];
148          $prt=$rs->campos["portserveradm"];
149          $pclo=$rs->campos["protoclonacion"];
150          $rep=$rs->campos["repositorio"];
151
152        }
153  return(true);
154 }
155 //_______________________________________________________________________________________________________
156?>
157 <HTML>
158     <TITLE> Administración web de aulas</TITLE>
159     <HEAD>
160     <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
161         <LINK rel="stylesheet" type="text/css" href="estilos.css">
162     </HEAD>
163     <BODY>
164         <DIV id="mensaje" style="Position:absolute;TOP:250;LEFT:330; visibility:visible">
165         <SPAN  align=center class=subcabeceras>Acceso permitido. Espere por favor ...</SPAN></P>
166         <SCRIPT LANGUAGE="JAVASCRIPT">
167             var vez=0;
168             setTimeout("acceso();",300);
169             function acceso(){
170                 o=document.getElementById("mensaje");
171                 var s=o.style.visibility;
172                 if(s=="hidden")
173                     o.style.visibility="visible";
174                 else
175                     o.style.visibility="hidden";
176                 if(vez>5){
177                     var w=window.top;
178                     w.location="frames.php";
179                 }
180                 vez++;
181                 setTimeout("acceso();",300);
182             }
183     </SCRIPT>
184  </BODY>
185 </HTML>
Note: See TracBrowser for help on using the repository browser.