public ActionResult ResetPassword(ResetPaswordViewModel vm)
        {
            string errorMessage = "";
            string messageType  = "";

            using (MossWorkLogDbEntities context = new MossWorkLogDbEntities())
            {
                DateTime now = DateTime.Now.AddHours(-1);

                var request = context.PasswordResetRequests.SingleOrDefault(r => r.RequestId == vm.RequestId && r.Timestamp >= now);

                if (request == null)
                {
                    errorMessage = "Invalid Request.";
                    messageType  = "ERROR";
                    errorMessage = "Password reset done successfully.";
                }
                else
                {
                    var user = context.tblUsers.SingleOrDefault(x => x.UserId == request.RequestedUserId);
                    user.Password = vm.Password;
                    context.SaveChanges();
                }
            }
            return(RedirectToAction("Login", new { message = errorMessage, type = messageType }));
        }
        public ActionResult ResetPassword(string id)
        {
            string errorMessage = "";
            string messageType  = "";

            if (!string.IsNullOrWhiteSpace(id))
            {
                using (MossWorkLogDbEntities context = new MossWorkLogDbEntities())
                {
                    DateTime now     = DateTime.Now.AddHours(-1);
                    var      request = context.PasswordResetRequests.SingleOrDefault(r => r.RequestId == id && r.Timestamp >= now);

                    if (request != null)
                    {
                        ResetPaswordViewModel vm = new ResetPaswordViewModel()
                        {
                            RequestId = id
                        };
                        return(View(vm));
                    }
                    else
                    {
                        errorMessage = "Reset Link Expired.";
                        messageType  = "ERROR";
                    }
                }
            }
            else
            {
                errorMessage = "Invalid Parameters.";
                messageType  = "ERROR";
            }

            return(RedirectToAction("Login", new { message = errorMessage, type = messageType }));
        }
Example #3
0
 public async Task <IActionResult> ChangePassword(ResetPaswordViewModel model)
 {
     return(Json(await _userService.ChangePasswordAsync(model)));
 }