Exemple #1
0
        public async Task <IActionResult> SecondStepSignUp(SignUpViewModel signUpViewModel)
        {
            SignUpContinuedViewModel signUpContinuedViewModel = new SignUpContinuedViewModel
            {
                FirstName = signUpViewModel.FirstName,
                LatsName  = signUpViewModel.LatsName,
                Phone     = signUpViewModel.Phone,
                Email     = signUpViewModel.Email
            };

            var cities = await _userService.GetUserCities();

            ViewData["Cities"] = cities;
            var questions = await _questionService.GetList();

            ViewData["Questions"] = questions;
            return(View(signUpContinuedViewModel));
        }
Exemple #2
0
        public async Task <IActionResult> SecondStepSignUp(SignUpContinuedViewModel signUpContinuedViewModel)
        {
            if (ModelState.IsValid)
            {
                User tempUser = await _userService.GetUserByPassportId(signUpContinuedViewModel.PassportId);

                if (tempUser != null)
                {
                    ModelState.AddModelError("PassportId", ModelErrors.PassportIdExists);
                }
                else
                {
                    User user        = signUpContinuedViewModel;
                    User createdUser = await _userService.CreateUser(user, signUpContinuedViewModel.Password);

                    if (createdUser != null)
                    {
                        var role = createdUser.FirstName.Contains(Roles.Admin) ? Roles.Admin : Roles.User;
                        await _userService.AddRole(createdUser, role);

                        await _userService.AddClaim(createdUser, new Claim(ClaimTypes.Name, createdUser.FirstName));

                        await _userService.GenerateCard(createdUser);

                        await _mailService.SignupWelcome(user.Email, user.FirstName + " " + user.LatsName);

                        return(RedirectToAction(nameof(Login)));
                    }
                }
            }

            var cities = await _userService.GetUserCities();

            ViewData["Cities"] = cities;
            var questions = await _questionService.GetList();

            ViewData["Questions"] = questions;
            return(View());
        }