From 87deaec8c519ee477439922f1cbecb8c90cbe5af Mon Sep 17 00:00:00 2001 From: ivar Date: Sat, 4 Apr 2026 16:51:05 +0200 Subject: feat: wire MediaHandler routes and govips lifecycle - Add RegisterUploadRoute to admin Server (POST /admin/upload/image, auth-protected) - Import govips/v2 and internal/media in main.go - Replace static /media/ file handler with mediaSrv.HandleServe for on-the-fly image conversion - Call vips.Startup/Shutdown around server lifetime Co-Authored-By: Claude Sonnet 4.6 --- internal/admin/server.go | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'internal') diff --git a/internal/admin/server.go b/internal/admin/server.go index c0400de..5457372 100644 --- a/internal/admin/server.go +++ b/internal/admin/server.go @@ -105,6 +105,14 @@ func (s *Server) Engine() *gin.Engine { return s.engine } +// RegisterUploadRoute registers handler under POST /admin/upload/image +// behind the admin Basic Auth middleware. +func (s *Server) RegisterUploadRoute(handler gin.HandlerFunc) { + admin := s.engine.Group("/admin") + admin.Use(s.authMiddleware()) + admin.POST("/upload/image", handler) +} + func (s *Server) authMiddleware() gin.HandlerFunc { return func(c *gin.Context) { if s.AuthFile == "" { -- cgit v1.3