public ActionResult Register([FromBody] JObject data) { string username = data["username"].ToString(); string password = data["password"].ToString(); PlayerValidationResult result = PlayerManager.RegisterPlayer(username, password); string jwtToken = null; if (result.validationStatus == ValidationStatus.Valid) { jwtToken = GenerateJSONWebToken(result.player.ID, result.player.GetUsername()); } return(PlayerResponseData.CreateResponseData(result, "Registration successful", jwtToken).GetActionResult()); }
public static PlayerResponseData CreateResponseData(PlayerValidationResult validationResult, string validMessage, string token = null) { if (validationResult.validationStatus != ValidationStatus.Valid) { return(new PlayerResponseData(400, validationResult.GetErrorMessage(), null)); } else { if (string.IsNullOrEmpty(token)) { return(new PlayerResponseData(200, validMessage, validationResult.player)); } else { return(new PlayerResponseData(200, validMessage, validationResult.player, token)); } } }