diff options
| author | Julian Hurst <julian.hurst92@gmail.com> | 2020-10-15 17:48:20 +0200 |
|---|---|---|
| committer | Julian Hurst <julian.hurst92@gmail.com> | 2020-10-15 17:48:20 +0200 |
| commit | 324609cf70e2e8cfcf74b7d22ddd45407eb103dd (patch) | |
| tree | bfe62f2f2402efbbdf6d21f1bac9d07e442f9d11 | |
| parent | 8539126144ae6d94a24525f125e54b372b22f821 (diff) | |
| download | grimtube-324609cf70e2e8cfcf74b7d22ddd45407eb103dd.tar.gz | |
Add error template and favicon support
| -rw-r--r-- | grimtube.go | 36 | ||||
| -rw-r--r-- | templates/error.html | 7 |
2 files changed, 30 insertions, 13 deletions
diff --git a/grimtube.go b/grimtube.go index a48e00e..9851c8d 100644 --- a/grimtube.go +++ b/grimtube.go @@ -25,10 +25,9 @@ func serve(w http.ResponseWriter, templatePath string, data interface{}) { panic(err) } else { if err := t.Execute(w, data); err != nil { - log.Fatal(err) + log.Println(err) } } - //log.Println(err) } func index(w http.ResponseWriter, r *http.Request) { @@ -56,17 +55,24 @@ func search(w http.ResponseWriter, r *http.Request) { items, err := ytparser.Search(term, page) if err != nil { log.Println(err) + data := struct { + Error error + }{ + err, + } + serve(w, "templates/error.html", data) + } else { + data := struct { + Items []ytparser.Item + Term string + Page int + }{ + items, + term, + page, + } + serve(w, "templates/search.html", data) } - data := struct { - Items []ytparser.Item - Term string - Page int - }{ - items, - term, - page, - } - serve(w, "templates/search.html", data) default: } } @@ -81,13 +87,17 @@ func embed(w http.ResponseWriter, r *http.Request) { } } +func favicon(w http.ResponseWriter, r *http.Request) { + http.ServeFile(w, r, "favicon.ico") +} + func main() { fs := http.FileServer(http.Dir("static")) http.Handle("/static/", http.StripPrefix("/static/", fs)) + http.HandleFunc("/favicon.ico", favicon) http.HandleFunc("/", index) http.HandleFunc("/search", search) http.HandleFunc("/embed", embed) - log.Fatal(http.ListenAndServe(":8080", nil)) } diff --git a/templates/error.html b/templates/error.html new file mode 100644 index 0000000..202e53a --- /dev/null +++ b/templates/error.html @@ -0,0 +1,7 @@ +{{define "title"}}Index{{end}} +{{define "content"}} + <div id="error"> + <p>Error: {{.Error}}</p> + <p>Please try refreshing</p> + </div> +{{end}} |
