Exemplo n.º 1
0
        protected void LogIn(object sender, EventArgs e)
        {
            if (IsValid)
            {
                Usuario usuarioLogueado = UsuarioManager.Login(Email.Text, Password.Text, out bool estaBloqueado);
                if (usuarioLogueado != null)
                {
                    UsuarioLogueado = usuarioLogueado;
                    BitacoraManager.Grabar(usuarioLogueado, "Login ok");

                    if (UsuarioManager.TienePermiso(usuarioLogueado, Permisos.CHEQUEO_DV))
                    {
                        List <string> mensajesDeError = new List <string>();
                        Session["MostrarMensajeDV"] = !IntegridadDatos.Chequear(mensajesDeError);
                        Session["MensajeDV"]        = string.Format(@"Error de integridad de datos:\n{0}", string.Join(@"\n", mensajesDeError));
                    }

                    SalirDeLaPagina();
                }
                else if (estaBloqueado)
                {
                    FailureText.Text     = "El usuario está bloquado. Restablezca la contraseña haciendo clic en \"Olvidé mi clave\" para desbloquearlo";
                    ErrorMessage.Visible = true;
                }
                else
                {
                    // El login falló
                    FailureText.Text     = "Intento de inicio de sesión no válido";
                    ErrorMessage.Visible = true;
                }
            }
        }