GitHub/WoltLab/WCF.git
2 years agoIncorrect behavior of user menus with overflowing content
Alexander Ebert [Thu, 3 Feb 2022 15:40:25 +0000 (16:40 +0100)]
Incorrect behavior of user menus with overflowing content

2 years agoMerge branch '5.4'
Marcel Werk [Thu, 3 Feb 2022 13:45:05 +0000 (14:45 +0100)]
Merge branch '5.4'

2 years agoEmail column in notification settings was too small
Marcel Werk [Thu, 3 Feb 2022 13:44:19 +0000 (14:44 +0100)]
Email column in notification settings was too small

2 years ago`saveInstant()` yields an incorrect selection after formatting
Alexander Ebert [Wed, 2 Feb 2022 18:29:42 +0000 (19:29 +0100)]
`saveInstant()` yields an incorrect selection after formatting

Consider the example `Hello World` where the word `World` is selected. Marking the selection as bold did not mark the button as active.

This was caused by the way the selection is created, causing it to be `Hello |<strong>World|</strong>` when using `saveInstant()` (the pipe denotes the selection boundary).

2 years agoInclude the `$envelopeTo` address within the target filename in DebugFolderEmailTransport
Tim Düsterhus [Wed, 2 Feb 2022 15:45:37 +0000 (16:45 +0100)]
Include the `$envelopeTo` address within the target filename in DebugFolderEmailTransport

It was verified that the resulting Maildir still is a valid Maildir by opening
it with mutt.

2 years agoUpdating minified JavaScript files
WoltLab [Wed, 2 Feb 2022 12:30:48 +0000 (12:30 +0000)]
Updating minified JavaScript files

2 years agoMerge branch '5.4'
Tim Düsterhus [Wed, 2 Feb 2022 11:05:30 +0000 (12:05 +0100)]
Merge branch '5.4'

2 years agoMerge pull request #4656 from WoltLab/dialog-alert
Tim Düsterhus [Wed, 2 Feb 2022 11:05:19 +0000 (12:05 +0100)]
Merge pull request #4656 from WoltLab/dialog-alert

Fix rendering of alert boxes at the top of a dialog

2 years agoRemove obsolete inline CSS in removeUserContentDialog.tpl
Tim Düsterhus [Wed, 2 Feb 2022 11:01:43 +0000 (12:01 +0100)]
Remove obsolete inline CSS in removeUserContentDialog.tpl

see 0d0aecf7b629619de450304945989074522dbca2

2 years agoFix rendering of alert boxes at the top of a dialog
Tim Düsterhus [Wed, 2 Feb 2022 10:50:13 +0000 (11:50 +0100)]
Fix rendering of alert boxes at the top of a dialog

2 years agoMerge pull request #4655 from WoltLab/report-flood
Marcel Werk [Wed, 2 Feb 2022 10:40:57 +0000 (11:40 +0100)]
Merge pull request #4655 from WoltLab/report-flood

Add flood protection to creating new reports

2 years agoAdd flood protection to creating new reports
Tim Düsterhus [Wed, 2 Feb 2022 10:12:21 +0000 (11:12 +0100)]
Add flood protection to creating new reports

2 years agoFix adding of classes updateCounter() in user menu
Tim Düsterhus [Wed, 2 Feb 2022 10:11:38 +0000 (11:11 +0100)]
Fix adding of classes updateCounter() in user menu

2 years agoMerge pull request #4654 from WoltLab/5.5-poll
Joshua Rüsweg [Wed, 2 Feb 2022 08:01:02 +0000 (09:01 +0100)]
Merge pull request #4654 from WoltLab/5.5-poll

Standardize Poll Creation

2 years agoDeprecate `WCF.Poll.Management` JS module
joshuaruesweg [Tue, 1 Feb 2022 10:44:02 +0000 (11:44 +0100)]
Deprecate `WCF.Poll.Management` JS module

2 years agoUse TypeScript implementation for message polls
joshuaruesweg [Tue, 1 Feb 2022 10:41:31 +0000 (11:41 +0100)]
Use TypeScript implementation for message polls

2 years agoStandardize poll input names
joshuaruesweg [Tue, 1 Feb 2022 10:41:00 +0000 (11:41 +0100)]
Standardize poll input names

