public async Task <BridgeRegisterResponseModel> Register(BridgeRegisterRequestModel model) { var request = model as RegisterRequestModel; request.Email = request.Email.Trim().ToLower(); ApplicationUser user = _unitOfWork.Repository <ApplicationUser>().Find(x => x.Email.ToLower() == request.Email); if (user != null && user.EmailConfirmed) { throw new CustomException(HttpStatusCode.UnprocessableEntity, "email", "Email is already registered"); } if (user == null) { user = new ApplicationUser { Email = request.Email, UserName = request.Email, IsActive = true, RegistratedAt = DateTime.UtcNow, }; var result = await _userManager.CreateAsync(user, request.Password); if (!result.Succeeded) { throw new CustomException(HttpStatusCode.BadRequest, "general", result.Errors.FirstOrDefault().Description); } result = await _userManager.AddToRoleAsync(user, Role.User); if (!result.Succeeded) { throw new CustomException(HttpStatusCode.BadRequest, "general", result.Errors.FirstOrDefault().Description); } } try { await _accountService.SendConfirmEmailLink(user); } catch (Exception ex) { await _userManager.DeleteAsync(user); throw; } return(new RegisterResponseModel { Email = user.Email }); }
public async Task <BridgeRegisterResponseModel> Register(BridgeRegisterRequestModel model) { return(await _implementation(BridgeType.FacebookPhone).Register(model)); }
public async Task <BridgeRegisterResponseModel> Register(BridgeRegisterRequestModel model) { throw new NotImplementedException(); }
public async Task <BridgeRegisterResponseModel> Register(BridgeRegisterRequestModel model) { return(await _implementation(BridgeType.UserEmail).Register(model)); }