Tim Düsterhus [Thu, 10 Dec 2020 10:30:29 +0000 (11:30 +0100)]
Merge pull request #3781 from WoltLab/remove-recaptcha-v1
Remove reCAPTCHA v1 implementation
Tim Düsterhus [Thu, 10 Dec 2020 08:45:27 +0000 (09:45 +0100)]
Simplify recaptcha key checks in template
Co-authored-by: Alexander Ebert <ebert@woltlab.com>
Tim Düsterhus [Thu, 10 Dec 2020 08:44:07 +0000 (09:44 +0100)]
Merge pull request #3798 from WoltLab/toc-suppress-enumeration
Suppress enumeration that is part of the headline in ToC
Matthias Schmidt [Wed, 9 Dec 2020 17:43:15 +0000 (18:43 +0100)]
Merge branch '5.3'
Matthias Schmidt [Wed, 9 Dec 2020 17:43:05 +0000 (18:43 +0100)]
Merge branch '5.2' into 5.3
Matthias Schmidt [Wed, 9 Dec 2020 17:42:41 +0000 (18:42 +0100)]
Fix doubled validation errors for CaptchaFormField
Tim Düsterhus [Wed, 9 Dec 2020 13:49:11 +0000 (14:49 +0100)]
Suppress enumeration that is part of the headline in ToC
Resolves #3757
Tim Düsterhus [Wed, 9 Dec 2020 12:26:58 +0000 (13:26 +0100)]
Merge pull request #3711 from WoltLab/mfa-meta
Multifactor Authentication: Integration branch
Tim Düsterhus [Wed, 9 Dec 2020 11:52:57 +0000 (12:52 +0100)]
Sort language items in wcf.user.security category
Tim Düsterhus [Wed, 9 Dec 2020 10:54:23 +0000 (11:54 +0100)]
Append 'Authentication' to name of SessionHandler::changeUserAfterMultifactor()
Tim Düsterhus [Wed, 9 Dec 2020 10:44:56 +0000 (11:44 +0100)]
Use constant time hexadecimal encoding in migrate_multifactor
Tim Düsterhus [Wed, 9 Dec 2020 10:43:16 +0000 (11:43 +0100)]
Add missing language item
Tim Düsterhus [Wed, 9 Dec 2020 09:45:16 +0000 (10:45 +0100)]
Make use of ->markRequiredFields(false) for single-field authentication forms
Tim Düsterhus [Wed, 9 Dec 2020 09:22:16 +0000 (10:22 +0100)]
Merge branch 'master' into mfa-meta
For #3764.
Alexander Ebert [Wed, 9 Dec 2020 00:23:31 +0000 (01:23 +0100)]
Restored the user online location for profiles
There has been a change in 5.3 that introduced the `$userOnline` value, however this is the target user itself and not the user's content they are viewing. The `$user` variable is useless, because it is a plain `User` object that is not compatible with `{$user}`.
Matthias Schmidt [Tue, 8 Dec 2020 17:05:21 +0000 (18:05 +0100)]
Merge pull request #3765 from WoltLab/db_api_rename_column
Support renaming database table columns via PHP API
Matthias Schmidt [Tue, 8 Dec 2020 17:03:41 +0000 (18:03 +0100)]
Make marking required fields optional with form builder (#3764)
Close #3758
joshuaruesweg [Tue, 8 Dec 2020 12:57:21 +0000 (13:57 +0100)]
Merge branch '5.3'
joshuaruesweg [Tue, 8 Dec 2020 12:56:41 +0000 (13:56 +0100)]
Fix `wcf.user.register.needEmailConfirmation`
joshuaruesweg [Tue, 8 Dec 2020 12:54:49 +0000 (13:54 +0100)]
Fix `wcf.user.register.needEmailConfirmation`
Alexander Ebert [Mon, 7 Dec 2020 20:00:31 +0000 (21:00 +0100)]
Merge branch '5.2' into 5.3
Alexander Ebert [Mon, 7 Dec 2020 20:00:11 +0000 (21:00 +0100)]
Merge branch '3.1' into 5.2
Alexander Ebert [Mon, 7 Dec 2020 19:58:02 +0000 (20:58 +0100)]
Force the use of the attachment thumbnail if the original is inaccessible
Alexander Ebert [Mon, 7 Dec 2020 19:02:58 +0000 (20:02 +0100)]
Workaround for the misaligned caret in Safari caused by 0x200B
Alexander Ebert [Mon, 7 Dec 2020 17:16:08 +0000 (18:16 +0100)]
Improved the iOS WebKit click detection inside the editor margin
Alexander Ebert [Mon, 7 Dec 2020 16:27:54 +0000 (17:27 +0100)]
Force a whitespace before and after inserted smileys
Tim Düsterhus [Mon, 7 Dec 2020 15:52:12 +0000 (16:52 +0100)]
Merge pull request #3793 from WoltLab/style-import-permissions
Validate package installation permissions in StyleImportForm
Tim Düsterhus [Mon, 7 Dec 2020 14:56:53 +0000 (15:56 +0100)]
Validate package installation permissions in StyleImportForm
Joshua Rüsweg [Mon, 7 Dec 2020 12:59:44 +0000 (13:59 +0100)]
Merge pull request #3786 from WoltLab/like-rebuild
Optimize LikeRebuildDataWorker performance
Tim Düsterhus [Mon, 7 Dec 2020 10:36:22 +0000 (11:36 +0100)]
Merge pull request #3775 from WoltLab/mfa-reauth
Add generic reauthentication implementation
Tim Düsterhus [Mon, 7 Dec 2020 10:24:56 +0000 (11:24 +0100)]
Add explanatory texts to reauthentication
Tim Düsterhus [Tue, 1 Dec 2020 14:59:00 +0000 (15:59 +0100)]
Do not request reauthentication from users connected to a third party provider
Tim Düsterhus [Tue, 1 Dec 2020 14:53:05 +0000 (15:53 +0100)]
Request reauthentication in MultifactorDisableForm
Tim Düsterhus [Tue, 1 Dec 2020 14:52:08 +0000 (15:52 +0100)]
Request reauthentication in MultifactorManageForm
Tim Düsterhus [Tue, 1 Dec 2020 14:48:12 +0000 (15:48 +0100)]
Add TReauthenticationCheck
Tim Düsterhus [Tue, 1 Dec 2020 14:41:12 +0000 (15:41 +0100)]
Add ReauthenticationForm
Tim Düsterhus [Tue, 1 Dec 2020 14:08:29 +0000 (15:08 +0100)]
Add reauthentication logic to SessionHandler
Tim Düsterhus [Tue, 1 Dec 2020 14:19:07 +0000 (15:19 +0100)]
Remove obsolete import from MultifactorAuthenticationForm
Tim Düsterhus [Mon, 7 Dec 2020 10:05:24 +0000 (11:05 +0100)]
Merge branch 'master' into mfa-meta
For the UserPasswordFormField.
Tim Düsterhus [Mon, 7 Dec 2020 10:05:02 +0000 (11:05 +0100)]
Merge branch '5.3'
Tim Düsterhus [Mon, 7 Dec 2020 08:09:50 +0000 (09:09 +0100)]
Merge pull request #3779 from WoltLab/mfa-acp
Add multi-factor management to UserEditForm
Tim Düsterhus [Mon, 7 Dec 2020 08:07:57 +0000 (09:07 +0100)]
Merge pull request #3782 from WoltLab/deprecate-memcached
Deprecate memcached
Alexander Ebert [Sun, 6 Dec 2020 21:48:54 +0000 (22:48 +0100)]
Only close the user panel drop-downs if no key modifier was pressed
Alexander Ebert [Sun, 6 Dec 2020 20:16:16 +0000 (21:16 +0100)]
Discard the current selection when saving a quote
Alexander Ebert [Sun, 6 Dec 2020 20:10:59 +0000 (21:10 +0100)]
Prevent the tooltip being selectable while the user changes the selection
Alexander Ebert [Sun, 6 Dec 2020 19:35:08 +0000 (20:35 +0100)]
Unified behavior of the notification list and the corresponding menu drop-down
Alexander Ebert [Sun, 6 Dec 2020 19:19:58 +0000 (20:19 +0100)]
Consistent width of menus in the mobile menu
Matthias Schmidt [Sun, 6 Dec 2020 14:11:50 +0000 (15:11 +0100)]
Fix merge conflict
Matthias Schmidt [Sun, 6 Dec 2020 14:11:26 +0000 (15:11 +0100)]
Merge branch '5.3'
Matthias Schmidt [Sun, 6 Dec 2020 14:09:45 +0000 (15:09 +0100)]
Merge branch '5.2' into 5.3
Matthias Schmidt [Sun, 6 Dec 2020 14:09:17 +0000 (15:09 +0100)]
Fix dependencies for single media form field
Matthias Schmidt [Sun, 6 Dec 2020 13:09:21 +0000 (14:09 +0100)]
Fix column logs if renaming database column that was added later
Matthias Schmidt [Sun, 6 Dec 2020 13:08:37 +0000 (14:08 +0100)]
Throw error if renaming non existing database column
Matthias Schmidt [Sun, 6 Dec 2020 12:48:28 +0000 (13:48 +0100)]
Add form field for active user's password (#3783)
Close #3777
Tim Düsterhus [Sat, 5 Dec 2020 18:08:14 +0000 (19:08 +0100)]
Add missing space after comma in ReactionHandler::renderInlineList()
Alexander Ebert [Fri, 4 Dec 2020 17:53:33 +0000 (18:53 +0100)]
Merge pull request #3785 from WoltLab/54-typescript-acp-article
Convert the ACP article modules to TypeScript
Tim Düsterhus [Fri, 4 Dec 2020 14:59:43 +0000 (15:59 +0100)]
Simplify selection of existing like objects in LikeRebuildDataWorker
Since the previous commit it is expected that only a single objectTypeID is hit
per worker execution in the usual case, because all objects for a single
objectTypeID are processed before proceeding to the next objectTypeID. This
patch optimizes this case by sending a separate query per objectTypeID to fetch
the existing like objects instead of combining all the objects in a single
query.
This should help MySQL in optimizing the query, because the objectTypeID (which
is the first column in the UNIQUE KEY on wcf1_like_object) is fixed for a
single query and this is immediately obvious without needing to scan all the
tuples passed to the IN(…) condition.
In the general case the number of queries does not change. In the iterations
where the last objectID for an objectTypeID is reached two queries will be sent
instead of a single one. Those two combined should be more efficient that the
single old query, though.
Tim Düsterhus [Fri, 4 Dec 2020 14:52:10 +0000 (15:52 +0100)]
Allow LikeRebuildDataWorker to leverage the wcf1_like.objectTypeID key for sorting
joshuaruesweg [Fri, 4 Dec 2020 13:10:23 +0000 (14:10 +0100)]
Fix resetting user sessions when editing users via ACP
Fixes #3780
Marcel Werk [Fri, 4 Dec 2020 11:27:04 +0000 (12:27 +0100)]
Adjusted handling of empty breadcrumbs
joshuaruesweg [Fri, 4 Dec 2020 10:38:21 +0000 (11:38 +0100)]
Merge branch '5.3'
joshuaruesweg [Fri, 4 Dec 2020 10:35:16 +0000 (11:35 +0100)]
Merge branch '5.2'
joshuaruesweg [Fri, 4 Dec 2020 10:33:53 +0000 (11:33 +0100)]
Ignore invalid file ids during deleting uploaded files
There can be several reasons why the files are no longer known. We can ignore this and simply return a success message so that it doesn't pop up in the frontend when unknown files are deleted.
joshuaruesweg [Fri, 4 Dec 2020 10:23:53 +0000 (11:23 +0100)]
Fix detecting images with capitalised file extensions
joshuaruesweg [Fri, 4 Dec 2020 10:05:10 +0000 (11:05 +0100)]
Only rebuild favicons if there is a new image uploaded
joshuaruesweg [Fri, 4 Dec 2020 09:09:32 +0000 (10:09 +0100)]
Fix updating pageLogo in StyleAction
Tim Düsterhus [Fri, 4 Dec 2020 08:28:11 +0000 (09:28 +0100)]
Move the checkmark out of wcf.acp.user.security.multifactor.active
Tim Düsterhus [Fri, 4 Dec 2020 08:08:34 +0000 (09:08 +0100)]
Use 'Not Recommended' in favor of 'Deprecated' for English memcached deprecation
Tim Düsterhus [Fri, 4 Dec 2020 08:07:46 +0000 (09:07 +0100)]
Consistently use 'Obsolet' for German memcached deprecation
Alexander Ebert [Fri, 4 Dec 2020 00:44:36 +0000 (01:44 +0100)]
Convert `Acp/Ui/Article/InlineEditor` to TypeScript
Tim Düsterhus [Thu, 3 Dec 2020 10:24:30 +0000 (11:24 +0100)]
Deprecated memcached
Resolves #3638
Tim Düsterhus [Thu, 3 Dec 2020 10:11:43 +0000 (11:11 +0100)]
Inline RecaptchaHandlerV2::validate() in RecaptchaHandler
Tim Düsterhus [Thu, 3 Dec 2020 10:06:40 +0000 (11:06 +0100)]
Remove reCAPTCHA v1 implementation
API keys can no longer be created and Google removed the necessary endpoints
for it to work. Thus the code is dead code by now.
Tim Düsterhus [Thu, 3 Dec 2020 08:56:15 +0000 (09:56 +0100)]
Use more user-friendly error message for MFA w/o setups
This still MUST NOT ever happen, but in case it does the error message is more
useful and it was easy enough to implement.
Tim Düsterhus [Thu, 3 Dec 2020 08:35:52 +0000 (09:35 +0100)]
Add multi-factor management to UserEditForm
Tim Düsterhus [Thu, 3 Dec 2020 08:35:29 +0000 (09:35 +0100)]
Clean up handling of user objects in UserEditForm
Marcel Werk [Wed, 2 Dec 2020 15:38:11 +0000 (16:38 +0100)]
Improved wrapping of reaction filter buttons on mobile
Tim Düsterhus [Wed, 2 Dec 2020 14:31:39 +0000 (15:31 +0100)]
Use proper German title for AccountManagementForm
Alexander Ebert [Thu, 26 Nov 2020 00:16:50 +0000 (01:16 +0100)]
Convert `Acp/Ui/Article/Add` to TypeScript
Tim Düsterhus [Tue, 1 Dec 2020 13:45:23 +0000 (14:45 +0100)]
Merge branch '5.3'
Alexander Ebert [Tue, 1 Dec 2020 12:35:47 +0000 (13:35 +0100)]
Merge branch '5.2' into 5.3
Alexander Ebert [Tue, 1 Dec 2020 12:34:59 +0000 (13:34 +0100)]
Merge branch '3.1' into 5.2
Alexander Ebert [Tue, 1 Dec 2020 12:32:47 +0000 (13:32 +0100)]
Incorrect version comparison for accessible packages
joshuaruesweg [Tue, 1 Dec 2020 10:58:14 +0000 (11:58 +0100)]
Prevent rewriting filenames for processed files
Alexander Ebert [Mon, 30 Nov 2020 13:45:30 +0000 (14:45 +0100)]
Merge pull request #3768 from WoltLab/54-typescript-clipboard
Convert the clipboard handler to TypeScript
Alexander Ebert [Mon, 30 Nov 2020 13:30:16 +0000 (14:30 +0100)]
Merge pull request #3769 from WoltLab/54-typescript-acp-box
Convert ACP box modules to TypeScript
Alexander Ebert [Mon, 30 Nov 2020 13:29:36 +0000 (14:29 +0100)]
Merge pull request #3771 from WoltLab/54-typescript-acp-option
Convert the ACP option modules to TypeScript
Alexander Ebert [Mon, 30 Nov 2020 13:26:56 +0000 (14:26 +0100)]
Simplified the check by inverting the logic
Alexander Ebert [Mon, 30 Nov 2020 13:14:39 +0000 (14:14 +0100)]
Merge pull request #3772 from WoltLab/54-typescript-acp-package
Convert the ACP package modules to TypeScript
Alexander Ebert [Mon, 30 Nov 2020 13:14:05 +0000 (14:14 +0100)]
Merge pull request #3773 from WoltLab/54-typescript-acp-page
Convert the ACP page modules to TypeScript
Alexander Ebert [Mon, 30 Nov 2020 12:19:58 +0000 (13:19 +0100)]
Merge pull request #3770 from WoltLab/54-typescript-acp-menuitem
Convert `Acp/Ui/Menu/Item/Handler` to TypeScript
Alexander Ebert [Mon, 30 Nov 2020 11:59:55 +0000 (12:59 +0100)]
Reformat the code using Prettier
Tim Düsterhus [Mon, 30 Nov 2020 11:26:52 +0000 (12:26 +0100)]
Merge pull request #3766 from WoltLab/mfa-migration
Add update_com.woltlab.wcf_5.4_migrate_multifactor.php
Tim Düsterhus [Fri, 27 Nov 2020 09:34:10 +0000 (10:34 +0100)]
Add update_com.woltlab.wcf_5.4_migrate_multifactor.php
Tim Düsterhus [Mon, 30 Nov 2020 08:14:03 +0000 (09:14 +0100)]
Merge pull request #3767 from WoltLab/resetSessions
Remove calls to SessionHandler::resetSessions()
Alexander Ebert [Mon, 30 Nov 2020 01:02:29 +0000 (02:02 +0100)]
Convert `Acp/Ui/Page/Menu` to TypeScript
Alexander Ebert [Mon, 30 Nov 2020 00:39:47 +0000 (01:39 +0100)]
Convert `Acp/Ui/Page/Copy` to TypeScript
Alexander Ebert [Mon, 30 Nov 2020 00:18:26 +0000 (01:18 +0100)]
Convert `Acp/Ui/Page/BoxOrder` to TypeScript
Alexander Ebert [Sun, 29 Nov 2020 23:45:20 +0000 (00:45 +0100)]
Convert `Acp/Ui/Page/Add` to TypeScript
Alexander Ebert [Sun, 29 Nov 2020 23:34:02 +0000 (00:34 +0100)]
Convert `Acp/Ui/Package/Search` to TypeScript