Alexander Ebert [Thu, 27 Jan 2022 18:53:06 +0000 (19:53 +0100)]
Properly remove lazy-loaded modules from the bundle
Alexander Ebert [Thu, 27 Jan 2022 18:21:01 +0000 (19:21 +0100)]
Exclude modules that only contain TypeScript types and interfaces
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.
Alexander Ebert [Thu, 27 Jan 2022 17:56:30 +0000 (18:56 +0100)]
Load additional modules on-demand
Alexander Ebert [Thu, 27 Jan 2022 17:46:26 +0000 (18:46 +0100)]
Lazy load the style changer and poll editor
Alexander Ebert [Thu, 27 Jan 2022 17:24:09 +0000 (18:24 +0100)]
Load the "pica" library on demand
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.
Alexander Ebert [Thu, 27 Jan 2022 15:02:01 +0000 (16:02 +0100)]
Skip the template compilation step for phrases without curly braces
Alexander Ebert [Thu, 27 Jan 2022 13:45:58 +0000 (14:45 +0100)]
Stop relying on `ts-node` from the global scope
Alexander Ebert [Thu, 27 Jan 2022 13:35:59 +0000 (14:35 +0100)]
Removed a forced reflow that effectively did nothing
Tim Düsterhus [Thu, 27 Jan 2022 13:18:04 +0000 (14:18 +0100)]
Merge branch '5.4'
Tim Düsterhus [Thu, 27 Jan 2022 13:09:56 +0000 (14:09 +0100)]
Merge branch '5.3' into 5.4
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.
Tim Düsterhus [Thu, 27 Jan 2022 09:18:17 +0000 (10:18 +0100)]
Provide the current `url` to all login links
see
6e5b36526f992eb1f04fb4ebc28f3ae38bed6aff
Alexander Ebert [Wed, 26 Jan 2022 18:44:20 +0000 (19:44 +0100)]
Removed the no longer used API compatibility from exported packages
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/
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/
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
Tim Düsterhus [Wed, 26 Jan 2022 09:37:06 +0000 (10:37 +0100)]
Use `str_contains()` instead of `strpos() !== false` in StyleEditor
Tim Düsterhus [Wed, 26 Jan 2022 09:30:00 +0000 (10:30 +0100)]
Shorten overly long line in StyleEditor
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>
joshuaruesweg [Tue, 25 Jan 2022 09:34:03 +0000 (10:34 +0100)]
Merge branch '5.4'
joshuaruesweg [Tue, 25 Jan 2022 09:33:41 +0000 (10:33 +0100)]
Fix poll management within the form builder
Fixes #4648
Tim Düsterhus [Mon, 24 Jan 2022 15:47:38 +0000 (16:47 +0100)]
Merge branch '5.4'
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 …
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
Tim Düsterhus [Mon, 24 Jan 2022 14:10:11 +0000 (15:10 +0100)]
Fix typo in de.xml
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
joshuaruesweg [Fri, 21 Jan 2022 11:20:04 +0000 (12:20 +0100)]
Link QR code to otpauth url
Tim Düsterhus [Fri, 21 Jan 2022 13:03:14 +0000 (14:03 +0100)]
Merge branch '5.3' into 5.4
Alexander Ebert [Fri, 21 Jan 2022 13:00:08 +0000 (14:00 +0100)]
Release 5.4.12
Alexander Ebert [Fri, 21 Jan 2022 12:58:37 +0000 (13:58 +0100)]
Merge branch '5.3' into 5.4
Tim Düsterhus [Fri, 21 Jan 2022 12:53:33 +0000 (13:53 +0100)]
Merge branch '5.2' into 5.3
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.
Alexander Ebert [Fri, 21 Jan 2022 12:48:46 +0000 (13:48 +0100)]
Release 5.3.18
Alexander Ebert [Fri, 21 Jan 2022 12:47:22 +0000 (13:47 +0100)]
Merge branch '5.2' into 5.3
Alexander Ebert [Fri, 21 Jan 2022 12:30:34 +0000 (13:30 +0100)]
Release 5.2.18
Tim Düsterhus [Thu, 20 Jan 2022 10:50:19 +0000 (11:50 +0100)]
Stop using `|encodeJSON`
(cherry picked from commit
ab1e34de9ca94dc44b20d0b4d58eca2bad80d9d3)
Alexander Ebert [Fri, 21 Jan 2022 12:27:41 +0000 (13:27 +0100)]
Merge branch '3.1' into 5.2
Alexander Ebert [Fri, 21 Jan 2022 12:06:52 +0000 (13:06 +0100)]
Release 3.1.26
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)
Tim Düsterhus [Thu, 20 Jan 2022 10:50:19 +0000 (11:50 +0100)]
Stop using `|encodeJSON`
(cherry picked from commit
ab1e34de9ca94dc44b20d0b4d58eca2bad80d9d3)
Tim Düsterhus [Thu, 20 Jan 2022 10:48:16 +0000 (11:48 +0100)]
Add `|json` template modifier
(cherry picked from commit
e178fa84dc06861c5aba3d14e03161c5396fe9a7)
Tim Düsterhus [Fri, 21 Jan 2022 08:32:07 +0000 (09:32 +0100)]
Merge branch '5.4'
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.
Alexander Ebert [Thu, 20 Jan 2022 18:06:46 +0000 (19:06 +0100)]
Release 5.4.12 dev 1
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)
Tim Düsterhus [Thu, 20 Jan 2022 10:50:19 +0000 (11:50 +0100)]
Stop using `|encodeJSON`
(cherry picked from commit
ab1e34de9ca94dc44b20d0b4d58eca2bad80d9d3)
Tim Düsterhus [Thu, 20 Jan 2022 10:48:16 +0000 (11:48 +0100)]
Add `|json` template modifier
(cherry picked from commit
e178fa84dc06861c5aba3d14e03161c5396fe9a7)
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()
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.
Tim Düsterhus [Thu, 20 Jan 2022 10:50:19 +0000 (11:50 +0100)]
Stop using `|encodeJSON`
Tim Düsterhus [Thu, 20 Jan 2022 10:48:48 +0000 (11:48 +0100)]
Deprecate StringUtil::encodeJSON()
Tim Düsterhus [Thu, 20 Jan 2022 10:48:16 +0000 (11:48 +0100)]
Add `|json` template modifier
Tim Düsterhus [Thu, 20 Jan 2022 10:29:39 +0000 (11:29 +0100)]
Unify StringUtil::decodeHTML() flags with ::encodeHTML()
see
f631a7de6506e52095299c15042c25a3979a8200
Tim Düsterhus [Thu, 20 Jan 2022 10:26:19 +0000 (11:26 +0100)]
Merge pull request #4620 from WoltLab/encode-html
Update `htmlspecialchars` flags for PHP 8.1 default
Tim Düsterhus [Thu, 20 Jan 2022 10:23:00 +0000 (11:23 +0100)]
Merge pull request #4644 from WoltLab/package-update-server-xsd-cleanup
Remove obsolete fields from packageUpdateServer.xsd
Tim Düsterhus [Tue, 4 Jan 2022 09:31:26 +0000 (10:31 +0100)]
Update `htmlspecialchars` flags for PHP 8.1 default
This change:
- Encodes `'` as `'`, whereas it previously was not touched.
- Inserts the Unicode replacement character instead of returning an empty
string when an invalid UTF-8 sequence is passed.
The first change might slightly improve security, whereas the second change
might improve debugging.
see also: https://php.watch/versions/8.1/html-entity-default-value-changes
Tim Düsterhus [Thu, 20 Jan 2022 10:12:37 +0000 (11:12 +0100)]
Do not implement encodeJSON() based on encodeJS()
JSON strings are more restricted than JavaScript strings, by implementing
encodeJSON() based on encodeJS() we need to reverse some of the encoding.
Simplify this by implementing encodeJSON() as a standalone function.
Tim Düsterhus [Thu, 20 Jan 2022 08:44:19 +0000 (09:44 +0100)]
Remove obsolete fields from packageUpdateServer.xsd
Neither `updatetype`, nor `versiontype` are read in any version of WCF starting at 2.0.
Tim Düsterhus [Wed, 19 Jan 2022 14:52:40 +0000 (15:52 +0100)]
Update composer dependencies
Tim Düsterhus [Wed, 19 Jan 2022 14:49:21 +0000 (15:49 +0100)]
Merge branch '5.4'
Alexander Ebert [Wed, 19 Jan 2022 13:26:02 +0000 (14:26 +0100)]
Release 5.4.11
Alexander Ebert [Wed, 19 Jan 2022 13:18:27 +0000 (14:18 +0100)]
Merge branch '5.3' into 5.4
Alexander Ebert [Wed, 19 Jan 2022 13:10:10 +0000 (14:10 +0100)]
Release 5.3.17
Alexander Ebert [Wed, 19 Jan 2022 13:00:57 +0000 (14:00 +0100)]
Merge branch '5.2' into 5.3
Alexander Ebert [Wed, 19 Jan 2022 12:55:01 +0000 (13:55 +0100)]
Release 5.2.17
Alexander Ebert [Wed, 19 Jan 2022 12:50:25 +0000 (13:50 +0100)]
Merge branch '3.1' into 5.2
Alexander Ebert [Wed, 19 Jan 2022 12:46:00 +0000 (13:46 +0100)]
Release 3.1.25
Tim Düsterhus [Wed, 19 Jan 2022 12:40:58 +0000 (13:40 +0100)]
Merge remote-tracking branch 'origin/master'
Tim Düsterhus [Wed, 19 Jan 2022 12:39:47 +0000 (13:39 +0100)]
Merge branch '5.4'
Tim Düsterhus [Wed, 19 Jan 2022 12:38:26 +0000 (13:38 +0100)]
Consistently escape backslashes in StringUtil
This is not a functional change, this is just for consistency within the PHP
code, so that each backslash is properly escaped as `\\`.
Tim Düsterhus [Wed, 19 Jan 2022 12:31:58 +0000 (13:31 +0100)]
Merge branch '5.3' into 5.4
Tim Düsterhus [Wed, 19 Jan 2022 12:29:21 +0000 (13:29 +0100)]
Merge branch '5.2' into 5.3
Tim Düsterhus [Wed, 19 Jan 2022 12:29:10 +0000 (13:29 +0100)]
Merge branch '3.1' into 5.2
Tim Düsterhus [Wed, 19 Jan 2022 12:27:40 +0000 (13:27 +0100)]
Merge branch 'encode-js-quot' into 3.1
Joshua Rüsweg [Wed, 19 Jan 2022 09:42:27 +0000 (10:42 +0100)]
Merge pull request #4643 from WoltLab/5.5-moderation-comment-notification
Send notifications about moderation comments to all authorized users
joshuaruesweg [Tue, 18 Jan 2022 16:34:05 +0000 (17:34 +0100)]
Apply suggestions from code review
Tim Düsterhus [Wed, 19 Jan 2022 08:51:02 +0000 (09:51 +0100)]
Merge branch '5.4'
Tim Düsterhus [Wed, 19 Jan 2022 08:50:39 +0000 (09:50 +0100)]
Merge branch '5.3' into 5.4
Tim Düsterhus [Wed, 19 Jan 2022 08:48:30 +0000 (09:48 +0100)]
Merge pull request #4642 from WoltLab/php-ddl-app-install
Fix the replacing of WCF_N in PHP DDL during app installation
joshuaruesweg [Tue, 18 Jan 2022 14:32:35 +0000 (15:32 +0100)]
Send notifications about moderation comments to all authorized users
joshuaruesweg [Mon, 17 Jan 2022 10:06:07 +0000 (11:06 +0100)]
Add `$userID` parameter to `ModerationQueueManager::setAssignment`
Tim Düsterhus [Tue, 18 Jan 2022 11:36:04 +0000 (12:36 +0100)]
Fix the replacing of WCF_N in PHP DDL during app installation
During app installation the newly installed app might not yet be stored within
the application cache, thus failing to replace the `1` within the table
structure definition.
Fix this by setting the `skipCache` parameter to `true`. This will increase the
number of database queries, because applications will be checked once for each
defined table and for each defined FOREIGN KEY, but I don't see a simple fix
for this issue that avoids this increase in query count. Specifically we cannot
simply reset the application cache after inserting the application into
wcf1_application.
Marcel Werk [Mon, 17 Jan 2022 17:53:54 +0000 (18:53 +0100)]
Show title as title attribute in media manager dialog
Closes #4640
Marcel Werk [Mon, 17 Jan 2022 17:49:07 +0000 (18:49 +0100)]
Merge branch '5.4'
Marcel Werk [Mon, 17 Jan 2022 17:44:51 +0000 (18:44 +0100)]
When replacing media, the thumbnails were not reset
ref https://www.woltlab.com/community/thread/293960-fehlerhafte-thumbnails-nach-medien-ersetzung/
Alexander Ebert [Mon, 17 Jan 2022 09:51:45 +0000 (10:51 +0100)]
Merge pull request #4637 from WoltLab/55-images-lazy-loading
Lazy loading for article and media images
Tim Düsterhus [Mon, 17 Jan 2022 09:39:36 +0000 (10:39 +0100)]
Merge remote-tracking branch 'origin/master'
Tim Düsterhus [Mon, 17 Jan 2022 09:39:16 +0000 (10:39 +0100)]
Merge branch '5.4'
joshuaruesweg [Mon, 17 Jan 2022 09:17:26 +0000 (10:17 +0100)]
Use `UserProfileRuntimeCache` to receive user object
Tim Düsterhus [Mon, 17 Jan 2022 08:42:47 +0000 (09:42 +0100)]
Merge pull request #4638 from Krymonota/patch-20
Add `var_dump` to allowed enterprise functions
Niklas [Sun, 16 Jan 2022 16:23:16 +0000 (17:23 +0100)]
Add `var_dump` to allowed enterprise functions
Alexander Ebert [Sun, 16 Jan 2022 14:18:03 +0000 (15:18 +0100)]
Enable lazy loading of media thumbnails
Alexander Ebert [Sun, 16 Jan 2022 14:11:09 +0000 (15:11 +0100)]
Enable lazy loading for embedded media
Alexander Ebert [Sun, 16 Jan 2022 14:04:17 +0000 (15:04 +0100)]
Use `<img>` elements for articles to enable lazy loading
Marcel Werk [Sun, 16 Jan 2022 14:03:27 +0000 (15:03 +0100)]
Merge branch '5.4'
Marcel Werk [Sun, 16 Jan 2022 14:03:11 +0000 (15:03 +0100)]
Error class wasn't shown in box conditions
Marcel Werk [Sun, 16 Jan 2022 13:59:38 +0000 (14:59 +0100)]
Merge branch 'master' of https://github.com/WoltLab/WCF
Alexander Ebert [Sat, 15 Jan 2022 12:47:21 +0000 (13:47 +0100)]
Incorrect behavior of legacy inline editors
Fixes #4633