mirror of
https://github.com/binwiederhier/ntfy.git
synced 2026-11-10 14:44:04 +08:00
Keep the admin routes inline in handleInternal
The admin socket reuses handleInternal behind a path allowlist (adminSocketPaths) instead of a separate adminHandler switch, so all routes are listed in one place.
This commit is contained in:
1 parent
f468f74492
commit
cb34deee5d
3 files changed
+45
-45
No files matched your search
+30
-2
@@ -681,14 +681,42 @@ func (s *Server) handleInternal(w http.ResponseWriter, r *http.Request, v *visit
|
||||
return s.handleHealth(w, r, v)
|
||||
} else if r.Method == http.MethodGet && r.URL.Path == apiReadyPath {
|
||||
return s.handleReady(w, r, v)
|
||||
} else if r.Method == http.MethodGet && r.URL.Path == apiVersionPath {
|
||||
return s.ensureAdmin(s.handleVersion)(w, r, v)
|
||||
} else if r.Method == http.MethodGet && r.URL.Path == apiConfigPath {
|
||||
return s.handleConfig(w, r, v)
|
||||
} else if r.Method == http.MethodGet && r.URL.Path == webAppConfigPath {
|
||||
return s.ensureWebEnabled(s.handleWebConfig)(w, r, v)
|
||||
} else if r.Method == http.MethodGet && r.URL.Path == webAppManifestPath {
|
||||
return s.ensureWebPushEnabled(s.handleWebManifest)(w, r, v)
|
||||
} else if h := s.adminHandler(r, false); h != nil {
|
||||
return s.ensureAdmin(h)(w, r, v)
|
||||
} else if r.Method == http.MethodGet && r.URL.Path == apiUsersPath {
|
||||
return s.ensureAdmin(s.handleUsersGet)(w, r, v)
|
||||
} else if r.Method == http.MethodPost && r.URL.Path == apiUsersPath {
|
||||
return s.ensureAdmin(s.handleUsersAdd)(w, r, v)
|
||||
} else if r.Method == http.MethodPut && r.URL.Path == apiUsersPath {
|
||||
return s.ensureAdmin(s.handleUsersUpdate)(w, r, v)
|
||||
} else if r.Method == http.MethodDelete && r.URL.Path == apiUsersPath {
|
||||
return s.ensureAdmin(s.handleUsersDelete)(w, r, v)
|
||||
} else if (r.Method == http.MethodPut || r.Method == http.MethodPost) && r.URL.Path == apiUsersAccessPath {
|
||||
return s.ensureAdmin(s.handleAccessAllow)(w, r, v)
|
||||
} else if r.Method == http.MethodDelete && r.URL.Path == apiUsersAccessPath {
|
||||
return s.ensureAdmin(s.handleAccessReset)(w, r, v)
|
||||
} else if r.Method == http.MethodGet && r.URL.Path == apiUsersTokensPath {
|
||||
return s.ensureAdmin(s.handleUsersTokensGet)(w, r, v)
|
||||
} else if r.Method == http.MethodPost && r.URL.Path == apiUsersTokensPath {
|
||||
return s.ensureAdmin(s.handleUsersTokensAdd)(w, r, v)
|
||||
} else if r.Method == http.MethodDelete && r.URL.Path == apiUsersTokensPath {
|
||||
return s.ensureAdmin(s.handleUsersTokensDelete)(w, r, v)
|
||||
} else if r.Method == http.MethodPost && r.URL.Path == apiUsersPasswordResetPath {
|
||||
return s.ensureAdmin(s.handleUsersPasswordReset)(w, r, v)
|
||||
} else if r.Method == http.MethodGet && r.URL.Path == apiAdminTiersPath {
|
||||
return s.ensureAdmin(s.handleAdminTiersGet)(w, r, v)
|
||||
} else if r.Method == http.MethodPost && r.URL.Path == apiAdminTiersPath {
|
||||
return s.ensureAdmin(s.handleAdminTiersAdd)(w, r, v)
|
||||
} else if r.Method == http.MethodPut && r.URL.Path == apiAdminTiersPath {
|
||||
return s.ensureAdmin(s.handleAdminTiersUpdate)(w, r, v)
|
||||
} else if r.Method == http.MethodDelete && r.URL.Path == apiAdminTiersPath {
|
||||
return s.ensureAdmin(s.handleAdminTiersDelete)(w, r, v)
|
||||
} else if r.Method == http.MethodPost && r.URL.Path == apiAccountPath {
|
||||
return s.ensureUserManager(s.handleAccountCreate)(w, r, v)
|
||||
} else if r.Method == http.MethodGet && r.URL.Path == apiAccountPath {
|
||||
|
||||
Reference in new issue
Block a user