public async Task <IHttpActionResult> Register([FromBody] IIpUserCreate user) { var createUser = new IpUserCreate(); //TODO: this should not only check for username, but also email var usr = await _user.GetByUsernameAsync(user.Username); if (usr != null) { return(NotFound()); } var result = await createUser.CreateAsync(user); return(Ok()); }
/// <summary> /// Creates a new user /// </summary> /// <param name="user">The IIpUser object to create</param> /// <returns>A response based on the creation</returns> public virtual IIpResponse Create(IIpUserCreate user) { var validPassword = ValidatePassword(user.Password, user.ConfirmPassword); var validUser = ValidateUser(user); if (validPassword != IpPasswordEditStatus.Success) { return(new IpResponse { Status = (int)IpUserEditStatus.PasswordInvalid, ResponseMessage = validPassword.ToDescription() }); } if (validUser != IpUserEditStatus.Success) { return(new IpResponse { Status = (int)validUser, ResponseMessage = validUser.ToDescription() }); } return(new IpResponse()); }
/// <summary> /// Creates a new user /// </summary> /// <param name="user">The IIpUser object to create</param> /// <returns>A response based on the creation</returns> public async virtual Task <IIpResponse> CreateAsync(IIpUserCreate user) { return(await Task.Run(() => Create(user))); }