ui: improve error pages (#7274)
* add testing * make each page accessible via `/devtest/error` * allow translating the `Page not found` part of the title * code: improve consistency, remove unused * devtest: put index page in a container to fix alignment * 500: make navbar more like the real one, remove fake menu button * deadcode: remove unused `func NotFound`: it was added inbdd32f152d
and the only usage was removed in1bfb0a24d8
Preview: https://codeberg.org/attachments/1b75afb3-e898-410f-be02-f036a5400143 Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7274 Reviewed-by: Gusted <gusted@noreply.codeberg.org> Reviewed-by: Beowulf <beowulf@beocode.eu>
This commit is contained in:
parent
683eb5bf78
commit
51ff4970ec
11 changed files with 106 additions and 32 deletions
|
@ -1,9 +1,11 @@
|
|||
// Copyright 2023 The Gitea Authors. All rights reserved.
|
||||
// Copyright 2025 The Forgejo Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package devtest
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"net/http"
|
||||
"path"
|
||||
"strings"
|
||||
|
@ -42,6 +44,17 @@ func FetchActionTest(ctx *context.Context) {
|
|||
ctx.JSONRedirect("")
|
||||
}
|
||||
|
||||
func ErrorPage(ctx *context.Context) {
|
||||
if ctx.Params("errcode") == "404" {
|
||||
ctx.NotFound("Example error", errors.New("Example error"))
|
||||
return
|
||||
} else if ctx.Params("errcode") == "413" {
|
||||
ctx.HTML(http.StatusRequestEntityTooLarge, base.TplName("status/413"))
|
||||
return
|
||||
}
|
||||
ctx.ServerError("Example error", errors.New("Example error"))
|
||||
}
|
||||
|
||||
func Tmpl(ctx *context.Context) {
|
||||
now := time.Now()
|
||||
ctx.Data["TimeNow"] = now
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
// Copyright 2014 The Gogs Authors. All rights reserved.
|
||||
// Copyright 2019 The Gitea Authors. All rights reserved.
|
||||
// Copyright 2025 The Forgejo Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package web
|
||||
|
@ -112,9 +113,3 @@ func HomeSitemap(ctx *context.Context) {
|
|||
log.Error("Failed writing sitemap: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
// NotFound render 404 page
|
||||
func NotFound(ctx *context.Context) {
|
||||
ctx.Data["Title"] = "Page Not Found"
|
||||
ctx.NotFound("home.NotFound", nil)
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
// Copyright 2017 The Gitea Authors. All rights reserved.
|
||||
// Copyright 2023 The Forgejo Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package web
|
||||
|
@ -1661,6 +1662,7 @@ func registerRoutes(m *web.Route) {
|
|||
m.Any("/devtest", devtest.List)
|
||||
m.Any("/devtest/fetch-action-test", devtest.FetchActionTest)
|
||||
m.Any("/devtest/{sub}", devtest.Tmpl)
|
||||
m.Get("/devtest/error/{errcode}", devtest.ErrorPage)
|
||||
}
|
||||
|
||||
m.NotFound(func(w http.ResponseWriter, req *http.Request) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue