From fbd9bda712bd7d6e11e53a698ac9b25a84bf03cb Mon Sep 17 00:00:00 2001 From: Oliver Graff Date: Wed, 5 Oct 2016 04:55:07 -0400 Subject: [PATCH] Setup HTTP endpoint to hit to republish schedule, no UI changes yet --- setup_schedule.go | 18 ++++++++++++++++++ web.go | 1 + 2 files changed, 19 insertions(+) diff --git a/setup_schedule.go b/setup_schedule.go index 0a251ee..8ac20f8 100644 --- a/setup_schedule.go +++ b/setup_schedule.go @@ -94,6 +94,24 @@ func ScheduleGeneratePostHandler(w http.ResponseWriter, r *http.Request) { http.Redirect(w, r, "/setup/schedule", 302) } +// Publishes the schedule in the database to TBA +func ScheduleRepublishPostHandler(w http.ResponseWriter, r *http.Request) { + if eventSettings.TbaPublishingEnabled { + // Publish schedule to The Blue Alliance. + err := DeletePublishedMatches() + if err != nil { + http.Error(w, "Failed to delete published matches: "+err.Error(), 500) + return + } + err = PublishMatches() + if err != nil { + http.Error(w, "Failed to publish matches: "+err.Error(), 500) + return + } + } + + http.Redirect(w, r, "/setup/schedule", 302) +} // Saves the generated schedule to the database. func ScheduleSavePostHandler(w http.ResponseWriter, r *http.Request) { if !UserIsAdmin(w, r) { diff --git a/web.go b/web.go index f35b5bc..952aab2 100644 --- a/web.go +++ b/web.go @@ -175,6 +175,7 @@ func newHandler() http.Handler { router.HandleFunc("/setup/teams/generate_wpa_keys", TeamsGenerateWpaKeysHandler).Methods("GET") router.HandleFunc("/setup/schedule", ScheduleGetHandler).Methods("GET") router.HandleFunc("/setup/schedule/generate", ScheduleGeneratePostHandler).Methods("POST") + router.HandleFunc("/setup/schedule/republish", ScheduleRepublishPostHandler).Methods("POST") router.HandleFunc("/setup/schedule/save", ScheduleSavePostHandler).Methods("POST") router.HandleFunc("/setup/alliance_selection", AllianceSelectionGetHandler).Methods("GET") router.HandleFunc("/setup/alliance_selection", AllianceSelectionPostHandler).Methods("POST")