Exemplo n.º 1
0
        public async Task <ActionResult> ChangePasswordAdmin(ChangePasswordAdmin model)
        {
            if (ModelState.IsValid)
            {
                //Так как функция AddPasswordAsync не изменяет пароль если он существует, то сначала мы его удалим из базы
                using (AirFlightContext db = new AirFlightContext())
                {
                    var pass = db.AspNetUsers.Find(model.UserId);
                    pass.PasswordHash    = null;
                    db.Entry(pass).State = EntityState.Modified;
                    db.SaveChanges();
                }
                //Затем изменим. Если пароль введён согласно правилам (Заглавные буквы и строчные и цифры), то возвращаемся на страницу ролей
                var result = await UserManager.AddPasswordAsync(model.UserId, model.NewPassword);

                if (result.Succeeded)
                {
                    return(RedirectToAction("AddRole", "Admin", new { UserId = model.UserId, Message = "Пароль успешно изменён" }));
                }

                AddErrors(result);
            }
            // Это сообщение означает наличие ошибки; повторное отображение формы
            return(View(model));
        }
Exemplo n.º 2
0
 public void changeEmployeePassword()
 {
     if (currentUser is CompanyAdmin)
     {
         changePasswordAdminForm = new ChangePasswordAdmin(this);
         changePasswordAdminForm.Show();
     }
     else
     {
         changePasswordForm = new ChangePassword(this);
         changePasswordForm.Show();
     }
 }