The old implementation uses names like `pollQuestion` instead of `Poll_question`. Unifying these, make it easier to maintain the code and use the TypeScript implementation for old and new code.

2 years agoMerge branch '5.4'
Tim Düsterhus [Tue, 1 Feb 2022 11:26:00 +0000 (12:26 +0100)]
Merge branch '5.4'

2 years agoUpdate composer dependencies
Tim Düsterhus [Tue, 1 Feb 2022 11:24:38 +0000 (12:24 +0100)]
Update composer dependencies

2 years agoRelease 5.4.13 5.4.13
Alexander Ebert [Mon, 31 Jan 2022 16:33:14 +0000 (17:33 +0100)]
Release 5.4.13

2 years agoMerge branch '5.3' into 5.4
Alexander Ebert [Mon, 31 Jan 2022 16:32:20 +0000 (17:32 +0100)]
Merge branch '5.3' into 5.4

2 years agoRelease 5.3.19 5.3.19
Alexander Ebert [Mon, 31 Jan 2022 16:30:49 +0000 (17:30 +0100)]
Release 5.3.19

2 years agoMerge branch '5.2' into 5.3
Alexander Ebert [Mon, 31 Jan 2022 16:30:10 +0000 (17:30 +0100)]
Merge branch '5.2' into 5.3

2 years agoRelease 5.2.19 5.2.19
Alexander Ebert [Mon, 31 Jan 2022 16:28:38 +0000 (17:28 +0100)]
Release 5.2.19

2 years agoMerge branch '3.1' into 5.2
Alexander Ebert [Mon, 31 Jan 2022 16:27:54 +0000 (17:27 +0100)]
Merge branch '3.1' into 5.2

2 years agoRelease 3.1.27 3.1.27
Alexander Ebert [Mon, 31 Jan 2022 16:24:44 +0000 (17:24 +0100)]
Release 3.1.27

2 years agoMerge branch '5.4'
Tim Düsterhus [Mon, 31 Jan 2022 16:22:00 +0000 (17:22 +0100)]
Merge branch '5.4'

2 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Mon, 31 Jan 2022 16:21:49 +0000 (17:21 +0100)]
Merge branch '5.3' into 5.4

2 years agoMerge branch '5.2' into 5.3
Tim Düsterhus [Mon, 31 Jan 2022 16:18:38 +0000 (17:18 +0100)]
Merge branch '5.2' into 5.3

2 years agoMerge branch '3.1' into 5.2
Tim Düsterhus [Mon, 31 Jan 2022 16:18:14 +0000 (17:18 +0100)]
Merge branch '3.1' into 5.2

2 years agoMerge branch 'unknown-bbcode-xss' into 3.1
Tim Düsterhus [Mon, 31 Jan 2022 16:17:54 +0000 (17:17 +0100)]
Merge branch 'unknown-bbcode-xss' into 3.1

2 years agoFix XSS vulnerability in HtmlBBCodeParser::buildBBCodeTag()
Tim Düsterhus [Mon, 31 Jan 2022 13:18:17 +0000 (14:18 +0100)]
Fix XSS vulnerability in HtmlBBCodeParser::buildBBCodeTag()

Thanks to @methosiea for responsibly reporting this issue.

Resolves #4653

2 years agoMerge branch '5.4'
Tim Düsterhus [Mon, 31 Jan 2022 13:41:34 +0000 (14:41 +0100)]
Merge branch '5.4'

2 years agoFix PHP 8.1.2 compatibility in DatabaseException
Tim Düsterhus [Mon, 31 Jan 2022 13:40:44 +0000 (14:40 +0100)]
Fix PHP 8.1.2 compatibility in DatabaseException

> Cannot access protected property PDOException::$code

2 years agoUpdate missed `.htaccess`
Tim Düsterhus [Mon, 31 Jan 2022 11:52:34 +0000 (12:52 +0100)]
Update missed `.htaccess`

see 75cc4fdef3cd84589e0a87871ea2dc0b92c6f570

2 years agoUpdate `.htaccess` authz rules for Apache 2.4
Tim Düsterhus [Mon, 31 Jan 2022 11:41:12 +0000 (12:41 +0100)]
Update `.htaccess` authz rules for Apache 2.4

see https://httpd.apache.org/docs/2.4/mod/mod_access_compat.html
see https://httpd.apache.org/docs/2.4/mod/mod_authz_core.html#require

