diff --git a/internal/bootstrap/http.go b/internal/bootstrap/http.go index 59d2c344..d3e3ca19 100644 --- a/internal/bootstrap/http.go +++ b/internal/bootstrap/http.go @@ -11,7 +11,6 @@ import ( "github.com/go-chi/chi/v5" "github.com/TheTNB/panel/internal/app" - "github.com/TheTNB/panel/internal/apps" "github.com/TheTNB/panel/internal/http/middleware" "github.com/TheTNB/panel/internal/route" ) @@ -25,7 +24,6 @@ func initHttp() { // add route route.Http(app.Http) route.Ws(app.Http) - apps.Boot(app.Http) srv := hlfhr.New(&http.Server{ Addr: fmt.Sprintf(":%d", app.Conf.MustInt("http.port")), diff --git a/internal/route/http.go b/internal/route/http.go index 908b64d1..ff2aa4c8 100644 --- a/internal/route/http.go +++ b/internal/route/http.go @@ -8,6 +8,7 @@ import ( "github.com/go-chi/chi/v5" + "github.com/TheTNB/panel/internal/apps" "github.com/TheTNB/panel/internal/embed" "github.com/TheTNB/panel/internal/http/middleware" "github.com/TheTNB/panel/internal/service" @@ -259,6 +260,11 @@ func Http(r chi.Router) { r.Post("/start", systemctl.Start) r.Post("/stop", systemctl.Stop) }) + + r.Route("/apps", func(r chi.Router) { + r.Use(middleware.MustLogin) + apps.Boot(r) + }) }) r.NotFound(func(writer http.ResponseWriter, request *http.Request) { diff --git a/pkg/apploader/apploader.go b/pkg/apploader/apploader.go index 275ba4eb..991fb1d7 100644 --- a/pkg/apploader/apploader.go +++ b/pkg/apploader/apploader.go @@ -47,7 +47,7 @@ func All() []*types.App { func Boot(r chi.Router) { apps.Range(func(_, app any) bool { if p, ok := app.(*types.App); ok { - r.Route(fmt.Sprintf("/api/apps/%s", p.Slug), p.Route) + r.Route(fmt.Sprintf("/%s", p.Slug), p.Route) } return true })