From 4cf112ad5e71361776f19cfa09a39cd45d93043d Mon Sep 17 00:00:00 2001 From: nquidox Date: Sun, 14 Sep 2025 19:32:22 +0300 Subject: [PATCH] get refresh from context --- internal/interfaces/utils.go | 1 + pkg/utils/userUuid.go | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/internal/interfaces/utils.go b/internal/interfaces/utils.go index d7c06b5..dd6b773 100644 --- a/internal/interfaces/utils.go +++ b/internal/interfaces/utils.go @@ -5,6 +5,7 @@ import "github.com/gin-gonic/gin" type Utils interface { IsEmail(email string) bool GetUserUuidFromContext(c *gin.Context) (string, error) + GetRefreshUuidFromContext(c *gin.Context) (string, error) HashPassword(password string) (string, error) ComparePasswords(hashedPassword string, plainPassword string) error } diff --git a/pkg/utils/userUuid.go b/pkg/utils/userUuid.go index ae24ce6..77cb5a3 100644 --- a/pkg/utils/userUuid.go +++ b/pkg/utils/userUuid.go @@ -27,3 +27,22 @@ func (u *Utils) GetUserUuidFromContext(c *gin.Context) (string, error) { } return userUuid.String(), nil } + +func (u *Utils) GetRefreshUuidFromContext(c *gin.Context) (string, error) { + refreshRaw, exists := c.Get("refresh_uuid") + if !exists { + return "", errors.New("refresh_uuid not found in context") + } + + refreshUuidStr, ok := refreshRaw.(string) + if !ok { + return "", errors.New("refresh_uuid is not a string") + } + + refreshUuid, err := uuid.Parse(refreshUuidStr) + if err != nil { + return "", errors.New("error parsing refresh_uuid") + } + + return refreshUuid.String(), nil +}