diff --git a/appview/pages/pages.go b/appview/pages/pages.go index c7b9b038..4079c720 100644 --- a/appview/pages/pages.go +++ b/appview/pages/pages.go @@ -288,3 +288,7 @@ func (p *Pages) Error500(w io.Writer) error { func (p *Pages) Error404(w io.Writer) error { return p.execute("errors/404", w, nil) } + +func (p *Pages) Error503(w io.Writer) error { + return p.execute("errors/503", w, nil) +} diff --git a/appview/pages/templates/errors/404.html b/appview/pages/templates/errors/404.html index 4ec3c7f5..1f8b2681 100644 --- a/appview/pages/templates/errors/404.html +++ b/appview/pages/templates/errors/404.html @@ -1,5 +1,8 @@ {{ define "title" }}404 · tangled{{ end }} {{ define "content" }} -

404 — nothing like that here!

+

404 — nothing like that here!

+

+ It seems we couldn't find what you were looking for. Sorry about that! +

{{ end }} diff --git a/appview/pages/templates/errors/500.html b/appview/pages/templates/errors/500.html index be763975..14709f29 100644 --- a/appview/pages/templates/errors/500.html +++ b/appview/pages/templates/errors/500.html @@ -1,5 +1,6 @@ {{ define "title" }}500 · tangled{{ end }} {{ define "content" }} -

500 — something broke!

+

500 — something broke!

+

We're working on getting service back up. Hang tight!

{{ end }} diff --git a/appview/pages/templates/errors/503.html b/appview/pages/templates/errors/503.html new file mode 100644 index 00000000..17254799 --- /dev/null +++ b/appview/pages/templates/errors/503.html @@ -0,0 +1,9 @@ +{{ define "title" }}503 · tangled{{ end }} + +{{ define "content" }} +

503 — unable to reach knot

+

+ We were unable to reach the knot hosting this repository. Try again + later. +

+{{ end }} diff --git a/appview/pages/templates/layouts/topbar.html b/appview/pages/templates/layouts/topbar.html index 6c331786..d56397a3 100644 --- a/appview/pages/templates/layouts/topbar.html +++ b/appview/pages/templates/layouts/topbar.html @@ -42,6 +42,6 @@ {{ end }} {{ else }} - login + login {{ end }} {{ end }} diff --git a/appview/state/repo.go b/appview/state/repo.go index a49e255a..2b1234b3 100644 --- a/appview/state/repo.go +++ b/appview/state/repo.go @@ -24,6 +24,7 @@ func (s *State) RepoIndex(w http.ResponseWriter, r *http.Request) { resp, err := http.Get(fmt.Sprintf("http://%s/%s/%s", f.Knot, f.OwnerDid(), f.RepoName)) if err != nil { + s.pages.Error503(w) log.Println("failed to reach knotserver", err) return }