public async Task <IActionResult> Login(LoginViewModel model, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; JobCoach jc = _jobCoachRepository.GetByEmail(model.Email); if (jc == null) { ModelState.AddModelError("Email", "Er is geen gebruiker met dit emailadres geregistreerd"); } if (ModelState.IsValid) { // This doesn't count login failures towards account lockout // To enable password failures to trigger account lockout, set lockoutOnFailure: true var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure : false); if (result.Succeeded) { //_logger.LogInformation(1, "User logged in."); //return RedirectToLocal(returnUrl); if (_jobCoachRepository.GetByEmail(model.Email).MoetWachtwoordVeranderen) { ResetPasswordViewModel myModel = new ResetPasswordViewModel(); myModel.Email = model.Email; return(RedirectToAction(nameof(AccountController.ResetPassword), myModel)); } return(RedirectToAction("Index", "Home")); } if (result.RequiresTwoFactor) { return(RedirectToAction(nameof(SendCode), new { ReturnUrl = returnUrl, RememberMe = model.RememberMe })); } if (result.IsLockedOut) { _logger.LogWarning(2, "User account locked out."); return(View("Lockout")); } ModelState.AddModelError("Password", "Incorrect wachtwoord"); return(View(model)); } // If we got this far, something failed, redisplay form return(View(model)); }
public IActionResult Index(WachtwoordVergetenViewModel model) { var user = _userManager.Users.SingleOrDefault(u => u.Email.Equals(model.Email)); if (user == null) { ModelState.AddModelError("Email", "Er is geen account geregistreerd op dit emailadres"); } else { var code = _userManager.GenerateEmailConfirmationTokenAsync(user).Result; var callbackUrl = Url.Action("ResetPassword", "Account", new { userId = user.Id, code, email = model.Email }, protocol: HttpContext.Request.Scheme); JobCoach jc = _jobCoachRepository.GetByEmail(model.Email); MailVerzender.VerzendMailWachtwoordVergeten(jc.Naam + " " + jc.Voornaam, model.Email, callbackUrl); } if (ModelState.IsValid) { try { TempData["message"] = "U heeft succesvol een aanvraag voor een nieuw wachtwoord gedaan, u heeft een e-mail ontvangen met een herstel link."; return(RedirectToAction("Login", "Account")); } catch (Exception e) { ModelState.AddModelError("", e.Message); } } TempData["error"] = "Iets is misgelopen, de er is geen herstel mail verstuurd."; return(View(model)); }
public async Task <IActionResult> VerstuurMailMetPdf(MailMetPdfViewModel model) { AnalyseFilter.ZetSessieLeeg(HttpContext); if (ModelState.IsValid) { try { JobCoach jc = _jobCoachRepository.GetByEmail(User.Identity.Name); var dir = Path.Combine(_environment.WebRootPath, "pdfs"); var fileName = ""; if (Directory.Exists(dir)) { fileName = dir + "\\pdf_" + User.Identity.Name + ".pdf"; } await MailVerzender.StuurPdf(jc.Voornaam + jc.Naam, jc.Email, model.OntvangerMail, model.Onderwerp, model.Inhoud, fileName); TempData["message"] = "Uw email naar " + model.OntvangerMail + " werd succesvol verstuurd."; return(RedirectToAction(nameof(Index))); } catch (Exception e) { TempData["error"] = "Iets is misgelopen, uw email werd niet verstuurd."; ModelState.AddModelError("", e.Message); } } return(View(model)); }