fix incorrect redirects breaking clones
1 file changed, 7 insertions(+), 5 deletions(-)
changed files
M routes/handler.go → routes/handler.go
@@ -92,14 +92,17 @@ } }() go func() { - d.UpdateRepos() for range time.Tick(time.Minute) { d.UpdateRepos() } }() - d.mountRepoPaths(srv.NewGroupPath("/{name}")) - d.mountRepoPaths(srv.NewGroupPath("/{category}/{name}")) + d.UpdateRepos() + + d.mountRepoPaths(srv.NewGroupPath("/{name}"), "") + for cat := range d.repos.Categories { + d.mountRepoPaths(srv.NewGroupPath("/"+cat+"/{name}"), cat) + } srv.StaticFS("/static/", staticFiles) srv.GET("/", d.Index)@@ -113,9 +116,8 @@ return srv } -func (d *deps) mountRepoPaths(router *atreugo.Router) { +func (d *deps) mountRepoPaths(router *atreugo.Router, category string) { router.UseBefore(func(rc *atreugo.RequestCtx) error { - category, _ := rc.UserValue("category").(string) name, _ := rc.UserValue("name").(string) repoName := path.Join(category, name)