package repositories import ( "time" "git.secnex.io/secnex/oauth2-api/database" "git.secnex.io/secnex/oauth2-api/models" ) func GetAuthorizationByID(id string) (*models.Authorization, error) { var authorization *models.Authorization if err := database.DB.Where("id = ? AND expires_at > ?", id, time.Now().UTC()).First(&authorization).Error; err != nil { return nil, err } return authorization, nil } func CreateAuthorization(authorization *models.Authorization) error { return database.DB.Create(authorization).Error } func ExpireAuthorization(authorizationID string) error { return database.DB.Model(&models.Authorization{}).Where("id = ?", authorizationID).Update("expires_at", time.Now().UTC()).Error }