From 96c6fe157b70ef013f9d4db9c3f6e271dcb2abb1 Mon Sep 17 00:00:00 2001 From: Mo Tarbin Date: Thu, 6 Feb 2025 22:09:00 -0500 Subject: [PATCH] Resource handler and add support for OAuth2 configuration --- internal/resource/handler.go | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/internal/resource/handler.go b/internal/resource/handler.go index 681a993..1e05f81 100644 --- a/internal/resource/handler.go +++ b/internal/resource/handler.go @@ -5,6 +5,7 @@ import ( jwt "github.com/appleboy/gin-jwt/v2" "github.com/gin-gonic/gin" ) + type Resource struct { Idp identityProvider `json:"identity_provider" binding:"omitempty"` } @@ -27,14 +28,22 @@ func NewHandler(cfg *config.Config) *Handler { func (h *Handler) getResource(c *gin.Context) { c.JSON(200, &Resource{ Idp: identityProvider{ - // skip resource endpoint for donetick.com + Auth_url: h.config.OAuth2Config.AuthURL, + Client_ID: h.config.OAuth2Config.ClientID, + Name: h.config.OAuth2Config.Name, + }, + }) +} + +func (h *Handler) RegisterRoutes(r *gin.RouterGroup, authMiddleware *jwt.GinJWTMiddleware) { + resourceRoutes := r.Group("api/v1/resource") + + // skip resource endpoint for donetick.com + if h.config.IsDoneTickDotCom { resourceRoutes.GET("", func(c *gin.Context) { c.JSON(200, gin.H{}) }) return } - - resourceRoutes.GET("", h.getResource) - } - + resourceRoutes.GET("", h.getResource) }