public async Task <ActionResult> BeginRegister(StartRegisterViewModel viewModel) { bool isUserRegistered = await _membershipService.IsUserRegistered(viewModel.UserName); if (isUserRegistered) { ModelState.AddModelError("CustomError", "User is already registered."); return(View("Register", viewModel)); } if (!string.IsNullOrWhiteSpace(viewModel.Password) && !string.IsNullOrWhiteSpace(viewModel.UserName) && viewModel.Password.Equals(viewModel.ConfirmPassword)) { try { bool result = await _membershipService.SaveNewUser(viewModel.UserName, viewModel.Password, viewModel.Email); if (!result) { throw new Exception("Failed to create user"); } ServerRegisterResponse serverRegisterResponse = await _membershipService.GenerateServerChallenge(viewModel.UserName); CompleteRegisterViewModel registerModel = new CompleteRegisterViewModel { UserName = viewModel.UserName, AppId = serverRegisterResponse.AppId, Challenge = serverRegisterResponse.Challenge, Version = serverRegisterResponse.Version }; return(View("FinishRegister", registerModel)); } catch (Exception e) { _logger.LogError(e.Message); ModelState.AddModelError("CustomError", e.Message); return(View("Register", viewModel)); } } ModelState.AddModelError("CustomError", "invalid input"); return(View("Register", viewModel)); }
public JsonResult GetChallenge() { ServerRegisterResponse serverRegisterResponse = _memeberShipService.GenerateServerChallenge(HttpContext.User.Identity.Name); CompleteRegisterModel registerModel = new CompleteRegisterModel { UserName = HttpContext.User.Identity.Name, AppId = serverRegisterResponse.AppId, Challenge = serverRegisterResponse.Challenge, Version = serverRegisterResponse.Version }; JsonResult result = new JsonResult { Data = registerModel }; return(result); }
public JsonResult GetChallenge(string username) { ServerRegisterResponse serverRegisterResponse = _memeberShipService.GenerateServerChallenge(username); CompleteRegisterModel registerModel = new CompleteRegisterModel { UserName = username, AppId = serverRegisterResponse.AppId, Challenge = serverRegisterResponse.Challenge, Version = serverRegisterResponse.Version }; JsonResult result = new JsonResult { Data = registerModel }; return(result); }
public ActionResult BeginRegister([FromBody] RegisterModel value) { if (!string.IsNullOrWhiteSpace(value.Password) && !string.IsNullOrWhiteSpace(value.UserName) && value.Password.Equals(value.ConfirmPassword)) { ServerRegisterResponse serverRegisterResponse = _memeberShipService.GenerateServerRegistration(value.UserName.Trim(), value.Password.Trim()); CompleteRegisterModel registerModel = new CompleteRegisterModel { UserName = value.UserName, AppId = serverRegisterResponse.AppId, Challenge = serverRegisterResponse.Challenge, Version = serverRegisterResponse.Version }; return(View("FinishRegister", registerModel)); } ModelState.AddModelError("CustomError", "invalid input"); return(View("Register")); }
public ActionResult BeginRegister([FromBody] RegisterModel value) { if (_memeberShipService.IsUserRegistered(value.UserName)) { ModelState.AddModelError("CustomError", "User is already registered."); return(View("Register", value)); } if (!string.IsNullOrWhiteSpace(value.Password) && !string.IsNullOrWhiteSpace(value.UserName) && value.Password.Equals(value.ConfirmPassword)) { try { _memeberShipService.SaveNewUser(value.UserName, value.Password); ServerRegisterResponse serverRegisterResponse = _memeberShipService.GenerateServerChallenge(value.UserName.Trim()); CompleteRegisterModel registerModel = new CompleteRegisterModel { UserName = value.UserName, AppId = serverRegisterResponse.AppId, Challenge = serverRegisterResponse.Challenge, Version = serverRegisterResponse.Version }; return(View("FinishRegister", registerModel)); } catch (Exception e) { Console.WriteLine(e); ModelState.AddModelError("CustomError", e.Message); return(View("Register", value)); } } ModelState.AddModelError("CustomError", "invalid input"); return(View("Register", value)); }