public async Task <User> ChangePassword([FromBody] PasswordCredentials userNewPassword)
        {
            var player = await _service.ChangePassword(userNewPassword);

            if (player != null)
            {
                player.Token = TtcAuthorizationFilterAttribute.CreateToken(player);
            }
            return(player);
        }
        public async Task <User> Login([FromBody] UserCredentials user)
        {
            var player = await _service.Login(user);

            if (player != null)
            {
                player.Token = TtcAuthorizationFilterAttribute.CreateToken(player);
            }
            return(player);
        }
        private bool HasValidToken()
        {
            if (Request.Headers.Authorization == null)
            {
                return(false);
            }

            var token = Request.Headers.Authorization.Parameter;

            return(TtcAuthorizationFilterAttribute.IsValidToken(token));
        }
        public async Task <User> ValidateToken([FromBody] ValidateTokenRequest token)
        {
            var validated = TtcAuthorizationFilterAttribute.ValidateToken(token.Token);

            if (validated == null)
            {
                return(null);
            }

            var userModel = await _service.GetUser(validated.PlayerId);

            userModel.Token = TtcAuthorizationFilterAttribute.CreateToken(userModel);
            return(userModel);
        }