forked from dacendej/SW
-
Notifications
You must be signed in to change notification settings - Fork 0
/
procesarLogin.php
64 lines (55 loc) · 2.05 KB
/
procesarLogin.php
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
<?php
require_once 'config.php';
require_once 'vistas/helpers/usuarios.php';
require_once 'vistas/helpers/autorizacion.php';
require_once 'vistas/helpers/login.php';
$tituloPagina = 'Login';
$username = filter_input(INPUT_POST, 'username', FILTER_SANITIZE_SPECIAL_CHARS);
$password = $_POST["password"] ?? null;
$esValido = $username && $password && ($usuario = Usuario::login($username, $password));
if (!$esValido) {
$htmlFormLogin = buildFormularioLogin($username, $password);
$contenidoPrincipal=<<<EOS
<h1>Error</h1>
<p>El usuario o contraseña no son válidos.</p>
$htmlFormLogin
EOS;
require 'vistas/comun/layout.php';
exit();
}
$_SESSION['usuario'] = $usuario->nombreUsuario;
$_SESSION['usuarioNombre'] = $usuario->nombreCompleto;
$_SESSION['edad'] = $usuario->edad;
$_SESSION['experto'] = $usuario->experto;
$_SESSION['correo'] = $usuario->correo;
$_SESSION['admin'] = $usuario->admin;
$_SESSION['moderador'] = $usuario->moderador;
$rolesUsuario = '';
if ($_SESSION['admin']) {
$rolesUsuario .= 'Administrador, ';
}
if ($_SESSION['moderador']) {
$rolesUsuario .= 'Moderador, ';
}
if (!$_SESSION['admin'] && !$_SESSION['moderador']) { // Suponiendo que todos son al menos 'Usuario' si no son admin o moderador
$rolesUsuario .= 'Usuario, ';
}
$rolesUsuario = rtrim($rolesUsuario, ', ');
$datosUsuario = <<<HTML
<div class="datos-usuario">
<ul>
<li><span class="dato-usuario">Nombre de usuario:</span> {$_SESSION['usuario']}</li>
<li><span class="dato-usuario">Nombre completo:</span> {$_SESSION['usuarioNombre']}</li>
<li><span class="dato-usuario">Edad:</span> {$_SESSION['edad']}</li>
<li><span class="dato-usuario">Experto:</span> {$_SESSION['experto']}</li>
<li><span class="dato-usuario">Correo electrónico:</span> {$_SESSION['correo']}</li>
<li><span class="dato-usuario">Rol:</span> $rolesUsuario</li>
</ul>
</div>
HTML;
$contenidoPrincipal=<<<EOS
<h1>Bienvenido {$_SESSION['usuario']}</h1>
<h2 style="margin-left: 20px;">Datos:</h2>
$datosUsuario
EOS;
require 'vistas/comun/layout.php';