package middleware import ( "kontor-api-gin/internal/globals" "net/http" "github.com/gin-contrib/sessions" "github.com/gin-contrib/slog" "github.com/gin-gonic/gin" ) func AuthRequired() gin.HandlerFunc { return func(c *gin.Context) { session := sessions.Default(c) user := session.Get(globals.UserKey) logger := slog.Get(c) logger.Info("AuthRequired", globals.UserKey, user) if user == nil { logger.Info("User not logged in") c.Redirect(http.StatusMovedPermanently, "/login") c.Abort() return } c.Next() } }