mirror of
https://github.com/thomiceli/opengist.git
synced 2025-07-10 01:48:02 +02:00
Add topics for Gists (#413)
This commit is contained in:
@ -405,3 +405,11 @@ func gistNewPushSoftInit(next Handler) Handler {
|
||||
return next(ctx)
|
||||
}
|
||||
}
|
||||
func setAllGistsMode(mode string) Middleware {
|
||||
return func(next Handler) Handler {
|
||||
return func(ctx *context.Context) error {
|
||||
ctx.SetData("mode", mode)
|
||||
return next(ctx)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -179,6 +179,16 @@ func (s *Server) setFuncMap() {
|
||||
_, err := url.ParseRequestURI(s)
|
||||
return err == nil
|
||||
},
|
||||
"topicsToStr": func(topics []db.GistTopic) string {
|
||||
str := ""
|
||||
for i, topic := range topics {
|
||||
if i > 0 {
|
||||
str += " "
|
||||
}
|
||||
str += topic.Topic
|
||||
}
|
||||
return str
|
||||
},
|
||||
}
|
||||
|
||||
t := template.Must(template.New("t").Funcs(fm).ParseFS(templates.Files, "*/*.html"))
|
||||
|
@ -90,17 +90,19 @@ func (s *Server) registerRoutes() {
|
||||
r.Any("/init/*", git.GitHttp, gistNewPushSoftInit)
|
||||
}
|
||||
|
||||
r.GET("/all", gist.AllGists, checkRequireLogin)
|
||||
r.GET("/all", gist.AllGists, checkRequireLogin, setAllGistsMode("all"))
|
||||
|
||||
if index.Enabled() {
|
||||
r.GET("/search", gist.Search, checkRequireLogin)
|
||||
} else {
|
||||
r.GET("/search", gist.AllGists, checkRequireLogin)
|
||||
r.GET("/search", gist.AllGists, checkRequireLogin, setAllGistsMode("search"))
|
||||
}
|
||||
|
||||
r.GET("/:user", gist.AllGists, checkRequireLogin)
|
||||
r.GET("/:user/liked", gist.AllGists, checkRequireLogin)
|
||||
r.GET("/:user/forked", gist.AllGists, checkRequireLogin)
|
||||
r.GET("/:user", gist.AllGists, checkRequireLogin, setAllGistsMode("fromUser"))
|
||||
r.GET("/:user/liked", gist.AllGists, checkRequireLogin, setAllGistsMode("liked"))
|
||||
r.GET("/:user/forked", gist.AllGists, checkRequireLogin, setAllGistsMode("forked"))
|
||||
|
||||
r.GET("/topics/:topic", gist.AllGists, checkRequireLogin, setAllGistsMode("topics"))
|
||||
|
||||
sC := r.SubGroup("/:user/:gistname")
|
||||
{
|
||||
|
Reference in New Issue
Block a user