Tim Düsterhus [Mon, 8 Aug 2022 12:51:33 +0000 (14:51 +0200)]
Remove obsolete imports in WCFACP
Tim Düsterhus [Mon, 8 Aug 2022 12:45:10 +0000 (14:45 +0200)]
Move ACP authentication check into middleware
This is similar to #4935 /
51154ba3f8f1d09b54560d5d1933f9053ef409cb.
Tim Düsterhus [Mon, 8 Aug 2022 11:42:08 +0000 (13:42 +0200)]
Merge pull request #4935 from WoltLab/ban-middleware
Move ban checking from WCF boot to middleware
Tim Düsterhus [Mon, 8 Aug 2022 10:50:38 +0000 (12:50 +0200)]
Merge pull request #4937 from WoltLab/5.6-to-6.0
Adjust references to 5.6 to 6.0
Tim Düsterhus [Mon, 8 Aug 2022 10:33:20 +0000 (12:33 +0200)]
Drop obsolete update_com.woltlab.wcf_5.5_deleteDsStore.php
Tim Düsterhus [Mon, 8 Aug 2022 10:32:09 +0000 (12:32 +0200)]
Adjust references to 5.6 to 6.0
Tim Düsterhus [Mon, 8 Aug 2022 09:39:25 +0000 (11:39 +0200)]
Use `Helper::isAjaxRequest()`
Tim Düsterhus [Mon, 8 Aug 2022 09:38:18 +0000 (11:38 +0200)]
Add `\wcf\http\Helper`
Tim Düsterhus [Mon, 8 Aug 2022 09:25:13 +0000 (11:25 +0200)]
Move ban checking from WCF boot to middleware
The previous location in WCF made sense back when `initBlacklist()` also
checked the IP address, User-Agent, or hostname blocklist to prevent processing
the request as much as possible. As all these checks are gone now, the only
thing that remains is the inexpensive ban check.
Move it into a middleware, it does not really belong into WCF which should just
be responsible for booting the framework independently of the request in
question.
Tim Düsterhus [Mon, 8 Aug 2022 09:23:35 +0000 (11:23 +0200)]
Merge pull request #4934 from WoltLab/remove-security-token-constants
Remove the `SECURITY_TOKEN` PHP constants
Tim Düsterhus [Mon, 8 Aug 2022 09:23:24 +0000 (11:23 +0200)]
Merge pull request #4933 from WoltLab/searchengine-parseSearchQuery
Remove always-throwing methods from AbstractSearchEngine
Tim Düsterhus [Mon, 8 Aug 2022 09:11:52 +0000 (11:11 +0200)]
Use typed properties in Session class
Tim Düsterhus [Mon, 8 Aug 2022 09:07:03 +0000 (11:07 +0200)]
Use typed property in UserLoggedIn event
Tim Düsterhus [Mon, 8 Aug 2022 08:54:57 +0000 (10:54 +0200)]
Remove the `SECURITY_TOKEN` PHP constants
These are trivially replaced by the `{csrfToken}` template tag which was
backported all the way to 5.2.
see #3612
Tim Düsterhus [Fri, 5 Aug 2022 12:54:19 +0000 (14:54 +0200)]
Remove always-throwing methods from AbstractSearchEngine
These dangerous methods were not immediately removed to allow pointing the
developer to the appropriate documentation, instead of them just seeing a call
to an undefined method.
Since they now served their purpose and don't do anything useful, they can be
removed.
Tim Düsterhus [Fri, 5 Aug 2022 14:34:31 +0000 (16:34 +0200)]
Merge pull request #4932 from WoltLab/scssphp-compatibility-include
Remove scss.inc.php compatiblity include
Tim Düsterhus [Fri, 5 Aug 2022 13:29:34 +0000 (15:29 +0200)]
Remove obsolete PHPDoc type in SearchIndexManager
Apparently the file did not properly safe before commiting.
see
bd0439ac21208b02c347f7075632e7433e8235d0
Tim Düsterhus [Fri, 5 Aug 2022 13:17:41 +0000 (15:17 +0200)]
Fix signature in SearchIndexManager::getTableName()
see
db4325a863919ee1eea073b8ab8ac1fab377584e
Tim Düsterhus [Fri, 5 Aug 2022 13:02:03 +0000 (15:02 +0200)]
Fix CronjobPackageInstallationPlugin
This fixes:
> 6 arguments are required, 5 given
The `startMinute` got lost in
b355b1c75179f724cb0353247ce9b0b0f4712975.
Tim Düsterhus [Fri, 5 Aug 2022 12:47:46 +0000 (14:47 +0200)]
Remove scss.inc.php compatiblity include
This is longish-deprecated and the fix is trivial: Just remove the include, the
classes are implicitly available by composer's autoloader.
Tim Düsterhus [Fri, 5 Aug 2022 12:24:56 +0000 (14:24 +0200)]
Merge pull request #4929 from WoltLab/remove-gravatar
Remove Gravatar support
Tim Düsterhus [Thu, 19 May 2022 12:10:00 +0000 (14:10 +0200)]
Remove Gravatar support
Resolves #3894
Tim Düsterhus [Fri, 5 Aug 2022 12:18:28 +0000 (14:18 +0200)]
Tim Düsterhus [Fri, 5 Aug 2022 12:11:53 +0000 (14:11 +0200)]
Merge pull request #4928 from WoltLab/remove-memcached
Remove Memcached support
Tim Düsterhus [Fri, 5 Aug 2022 12:10:16 +0000 (14:10 +0200)]
Merge pull request #4927 from WoltLab/template-wcfversion
Remove __wcfVersion template variable
Tim Düsterhus [Fri, 5 Aug 2022 12:09:50 +0000 (14:09 +0200)]
Merge pull request #4926 from WoltLab/remove-php-highlighters
Remove PHP-based syntax highlighters
Tim Düsterhus [Fri, 5 Aug 2022 12:08:57 +0000 (14:08 +0200)]
Merge pull request #4925 from WoltLab/cleanup-search-index-manager
Clean up SearchIndexManager
Tim Düsterhus [Fri, 5 Aug 2022 12:08:26 +0000 (14:08 +0200)]
Merge pull request #4924 from WoltLab/cleanup-cryptoutil
Clean up CryptoUtil
Tim Düsterhus [Fri, 5 Aug 2022 08:00:47 +0000 (10:00 +0200)]
Remove Memcached support
While Memcached is only deprecated since 5.4, it also is effectively
unmaintained and untested since longer than that.
The Disk cache works fine for the vast majority of users and Redis is available
for the others and even more featureful compared to Memcached.
Resolves #3642
Tim Düsterhus [Fri, 5 Aug 2022 07:42:49 +0000 (09:42 +0200)]
Remove PHP-based syntax highlighters
These are long-deprecated. If someone desires to still use them over Prism,
they can grab them from the commit history.
Resolves #4296
Tim Düsterhus [Fri, 5 Aug 2022 07:50:36 +0000 (09:50 +0200)]
Remove long-deprecated methods from PasswordUtil
PasswordUtil itself is wholly deprecated, but these two methods are trivially
replaced and developers should to so, if only to improve the clarity of the
code.
Tim Düsterhus [Fri, 5 Aug 2022 07:46:47 +0000 (09:46 +0200)]
Remove __wcfVersion template variable
This one is long-deprecated, breaks very obviously and is trivially replaced.
Tim Düsterhus [Fri, 5 Aug 2022 07:37:04 +0000 (09:37 +0200)]
Add types to SearchIndexManager where easily possible
Parameter types to delete() and reset() could not be added, because they
violate LSP unless the interface is modified as well / modified first.
Tim Düsterhus [Fri, 5 Aug 2022 07:34:35 +0000 (09:34 +0200)]
Remove deprecated methods from SearchIndexManager
As these are long deprecated and thin wrappers only, they can be trivially
adjusted.
Tim Düsterhus [Fri, 5 Aug 2022 07:31:56 +0000 (09:31 +0200)]
Add parameter types to CryptoUtil
Tim Düsterhus [Fri, 5 Aug 2022 07:30:52 +0000 (09:30 +0200)]
Remove deprecated methods from CryptoUtil
These are trivially replaced by their native counterparts.
Tim Düsterhus [Fri, 5 Aug 2022 07:29:55 +0000 (09:29 +0200)]
Merge branch '5.5'
Tim Düsterhus [Fri, 5 Aug 2022 07:29:45 +0000 (09:29 +0200)]
Merge branch '5.4' into 5.5
Tim Düsterhus [Thu, 4 Aug 2022 12:22:38 +0000 (14:22 +0200)]
Merge pull request #4923 from WoltLab/crontab
Offload cronjob calculations to a library
Tim Düsterhus [Thu, 4 Aug 2022 12:09:36 +0000 (14:09 +0200)]
Deprecate CronjobUtil
Tim Düsterhus [Thu, 4 Aug 2022 12:08:18 +0000 (14:08 +0200)]
Replace use of CronjobUtil by dragonmantank/cron-expression
Tim Düsterhus [Thu, 4 Aug 2022 11:36:55 +0000 (13:36 +0200)]
Add dragonmantank/cron-expression composer dependency
Tim Düsterhus [Thu, 4 Aug 2022 11:47:54 +0000 (13:47 +0200)]
Merge branch '5.5'
Tim Düsterhus [Thu, 4 Aug 2022 11:47:22 +0000 (13:47 +0200)]
Fix PHPDoc type in IFormField
Tim Düsterhus [Thu, 4 Aug 2022 10:47:05 +0000 (12:47 +0200)]
Merge pull request #4918 from WoltLab/diff
Use sebastian/diff for diff generation
Tim Düsterhus [Thu, 4 Aug 2022 10:21:14 +0000 (12:21 +0200)]
Merge branch '5.5'
Tim Düsterhus [Thu, 4 Aug 2022 10:20:26 +0000 (12:20 +0200)]
Merge pull request #4920 from WoltLab/row-format
Set an explicit `ROW_FORMAT=dynamic` in CREATE TABLE
Tim Düsterhus [Thu, 4 Aug 2022 07:04:07 +0000 (09:04 +0200)]
Merge pull request #4921 from SoftCreatR/patch-2
Fix Facebook media provider
Sascha Greuel [Thu, 4 Aug 2022 04:58:21 +0000 (06:58 +0200)]
Fixed Facebook media provider
Usernames CAN contain periods, but they're currently not supported. There's also no need for a trailing slash.
Example: https://www.facebook.com/RaiPlay.it/videos/
1059491774481091
Tim Düsterhus [Wed, 3 Aug 2022 13:17:40 +0000 (15:17 +0200)]
Remove useless array-emptiness checks in WCFSetup::logFiles()
a) It is impossible for theses arrays to be empty, unless the installation is
seriously broken.
b) Even if they were empty, it would not cause issues, as the foreach loop
simply won't be entered.
Tim Düsterhus [Wed, 3 Aug 2022 13:16:48 +0000 (15:16 +0200)]
Store SHA-256 hashes in wcf1_package_installation_file_log during WCFSetup
see
01ec69848a725e649b045f26cd16720581071076
Tim Düsterhus [Wed, 3 Aug 2022 12:59:15 +0000 (14:59 +0200)]
Stop referencing WCF_N in WCFSetup
This is guaranteed to be 1 since
e3fd38fd7ef7e3bb1dbb871fdd6786c7009aa36d.
Tim Düsterhus [Wed, 3 Aug 2022 12:56:39 +0000 (14:56 +0200)]
Fix use of `->prepare()` in FilesFileHandler
see
01ec69848a725e649b045f26cd16720581071076
Tim Düsterhus [Wed, 3 Aug 2022 12:55:55 +0000 (14:55 +0200)]
Use `->prepare()` in SQL queries with static table names in PIPs
Tim Düsterhus [Wed, 3 Aug 2022 12:14:07 +0000 (14:14 +0200)]
Set an explicit `ROW_FORMAT=dynamic` in CREATE TABLE
Resolves #4910.
Tim Düsterhus [Wed, 3 Aug 2022 10:55:27 +0000 (12:55 +0200)]
Migrate to sebastian/diff
Tim Düsterhus [Wed, 3 Aug 2022 10:45:23 +0000 (12:45 +0200)]
Deprecate the majority of methods in \wcf\util\Diff
Tim Düsterhus [Wed, 3 Aug 2022 10:41:56 +0000 (12:41 +0200)]
Add Diff::rawDiffFromSebastianDiff()
This eases the migration, because consumers can switch to sebastian/diff's
generation logic, while preserving the legacy output format.
Tim Düsterhus [Wed, 3 Aug 2022 10:18:20 +0000 (12:18 +0200)]
Add sebastian/diff composer dependency
Tim Düsterhus [Wed, 3 Aug 2022 10:28:09 +0000 (12:28 +0200)]
Add `sort-packages: true` to composer.json
Tim Düsterhus [Wed, 3 Aug 2022 09:48:37 +0000 (11:48 +0200)]
Merge branch '5.5'
Alexander Ebert [Tue, 2 Aug 2022 15:46:46 +0000 (17:46 +0200)]
Detect incorrect system font stack inserted in Chrome
Alexander Ebert [Tue, 2 Aug 2022 11:46:03 +0000 (13:46 +0200)]
Merge pull request #4917 from WoltLab/attachment-tab-a11y
Add missing button role in attachment management tab
Tim Düsterhus [Tue, 2 Aug 2022 11:44:41 +0000 (13:44 +0200)]
Merge branch '5.5'
Marcel Werk [Tue, 2 Aug 2022 11:38:02 +0000 (13:38 +0200)]
Add missing button role in attachment management tab
Tim Düsterhus [Tue, 2 Aug 2022 10:51:06 +0000 (12:51 +0200)]
Merge pull request #4916 from WoltLab/assert
Attempt to enable proper `assert()` handling
Tim Düsterhus [Tue, 2 Aug 2022 10:26:01 +0000 (12:26 +0200)]
Attempt to enable `zend.assertions` if debug mode is enabled
Tim Düsterhus [Tue, 2 Aug 2022 10:21:48 +0000 (12:21 +0200)]
Force enable `AssertionError` for assertion failures
Marcel Werk [Mon, 1 Aug 2022 15:45:32 +0000 (17:45 +0200)]
Fix missing copying of conditions when copying boxes
Tim Düsterhus [Mon, 1 Aug 2022 12:07:32 +0000 (14:07 +0200)]
Add `str_contains`, `str_starts_with`, `str_ends_with` to allowed template modifiers
Tim Düsterhus [Mon, 1 Aug 2022 09:35:15 +0000 (11:35 +0200)]
Replace `mt_rand()` with `random_int()` in non-deprecated methods
Tim Düsterhus [Mon, 1 Aug 2022 09:28:49 +0000 (11:28 +0200)]
Update composer dependencies
Tim Düsterhus [Mon, 1 Aug 2022 09:28:31 +0000 (11:28 +0200)]
Merge branch '5.5'
Tim Düsterhus [Mon, 1 Aug 2022 09:28:11 +0000 (11:28 +0200)]
Update composer dependencies
Tim Düsterhus [Fri, 29 Jul 2022 10:15:26 +0000 (12:15 +0200)]
Merge branch '5.5'
Tim Düsterhus [Thu, 28 Jul 2022 14:50:33 +0000 (16:50 +0200)]
Update composer dependencies
Alexander Ebert [Thu, 28 Jul 2022 11:11:57 +0000 (13:11 +0200)]
Scroll to the editor after inserting the quote
See https://www.woltlab.com/community/thread/296552-zitieren-von-kompletten-beitr%C3%A4gen-springt-nicht-in-den-editor/
Tim Düsterhus [Thu, 28 Jul 2022 10:30:41 +0000 (12:30 +0200)]
Merge pull request #4914 from WoltLab/file-log-sha256
Store SHA-256 hashes in `wcf1_package_installation_file_log`
Tim Düsterhus [Thu, 28 Jul 2022 09:25:01 +0000 (11:25 +0200)]
Store SHA-256 hashes in `wcf1_package_installation_file_log`
It is not planned to actively check them anywhere, but having something is
often better than needing them. They might ease manual verification of the
installation's consistency.
Tim Düsterhus [Thu, 28 Jul 2022 09:38:53 +0000 (11:38 +0200)]
Merge branch '5.5'
Tim Düsterhus [Thu, 28 Jul 2022 09:38:39 +0000 (11:38 +0200)]
Update composer dependencies
Tim Düsterhus [Thu, 28 Jul 2022 09:36:34 +0000 (11:36 +0200)]
Update laminas/laminas-progressbar composer dependency
see
8443392598404a0334b8770b910437f0592a996b
Tim Düsterhus [Thu, 28 Jul 2022 09:36:13 +0000 (11:36 +0200)]
Merge branch '5.5'
Tim Düsterhus [Thu, 28 Jul 2022 09:35:17 +0000 (11:35 +0200)]
Tim Düsterhus [Thu, 28 Jul 2022 09:34:40 +0000 (11:34 +0200)]
Update laminas-progressbar to a custom fork
see laminas/laminas-progressbar#14
Tim Düsterhus [Thu, 28 Jul 2022 08:56:52 +0000 (10:56 +0200)]
Merge branch '5.5'
Tim Düsterhus [Thu, 28 Jul 2022 08:45:37 +0000 (10:45 +0200)]
Unify error handling of DatabaseTableIndex with DatabaseTableForeignKey
This fixes a misleading error message if `->getData()` is called, but no
columns have been set:
> implode(): Argument #1 ($pieces) must be of type array, string given
Alexander Ebert [Wed, 27 Jul 2022 17:18:27 +0000 (19:18 +0200)]
Prevent closing unclosable dialogs with the escape key
See https://www.woltlab.com/community/thread/296571-esc-schlie%C3%9Ft-login-dialog-im-acp/
Alexander Ebert [Wed, 27 Jul 2022 17:07:45 +0000 (19:07 +0200)]
Detect changes to the HEX value using the `input` event
The `keypress` event does not fire while making changes to some parts of the value. This becomes an issue when the dialog is submitted through the enter key without a blur happening.
See https://www.woltlab.com/community/thread/296596-farbw%C3%A4hler-durch-enter-speichert-den-wert-nicht/
Tim Düsterhus [Wed, 27 Jul 2022 09:59:28 +0000 (11:59 +0200)]
Add PHP 8.2 to the php.yml workflow
Tim Düsterhus [Wed, 27 Jul 2022 08:28:36 +0000 (10:28 +0200)]
Merge branch '5.5'
Sascha Greuel [Wed, 27 Jul 2022 08:17:14 +0000 (10:17 +0200)]
Allow @-sign in username
Currently, the check for email addresses as username is too strict, as an email
address in user@host format is valid. However, this results in usernames no
longer being allowed to contain an @ character, otherwise they will be
recognized as a valid email address.
See https://www.woltlab.com/community/thread/296653-benutzernamen-mit-im-namen-bei-5-5-nicht-mehr-m%C3%B6glich
Resolves #4912
Tim Düsterhus [Wed, 27 Jul 2022 07:45:47 +0000 (09:45 +0200)]
Merge branch '5.5'
Tim Düsterhus [Wed, 27 Jul 2022 07:45:31 +0000 (09:45 +0200)]
Update composer dependencies
Tim Düsterhus [Wed, 27 Jul 2022 07:44:18 +0000 (09:44 +0200)]
Merge branch '5.5'
Tim Düsterhus [Wed, 27 Jul 2022 07:42:55 +0000 (09:42 +0200)]
Silence the PHP_ICO class in StyleAction
It is planned to remove it with #4885.
Resolves #4911
Tim Düsterhus [Tue, 26 Jul 2022 07:44:50 +0000 (09:44 +0200)]
Pass `\DateTimeImmutable` to Totp in TotpMultifactorMethod
Tim Düsterhus [Tue, 26 Jul 2022 07:44:08 +0000 (09:44 +0200)]
Accept `\DateTimeInterface` in Totp
Tim Düsterhus [Mon, 25 Jul 2022 13:43:20 +0000 (15:43 +0200)]
Remove obsolete import in Mailbox
Tim Düsterhus [Thu, 21 Jul 2022 09:08:44 +0000 (11:08 +0200)]
Merge branch '5.4' into 5.5