예제 #1
0
 public IActionResult Permisos()
 {
     Entidades.Sesion sesion = new Entidades.Sesion();
     try
     {
         CedFCIC.Entidades.Usuario usuario = new CedFCIC.Entidades.Usuario();
         sesion = HttpContext.Session.GetObj <Entidades.Sesion>("Sesion");
         if (!Funciones.SessionOK(sesion))
         {
             TempData["Ex"] = "Sesion finalizada por timeout.";
             return(RedirectToAction("Ingresar", "Usuario"));
         }
     }
     catch (Exception ex)
     {
         if (ex.InnerException == null)
         {
             ViewData["Ex"] = ex.Message;
         }
         else
         {
             ViewData["Ex"] = string.Format("{0}({1})", ex.Message, ex.InnerException.Message);
         }
     }
     return(View(sesion));
 }
예제 #2
0
 public IActionResult OlvidoId([Bind("Email")] CedFCIC.Entidades.Usuario usuario)
 {
     try
     {
         ModelState.Remove("Id");
         ModelState.Remove("Nombre");
         ModelState.Remove("Password");
         if (ModelState.IsValid)
         {
             Entidades.Sesion sesion = HttpContext.Session.GetObj <Entidades.Sesion>("Sesion");
             RN.EnvioCorreo.ReporteIdUsuarios(usuario.Email, sesion);
             ViewData["TextoMensaje"] = "Se ha enviado, por correo electrónico, el Id.Usuario de su(s) cuenta(s).  La recepción del email puede demorar unos minutos.";
         }
     }
     catch (Exception ex)
     {
         if (ex.InnerException == null)
         {
             ViewData["Ex"] = ex.Message;
         }
         else
         {
             ViewData["Ex"] = string.Format("{0}({1})", ex.Message, ex.InnerException.Message);
         }
     }
     return(View());
 }
예제 #3
0
 public IActionResult Salir()
 {
     try
     {
         CedFCIC.Entidades.Usuario usuario = new CedFCIC.Entidades.Usuario();
         Entidades.Sesion          sesion  = HttpContext.Session.GetObj <Entidades.Sesion>("Sesion");
         if (Funciones.SessionOK(sesion))
         {
             sesion.Usuario = usuario;
             HttpContext.Session.SetObj("Sesion", sesion);
         }
         else
         {
             TempData["Ex"] = "Sesion finalizada por timeout.";
         }
         return(RedirectToAction("Index", "Home"));
     }
     catch (Exception ex)
     {
         if (ex.InnerException == null)
         {
             ViewData["Ex"] = ex.Message;
         }
         else
         {
             ViewData["Ex"] = string.Format("{0}({1})", ex.Message, ex.InnerException.Message);
         }
     }
     return(View());
 }
예제 #4
0
 public IActionResult Ingresar([Bind("Id,Password")] CedFCIC.Entidades.UsuarioIngresar usuarioIngresar)
 {
     try
     {
         if (ModelState.IsValid)
         {
             CedFCIC.Entidades.Usuario usuario = new CedFCIC.Entidades.Usuario();
             usuario.Id       = usuarioIngresar.Id;
             usuario.Password = usuarioIngresar.Password;
             //sesion.UsuarioDemo = false;
             Entidades.Sesion sesion = HttpContext.Session.GetObj <Entidades.Sesion>("Sesion");
             if (!Funciones.SessionOK(sesion))
             {
                 RN.Usuario.Login(usuario, sesion);
                 sesion.Usuario = usuario;
                 RN.Sesion.RefrescarDatosUsuario(usuario, sesion);
                 HttpContext.Session.SetObj("Sesion", sesion);
                 _RequestHandler.HandleAboutRequest();
                 sesion = HttpContext.Session.GetObj <Entidades.Sesion>("Sesion");
                 RN.ReporteActividad.EnviarSiCorresponde(sesion);
                 return(RedirectToAction("Index", "Factura"));
             }
             else
             {
                 TempData["Ex"] = "Sesion finalizada por timeout.";
                 return(RedirectToAction("Ingresar", "Usuario"));
             }
         }
     }
     catch (Exception ex)
     {
         if (ex.InnerException == null)
         {
             ViewData["Ex"] = ex.Message;
             //if (ex.StackTrace.ToString() != null)
             //{
             //    ViewData["Ex"] = ViewData["Ex"] + ex.StackTrace.ToString();
             //}
         }
         else
         {
             ViewData["Ex"] = string.Format("{0}({1})", ex.Message, ex.InnerException.Message);
         }
     }
     return(View());
 }
예제 #5
0
 public IActionResult CambiarClave([Bind("Id,Password,PasswordNueva,PasswordConfirmacion")] CedFCIC.Entidades.UsuarioOlvidoClave usuario)
 {
     try
     {
         ViewBag.Boton1ReadOnly = "disabled";
         ModelState.Remove("Email");
         ModelState.Remove("Respuesta");
         if (ModelState.IsValid)
         {
             Entidades.Sesion          sesion = HttpContext.Session.GetObj <Entidades.Sesion>("Sesion");
             CedFCIC.Entidades.Usuario usr    = new CedFCIC.Entidades.Usuario();
             usr.Id = usuario.Id;
             RN.Usuario.Leer(usr, sesion);
             RN.Usuario.CambiarPassword(usr, usuario.Password, usuario.PasswordNueva, usuario.PasswordConfirmacion, sesion);
             ViewBag.Boton1ReadOnly   = "disabled";
             TempData["TextoMensaje"] = "Clave modificada satisfactoriamente.";
             return(RedirectToAction("Ingresar", "Usuario"));
         }
     }
     catch (EX.Validaciones.ElementoInexistente)
     {
         ViewBag.Boton1ReadOnly = "";
         ViewData["Ex"]         = "No hay ninguna cuenta con el Id.Usuario solicitado.";
     }
     catch (Exception ex)
     {
         ViewBag.Boton1ReadOnly = "";
         if (ex.InnerException == null)
         {
             ViewData["Ex"] = ex.Message;
         }
         else
         {
             ViewData["Ex"] = string.Format("{0}({1})", ex.Message, ex.InnerException.Message);
         }
     }
     return(View());
 }
