1
0
Fork 0
forgejo/modules
wxiaoguang 5d77691d42
Improve template system and panic recovery (#24461)
Partially for #24457

Major changes:

1. The old `signedUserNameStringPointerKey` is quite hacky, use
`ctx.Data[SignedUser]` instead
2. Move duplicate code from `Contexter` to `CommonTemplateContextData`
3. Remove incorrect copying&pasting code `ctx.Data["Err_Password"] =
true` in API handlers
4. Use one unique `RenderPanicErrorPage` for panic error page rendering
5. Move `stripSlashesMiddleware` to be the first middleware
6. Install global panic recovery handler, it works for both `install`
and `web`
7. Make `500.tmpl` only depend minimal template functions/variables,
avoid triggering new panics

Screenshot:

<details>

![image](https://user-images.githubusercontent.com/2114189/235444895-cecbabb8-e7dc-4360-a31c-b982d11946a7.png)

</details>
2023-05-04 14:36:34 +08:00
..
actions
activitypub
analyze
assetfs
auth
avatar
base
cache
charset
container
context Improve template system and panic recovery (#24461) 2023-05-04 14:36:34 +08:00
csv
doctor
emoji
eventsource
generate
git
gitgraph
graceful
hcaptcha
highlight
hostmatcher
html
httpcache
httplib
indexer
issue/template
json
label
lfs
log
markup
mcaptcha
metrics
migration
mirror
nosql
notification
options
packages
paginator
pprof
private
process
proxy
proxyprotocol
public
queue
recaptcha
references
regexplru
repository
secret
session
setting
sitemap
ssh
storage
structs
svg
sync
system
templates Improve template system and panic recovery (#24461) 2023-05-04 14:36:34 +08:00
test Improve template system and panic recovery (#24461) 2023-05-04 14:36:34 +08:00
timeutil
translation
turnstile
typesniffer
updatechecker
upload
uri
user
util
validation
web Improve template system and panic recovery (#24461) 2023-05-04 14:36:34 +08:00
webhook