From 6e9f1ca8ab34914bcc2327e7d4fab99e6ff6e73c Mon Sep 17 00:00:00 2001 From: davy Date: Fri, 28 Jun 2019 17:51:38 -0500 Subject: handle empty playlist --- pkg/app/app.go | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'pkg/app') diff --git a/pkg/app/app.go b/pkg/app/app.go index 1cf147e..61d93c2 100644 --- a/pkg/app/app.go +++ b/pkg/app/app.go @@ -88,7 +88,17 @@ func (a *App) watch() { func (a *App) indexHandler(w http.ResponseWriter, r *http.Request) { log.Printf("/") pl := a.Library.Playlist() - http.Redirect(w, r, "/"+pl[0].ID, 302) + if len(pl) > 0 { + http.Redirect(w, r, "/"+pl[0].ID, 302) + } else { + a.Templates.ExecuteTemplate(w, "index.html", &struct { + Playing *media.Video + Playlist media.Playlist + }{ + Playing: &media.Video{ID: ""}, + Playlist: a.Library.Playlist(), + }) + } } func (a *App) pageHandler(w http.ResponseWriter, r *http.Request) { @@ -97,6 +107,13 @@ func (a *App) pageHandler(w http.ResponseWriter, r *http.Request) { log.Printf("/%s", id) playing, ok := a.Library.Videos[id] if !ok { + a.Templates.ExecuteTemplate(w, "index.html", &struct { + Playing *media.Video + Playlist media.Playlist + }{ + Playing: &media.Video{ID: ""}, + Playlist: a.Library.Playlist(), + }) return } w.Header().Set("Content-Type", "text/html; charset=utf-8") -- cgit v1.2.3