diff --git a/controller/users.go b/controller/users.go index 9a3f7ce..ed662fa 100644 --- a/controller/users.go +++ b/controller/users.go @@ -96,7 +96,7 @@ func GetUserServices(ctx *gin.Context) { ctx.JSON(http.StatusOK, serviceTokens) } -func GetSelfUserId(ctx *gin.Context) { +func GetSelfUserID(ctx *gin.Context) { userInterface, exists := ctx.Get("user") if !exists { ctx.JSON(http.StatusUnauthorized, gin.H{"error": "User not authenticated"}) @@ -106,3 +106,14 @@ func GetSelfUserId(ctx *gin.Context) { user := userInterface.(*db.UsersModel) ctx.JSON(http.StatusOK, gin.H{"userId": user.ID}) } + +func GetSelf(ctx *gin.Context) { + userInterface, exists := ctx.Get("user") + if !exists { + ctx.JSON(http.StatusUnauthorized, gin.H{"error": "User not authenticated"}) + return + } + + user := userInterface.(*db.UsersModel) + ctx.JSON(http.StatusOK, gin.H{"userId": user.ID, "mail": user.Email, "admin": user.Admin}) +} diff --git a/router/router.go b/router/router.go index 105d2b1..a9030c9 100644 --- a/router/router.go +++ b/router/router.go @@ -63,7 +63,8 @@ func setupProtectedRouter(router *gin.Engine) *gin.Engine { protectedRoute.POST("/areas/create", controller.CreateArea) protectedRoute.GET("/areas", controller.GetUserAreas) - protectedRoute.GET("/me/userId", controller.GetSelfUserId) + protectedRoute.GET("/me/userId", controller.GetSelfUserID) + protectedRoute.GET("/me", controller.GetSelf) protectedRoute.GET("/users/:userId", controller.GetSpecificUser) protectedRoute.GET("/services/:userId", controller.GetUserServices) protectedRoute.PATCH("/areas/:areaId/status", controller.UpdateAreaStatus)