2 years agoSlightly defer the menu overflow calculation to avoid an early style recalculation
Alexander Ebert [Sun, 30 Jan 2022 14:53:42 +0000 (15:53 +0100)]
Slightly defer the menu overflow calculation to avoid an early style recalculation

2 years agoImproved the behavior of the search button
Alexander Ebert [Sun, 30 Jan 2022 14:47:51 +0000 (15:47 +0100)]
Improved the behavior of the search button

2 years agoAdded the quick search button to the user list
Alexander Ebert [Fri, 28 Jan 2022 20:52:55 +0000 (21:52 +0100)]
Added the quick search button to the user list

Closes #3954

2 years agoMerge pull request #4651 from WoltLab/attachment-link-no-thumbnail
Tim Düsterhus [Fri, 28 Jan 2022 15:15:05 +0000 (16:15 +0100)]
Merge pull request #4651 from WoltLab/attachment-link-no-thumbnail

Always link image attachments in attachments.tpl

2 years agoAlways link image attachments in attachments.tpl
Tim Düsterhus [Fri, 28 Jan 2022 13:42:18 +0000 (14:42 +0100)]
Always link image attachments in attachments.tpl

Previously only attachments with a larger version were linked. This made it
hard to "rightclick-save" very small attachments and also suppressed them from
the image viewer, allowing users to miss them when watching the image viewer's
slideshow.

Resolves #4601

2 years agoUpdating minified JavaScript files
Alexander Ebert [Fri, 28 Jan 2022 13:40:25 +0000 (14:40 +0100)]
Updating minified JavaScript files

2 years agoMerge branch '55-js-bundle'
Alexander Ebert [Fri, 28 Jan 2022 13:33:16 +0000 (14:33 +0100)]
Merge branch '55-js-bundle'

2 years agoStrip prism from the `tiny` bundle
Alexander Ebert [Fri, 28 Jan 2022 13:08:50 +0000 (14:08 +0100)]
Strip prism from the `tiny` bundle

2 years agoRemoved a faulty workaround for the module bundle
Alexander Ebert [Fri, 28 Jan 2022 12:54:26 +0000 (13:54 +0100)]
Removed a faulty workaround for the module bundle

2 years agoProperly remove lazy-loaded modules from the bundle
Alexander Ebert [Thu, 27 Jan 2022 18:53:06 +0000 (19:53 +0100)]
Properly remove lazy-loaded modules from the bundle

2 years agoExclude modules that only contain TypeScript types and interfaces
Alexander Ebert [Thu, 27 Jan 2022 18:21:01 +0000 (19:21 +0100)]
Exclude modules that only contain TypeScript types and interfaces

2 years agoDeprecate the module `WoltLabSuite/Core/Ui/FlexibleMenu`
Alexander Ebert [Thu, 27 Jan 2022 18:00:42 +0000 (19:00 +0100)]
Deprecate the module `WoltLabSuite/Core/Ui/FlexibleMenu`

The module remains unused for years and has not been adopted by third parties.

2 years agoLoad additional modules on-demand
Alexander Ebert [Thu, 27 Jan 2022 17:56:30 +0000 (18:56 +0100)]
Load additional modules on-demand

2 years agoLazy load the style changer and poll editor
Alexander Ebert [Thu, 27 Jan 2022 17:46:26 +0000 (18:46 +0100)]
Lazy load the style changer and poll editor

2 years agoLoad the "pica" library on demand
Alexander Ebert [Thu, 27 Jan 2022 17:24:09 +0000 (18:24 +0100)]
Load the "pica" library on demand

2 years agoDefer the overflow handling for the main menu
Alexander Ebert [Thu, 27 Jan 2022 15:51:50 +0000 (16:51 +0100)]
Defer the overflow handling for the main menu

The previous code would inject the overflow handles immediately if the `screen-lg` environment matches. However, depending on the time it took this could have caused a forced reflow because the width of the menu was considered to be stale following the injection of the elements.

2 years agoSkip the template compilation step for phrases without curly braces
Alexander Ebert [Thu, 27 Jan 2022 15:02:01 +0000 (16:02 +0100)]
Skip the template compilation step for phrases without curly braces

2 years agoStop relying on `ts-node` from the global scope
Alexander Ebert [Thu, 27 Jan 2022 13:45:58 +0000 (14:45 +0100)]
Stop relying on `ts-node` from the global scope

