From fd6e2f3f73c1fbdda49e4f32d0e40e8d7230518b Mon Sep 17 00:00:00 2001 From: Joram Wilander Date: Tue, 21 Mar 2017 09:06:08 -0400 Subject: Implement GET /audits endpoint for APIv4 (#5779) * Implement GET /audits endpoint for APIv4 * Fix log unit test --- api4/system.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'api4/system.go') diff --git a/api4/system.go b/api4/system.go index 5058b0e2f..972d526da 100644 --- a/api4/system.go +++ b/api4/system.go @@ -19,6 +19,7 @@ func InitSystem() { BaseRoutes.ApiRoot.Handle("/config", ApiSessionRequired(getConfig)).Methods("GET") BaseRoutes.ApiRoot.Handle("/config/reload", ApiSessionRequired(configReload)).Methods("POST") BaseRoutes.ApiRoot.Handle("/config", ApiSessionRequired(updateConfig)).Methods("PUT") + BaseRoutes.ApiRoot.Handle("/audits", ApiSessionRequired(getAudits)).Methods("GET") BaseRoutes.ApiRoot.Handle("/email/test", ApiSessionRequired(testEmail)).Methods("POST") BaseRoutes.ApiRoot.Handle("/database/recycle", ApiSessionRequired(databaseRecycle)).Methods("POST") BaseRoutes.ApiRoot.Handle("/caches/invalidate", ApiSessionRequired(invalidateCaches)).Methods("POST") @@ -96,6 +97,22 @@ func updateConfig(c *Context, w http.ResponseWriter, r *http.Request) { w.Write([]byte(cfg.ToJson())) } +func getAudits(c *Context, w http.ResponseWriter, r *http.Request) { + if !app.SessionHasPermissionTo(c.Session, model.PERMISSION_MANAGE_SYSTEM) { + c.SetPermissionError(model.PERMISSION_MANAGE_SYSTEM) + return + } + + audits, err := app.GetAuditsPage("", c.Params.Page, c.Params.PerPage) + + if err != nil { + c.Err = err + return + } + + w.Write([]byte(audits.ToJson())) +} + func databaseRecycle(c *Context, w http.ResponseWriter, r *http.Request) { if !app.SessionHasPermissionTo(c.Session, model.PERMISSION_MANAGE_SYSTEM) { -- cgit v1.2.3-1-g7c22