summaryrefslogtreecommitdiffstats
path: root/admin/WebConsole/validacion/access_controller.php
blob: 7ed6c3fccc75a47b4aec9beeaf08ed13a4418ea2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<?php
/** Universidad de Huelva
        Fichero para validacion de usuarios antes del menu
        Es necesario crear la variable de sesion $validated y asignar true o false dependiendo del caso

**/
include_once("functions.php");


$action=(isset($_POST["action"]))?$_POST["action"]:$action;



if($action == "checkValidation"){
	$idordenador;
	$nombreordenador;
	$ip = TomaIP();
	$validacion;
	$paginalogin;
	$paginavalidacion;

	// Carga la configuracion del ordenador
	$cmd=CreaComando($cadenaconexion); // Crea objeto comando
	if (!$cmd)
        	Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D.

	$resul=TomaPropiedades($cmd);
	if (!$resul)
		Header('Location: '.$pagerror.'?herror=3'); // Error de recuperación de datos.
	// Registramos las variables en sesion
	$_SESSION["validacion"] = $validacion;
	$_SESSION["paginalogin"] = $paginalogin;
	$_SESSION["paginavalidacion"] = $paginavalidacion;
}
else{
	// Cogemos las variables de sesion
	$validacion = $_SESSION["validacion"];
        $paginalogin = $_SESSION["paginalogin"];
        $paginavalidacion = $_SESSION["paginavalidacion"];

}


/**/
// Solo se usa si se requiere validacion
if($_SESSION["validacion"] == true &&  isset($paginavalidacion) && $paginavalidacion != "")
	@include_once($paginavalidacion);


switch($action){
        case "checkValidation":
                // Comprobamos si es necesaria la validacion
		if($validacion == 1){
                        $action="Login";
			 // Comprobamos si es necesaria la validacion, y llamamos a synchronize
	                // La funcion synchronize se usa por si hace falta sincronizar alguna base de datos externa a opengnsys
        	        // Es obligatoria en el fichero de validacion, pero puede no hacer nada
			if (function_exists("synchronize")) {
                		synchronize($validacion);
                	}
			else {
				// Mostrar mensaje de error si no existe la función.
				die ("Error: P&aacute;gina de validaci&oacute;n incorrecta.");
                	}
                }
                else{
                        $action="default";
                }
                include("access_controller.php");

        break;
        case "Login":
                @include($paginalogin);
        break;
        case "validate":
                if(!isset($_SESSION)){
                        session_start();
                }
		// en la pagina "paginavalidacion" debe existir la funcion validate($_POST) forzosamente
                $_SESSION["validated"]=validate($_POST);
                if($_SESSION["validated"] == true){
                        include("../varios/menucliente.php");
                }
                else{
                        $_error="Usuario no v&aacute;lido";
                        @include($paginalogin);
                }
        break;
        default:
                if(!isset($_SESSION)){
                        session_start();
                }
                $_SESSION["validated"]=true;
                include("menucliente.php");
}
/**/