public async Task <IActionResult> StudentRegister(RegisterStudentViewModel registerUserViewModel) { /* Console.WriteLine("GroupId = " + registerUserViewModel.GroupId); * Console.WriteLine("Name = " + registerUserViewModel.Name);*/ registerUserViewModel.GroupItems = populateGroups(); if (_databaseWorker.GroupExists(registerUserViewModel.GroupId)) { if (ModelState.IsValid) { IdentityResult result = await _authentication.CreateUserAsync(registerUserViewModel); if (result.Succeeded) { User user = await _authentication.FindUserByEmailAsync(registerUserViewModel.Email); if (!await _authentication.CreateStudentUserAsync(user.Id, registerUserViewModel.GroupId)) { await _authentication.DeleteUserAsync(user); return(View(registerUserViewModel)); } // установка куки await _authentication.SignInAsync(user); return(RedirectToAction("Index", "Home")); } else { foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } } } else { ModelState.AddModelError(string.Empty, "Choosen Group does not exists!"); } Console.WriteLine("is not valid or upper else group does not exists!"); return(View(registerUserViewModel)); }
public async Task <ActionResult> CreateStudent(RegisterStudentViewModel registerUserViewModel) { registerUserViewModel.GroupItems = PopulateGroups(); if (_databaseWorker.GroupExists(registerUserViewModel.GroupId)) { if (ModelState.IsValid) { IdentityResult result = await _authentication.CreateUserAsync(registerUserViewModel); if (result.Succeeded) { User user = await _authentication.FindUserByEmailAsync(registerUserViewModel.Email); if (!await _authentication.CreateStudentUserAsync(user.Id, registerUserViewModel.GroupId)) { await _authentication.DeleteUserAsync(user); return(View("CreateStudent", registerUserViewModel)); } return(RedirectToAction("Users")); } else { foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } } } else { ModelState.AddModelError(string.Empty, "Выбирете группу для студента"); } return(View("CreateStudent", registerUserViewModel)); }