From 4a7a4d8e47dfabf705dea788a401e79df8ed76a1 Mon Sep 17 00:00:00 2001 From: nemunaire Date: Tue, 23 Jan 2018 03:58:16 +0100 Subject: [PATCH] admin: try to generate events.json file --- admin/api/events.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/admin/api/events.go b/admin/api/events.go index a9fd5977..8665f62c 100644 --- a/admin/api/events.go +++ b/admin/api/events.go @@ -2,6 +2,8 @@ package api import ( "encoding/json" + "io/ioutil" + "path" "srs.epita.fr/fic-server/libfic" @@ -19,6 +21,18 @@ func init() { router.DELETE("/api/events/:evid", apiHandler(eventHandler(deleteEvent))) } +func genEventsFile() error { + if evts, err := fic.GetLastEvents(); err != nil { + return err + } else if j, err := json.Marshal(evts); err != nil { + return err + } else if err := ioutil.WriteFile(path.Join(TeamsDir, "events.json"), j, 0666); err != nil { + return err + } + + return nil +} + func getEvents(_ httprouter.Params, _ []byte) (interface{}, error) { if evts, err := fic.GetEvents(); err != nil { return nil, err @@ -48,6 +62,7 @@ func newEvent(_ httprouter.Params, body []byte) (interface{}, error) { if event, err := fic.NewEvent(ue.Text, ue.Kind); err != nil { return nil, err } else { + genEventsFile() return event, nil } } @@ -67,6 +82,7 @@ func updateEvent(event fic.Event, body []byte) (interface{}, error) { if _, err := ue.Update(); err != nil { return nil, err } else { + genEventsFile() return ue, nil } }