2 years agoRemoved a forced reflow that effectively did nothing
Alexander Ebert [Thu, 27 Jan 2022 13:35:59 +0000 (14:35 +0100)]
Removed a forced reflow that effectively did nothing

2 years agoMerge branch '5.4'
Tim Düsterhus [Thu, 27 Jan 2022 13:18:04 +0000 (14:18 +0100)]
Merge branch '5.4'

2 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Thu, 27 Jan 2022 13:09:56 +0000 (14:09 +0100)]
Merge branch '5.3' into 5.4

2 years agoFix regular expression for the `atext` production in EmailGrammar
Tim Düsterhus [Thu, 27 Jan 2022 13:01:33 +0000 (14:01 +0100)]
Fix regular expression for the `atext` production in EmailGrammar

Due to the missing escaping of the hyphen with a backslash the allowed
characters were not just:

- The plus sign (`+`, 0x2B),
- the dash      (`-`, 0x2D), and
- the slash     (`/`, 0x2F).

But all ASCII characters between 0x2B and 0x2F, namely:

- The plus sign (`+`, 0x2B),
- the comma     (`,`, 0x2C),
- the dash      (`-`, 0x2D),
- the dot       (`.`, 0x2E), and
- the slash     (`/`, 0x2F).

i.e. the comma and dot in addition to the actually allowed characters.

This error caused an incorrect encoding of headers in `::encodeHeader()`.
Specifically the real name of a mailbox was affected by this issue. As a result
a real name that included a dot, but otherwise matched the `atom` grammar was
improperly encoded, possibly causing email parsing failures for MUAs.

2 years agoProvide the current `url` to all login links
Tim Düsterhus [Thu, 27 Jan 2022 09:18:17 +0000 (10:18 +0100)]
Provide the current `url` to all login links

see 6e5b36526f992eb1f04fb4ebc28f3ae38bed6aff

2 years agoRemoved the no longer used API compatibility from exported packages
Alexander Ebert [Wed, 26 Jan 2022 18:44:20 +0000 (19:44 +0100)]
Removed the no longer used API compatibility from exported packages

2 years agoRequiring a minimum age for registrations now marks the fields as required
Alexander Ebert [Wed, 26 Jan 2022 18:31:09 +0000 (19:31 +0100)]
Requiring a minimum age for registrations now marks the fields as required

See https://www.woltlab.com/community/thread/291431-mindestalter-geburtsdatum-ist-pflichtfeld-wird-aber-nicht-so-deklariert/

2 years agoPlaceholder color for textareas, replaced legacy properties with `::placeholder`
Alexander Ebert [Wed, 26 Jan 2022 18:16:15 +0000 (19:16 +0100)]
Placeholder color for textareas, replaced legacy properties with `::placeholder`

See https://www.woltlab.com/community/thread/292757-unterschiedliche-placeholder-farben/

2 years agoDo not replace files in `custom/` during style import
Tim Düsterhus [Wed, 26 Jan 2022 09:40:01 +0000 (10:40 +0100)]
Do not replace files in `custom/` during style import

Resolves #3748

2 years agoUse `str_contains()` instead of `strpos() !== false` in StyleEditor
Tim Düsterhus [Wed, 26 Jan 2022 09:37:06 +0000 (10:37 +0100)]
Use `str_contains()` instead of `strpos() !== false` in StyleEditor

2 years agoShorten overly long line in StyleEditor
Tim Düsterhus [Wed, 26 Jan 2022 09:30:00 +0000 (10:30 +0100)]
Shorten overly long line in StyleEditor

