From fe9ec7a0b45c9fd23a615a8b95ade3e9c1ea2d12 Mon Sep 17 00:00:00 2001 From: Mitchell Riedstra Date: Mon, 15 Feb 2021 15:31:37 -0500 Subject: Another re-structure. Deleting code is wonderful. --- http/render.go | 62 ---------------------------------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 http/render.go (limited to 'http/render.go') diff --git a/http/render.go b/http/render.go deleted file mode 100644 index b73ae76..0000000 --- a/http/render.go +++ /dev/null @@ -1,62 +0,0 @@ -package http - -import ( - "net/http" - "path/filepath" - "strings" -) - -func Render(w http.ResponseWriter, r *http.Request, - path string, vars map[string]interface{}, statusCode int) { - - u := r.URL.Path - if u == "/" { - u = "/index" - } - u = filepath.Join(".", u) - - // Sepcifically use the specified path for the page - p := NewPage(path) - - if vars != nil { - p.SetVars(vars) - } - - err := p.Render(w) - if err != nil { - if strings.HasSuffix(err.Error(), "no such file or directory") { - Logger.Printf("%s %s %d %s", r.RemoteAddr, r.Method, 404, u) - p = NewPage("404") - w.WriteHeader(404) - err := p.Render(w) - if err != nil { - Logger.Printf("%s %s path: %s while trying 404: %s", r.RemoteAddr, r.Method, u, err) - http.Error(w, "Internal server error", 500) - return - } - return - } else { - Logger.Printf("%s %s path: %s encountered: %s", r.RemoteAddr, r.Method, u, err) - http.Error(w, "Internal server error", 500) - return - } - } - - Logger.Printf("%s %s %d %s", r.RemoteAddr, r.Method, statusCode, u) - -} - -// RenderWithVars allows you to specify a specific page and whether or not -// you wish to override vars. If left nil they will not be overridden. -// Also see RenderForPath if you don't need to override them -func RenderWithVars(w http.ResponseWriter, r *http.Request, - path string, vars map[string]interface{}) { - - Render(w, r, path, vars, 200) -} - -// RenderForPath takes the path to a page and finish up the rendering -// Allowing you to place logic on what page is rendered by your handlers -func RenderForPath(w http.ResponseWriter, r *http.Request, path string) { - RenderWithVars(w, r, path, nil) -} -- cgit v1.2.3