From 9cd48c660231592f3f8d9a035d45b568d987616e Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Thu, 17 Apr 2025 17:46:39 +0200 Subject: Show icon for win/lose/draw on play landing page --- pkg/ui/views/api.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'pkg/ui/views/api.go') diff --git a/pkg/ui/views/api.go b/pkg/ui/views/api.go index 3788f91..ba202c8 100644 --- a/pkg/ui/views/api.go +++ b/pkg/ui/views/api.go @@ -6,6 +6,8 @@ import ( "fmt" "net/http" "os" + + "github.com/boozec/rahanna/internal/api/auth" ) // getAuthorizationToken reads the authentication token from the .rahannarc file @@ -29,6 +31,22 @@ func getAuthorizationToken() (string, error) { return authorization, nil } +// From a JWT token it returns the associated user ID +func getUserID() (int, error) { + token, err := getAuthorizationToken() + if err != nil { + return -1, err + } + + claims, err := auth.ValidateJWT("Bearer " + token) + if err != nil { + return -1, err + } + + return claims.UserID, nil + +} + // sendAPIRequest sends an HTTP request to the API with the given parameters func sendAPIRequest(method, url string, payload []byte, authorization string) (*http.Response, error) { req, err := http.NewRequest(method, url, bytes.NewReader(payload)) -- cgit v1.2.3-18-g5258