Beispiel #1
0
        public ActionResult Validate(CambioPasswordVista model)
        {
            if (model != null && ModelState.IsValid)
            {
                //recuperamos el usuario y guardamos la password nueva
                var username = CustomIdentity.GetIdUsuario(model.UsuarioActual);
                using (var db = new UCEMEDbEntities())
                {
                    var usu             = db.Usuario.FirstOrDefault(o => o.idUsuario == username);
                    var passwencriptada = Encodificacion.GetSha1(model.PasswordNueva);
                    if (usu != null)
                    {
                        usu.password = passwencriptada;
                    }
                    else
                    {
                        //las passwords no coindiden
                        ViewBag.error = "UsuarioNoEncontrado";
                        return(View(model));
                    }
                    //usu.password = model.PasswordNueva;
                    db.SaveChanges();
                }
            }
            else
            {
                //las passwords no coindiden
                ViewBag.error = "PasswordsNoCoinciden";
                return(View(model));
            }

            return(RedirectToAction("Login", "Seguridad"));
        }
Beispiel #2
0
        public ActionResult Validate(string email, string token)
        {
            var username = CustomIdentity.GetIdUsuario(email);

            if (username != -1)
            {
                //recuperamos el usuario
                var usu = ConsultasBbdd.GetUsuariobyId(username);

                //decodificamos
                var emaildeco = Encodificacion.DecodeMessageWithPassword(token, usu.password);
                //comprobamos que coincide la deco con la de la base de datos
                if (emaildeco == usu.login)
                {
                    //redirigimos a la vista de recuperar password
                    var pass = new CambioPasswordVista {
                        UsuarioActual = usu.login
                    };

                    return(View(pass));
                }
                //las passwords no coinciden
                return(RedirectToAction("ErrorRecovery", "Seguridad"));
            }
            //esta mal el email
            return(RedirectToAction("ErrorRecovery", "Seguridad"));
        }