public async Task <IActionResult> GirisYap(UserSingInViewModel model)
        {
            if (ModelState.IsValid)
            {
                var identityResult =
                    await _signInManager.PasswordSignInAsync(model.UserName, model.Password, model.RememberMe, true);

                if (identityResult.IsLockedOut)
                {
                    var gelen = await _userManager.GetLockoutEndDateAsync(
                        await _userManager.FindByNameAsync(model.UserName));

                    var kisitlananSure = gelen.Value;
                    var kalanDakika    = kisitlananSure.Minute - DateTime.Now.Minute;
                    ModelState.AddModelError("", $"3 başarısız giriş gerçekleştirdiniz.Hesabınız {kalanDakika} dakika boyunca kitlenmiştir.");
                    return(View("Index", model));
                }

                if (identityResult.IsNotAllowed)
                {
                    ModelState.AddModelError("", "Email Adresininzi doğrulayınız!");
                }
                if (identityResult.Succeeded)
                {
                    return(RedirectToAction("Index", "Panel"));
                }

                var yanlısGirilmeSayisi =
                    await _userManager.GetAccessFailedCountAsync(await _userManager.FindByNameAsync(model.UserName));

                ModelState.AddModelError("", $"Kullancı adı veya şifre hatalı {3-yanlısGirilmeSayisi} giriş hakkınız kaldı!!!");
            }
            return(View("Index", model));
        }
Example #2
0
        public async Task <IActionResult> Login(UserSingInViewModel user)
        {
            if (!ModelState.IsValid)
            {
                return(View(user));
            }

            User u = db.Users.FirstOrDefault(o => o.Login == user.Login.ToLower() &&
                                             passwordHasher.VerifyHashedPassword(null, o.PasswordHash, user.Password) != PasswordVerificationResult.Failed);

            if (u is null)
            {
                ModelState.AddModelError("", "Wrong password or login");

                return(View(user));
            }

            await Authenticate(u);

            return(RedirectToAction("Products", "Home")); //Actually we should send user right back where he/she came from...
        }
Example #3
0
 public UserSingIn()
 {
     InitializeComponent();
     DataContext = new UserSingInViewModel();
 }