source: admin/WebConsole/gestores/gestor_usuarios.php @ 03e3f88

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-instalacion
Last change on this file since 03e3f88 was 043e67d, checked in by pablombg <noreply@…>, 7 years ago

#814: Sustituir las etiquetas cortas de php por el formato largo

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

  • Property mode set to 100644
File size: 7.2 KB
Line 
1<?php
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 Última modificación: Agosto-2010
7// Nombre del fichero: gestor_usuarios.php
8// Descripción :
9//              Gestiona el mantenimiento de la tabla de usuarios
10// *******************************************************************************************************
11include_once("../includes/ctrlacc.php");
12include_once("../clases/SockHidra.php");
13include_once("../clases/AdoPhp.php");
14include_once("../clases/XmlPhp.php");
15include_once("../clases/ArbolVistaXML.php");
16include_once("../includes/CreaComando.php");
17include_once("../includes/constantes.php");
18include_once("./relaciones/usuarios_eliminacion.php");
19include_once("../includes/opciones.php");
20//________________________________________________________________________________________________________
21$opcion=0; // Inicializa parametros
22
23$idusuario=0;
24$usuario="";
25$pasguor="";
26$nombre="";
27$email="";
28$idambito=0;
29$ididioma=0;
30$idtipousuario=0;
31
32if (isset($_POST["opcion"])) $opcion=$_POST["opcion"];
33
34if (isset($_POST["idusuario"])) $idusuario=$_POST["idusuario"];
35if (isset($_POST["usuario"])) $usuario=$_POST["usuario"];
36if (isset($_POST["pasguor"])) $pasguor=$_POST["pasguor"];
37if (isset($_POST["nombre"])) $nombre=$_POST["nombre"];
38if (isset($_POST["email"])) $email=$_POST["email"];
39if (isset($_POST["idambito"])) $idambito=$_POST["idambito"];
40if (isset($_POST["ididioma"])) $ididioma=$_POST["ididioma"];
41if (isset($_POST["idtipousuario"])) $idtipousuario=$_POST["idtipousuario"];
42
43$tablanodo=""; // Arbol para nodos insertados
44
45$cmd=CreaComando($cadenaconexion); // Crea objeto comando
46$resul=false;
47if ($cmd){
48        $resul=Gestiona();
49        $cmd->Conexion->Cerrar();
50}
51// *************************************************************************************************************************************************
52?>
53<HTML>
54<HEAD>
55        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
56<BODY>
57        <SCRIPT language="javascript" src="../jscripts/propiedades_usuarios.js"></SCRIPT>
58<?php
59        $literal="";
60        switch($opcion){
61                case $op_alta :
62                        $literal="resultado_insertar_usuarios";
63                        break;
64                case $op_modificacion:
65                        $literal="resultado_modificar_usuarios";
66                        break;
67                case $op_eliminacion :
68                        $literal="resultado_eliminar_usuarios";
69                        break;
70                case $op_movida :
71                        $literal="resultado_cambiar_usuarios";
72                        break;
73                default:
74                        break;
75        }
76        echo '<P><SPAN style="visibility:hidden" id="arbol_nodo">'.$tablanodo.'</SPAN></P>';
77if ($resul){
78        echo '<SCRIPT language="javascript">'.chr(13);
79        echo 'var oHTML'.chr(13);
80        echo 'var cTBODY=document.getElementsByTagName("TBODY");'.chr(13);
81        echo 'o=cTBODY.item(1);'.chr(13);
82        if ($opcion==$op_alta )
83                echo $literal."(1,'".$cmd->DescripUltimoError()." ',".$idusuario.",o.innerHTML);";
84        else
85                echo $literal."(1,'".$cmd->DescripUltimoError()." ','".$nombre."');";
86        echo '</SCRIPT>';
87}
88else{
89        echo '<SCRIPT language="javascript">';
90        echo $literal."(0,'".$cmd->DescripUltimoError()."',".$idusuario.")";
91        echo '</SCRIPT>';
92}
93?>
94</BODY>
95</HTML>
96<?php
97/*________________________________________________________________________________________________________
98        Inserta, modifica o elimina datos en la tabla usuarios
99________________________________________________________________________________________________________*/
100function Gestiona(){
101        global  $cmd;
102        global  $opcion;
103        global $OPERADOR;
104        global $ADMINISTRADOR;
105
106        global $idusuario;
107        global $usuario;
108        global $pasguor;
109        global $nombre;
110        global $email;
111        global $idambito;
112        global $ididioma;
113        global $idtipousuario;
114
115        global  $op_alta;
116        global  $op_modificacion;
117        global  $op_eliminacion;
118        global  $op_movida;
119        global  $tablanodo;
120
121        $cmd->CreaParametro("@idusuario",$idusuario,1);
122        $cmd->CreaParametro("@usuario",$usuario,0);
123        $cmd->CreaParametro("@pasguor",$pasguor,0);
124        $cmd->CreaParametro("@nombre",$nombre,0);
125        $cmd->CreaParametro("@email",$email,0);
126        $cmd->CreaParametro("@idambito",$idambito,1);
127        $cmd->CreaParametro("@ididioma",$ididioma,1);
128        $cmd->CreaParametro("@idtipousuario",$idtipousuario,1);
129        // Generar clave de acceso a la API REST.
130        $apikey=md5(uniqid(rand(), true));
131        $cmd->CreaParametro("@apikey",$apikey,0);
132
133        switch($opcion){
134                case $op_alta :
135                        $cmd->texto="INSERT INTO usuarios (usuario,pasguor,nombre,email,ididioma,idtipousuario,apikey) VALUES (@usuario,SHA2(@pasguor,224),@nombre,@email,@ididioma,@idtipousuario,@apikey);";
136                        $resul=$cmd->Ejecutar();
137                        if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta
138                                $idusuario=$cmd->Autonumerico();
139                                $arbolXML=SubarbolXML_usuarios($idusuario,$nombre,$idtipousuario);
140                                $baseurlimg="../images/signos"; // Url de las imagenes de signo
141                                $clasedefault="texto_arbol"; // Hoja de estilo (Clase por defecto) del árbol
142                                $arbol=new ArbolVistaXML($arbolXML,0,$baseurlimg,$clasedefault);
143                                $tablanodo=$arbol->CreaArbolVistaXML();
144                        }
145                        break;
146                case $op_modificacion:
147                        $cmd->texto="UPDATE usuarios SET usuario=@usuario,pasguor=SHA2(@pasguor,224),nombre=@nombre,email=@email,ididioma=@ididioma WHERE idusuario=@idusuario";
148                        $resul=$cmd->Ejecutar();
149                        break;
150                case $op_eliminacion :
151                        $resul=EliminaUsuarios($cmd,$idusuario,"idusuario");
152                        break;
153                default:
154                        break;
155        }
156        return($resul);
157}
158/*________________________________________________________________________________________________________
159        Busca los datos de un usuario
160                Parametros:
161                - cmd:Una comando ya operativo (con conexión abierta) 
162                - idusuario:El identificador del usuario
163________________________________________________________________________________________________________*/
164function toma_usuario($cmd,$idusuario){
165        global $usuario;
166        global $idambito;
167        global $idtipousuario;
168
169        $rs=new Recordset;
170        $cmd->texto="SELECT usuario, idambito, idtipousuario FROM usuarios WHERE idusuario=".$idusuario;
171        $rs->Comando=&$cmd;
172        if (!$rs->Abrir()) return(0); // Error al abrir recordset
173        $rs->Primero();
174        if (!$rs->EOF){
175                $usuario=$rs->campos["usuario"];
176                $idambito=$rs->campos["idambito"];
177                $idtipousuario=$rs->campos["idtipousuario"];
178                return(true);
179        }
180        else
181                return(false);
182}
183/*________________________________________________________________________________________________________
184        Crea un arbol XML para el nuevo nodo insertado
185________________________________________________________________________________________________________*/
186function SubarbolXML_usuarios($idusuario,$nombre,$idtipousuario){
187                global $LITAMBITO_USUARIOS;
188                global $SUPERADMINISTRADOR;
189                global $ADMINISTRADOR;
190                global $OPERADOR;
191
192                switch($idtipousuario){
193                        case $SUPERADMINISTRADOR:
194                                $urlimg="../images/iconos/superadministradores.gif";
195                                break;
196                        case $ADMINISTRADOR:
197                                $urlimg="../images/iconos/administradores.gif";
198                                break;
199                        case $OPERADOR:
200                                $urlimg="../images/iconos/operadores.gif";
201                                break;
202                }
203                $cadenaXML='<USUARIO';
204                // Atributos                   
205                $cadenaXML.=' clickcontextualnodo="menu_contextual(this,' ."'flo_".$LITAMBITO_USUARIOS."'" .')"';
206                $cadenaXML.=' imagenodo="'.$urlimg.'"';
207                $cadenaXML.=' infonodo="'.$nombre.'"';
208                $cadenaXML.=' nodoid='.$LITAMBITO_USUARIOS.'-'.$idusuario;
209                $cadenaXML.='></USUARIO>';
210                return($cadenaXML);
211}
212?>
Note: See TracBrowser for help on using the repository browser.