Пример #1
0
        public LoginViewModel()
        {
            var doctors = EntityQuery <Doctor> .All(Session)()
                          .OrderBy(d => d.FullName)
                          .ToList();

            var adminPassport = PassportQuery.WithId(Session)(Admin.DefaultId);
            var admin         = new Admin(adminPassport);

            Passwords = new ConfirmPasswordViewModel();
            Users     = new ObservableCollection <IUser>(doctors);
            Users.Add(admin);

            Title        = "Вход";
            SelectedUser = Users[0];

            if (AuthorityController.AutoLogon)
            {
                var doc = doctors.Where(d => d.Passport.Remember).FirstOrDefault();
                if (doc != null)
                {
                    SelectedUser = doc;
                    AutoLogIn();
                }
            }
        }
Пример #2
0
        public async Task <ActionResult> ConfirmPassword(ConfirmPasswordViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var userName    = User.Identity.GetUserName();
            var loginResult = await SignInManager.PasswordSignInAsync(userName, model.Password,
                                                                      isPersistent : false, shouldLockout : false);

            switch (loginResult)
            {
            case SignInStatus.Success:
                return(Redirect(model.ReturnUrl));

            case SignInStatus.RequiresVerification:
                return(RedirectToAction("SendCode", "Account", new { returnUrl = model.ReturnUrl,
                                                                     rememberMe = false }));

            case SignInStatus.Failure:
            default:
                ModelState.AddModelError("", "Uneta lozinka je neispravna!");
                return(View(model));
            }
        }
Пример #3
0
        public async Task <IActionResult> Index(ConfirmPasswordViewModel viewModel)
        {
            var resetPasswordData = TempData.Peek <ResetPasswordData>() !;

            var hashIsValid = await passwordResetService.EmailAndResetPasswordHashAreValidAsync(
                resetPasswordData.Email,
                resetPasswordData.ResetPasswordHash,
                ResetPasswordHelpers.ResetPasswordHashExpiryTime
                );

            if (!hashIsValid)
            {
                TempData.Clear();
                return(RedirectToAction("Error"));
            }

            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }

            await passwordResetService.InvalidateResetPasswordForEmailAsync(resetPasswordData.Email);

            await passwordService.ChangePasswordAsync(resetPasswordData.Email, viewModel.Password !);

            TempData.Clear();

            return(View("Success"));
        }
Пример #4
0
        public ActionResult ConfirmPasswordReset(string key, string id)
        {
            var viewModel = new ConfirmPasswordViewModel
            {
                Key = key,
                Id  = id
            };

            return(View("confirm-password-reset", viewModel));
        }
Пример #5
0
        public IActionResult Password(ConfirmPasswordViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var data = TempData.Peek <RegistrationData>() !;

            data.PasswordHash = cryptoService.GetPasswordHash(model.Password !);
            TempData.Set(data);

            return(RedirectToAction("Summary"));
        }
Пример #6
0
        public async Task <ActionResult> ConfirmPasswordReset(ConfirmPasswordViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var result = await _mgr.ResetPasswordAsync(viewModel.Id, viewModel.Key, viewModel.NewPassword);

                if (result.Succeeded)
                {
                    return(RedirectToAction("posts", "videos"));
                }
                AddErrors(result);
            }
            return(View("confirm-password-reset", viewModel));
        }
Пример #7
0
        /// <summary>
        /// Xác nhận mật khẩu cho thao tác xóa
        /// </summary>
        /// <returns></returns>
        public ActionResult ConfirmPassword()
        {
            ConfirmPasswordViewModel model = new ConfirmPasswordViewModel();

            model.Username = Session["Username"] as string;
            model.Password = "";

            var user = db.Users.FirstOrDefault(u => u.Username == model.Username);

            if (user != null)
            {
                model.CorrectPassword = user.Password;
            }

            return(PartialView("_ConfirmPasswordPartial", model));
        }
Пример #8
0
        public AdminSettingsViewModel(Admin admin)
        {
            Contract.Requires(admin != null);
            this.admin = admin;
            Passwords  = new ConfirmPasswordViewModel()
            {
                IsRepeatVisible = true
            };

            CanOk = false;
            Passwords.PropertyChanged += (s, e) =>
            {
                CanOk = Passwords.CanConfirm;
            };

            Title          = "Настройки";
            HelpTopic      = "adminsettings";
            WithHelpButton = false;
        }