This commit is contained in:
orangix
2026-01-23 19:27:24 +01:00
parent fd704f53e7
commit 7b1314fae3
3 changed files with 74 additions and 37 deletions

28
main.go
View File

@@ -58,11 +58,26 @@ func main() {
app.Handle("GET /a/{postID}", wrapHandler(pages.HandlePost))
app.Handle("GET /a/{postID}/embed", wrapHandler(pages.HandleEmbed))
// app.Handle("GET /t/:tag.:type", pages.HandleTagRSS)
app.Handle("GET /t/{tag}", wrapHandler(pages.HandleTag))
app.Handle("GET /t/{tag}", wrapHandler(func(w http.ResponseWriter, r *http.Request) error {
name, ext := utils.SplitNameExt(r.PathValue("tag"))
if ext != "" {
r.SetPathValue("tag", name[0:len(name)-1])
r.SetPathValue("type", ext)
return pages.HandleTagRSS(w, r)
}
return pages.HandleTag(w, r)
}))
app.Handle("GET /t/{tag}/{postID}", wrapHandler(pages.HandlePost))
app.Handle("GET /r/{sub}/{postID}", wrapHandler(pages.HandlePost))
// app.Handle("GET /user/:userID.:type", pages.HandleUserRSS)
app.Handle("GET /user/{userID}", wrapHandler(pages.HandleUser))
app.Handle("GET /user/{userID}", wrapHandler(func(w http.ResponseWriter, r *http.Request) error {
name, ext := utils.SplitNameExt(r.PathValue("userID"))
if ext != "" {
r.SetPathValue("userID", name[0:len(name)-1])
r.SetPathValue("type", ext)
return pages.HandleUserRSS(w, r)
}
return pages.HandleUser(w, r)
}))
app.Handle("GET /user/{userID}/favorites", wrapHandler(pages.HandleUserFavorites))
app.Handle("GET /user/{userID}/comments", wrapHandler(pages.HandleUserComments))
app.Handle("GET /user/{userID}/cover", wrapHandler(pages.HandleUserCover))
@@ -81,7 +96,9 @@ func main() {
case component == "trending":
return pages.HandleTrending(w, r)
case strings.HasPrefix(component, "trending."):
// return pages.HandleTrendingRSS(w, r)
_, ext := utils.SplitNameExt(component)
r.SetPathValue("type", ext)
return pages.HandleTrendingRSS(w, r)
case strings.HasSuffix(component, ".gifv"):
r.SetPathValue("postID", component)
return pages.HandleGifv(w, r)
@@ -91,9 +108,8 @@ func main() {
r.SetPathValue("postID", component)
return pages.HandlePost(w, r)
}
return nil
}))
app.Handle("GET /stack/:baseName.:extension", wrapHandler(pages.HandleMedia))
// app.Handle("GET /stack/:baseName.:extension", wrapHandler(pages.HandleMedia))
// matches anything with no more specific route
app.Handle("GET /", wrapHandler(func(w http.ResponseWriter, r *http.Request) error {
err := render.Render(w, "errors/404", nil)