You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gitea/routers/web
zeripath 72524adf3f
Ensure that plain files are rendered correctly even when containing ambiguous characters (#22017) (#22160)
Backport #22017

As recognised in #21841 the rendering of plain text files is somewhat
incorrect when there are ambiguous characters as the html code is double
escaped. In fact there are several more problems here.

We have a residual isRenderedHTML which is actually simply escaping the
file - not rendering it. This is badly named and gives the wrong
impression.

There is also unusual behaviour whether the file is called a Readme or
not and there is no way to get to the source code if the file is called
README.

In reality what should happen is different depending on whether the file
is being rendered a README at the bottom of the directory view or not.

1. If it is rendered as a README on a directory - it should simply be
escaped and rendered as `<pre>` text.
2. If it is rendered as a file then it should be rendered as source
code.

This PR therefore does:
1. Rename IsRenderedHTML to IsPlainText
2. Readme files rendered at the bottom of the directory are rendered
without line numbers
3. Otherwise plain text files are rendered as source code.

Replace #21841

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2 years ago
..
admin Revert unrelated changes for SMTP auth (#21767) (#21768) 2 years ago
auth Set last login when activating account (#21731) (#21755) 2 years ago
dev Make better use of i18n (#20096) 3 years ago
events Improve Stopwatch behavior (#18930) 3 years ago
explore Fix sorting admin user list by last login (#22081) (#22107) 2 years ago
feed Fix setting HTTP headers after write (#21833) (#21877) 2 years ago
healthcheck Update go-chi/cache to utilize Ping() (#19719) 3 years ago
misc Fix panic in team repos API (#19431) 3 years ago
org move invite by mail to services package (#21513) 2 years ago
repo Ensure that plain files are rendered correctly even when containing ambiguous characters (#22017) (#22160) 2 years ago
user Add support for HEAD requests in Maven registry (#21834) (#21929) 2 years ago
auth.go Remove legacy `+build:` constraint (#19582) 3 years ago
auth_windows.go Let web and API routes have different auth methods group (#19168) 3 years ago
base.go Share HTML template renderers and create a watcher framework (#20218) 3 years ago
goget.go Refactor legacy `unknwon/com` package, improve golangci lint (#19284) 3 years ago
home.go Add sitemap support (#18407) 3 years ago
metrics.go Update HTTP status codes to modern codes (#18063) 3 years ago
nodeinfo.go Add nodeinfo endpoint for federation purposes (#16953) 3 years ago
swagger_json.go Refactor routers directory (#15800) 4 years ago
web.go Fix permission check on issue/pull lock (#22113) 2 years ago
webfinger.go Fix various typos (#20338) 3 years ago