all repos — elgit @ e70b90b4b86f672eb9ccf9a768e083edef73395e

fork of legit: web frontend for git, written in go

de-duplicate error page

Alan Pearce
commit

e70b90b4b86f672eb9ccf9a768e083edef73395e

parent

cfea2a3ba078b13b46a99963953175f6d1c16ff1

1 file changed, 15 insertions(+), 10 deletions(-)

changed files
M routes/template.goroutes/template.go
@@ -16,22 +16,27 @@ "github.com/russross/blackfriday/v2"
) func (d *deps) Write404(w http.ResponseWriter) { - w.WriteHeader(http.StatusNotFound) - data := templates.PageData{ - Meta: d.c.Meta, - } - if err := templates.NotFoundPage(data).Render(w); err != nil { - log.Printf("404 template: %s", err) - } + d.WriteError(w, templates.Error{ + Code: http.StatusNotFound, + Message: "nothing like that here.", + }) } func (d *deps) Write500(w http.ResponseWriter) { - w.WriteHeader(http.StatusInternalServerError) + d.WriteError(w, templates.Error{ + Code: http.StatusInternalServerError, + Message: "something broke!", + }) +} + +func (d *deps) WriteError(w http.ResponseWriter, err templates.Error) { + w.WriteHeader(err.Code) data := templates.PageData{ - Meta: d.c.Meta, + Meta: d.c.Meta, + Error: &err, } if err := templates.ErrorPage(data).Render(w); err != nil { - log.Printf("500 template: %s", err) + log.Printf("error template: %s", err) } }