refactor: simplify the get cookie data handling

This commit is contained in:
Stavros
2025-04-06 20:53:24 +03:00
parent bd7e160e10
commit 8e84e59c2f

View File

@@ -227,23 +227,15 @@ func (auth *Auth) GetSessionCookie(c *gin.Context) (types.SessionCookie, error)
return types.SessionCookie{}, err return types.SessionCookie{}, err
} }
// Get data // Get data from session
cookieUsername := session.Values["username"] username, usernameOk := session.Values["username"].(string)
cookieProvider := session.Values["provider"] provider, providerOK := session.Values["provider"].(string)
cookieExpiry := session.Values["expiry"] redirectURI, redirectOK := session.Values["redirectURI"].(string)
cookieTotpPending := session.Values["totpPending"] expiry, expiryOk := session.Values["expiry"].(int64)
cookieRedirectURI := session.Values["redirectURI"] totpPending, totpPendingOk := session.Values["totpPending"].(bool)
// Convert interfaces to correct types if !usernameOk || !providerOK || !expiryOk || !redirectOK || !totpPendingOk {
username, usernameOk := cookieUsername.(string) log.Warn().Msg("Session cookie is missing data")
provider, providerOk := cookieProvider.(string)
expiry, expiryOk := cookieExpiry.(int64)
totpPending, totpPendingOk := cookieTotpPending.(bool)
redirectURI, redirectURIOk := cookieRedirectURI.(string)
// Check if the cookie is invalid
if !usernameOk || !providerOk || !expiryOk || !totpPendingOk || !redirectURIOk {
log.Warn().Msg("Session cookie invalid")
return types.SessionCookie{}, nil return types.SessionCookie{}, nil
} }