make the "raw" handlers a bit more consistent
also, todo: think about deleting them
This commit is contained in:
@@ -18,9 +18,9 @@ import (
|
||||
"github.com/oxtoacart/bpool"
|
||||
"github.com/wader/gormstore"
|
||||
|
||||
"go.senan.xyz/gonic/server/db"
|
||||
"go.senan.xyz/gonic/server/assets"
|
||||
"go.senan.xyz/gonic/server/ctrlbase"
|
||||
"go.senan.xyz/gonic/server/db"
|
||||
"go.senan.xyz/gonic/version"
|
||||
)
|
||||
|
||||
@@ -146,6 +146,7 @@ type Response struct {
|
||||
}
|
||||
|
||||
type handlerAdmin func(r *http.Request) *Response
|
||||
type handlerAdminRaw func(w http.ResponseWriter, r *http.Request)
|
||||
|
||||
//nolint:gocognit
|
||||
func (c *Controller) H(h handlerAdmin) http.Handler {
|
||||
@@ -212,6 +213,10 @@ func (c *Controller) H(h handlerAdmin) http.Handler {
|
||||
})
|
||||
}
|
||||
|
||||
func (c *Controller) HR(h handlerAdminRaw) http.Handler {
|
||||
return http.HandlerFunc(h)
|
||||
}
|
||||
|
||||
// ## begin utilities
|
||||
// ## begin utilities
|
||||
// ## begin utilities
|
||||
|
||||
@@ -82,6 +82,7 @@ func writeResp(w http.ResponseWriter, r *http.Request, resp *spec.Response) erro
|
||||
}
|
||||
|
||||
type handlerSubsonic func(r *http.Request) *spec.Response
|
||||
type handlerSubsonicRaw func(w http.ResponseWriter, r *http.Request) *spec.Response
|
||||
|
||||
func (c *Controller) H(h handlerSubsonic) http.Handler {
|
||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
@@ -96,8 +97,6 @@ func (c *Controller) H(h handlerSubsonic) http.Handler {
|
||||
})
|
||||
}
|
||||
|
||||
type handlerSubsonicRaw func(w http.ResponseWriter, r *http.Request) *spec.Response
|
||||
|
||||
func (c *Controller) HR(h handlerSubsonicRaw) http.Handler {
|
||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
response := h(w, r)
|
||||
|
||||
@@ -89,7 +89,7 @@ func setupAdmin(r *mux.Router, ctrl *ctrladmin.Controller) {
|
||||
// ** begin public routes (creates session)
|
||||
r.Use(ctrl.WithSession)
|
||||
r.Handle("/login", ctrl.H(ctrl.ServeLogin))
|
||||
r.HandleFunc("/login_do", ctrl.ServeLoginDo) // "raw" handler, updates session
|
||||
r.Handle("/login_do", ctrl.HR(ctrl.ServeLoginDo)) // "raw" handler, updates session
|
||||
assets.PrefixDo("static", func(path string, asset *assets.EmbeddedAsset) {
|
||||
_, name := filepath.Split(path)
|
||||
route := filepath.Join("/static", name)
|
||||
@@ -101,7 +101,7 @@ func setupAdmin(r *mux.Router, ctrl *ctrladmin.Controller) {
|
||||
// ** begin user routes (if session is valid)
|
||||
routUser := r.NewRoute().Subrouter()
|
||||
routUser.Use(ctrl.WithUserSession)
|
||||
routUser.HandleFunc("/logout", ctrl.ServeLogout) // "raw" handler, updates session
|
||||
routUser.Handle("/logout", ctrl.HR(ctrl.ServeLogout)) // "raw" handler, updates session
|
||||
routUser.Handle("/home", ctrl.H(ctrl.ServeHome))
|
||||
routUser.Handle("/change_own_password", ctrl.H(ctrl.ServeChangeOwnPassword))
|
||||
routUser.Handle("/change_own_password_do", ctrl.H(ctrl.ServeChangeOwnPasswordDo))
|
||||
|
||||
Reference in New Issue
Block a user