Tim Düsterhus [Fri, 20 Jan 2023 10:56:58 +0000 (11:56 +0100)]
Drop `@package` tag in *.php
This does not provide a real value-add, because it is effectively redundant
with the namespace and is easily forgotten to adjust when copying the comment
from somewhere as a blueprint.
Changes performed using:
find wcfsetup/ -iname '*.php' -print0 |xargs -0 sed -i '/\* @package.*WoltLabSuite/d'
Tim Düsterhus [Thu, 19 Jan 2023 13:29:22 +0000 (14:29 +0100)]
Merge branch '5.5'
Tim Düsterhus [Thu, 19 Jan 2023 13:26:57 +0000 (14:26 +0100)]
Merge branch '5.4' into 5.5
Alexander Ebert [Thu, 19 Jan 2023 13:24:53 +0000 (14:24 +0100)]
Release 5.5.8
Alexander Ebert [Thu, 19 Jan 2023 13:22:17 +0000 (14:22 +0100)]
Release 5.4.25
Alexander Ebert [Thu, 19 Jan 2023 13:21:54 +0000 (14:21 +0100)]
Merge branch '5.3' into 5.4
Alexander Ebert [Thu, 19 Jan 2023 13:19:31 +0000 (14:19 +0100)]
Release 5.3.26
Tim Düsterhus [Thu, 19 Jan 2023 13:17:02 +0000 (14:17 +0100)]
Merge branch '5.4' into 5.5
Tim Düsterhus [Thu, 19 Jan 2023 13:16:28 +0000 (14:16 +0100)]
Merge branch '5.3' into 5.4
Tim Düsterhus [Thu, 19 Jan 2023 13:16:10 +0000 (14:16 +0100)]
Merge branch 'xss-activation' into 5.3
Tim Düsterhus [Tue, 17 Jan 2023 15:33:29 +0000 (16:33 +0100)]
Remove unused language items
They are unused since
0aa3e67ad35ac76603826752123a05f4c1256592.
Tim Düsterhus [Tue, 17 Jan 2023 13:59:55 +0000 (14:59 +0100)]
Merge pull request #5226 from WoltLab/no-cache-temporary-redirect
Add EnforceNoCacheForTemporaryRedirects middleware
Tim Düsterhus [Tue, 17 Jan 2023 13:53:04 +0000 (14:53 +0100)]
Add EnforceNoCacheForTemporaryRedirects middleware
Unfortunately this is unable to catch responses created by
`HeaderUtil::redirect()`, and we can't reliably set the appropriate headers in
that method, because `sendStatusCode` defaults to `false`, allowing the
user to set an arbitrary status before calling it.
Tim Düsterhus [Tue, 17 Jan 2023 13:08:34 +0000 (14:08 +0100)]
Merge branch '5.5'
Tim Düsterhus [Tue, 17 Jan 2023 13:07:33 +0000 (14:07 +0100)]
Automatically detect HTTP codeblocks
Tim Düsterhus [Tue, 17 Jan 2023 09:51:53 +0000 (10:51 +0100)]
Tim Düsterhus [Tue, 17 Jan 2023 09:25:15 +0000 (10:25 +0100)]
Merge branch '5.5'
Alexander Ebert [Mon, 16 Jan 2023 16:59:50 +0000 (17:59 +0100)]
Release 5.5.8 dev 1
Tim Düsterhus [Mon, 16 Jan 2023 16:24:41 +0000 (17:24 +0100)]
Merge branch '5.5'
WoltLab [Mon, 16 Jan 2023 16:20:19 +0000 (16:20 +0000)]
Updating minified JavaScript files
Alexander Ebert [Mon, 16 Jan 2023 16:05:50 +0000 (17:05 +0100)]
Use `ResizeObserverEntry.contentRect` in legacy browsers
Fixes #5187
Alexander Ebert [Mon, 16 Jan 2023 15:54:38 +0000 (16:54 +0100)]
Add `messageTableOfContents` and `quoteMetaCode` to the shared templates
See https://www.woltlab.com/community/thread/298400-artikelvorschau-bringt-eine-reihe-von-fehlermeldungen/
See https://www.woltlab.com/community/thread/298137-alle-anzeigen-aktualisieren-unable-to-find-template-quotemetacode/
Alexander Ebert [Mon, 16 Jan 2023 15:36:33 +0000 (16:36 +0100)]
Suppress empty style descriptions
See https://www.woltlab.com/community/thread/298369-stil-beschreibung-fehlt-sprachvariable-wird-angezeigt/
Alexander Ebert [Mon, 16 Jan 2023 15:14:55 +0000 (16:14 +0100)]
Suppress user activity events when articles have been disabled
See https://www.woltlab.com/community/thread/298375-letzte-aktivit%C3%A4ten-nach-modul-deaktivierung/
Tim Düsterhus [Mon, 16 Jan 2023 13:52:27 +0000 (14:52 +0100)]
Merge branch '5.4' into 5.5
Tim Düsterhus [Mon, 16 Jan 2023 13:51:47 +0000 (14:51 +0100)]
Merge branch '5.3' into 5.4
Tim Düsterhus [Mon, 16 Jan 2023 13:48:54 +0000 (14:48 +0100)]
Remove questionable `@` in __singleMediaSelectionFormField.tpl
This looks like it is exploitable, because the value is not guaranteed to be an integer.
Tim Düsterhus [Mon, 16 Jan 2023 13:40:29 +0000 (14:40 +0100)]
Fix XSS vulnerability in registerActivation.tpl
This was introduced in
a477e3522933a7204b02013cd6b6d47d0db1d254 when the
activation logic was refactored to no longer use numeric-only activation codes.
Thanks to Chabik Hatim for responsibly reporting the vulnerability.
Tim Düsterhus [Mon, 16 Jan 2023 13:49:57 +0000 (14:49 +0100)]
Merge pull request #5225 from WoltLab/supportexpiry-53
Notify users of the expiring support (5.3)
Tim Düsterhus [Tue, 2 Nov 2021 11:11:50 +0000 (12:11 +0100)]
Notify users of the expiring support (5.3)
see #4574
Tim Düsterhus [Mon, 16 Jan 2023 10:40:04 +0000 (11:40 +0100)]
Merge pull request #5224 from WoltLab/quoted-printable-encoder
Generate cleaner output in EmailGrammar::encodeQuotedPrintableHeader()
Tim Düsterhus [Fri, 13 Jan 2023 15:43:31 +0000 (16:43 +0100)]
Generate cleaner output in EmailGrammar::encodeQuotedPrintableHeader()
This updates the quoted-printable header encoder to not unnecessarily apply
quoted-printable encoding:
Previously if the full input would not fit into the maximum length of 70
characters, encoding would be enforced to keep things simple on the encoder
side, but resulting in overly bloated headers. This is especially visible with
the 'Subject' header of notification mails.
Now the quoted-printable encoding will only be applied if there actually are
any special characters. If the full input exceeds the maximum length without
containing special characters, it will be correctly broken at the natural space
boundaries.
Resolves #4970
Tim Düsterhus [Mon, 16 Jan 2023 10:00:48 +0000 (11:00 +0100)]
Merge branch '5.5'
Tim Düsterhus [Mon, 16 Jan 2023 09:50:32 +0000 (10:50 +0100)]
Properly take languageID into account in LanguageEditor::deleteFromXML()
see https://www.woltlab.com/community/thread/298522-sprachvariable-case-aktualisieren/
Tim Düsterhus [Fri, 13 Jan 2023 15:13:47 +0000 (16:13 +0100)]
Add proper types to EmailGrammar
Tim Düsterhus [Thu, 12 Jan 2023 13:20:38 +0000 (14:20 +0100)]
Merge branch '5.5'
Tim Düsterhus [Thu, 12 Jan 2023 13:10:32 +0000 (14:10 +0100)]
Fix TypeScript code style
Tim Düsterhus [Thu, 12 Jan 2023 13:11:33 +0000 (14:11 +0100)]
Detect reused dialogIds in Form/Builder/Dialog.ts
see https://www.woltlab.com/community/thread/298580-uncaught-error-form-has-not-been-requested-yet/
Alexander Ebert [Thu, 12 Jan 2023 12:11:46 +0000 (13:11 +0100)]
Use `wheneverFirstSeen()` to initialize drop-down menus
Alexander Ebert [Wed, 11 Jan 2023 18:28:37 +0000 (19:28 +0100)]
Add the `html-parsed-element` library
Tim Düsterhus [Wed, 11 Jan 2023 16:23:48 +0000 (17:23 +0100)]
Merge pull request #5223 from WoltLab/ajax-allow-cache
Add `allowCaching()` option to BackendRequest
Alexander Ebert [Wed, 11 Jan 2023 15:27:21 +0000 (16:27 +0100)]
Improve the types in the error handler
Alexander Ebert [Wed, 11 Jan 2023 14:55:37 +0000 (15:55 +0100)]
Add the helper method `handleValidationErrors()` for `dboAction`
Alexander Ebert [Wed, 11 Jan 2023 14:01:27 +0000 (15:01 +0100)]
Migrate `DboAction` to use private properties
Tim Düsterhus [Wed, 11 Jan 2023 15:54:05 +0000 (16:54 +0100)]
Hide `allowCaching()` from non-GET requests
Tim Düsterhus [Wed, 11 Jan 2023 15:20:21 +0000 (16:20 +0100)]
Add `allowCaching()` option to BackendRequest
Some requests might return an intentionally cacheable response with proper
`cache-control` headers, allow AJAX requests to make use of this when desired.
Tim Düsterhus [Wed, 11 Jan 2023 14:57:15 +0000 (15:57 +0100)]
Merge branch '5.5'
Tim Düsterhus [Wed, 11 Jan 2023 14:55:01 +0000 (15:55 +0100)]
Fix incorrect use of `this` references in Dom/Util
This breaks if single functions are imported.
Tim Düsterhus [Wed, 11 Jan 2023 13:23:20 +0000 (14:23 +0100)]
Merge branch '5.5'
Tim Düsterhus [Wed, 11 Jan 2023 13:22:30 +0000 (14:22 +0100)]
Add `rel="nofollow"` to missed login link
This was noticed while resolving the merge conflicts when merging from 5.5 to
master.
see
fa0b20e855dbf01ebf3e4ac54c12a0507dcb993f
Tim Düsterhus [Wed, 11 Jan 2023 13:21:56 +0000 (14:21 +0100)]
Merge branch '5.5'
Tim Düsterhus [Wed, 11 Jan 2023 13:16:05 +0000 (14:16 +0100)]
Merge pull request #5221 from WoltLab/login-no-follow
Mark login links as `rel="nofollow"`
Tim Düsterhus [Wed, 11 Jan 2023 13:07:08 +0000 (14:07 +0100)]
Add proper types to PackageUpdateDispatcher
Tim Düsterhus [Wed, 11 Jan 2023 13:03:43 +0000 (14:03 +0100)]
Change `protected` to `private` in PackageUpdateDispatcher
This class is `final` now, so `protected` is equivalent to `private`.
Tim Düsterhus [Wed, 11 Jan 2023 13:02:18 +0000 (14:02 +0100)]
Remove useless reference parameter in PackageUpdateDispatcher::savePackageUpdates()
This breaks PHP’s CoW and might increase memory usage unnecessarily.
Tim Düsterhus [Wed, 11 Jan 2023 13:01:36 +0000 (14:01 +0100)]
Mark PackageUpdateDispatcher as final
Tim Düsterhus [Wed, 11 Jan 2023 12:41:12 +0000 (13:41 +0100)]
Use `intdiv()` in SessionHandler::getCookieTimestep()
We're performing bit fiddling on the resulting value, directly dealing with
integers is a little cleaner.
Tim Düsterhus [Wed, 11 Jan 2023 12:37:35 +0000 (13:37 +0100)]
Remove questionable `@` in login.tpl
Tim Düsterhus [Wed, 11 Jan 2023 12:35:03 +0000 (13:35 +0100)]
Mark login links as `rel="nofollow"`
Resolves #5218
Tim Düsterhus [Wed, 11 Jan 2023 11:31:26 +0000 (12:31 +0100)]
Merge pull request #5219 from WoltLab/search-require-q
Require a non-empty "search query"
Tim Düsterhus [Wed, 11 Jan 2023 11:27:16 +0000 (12:27 +0100)]
Merge pull request #5220 from WoltLab/install-script-name
Use standard naming scheme for install scripts
Tim Düsterhus [Wed, 11 Jan 2023 11:17:19 +0000 (12:17 +0100)]
Remove dead code in ACP’s index.tpl
see
a1f0967e8552fc73ce038fccf8e1bf618262a2e7
Tim Düsterhus [Wed, 11 Jan 2023 11:13:33 +0000 (12:13 +0100)]
Fix PHP codestyle
Tim Düsterhus [Wed, 11 Jan 2023 11:07:24 +0000 (12:07 +0100)]
Simplify registration of WCF autoload directory
Tim Düsterhus [Wed, 11 Jan 2023 10:37:40 +0000 (11:37 +0100)]
Use standard naming scheme for install scripts
Tim Düsterhus [Wed, 11 Jan 2023 10:15:53 +0000 (11:15 +0100)]
Require a non-empty "search query"
Resolves #5217
Marcel Werk [Tue, 10 Jan 2023 15:59:10 +0000 (16:59 +0100)]
Merge pull request #5215 from WoltLab/geocoding-store
Add geocoding option to automatically store position in hidden fields
Marcel Werk [Tue, 10 Jan 2023 15:48:06 +0000 (16:48 +0100)]
Store coordinates in a single field and add an option for a prefix
Tim Düsterhus [Tue, 10 Jan 2023 14:19:01 +0000 (15:19 +0100)]
Update wcf.acp.devtools.project.packageVersion.description
see
9fcc61e65add1d3490a7ec341c738d966563d7ee
Marcel Werk [Tue, 10 Jan 2023 12:50:05 +0000 (13:50 +0100)]
Add option to automatically store position in hidden fields
Tim Düsterhus [Tue, 10 Jan 2023 11:54:24 +0000 (12:54 +0100)]
Improve variable name in UserStorageHandler::loadStorage()
Tim Düsterhus [Tue, 10 Jan 2023 11:52:33 +0000 (12:52 +0100)]
Use `->prepare()` in UserStorageHandler
Tim Düsterhus [Tue, 10 Jan 2023 11:34:15 +0000 (12:34 +0100)]
Fix types in EventHandler
Tim Düsterhus [Tue, 10 Jan 2023 10:14:15 +0000 (11:14 +0100)]
Create initial bootstrap.php in WCFSetup
Fixes #5213
Tim Düsterhus [Tue, 10 Jan 2023 10:08:01 +0000 (11:08 +0100)]
Reference WCF_DIR in WCFSetup::unzipFiles()
Both values are identical, but WCF_DIR is clearer.
Alexander Ebert [Mon, 9 Jan 2023 16:48:42 +0000 (17:48 +0100)]
Prevent icon related CSS to be implicitly overriden
These properties have a direct impact on the icon rendering any may not be changed implicitly.
Using a stylesheet inside the shadow DOM is not sufficient, because certain styles (most notably those related to fonts) can pierce the shadow DOM by spec.
Tim Düsterhus [Mon, 9 Jan 2023 15:41:53 +0000 (16:41 +0100)]
Make FontAwesome aliases known to PHP
Tim Düsterhus [Mon, 9 Jan 2023 12:58:00 +0000 (13:58 +0100)]
Update composer dependencies
Tim Düsterhus [Mon, 9 Jan 2023 12:31:40 +0000 (13:31 +0100)]
Merge pull request #5212 from WoltLab/fa-icon
Improve validation in FontAwesomeIcon
Tim Düsterhus [Mon, 9 Jan 2023 11:24:07 +0000 (12:24 +0100)]
Merge pull request #5211 from IceQ1337/update-spiders
Web Spider Additions
Tim Düsterhus [Mon, 9 Jan 2023 11:14:55 +0000 (12:14 +0100)]
Split `iconData` string into at most two components in FontAwesomeIcon
This catches invalids formats with additional semicolons.
Tim Düsterhus [Mon, 9 Jan 2023 11:13:25 +0000 (12:13 +0100)]
Move validation of name into `FontAwesomeIcon::__construct()`
Tim Düsterhus [Mon, 9 Jan 2023 11:12:28 +0000 (12:12 +0100)]
Delegate to `::fromValues()` in `FontAwesomeIcon::fromString()`
see #5209
Tim Düsterhus [Fri, 6 Jan 2023 11:54:47 +0000 (12:54 +0100)]
Run `composer bump`
Tim Düsterhus [Fri, 6 Jan 2023 11:54:25 +0000 (12:54 +0100)]
Update composer dependencies
IceQ1337 [Fri, 6 Jan 2023 19:24:22 +0000 (20:24 +0100)]
Remove Abot from spiderList.xml
By default, https://github.com/sjdirect/abot (and https://github.com/sjdirect/abotx) does not use "abot" in the user-agent. Ultimately this is only defined by the user of this program. There is no (or no longer) any information about other bots going by this name.
IceQ1337 [Fri, 6 Jan 2023 18:48:09 +0000 (19:48 +0100)]
Add Neevabot to spiderList.xml
IceQ1337 [Fri, 6 Jan 2023 18:44:23 +0000 (19:44 +0100)]
Add CensysInspect to spiderList.xml
Marcel Werk [Fri, 6 Jan 2023 15:16:18 +0000 (16:16 +0100)]
Merge pull request #4972 from WoltLab/map-web-component
Web component for google maps
Alexander Ebert [Fri, 6 Jan 2023 11:46:07 +0000 (12:46 +0100)]
Merge pull request #5208 from WoltLab/loading-indicator
Add the `<woltlab-core-loading-indicator>` component
Alexander Ebert [Thu, 5 Jan 2023 18:17:14 +0000 (19:17 +0100)]
Use `<woltlab-core-loading-indicator>` in `User/Menu/View`
Alexander Ebert [Thu, 5 Jan 2023 18:10:51 +0000 (19:10 +0100)]
Use `<woltlab-core-loading-indicator>` in `Ajax/Status`
Alexander Ebert [Thu, 5 Jan 2023 18:04:08 +0000 (19:04 +0100)]
Add the `<woltlab-core-loading-indicator>` component
Tim Düsterhus [Thu, 5 Jan 2023 12:33:00 +0000 (13:33 +0100)]
Merge pull request #5204 from WoltLab/script-pip-no-delete
Remove deletion of script PIP files after execution
Tim Düsterhus [Thu, 5 Jan 2023 10:56:55 +0000 (11:56 +0100)]
Remove deletion of script PIP files after execution
This does not bring any benefit and rather causes unexpected behavior:
- Devtools cannot be used to repeatedly execute the database PIP, without also
executing the file PIP.
- Updates might reintroduce deleted files, especially `install_foo.php`
scripts, inversely any newly installed package will have the update scripts
lying around, making the state of the installation effectively undefined.
With the `fileDelete` PIP there is a reliable solution to delete files and
without the automated deletion of script PIPs the state of two installations
with identical package versions should also be identical in the best case.
Tim Düsterhus [Wed, 4 Jan 2023 12:30:07 +0000 (13:30 +0100)]
Merge pull request #5192 from WoltLab/fa-6.2.1
Update to FontAwesome 6.2.1
Tim Düsterhus [Wed, 4 Jan 2023 11:47:02 +0000 (12:47 +0100)]
Merge pull request #5201 from WoltLab/favicon
Modernize Favicon handling
Tim Düsterhus [Wed, 4 Jan 2023 11:34:41 +0000 (12:34 +0100)]
Fix favicon `sizes` in template
Alexander Ebert [Wed, 4 Jan 2023 11:15:45 +0000 (12:15 +0100)]
Change the implicit default value for an omitted title to `undefined`
Tim Düsterhus [Wed, 4 Jan 2023 09:44:18 +0000 (10:44 +0100)]
Use 48×48 as the Favicon size
Apparently a multiple of 48×48px is the recommended size by Google.