示例#1
0
 //Método que manda a la vista con el formulario de cambio de contraseña
 public ActionResult CambiarContraseña(AppFunkoPop.Models.PasswordChangeModel passModel = null)
 {
     if (passModel == null)
     {
         return(View());
     }
     else
     {
         return(View(passModel));
     }
 }
示例#2
0
        public ActionResult CambiarContraseña(AppFunkoPop.Models.PasswordChangeModel passModel)
        {
            if (ModelState.IsValid)
            {
                if (passModel.contrasenaAntigua == Convert.ToString(Session["PASSWD"]))
                {
                    if (passModel.contrasenaNueva == passModel.contrasenaRepetida)
                    {
                        if (passModel.contrasenaNueva == passModel.contrasenaAntigua)
                        {
                            passModel.contrasenaErrorMessage = "La nueva contraseña no puede ser igual a la anterior.";

                            return(RedirectToAction("CambiarContraseña", "Usuarios", passModel));
                        }
                        else
                        {
                            using (FunkoPopDDBBEntities db = new FunkoPopDDBBEntities())
                            {
                                int idUsu = Convert.ToInt32(Session["USUARIO_ID"]);

                                USUARIO usuario = db.USUARIOs.Where(c => c.USUARIO_ID == idUsu).First();
                                usuario.PASSWD = passModel.contrasenaNueva;
                                db.SaveChanges();

                                var userDetails = db.USUARIOs.Where(x => x.USUARIO_ID == usuario.USUARIO_ID).FirstOrDefault();
                                Session["PASSWD"] = userDetails.PASSWD;
                            }

                            return(RedirectToAction("Index", "Home"));
                        }
                    }
                    else
                    {
                        passModel.contrasenaErrorMessage = "Las nueva contraseña no coincide.";

                        return(RedirectToAction("CambiarContraseña", "Usuarios", passModel));
                    }
                }
                else
                {
                    passModel.contrasenaErrorMessage = "La contraseña antigua no es correcta.";

                    return(RedirectToAction("CambiarContraseña", "Usuarios", passModel));
                }
            }
            else
            {
                return(View());
            }
        }