コード例 #1
0
ファイル: UsersController.cs プロジェクト: ssesay/MEInsight
        public async Task <IActionResult> Reset(string id, UsersResetPasswordViewModel model)
        {
            if (id == null)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                ApplicationUser user = await _userManager.FindByIdAsync(id);

                if (user == null)
                {
                    return(NotFound());
                }

                var token = await _userManager.GeneratePasswordResetTokenAsync(user);

                var result = await _userManager.ResetPasswordAsync(user, token, model.Password);

                if (result.Succeeded)
                {
                    TempData["messageType"]  = "success";
                    TempData["messageTitle"] = "PASSWORD RESET";
                    TempData["message"]      = "Password reset was successful";
                    return(RedirectToAction(nameof(Index)));
                }
                AddErrors(result);
            }
            return(View(model));
        }
コード例 #2
0
ファイル: UsersController.cs プロジェクト: rummykhan/ml.net
        public ActionResult ResetPassword(string userId)
        {
            try
            {
                Guid guid = Guid.Parse(userId);
                using (var Context = new ProjectDBEntities())
                {
                    var User = Context.SiteUsers.Where(sxu => sxu.UserID == guid).FirstOrDefault <SiteUser>();

                    if (User != null)
                    {
                        UsersResetPasswordViewModel Model = new UsersResetPasswordViewModel();
                        Model.UserID   = User.UserID;
                        Model.UserPass = Hashing.GeneratePassword();
                        return(View(Model));
                    }
                    else
                    {
                        return(HttpNotFound());
                    }
                }
            }
            catch (Exception)
            {
                return(HttpNotFound());
            }
        }
コード例 #3
0
ファイル: UsersController.cs プロジェクト: ssesay/MEInsight
        // GET: Admin/Users/Reset/5
        public async Task <IActionResult> Reset(string id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            ApplicationUser user = await _userManager.FindByIdAsync(id);

            if (user == null)
            {
                return(NotFound());
            }

            UsersResetPasswordViewModel model = new UsersResetPasswordViewModel
            {
                Email = user.Email
            };

            return(View(model));
        }
コード例 #4
0
ファイル: UsersController.cs プロジェクト: rummykhan/ml.net
        public ActionResult ResetPassword(string userId, UsersResetPasswordViewModel model)
        {
            try
            {
                Guid guid = Guid.Parse(userId);

                using (var Context = new ProjectDBEntities())
                {
                    var User = Context.SiteUsers.Where(sxu => sxu.UserID == guid).FirstOrDefault <SiteUser>();

                    if (User != null)
                    {
                        if (Mailer.NotifyNewPassword(userId, model.UserPass))
                        {
                            User.UserPass = Hashing.CreateHash(model.UserPass);
                            Context.SaveChanges();
                        }
                        else
                        {
                            model.UserID = guid;
                            ModelState.AddModelError("Email", "SMTP Not working..");
                            return(View(model));
                        }
                    }
                    else
                    {
                        return(HttpNotFound());
                    }
                }

                return(RedirectToAction("All"));
            }
            catch (Exception)
            {
                return(HttpNotFound());
            }
        }