Esempio n. 1
0
        public async Task <IActionResult> EersteKeerAanmelden()
        {
            try
            {
                ApplicationUser user = await _userManager.GetUserAsync(User);

                Jobcoach jobcoach = _jobcoachRepository.GetByEmail(user.UserName);
                EersteKeerAanmeldenViewModel model = new EersteKeerAanmeldenViewModel
                {
                    Email       = user.Email,
                    AlAangemeld = jobcoach.AlAangemeld
                };

                return(View(model));
            }
            catch (Exception e)
            {
                _exceptionLogRepository.Add(new ExceptionLog(e, "Kairos", "EersteKeerAanmelden -- GET --"));
                _exceptionLogRepository.Save();
                TempData["error"] = "Er ging onverwachts iets is, probeer later opnieuw";
            }

            await _signInManager.SignOutAsync();

            return(RedirectToAction("Login", "Account"));
        }
Esempio n. 2
0
        public async Task <IActionResult> EersteKeerAanmelden(EersteKeerAanmeldenViewModel model)
        {
            try
            {
                // Gebruiker meldt eerste keer aan, dus wachtwoord moet ingesteld worden
                ApplicationUser user = await _userManager.GetUserAsync(User);

                string code = await _userManager.GeneratePasswordResetTokenAsync(user);

                var paswoordResetten = await _userManager.ResetPasswordAsync(user, code, model.Password);

                if (paswoordResetten.Succeeded)
                {
                    await _signInManager.SignOutAsync();

                    var login = await _signInManager.PasswordSignInAsync(model.Email, model.Password, false, false);

                    if (login.Succeeded)
                    {
                        Jobcoach gebruiker = _jobcoachRepository.GetByEmail(model.Email);
                        gebruiker.AlAangemeld = true;
                        _jobcoachRepository.Save();

                        return(RedirectToAction(nameof(Index), "Kairos"));
                    }
                }
            }
            catch (Exception e)
            {
                _exceptionLogRepository.Add(new ExceptionLog(e, "Kairos", "EersteKeerAanmelden -- POST --"));
                _exceptionLogRepository.Save();
                TempData["error"] = "Er liep iets is, probeer later opnieuw";
            }

            await _signInManager.SignOutAsync();

            return(RedirectToAction(nameof(AccountController.Login), "Account"));
        }