66 lines
1.7 KiB
Go
66 lines
1.7 KiB
Go
package server
|
|
|
|
import (
|
|
"github.com/go-chi/chi/v5"
|
|
"net/http"
|
|
)
|
|
|
|
func (q *qbitHandler) Routes(r chi.Router) http.Handler {
|
|
r.Route("/api/v2", func(r chi.Router) {
|
|
//if q.debug {
|
|
// r.Use(middleware.Logger)
|
|
//}
|
|
r.Use(q.CategoryContext)
|
|
r.Post("/auth/login", q.handleLogin)
|
|
|
|
r.Group(func(r chi.Router) {
|
|
r.Use(q.authContext)
|
|
r.Route("/torrents", func(r chi.Router) {
|
|
r.Use(HashesCtx)
|
|
r.Get("/info", q.handleTorrentsInfo)
|
|
r.Post("/add", q.handleTorrentsAdd)
|
|
r.Post("/delete", q.handleTorrentsDelete)
|
|
r.Get("/categories", q.handleCategories)
|
|
r.Post("/createCategory", q.handleCreateCategory)
|
|
|
|
r.Get("/pause", q.handleTorrentsPause)
|
|
r.Get("/resume", q.handleTorrentsResume)
|
|
r.Get("/recheck", q.handleTorrentRecheck)
|
|
r.Get("/properties", q.handleTorrentProperties)
|
|
r.Get("/files", q.handleTorrentFiles)
|
|
})
|
|
|
|
r.Route("/app", func(r chi.Router) {
|
|
r.Get("/version", q.handleVersion)
|
|
r.Get("/webapiVersion", q.handleWebAPIVersion)
|
|
r.Get("/preferences", q.handlePreferences)
|
|
r.Get("/buildInfo", q.handleBuildInfo)
|
|
r.Get("/shutdown", q.shutdown)
|
|
})
|
|
})
|
|
|
|
})
|
|
return r
|
|
}
|
|
|
|
func (u *uiHandler) Routes(r chi.Router) http.Handler {
|
|
r.Group(func(r chi.Router) {
|
|
r.Get("/", u.IndexHandler)
|
|
r.Get("/download", u.DownloadHandler)
|
|
r.Get("/repair", u.RepairHandler)
|
|
r.Get("/config", u.ConfigHandler)
|
|
r.Route("/internal", func(r chi.Router) {
|
|
r.Get("/arrs", u.handleGetArrs)
|
|
r.Post("/add", u.handleAddContent)
|
|
r.Get("/cached", u.handleCheckCached)
|
|
r.Post("/repair", u.handleRepairMedia)
|
|
r.Get("/torrents", u.handleGetTorrents)
|
|
r.Delete("/torrents/{hash}", u.handleDeleteTorrent)
|
|
r.Get("/config", u.handleGetConfig)
|
|
r.Get("/version", u.handleGetVersion)
|
|
})
|
|
})
|
|
|
|
return r
|
|
}
|