2 years agoImplemented the StoreCode (#4649)
Alexander Ebert [Tue, 25 Jan 2022 14:45:56 +0000 (15:45 +0100)]
Implemented the StoreCode (#4649)

Co-authored-by: Tim Düsterhus <duesterhus@woltlab.com>
2 years agoMerge branch '5.4'
joshuaruesweg [Tue, 25 Jan 2022 09:34:03 +0000 (10:34 +0100)]
Merge branch '5.4'

2 years agoFix poll management within the form builder
joshuaruesweg [Tue, 25 Jan 2022 09:33:41 +0000 (10:33 +0100)]
Fix poll management within the form builder

Fixes #4648

2 years agoMerge branch '5.4'
Tim Düsterhus [Mon, 24 Jan 2022 15:47:38 +0000 (16:47 +0100)]
Merge branch '5.4'

2 years agoMerge pull request #4647 from WoltLab/5.4-devtools-requirewcfvalidator
Joshua Rüsweg [Mon, 24 Jan 2022 15:02:06 +0000 (16:02 +0100)]
Merge pull request #4647 from WoltLab/5.4-devtools-requirewcfvalidator

Validates whether the WCF was created as a requirement when saving a …

2 years agoValidates whether the WCF was created as a requirement when saving a project
joshuaruesweg [Mon, 24 Jan 2022 12:45:42 +0000 (13:45 +0100)]
Validates whether the WCF was created as a requirement when saving a project

2 years agoFix typo in de.xml
Tim Düsterhus [Mon, 24 Jan 2022 14:10:11 +0000 (15:10 +0100)]
Fix typo in de.xml

2 years agoMerge pull request #4646 from WoltLab/5.5-totp-link
Joshua Rüsweg [Mon, 24 Jan 2022 09:19:55 +0000 (10:19 +0100)]
Merge pull request #4646 from WoltLab/5.5-totp-link

Link QR code to otpauth url

2 years agoLink QR code to otpauth url
joshuaruesweg [Fri, 21 Jan 2022 11:20:04 +0000 (12:20 +0100)]
Link QR code to otpauth url

2 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Fri, 21 Jan 2022 13:03:14 +0000 (14:03 +0100)]
Merge branch '5.3' into 5.4

2 years agoRelease 5.4.12 5.4.12
Alexander Ebert [Fri, 21 Jan 2022 13:00:08 +0000 (14:00 +0100)]
Release 5.4.12

2 years agoMerge branch '5.3' into 5.4
Alexander Ebert [Fri, 21 Jan 2022 12:58:37 +0000 (13:58 +0100)]
Merge branch '5.3' into 5.4

2 years agoMerge branch '5.2' into 5.3
Tim Düsterhus [Fri, 21 Jan 2022 12:53:33 +0000 (13:53 +0100)]
Merge branch '5.2' into 5.3

2 years agoRemove codestyle workflow for non-PSR-12 branches
Tim Düsterhus [Fri, 21 Jan 2022 12:50:28 +0000 (13:50 +0100)]
Remove codestyle workflow for non-PSR-12 branches

The recent backport of the `|json` template modifier from 5.5 to 3.1+ in
58bc4b693415079127dd11d8210d2564a443010d fails the code style, because the
branches 5.3 and earlier expect tabs instead of spaces for indentation.

It's not really work fixing the code style for the file, just to revert it once
again when merging upwards.

Remove the check for these older branches. They are only touched for bug fixes
and the style will need to be adapted when merging into 5.4.

2 years agoRelease 5.3.18 5.3.18
Alexander Ebert [Fri, 21 Jan 2022 12:48:46 +0000 (13:48 +0100)]
Release 5.3.18

2 years agoMerge branch '5.2' into 5.3
Alexander Ebert [Fri, 21 Jan 2022 12:47:22 +0000 (13:47 +0100)]
Merge branch '5.2' into 5.3

2 years agoRelease 5.2.18 5.2.18
Alexander Ebert [Fri, 21 Jan 2022 12:30:34 +0000 (13:30 +0100)]
Release 5.2.18

2 years agoStop using `|encodeJSON`
Tim Düsterhus [Thu, 20 Jan 2022 10:50:19 +0000 (11:50 +0100)]
Stop using `|encodeJSON`

(cherry picked from commit ab1e34de9ca94dc44b20d0b4d58eca2bad80d9d3)

2 years agoMerge branch '3.1' into 5.2
Alexander Ebert [Fri, 21 Jan 2022 12:27:41 +0000 (13:27 +0100)]
Merge branch '3.1' into 5.2

2 years agoRelease 3.1.26 3.1.26
Alexander Ebert [Fri, 21 Jan 2022 12:06:52 +0000 (13:06 +0100)]
Release 3.1.26

2 years agoAdd missing JSON encoding of the PAGE_TITLE in `ampArticle.tpl`
Tim Düsterhus [Thu, 20 Jan 2022 10:50:47 +0000 (11:50 +0100)]
Add missing JSON encoding of the PAGE_TITLE in `ampArticle.tpl`

This does not need to be fixed in any current branch, because the broken-ness
of `|encodeJSON` will result in broken metadata one way or another.

(cherry picked from commit bba7f1706e30761e55954a5a4be569e5bb55a6c4)

2 years agoStop using `|encodeJSON`
Tim Düsterhus [Thu, 20 Jan 2022 10:50:19 +0000 (11:50 +0100)]
Stop using `|encodeJSON`

(cherry picked from commit ab1e34de9ca94dc44b20d0b4d58eca2bad80d9d3)

2 years agoAdd `|json` template modifier
Tim Düsterhus [Thu, 20 Jan 2022 10:48:16 +0000 (11:48 +0100)]
Add `|json` template modifier

(cherry picked from commit e178fa84dc06861c5aba3d14e03161c5396fe9a7)

2 years agoMerge branch '5.4'
Tim Düsterhus [Fri, 21 Jan 2022 08:32:07 +0000 (09:32 +0100)]
Merge branch '5.4'

2 years agoMove `@types/*` npm dependencies into the non-dev section
Tim Düsterhus [Fri, 21 Jan 2022 08:28:01 +0000 (09:28 +0100)]
Move `@types/*` npm dependencies into the non-dev section

This is required for them to be detected in downstream consumers.

2 years agoRelease 5.4.12 dev 1 5.4.12_dev_1
Alexander Ebert [Thu, 20 Jan 2022 18:06:46 +0000 (19:06 +0100)]
Release 5.4.12 dev 1

2 years agoAdd missing JSON encoding of the PAGE_TITLE in `ampArticle.tpl`
Tim Düsterhus [Thu, 20 Jan 2022 10:50:47 +0000 (11:50 +0100)]
Add missing JSON encoding of the PAGE_TITLE in `ampArticle.tpl`

This does not need to be fixed in any current branch, because the broken-ness
of `|encodeJSON` will result in broken metadata one way or another.

(cherry picked from commit bba7f1706e30761e55954a5a4be569e5bb55a6c4)

2 years agoStop using `|encodeJSON`
Tim Düsterhus [Thu, 20 Jan 2022 10:50:19 +0000 (11:50 +0100)]
Stop using `|encodeJSON`

(cherry picked from commit ab1e34de9ca94dc44b20d0b4d58eca2bad80d9d3)

2 years agoAdd `|json` template modifier
Tim Düsterhus [Thu, 20 Jan 2022 10:48:16 +0000 (11:48 +0100)]
Add `|json` template modifier

(cherry picked from commit e178fa84dc06861c5aba3d14e03161c5396fe9a7)

2 years agoMerge pull request #4645 from WoltLab/deprecate-encode-json
Tim Düsterhus [Thu, 20 Jan 2022 11:12:13 +0000 (12:12 +0100)]
Merge pull request #4645 from WoltLab/deprecate-encode-json

Deprecate StringUtil::encodeJSON()

2 years agoAdd missing JSON encoding of the PAGE_TITLE in `ampArticle.tpl`
Tim Düsterhus [Thu, 20 Jan 2022 10:50:47 +0000 (11:50 +0100)]
Add missing JSON encoding of the PAGE_TITLE in `ampArticle.tpl`

This does not need to be fixed in any current branch, because the broken-ness
of `|encodeJSON` will result in broken metadata one way or another.

2 years agoStop using `|encodeJSON`
Tim Düsterhus [Thu, 20 Jan 2022 10:50:19 +0000 (11:50 +0100)]
Stop using `|encodeJSON`

2 years agoDeprecate StringUtil::encodeJSON()
Tim Düsterhus [Thu, 20 Jan 2022 10:48:48 +0000 (11:48 +0100)]
Deprecate StringUtil::encodeJSON()

2 years agoAdd `|json` template modifier
Tim Düsterhus [Thu, 20 Jan 2022 10:48:16 +0000 (11:48 +0100)]
Add `|json` template modifier

2 years agoUnify StringUtil::decodeHTML() flags with ::encodeHTML()
Tim Düsterhus [Thu, 20 Jan 2022 10:29:39 +0000 (11:29 +0100)]
Unify StringUtil::decodeHTML() flags with ::encodeHTML()

see f631a7de6506e52095299c15042c25a3979a8200