예제 #6
0
 public IActionResult OlvidoClave([Bind("Id,Email,Pregunta,Respuesta,PasswordNueva,PasswordConfirmacion")] CedFCIC.Entidades.UsuarioOlvidoClave usuario)
 {
     try
     {
         string Paso = HttpContext.Session.GetString("OlvidoClavePaso");
         if (Paso == "1")
         {
             ViewBag.Boton1ReadOnly = "";
             ViewBag.Boton2ReadOnly = "disabled";
             ViewBag.Boton3ReadOnly = "disabled";
             ModelState.Remove("Nombre");
             ModelState.Remove("Password");
             ModelState.Remove("PasswordNueva");
             ModelState.Remove("PasswordConfirmacion");
             ModelState.Remove("Respuesta");
         }
         else if (Paso == "2")
         {
             ViewBag.Boton1ReadOnly = "disabled";
             ViewBag.Boton2ReadOnly = "";
             ViewBag.Boton3ReadOnly = "disabled";
             ModelState.Remove("Nombre");
             ModelState.Remove("Password");
             ModelState.Remove("PasswordNueva");
             ModelState.Remove("PasswordConfirmacion");
         }
         else if (Paso == "3")
         {
             ViewBag.Boton1ReadOnly = "disabled";
             ViewBag.Boton2ReadOnly = "disabled";
             ViewBag.Boton3ReadOnly = "";
             ModelState.Remove("Nombre");
             ModelState.Remove("Password");
         }
         if (ModelState.IsValid)
         {
             if (Paso == "1")
             {
                 Entidades.Sesion          sesion = HttpContext.Session.GetObj <Entidades.Sesion>("Sesion");
                 CedFCIC.Entidades.Usuario usr    = new CedFCIC.Entidades.Usuario();
                 usr.Id = usuario.Id;
                 RN.Usuario.Leer(usr, sesion);
                 if (usuario.Email.ToLower() != usr.Email.ToLower())
                 {
                     ViewData["Ex"] = "No hay ninguna cuenta en la que el Id.Usuario y el Email ingresados estén relacionados.";
                     return(View());
                 }
                 ViewBag.Boton1ReadOnly = "disabled";
                 ViewBag.Boton2ReadOnly = "";
                 ViewBag.Boton3ReadOnly = "disabled";
                 ViewBag.Pregunta       = usr.Pregunta;
                 HttpContext.Session.SetString("OlvidoClavePregunta", usr.Pregunta);
                 HttpContext.Session.SetString("OlvidoClaveRespuesta", usr.Respuesta);
                 HttpContext.Session.SetString("OlvidoClavePaso", "2");
             }
             else if (Paso == "2")
             {
                 ViewBag.Pregunta = HttpContext.Session.GetString("OlvidoClavePregunta");
                 string Respuesta = HttpContext.Session.GetString("OlvidoClaveRespuesta");
                 if (usuario.Respuesta == null || usuario.Respuesta.Trim().ToLower() != Respuesta.ToString().Trim().ToLower())
                 {
                     ViewData["Ex"] = "Respuesta incorrecta.";
                     return(View());
                 }
                 ViewBag.Boton1ReadOnly = "disabled";
                 ViewBag.Boton2ReadOnly = "disabled";
                 ViewBag.Boton3ReadOnly = "";
                 HttpContext.Session.SetString("OlvidoClavePaso", "3");
             }
             else if (Paso == "3")
             {
                 Entidades.Sesion          sesion = HttpContext.Session.GetObj <Entidades.Sesion>("Sesion");
                 CedFCIC.Entidades.Usuario usr    = new CedFCIC.Entidades.Usuario();
                 usr.Id = usuario.Id;
                 RN.Usuario.Leer(usr, sesion);
                 RN.Usuario.CambiarPassword(usr, usr.Password, usuario.PasswordNueva, usuario.PasswordConfirmacion, sesion);
                 ViewBag.Boton1ReadOnly = "disabled";
                 ViewBag.Boton2ReadOnly = "disabled";
                 ViewBag.Boton3ReadOnly = "disabled";
                 HttpContext.Session.Remove("OlvidoClavePaso");
                 ViewData["TextoMensaje"] = "Clave modificada satisfactoriamente.";
             }
         }
     }
     catch (EX.Validaciones.ElementoInexistente)
     {
         ViewData["Ex"] = "No hay ninguna cuenta con el Id.Usuario solicitado.";
     }
     catch (Exception ex)
     {
         if (ex.InnerException == null)
         {
             ViewData["Ex"] = ex.Message;
         }
         else
         {
             ViewData["Ex"] = string.Format("{0}({1})", ex.Message, ex.InnerException.Message);
         }
     }
     return(View());
 }