From baaf3b694bb90cd56e16e5faffcff7cdcb62ba98 Mon Sep 17 00:00:00 2001 From: Patrick Fairbank Date: Wed, 24 Aug 2022 17:52:22 -0700 Subject: [PATCH] Add query parameter to bracket SVG API to hide active match. --- web/api.go | 14 +++++++++++--- web/reports.go | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/web/api.go b/web/api.go index 051ef5e..568a719 100755 --- a/web/api.go +++ b/web/api.go @@ -228,19 +228,27 @@ func (web *Web) teamAvatarsApiHandler(w http.ResponseWriter, r *http.Request) { } func (web *Web) bracketSvgApiHandler(w http.ResponseWriter, r *http.Request) { + hideActive := false + if hideActiveValue, ok := r.URL.Query()["hideActive"]; ok { + hideActive = hideActiveValue[0] == "true" + } + w.Header().Set("Content-Type", "image/svg+xml") - if err := web.generateBracketSvg(w); err != nil { + if err := web.generateBracketSvg(w, hideActive); err != nil { handleWebErr(w, err) return } } -func (web *Web) generateBracketSvg(w io.Writer) error { +func (web *Web) generateBracketSvg(w io.Writer, hideActive bool) error { alliances, err := web.arena.Database.GetAllAlliances() if err != nil { return err } - activeMatch := web.arena.SavedMatch + var activeMatch *model.Match + if !hideActive { + activeMatch = web.arena.SavedMatch + } matchups := make(map[string]*allianceMatchup) if web.arena.PlayoffBracket != nil { diff --git a/web/reports.go b/web/reports.go index 8e25665..69fcfda 100755 --- a/web/reports.go +++ b/web/reports.go @@ -681,7 +681,7 @@ func (web *Web) alliancesPdfReportHandler(w http.ResponseWriter, r *http.Request // suitable Go library for doing so appears to exist). func (web *Web) bracketPdfReportHandler(w http.ResponseWriter, r *http.Request) { buffer := new(bytes.Buffer) - err := web.generateBracketSvg(buffer) + err := web.generateBracketSvg(buffer, true) if err != nil { handleWebErr(w, err) return