Tim Düsterhus [Wed, 15 Dec 2021 08:09:49 +0000 (09:09 +0100)]
Upgrade to sabberworm/php-css-parser 8.4
This comes with native PHP 8.1, avoiding the need to install from our fork.
Tim Düsterhus [Tue, 14 Dec 2021 10:36:16 +0000 (11:36 +0100)]
Merge branch '5.4'
Tim Düsterhus [Tue, 14 Dec 2021 10:24:35 +0000 (11:24 +0100)]
Remove obsolete imports
Tim Düsterhus [Tue, 14 Dec 2021 10:02:18 +0000 (11:02 +0100)]
Properly wrap Guzzle's ConnectException into FontDownloadFailed in FontManager
joshuaruesweg [Tue, 14 Dec 2021 09:55:43 +0000 (10:55 +0100)]
Merge branch '5.4'
joshuaruesweg [Tue, 14 Dec 2021 09:50:40 +0000 (10:50 +0100)]
Maintain `hasFavicon` attribute during style import
joshuaruesweg [Tue, 14 Dec 2021 09:49:45 +0000 (10:49 +0100)]
Allow file `favicon.ico` for style imports
Tim Düsterhus [Tue, 14 Dec 2021 09:43:40 +0000 (10:43 +0100)]
Merge branch '5.4'
Tim Düsterhus [Tue, 14 Dec 2021 09:41:32 +0000 (10:41 +0100)]
Tim Düsterhus [Tue, 14 Dec 2021 09:35:11 +0000 (10:35 +0100)]
Merge branch '5.4'
Tim Düsterhus [Tue, 14 Dec 2021 09:32:50 +0000 (10:32 +0100)]
Update scssphp/scssphp to the updated fork
Tim Düsterhus [Tue, 14 Dec 2021 09:24:54 +0000 (10:24 +0100)]
Update composer dependencies
Tim Düsterhus [Tue, 14 Dec 2021 09:14:25 +0000 (10:14 +0100)]
Merge branch '5.4'
Tim Düsterhus [Tue, 14 Dec 2021 09:10:20 +0000 (10:10 +0100)]
Fix database and file system getting out of sync for pageLogo in style
This can happen if the style editor is opened in two tabs and no logo is
configured yet. In Tab (A) an logo is uploaded and then Tab (B) is submitted.
Tab (B) will not provided the `pageLogo` key in the `uploads` parameter,
because nothing in this field was changed. Thus the processing for the logo
does not run. However all style variables are cleared upon an edit, thus
clearing the database reference.
Closes #4606
joshuaruesweg [Mon, 13 Dec 2021 14:39:41 +0000 (15:39 +0100)]
Remove rating of reactions from reactions data
See
25f91a2f3a776571c3e25a028b0d8542803052fb
joshuaruesweg [Mon, 13 Dec 2021 14:33:04 +0000 (15:33 +0100)]
Merge branch '5.4'
joshuaruesweg [Mon, 13 Dec 2021 14:32:16 +0000 (15:32 +0100)]
Fix wrong return type of LikeObject::getReactions()
Tim Düsterhus [Mon, 13 Dec 2021 13:53:18 +0000 (14:53 +0100)]
Fix UiToggleInput
Found with `strictPropertyInitialization`.
Tim Düsterhus [Mon, 13 Dec 2021 13:46:59 +0000 (14:46 +0100)]
Make Notification/Handler.ts compatible with useUnknownInCatchVariables
Tim Düsterhus [Mon, 13 Dec 2021 13:18:13 +0000 (14:18 +0100)]
Merge branch '5.4'
Tim Düsterhus [Mon, 13 Dec 2021 13:16:50 +0000 (14:16 +0100)]
Tim Düsterhus [Mon, 13 Dec 2021 13:08:10 +0000 (14:08 +0100)]
Fix return of any value in RewriteTest.ts
Tim Düsterhus [Mon, 13 Dec 2021 13:05:04 +0000 (14:05 +0100)]
Silence `@typescript-eslint/no-unsafe-argument`
Tim Düsterhus [Mon, 13 Dec 2021 13:04:53 +0000 (14:04 +0100)]
Update eslint
Tim Düsterhus [Mon, 13 Dec 2021 12:38:43 +0000 (13:38 +0100)]
Merge branch '5.4'
Tim Düsterhus [Mon, 13 Dec 2021 12:30:15 +0000 (13:30 +0100)]
Update `@types` packages
Tim Düsterhus [Mon, 13 Dec 2021 12:29:10 +0000 (13:29 +0100)]
Update to prettier 2.5.1
Tim Düsterhus [Mon, 13 Dec 2021 12:28:07 +0000 (13:28 +0100)]
Update to TypeScript 4.5.3
Alexander Ebert [Sat, 11 Dec 2021 12:41:01 +0000 (13:41 +0100)]
Merge branch '5.4'
Alexander Ebert [Sat, 11 Dec 2021 12:40:45 +0000 (13:40 +0100)]
Incorrect check for the active suggestion
Alexander Ebert [Fri, 10 Dec 2021 12:32:29 +0000 (13:32 +0100)]
Merge pull request #4604 from WoltLab/focus-trap
Use the "focus-trap" library for existing components
Alexander Ebert [Thu, 9 Dec 2021 17:41:33 +0000 (18:41 +0100)]
Use `focus-trap` to maintain the focus in dialogs
Tim Düsterhus [Fri, 10 Dec 2021 11:07:31 +0000 (12:07 +0100)]
Remove logout confirmation in ACP
The one in the frontend has already been removed in #4603.
372f863c3b0bc5bc9e3eb1f9f9cfed1cdd5971c1 is partially related as well.
Alexander Ebert [Thu, 9 Dec 2021 19:26:59 +0000 (20:26 +0100)]
Changed the logout action into a `POST`
Using `input[type="submit"]` or `button` was not possible due to the styling being applied to these elements.
Alexander Ebert [Thu, 9 Dec 2021 18:52:12 +0000 (19:52 +0100)]
Insert the new style variables as early as possible when upgrading
Alexander Ebert [Thu, 9 Dec 2021 18:13:55 +0000 (19:13 +0100)]
Workaround for an incorrect width calculation inside `<details>`
Alexander Ebert [Thu, 9 Dec 2021 18:07:23 +0000 (19:07 +0100)]
Allow multiple instances of the quote manager on one page
Alexander Ebert [Thu, 9 Dec 2021 14:37:26 +0000 (15:37 +0100)]
Use `focus-trap` to maintain the focus in the reaction picker
Alexander Ebert [Thu, 9 Dec 2021 14:19:25 +0000 (15:19 +0100)]
Use `focus-trap` to maintain the focus in date pickers
Alexander Ebert [Thu, 9 Dec 2021 13:59:21 +0000 (14:59 +0100)]
Merge pull request #4603 from WoltLab/user-panel-v2
Overhaul of the user panel menu
Alexander Ebert [Wed, 8 Dec 2021 20:43:14 +0000 (21:43 +0100)]
Adjust the vertical position for fixed buttons
Alexander Ebert [Wed, 8 Dec 2021 18:31:16 +0000 (19:31 +0100)]
Implemented the overflow behavior
Alexander Ebert [Wed, 8 Dec 2021 15:35:25 +0000 (16:35 +0100)]
Improved code clarity
Alexander Ebert [Wed, 8 Dec 2021 13:56:53 +0000 (14:56 +0100)]
Code cleanup
Alexander Ebert [Wed, 8 Dec 2021 13:44:15 +0000 (14:44 +0100)]
Use tabs for `scss` files
Alexander Ebert [Wed, 8 Dec 2021 13:41:50 +0000 (14:41 +0100)]
Code cleanup, module comments
Tim Düsterhus [Wed, 8 Dec 2021 08:57:32 +0000 (09:57 +0100)]
Tim Düsterhus [Wed, 8 Dec 2021 08:56:37 +0000 (09:56 +0100)]
Tim Düsterhus [Wed, 8 Dec 2021 08:50:20 +0000 (09:50 +0100)]
Tim Düsterhus [Wed, 8 Dec 2021 08:32:34 +0000 (09:32 +0100)]
Add update instructions from 5.4.*
Alexander Ebert [Tue, 7 Dec 2021 20:09:56 +0000 (21:09 +0100)]
Bad z-index for use in the style editor
Alexander Ebert [Tue, 7 Dec 2021 20:05:29 +0000 (21:05 +0100)]
Support for the user menu styling in the style editor
Tim Düsterhus [Tue, 7 Dec 2021 16:07:20 +0000 (17:07 +0100)]
Increase version to 5.5.0 Alpha 1
Alexander Ebert [Tue, 7 Dec 2021 15:45:28 +0000 (16:45 +0100)]
Removed the separate link color
It doesn't play nicely with the UI/UX concept
Alexander Ebert [Tue, 7 Dec 2021 15:43:24 +0000 (16:43 +0100)]
Introduced a separate link color, use font sizes from the style
Alexander Ebert [Tue, 7 Dec 2021 15:35:27 +0000 (16:35 +0100)]
Remove the "mark all as read" button when there is nothing unread left
Alexander Ebert [Tue, 7 Dec 2021 14:55:01 +0000 (15:55 +0100)]
Backwards compatibility with the legacy mobile menu
Alexander Ebert [Tue, 7 Dec 2021 14:54:30 +0000 (15:54 +0100)]
Merge branch 'master' into user-panel-v2
Alexander Ebert [Tue, 7 Dec 2021 14:54:20 +0000 (15:54 +0100)]
Missing action to close reports
Tim Düsterhus [Tue, 7 Dec 2021 14:08:36 +0000 (15:08 +0100)]
Merge branch '5.4'
Tim Düsterhus [Tue, 7 Dec 2021 14:08:18 +0000 (15:08 +0100)]
Merge branch '5.3' into 5.4
mutec [Sun, 28 Nov 2021 10:49:39 +0000 (11:49 +0100)]
Cast `$length` to an actual `int` in TLengthDatabaseTableColumn::length()
When the object is being initialized from the existing structure in the
database, the length will be passed as a string and was previously stored as-is
within the object.
This violates the existing PHPDoc type declaration and breaks consumers that
use a strict comparison (`===`) to check the length, notably
`YearDatabaseTableColumn`.
Fix this by casting the passed parameter to an actual `int`. This should be
adjusted to a proper parameter type in a future version.
Resolves #4594
[Tim: Adjusted commit message]
Tim Düsterhus [Tue, 7 Dec 2021 11:38:14 +0000 (12:38 +0100)]
Update fileDelete.xml
The following script was used to generate the file:
#!/bin/bash
cat <<'EOF'
<?xml version="1.0" encoding="UTF-8"?>
<data xmlns="http://www.woltlab.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.woltlab.com http://www.woltlab.com/XSD/2019/fileDelete.xsd">
<delete>
<!-- Special files -->
<file>acp/masterPassword.inc.php</file>
<!-- /Special files -->
EOF
comm -23 <(git log
11ade432290878b6829243ca99131bbf8bc23a66..HEAD --diff-filter=D --no-renames --summary |awk '/delete mode/{print $NF}' |grep wcfsetup/install/files/ |sort -u) <(find wcfsetup/install/files/ |sort -u) \
|sed 's~^wcfsetup/install/files/~~' \
|sed 's~^~\t\t<file>~;s~$~</file>~'
cat <<'EOF'
</delete>
</data>
EOF
And then the fileDelete.xml was re-sorted with vim's `:sort` to keep the diff minimal.
Tim Düsterhus [Tue, 7 Dec 2021 09:46:32 +0000 (10:46 +0100)]
Update composer dependencies
Tim Düsterhus [Tue, 7 Dec 2021 08:42:36 +0000 (09:42 +0100)]
Merge branch '5.4'
Alexander Ebert [Mon, 6 Dec 2021 21:08:43 +0000 (22:08 +0100)]
CSS for the user menu
Alexander Ebert [Mon, 6 Dec 2021 15:55:33 +0000 (16:55 +0100)]
Redesigned the user menu of the control panel
Tim Düsterhus [Mon, 6 Dec 2021 14:44:48 +0000 (15:44 +0100)]
Merge pull request #4602 from WoltLab/available-username
Clean up handling of in-use usernames and email addresses
Tim Düsterhus [Mon, 6 Dec 2021 11:31:56 +0000 (12:31 +0100)]
Strip ZERO WIDTH SPACE in StringUtil::trim()
Tim Düsterhus [Mon, 6 Dec 2021 10:53:06 +0000 (11:53 +0100)]
Do not error out in UserEditForm if the username conflict is the active user
Tim Düsterhus [Mon, 6 Dec 2021 10:48:59 +0000 (11:48 +0100)]
Do not error out in AccountManagement if the username conflict is the active user
Tim Düsterhus [Mon, 6 Dec 2021 10:45:51 +0000 (11:45 +0100)]
Stop using UserUtil::isAvailableEmail()
Tim Düsterhus [Mon, 6 Dec 2021 10:43:06 +0000 (11:43 +0100)]
Deprecate UserUtil::isAvailableEmail()
Tim Düsterhus [Mon, 6 Dec 2021 10:42:24 +0000 (11:42 +0100)]
Stop using UserUtil::isAvailableUsername()
Tim Düsterhus [Mon, 6 Dec 2021 10:40:42 +0000 (11:40 +0100)]
Deprecate UserUtil::isAvailableUsername()
Alexander Ebert [Sun, 5 Dec 2021 17:23:27 +0000 (18:23 +0100)]
Synchronize the close behavior among all overlays
Alexander Ebert [Sun, 5 Dec 2021 17:09:12 +0000 (18:09 +0100)]
Implemented the user menu for moderation queues
Alexander Ebert [Sat, 4 Dec 2021 21:58:11 +0000 (22:58 +0100)]
Merge branch 'master' into user-panel-v2
Alexander Ebert [Sat, 4 Dec 2021 18:24:58 +0000 (19:24 +0100)]
Removing an ACL entry did not persist the current changes to the permissions
Alexander Ebert [Sat, 4 Dec 2021 16:29:59 +0000 (17:29 +0100)]
Deselecting columns for the user result list was overridden by defaults
See https://community.woltlab.com/thread/292760-acp-benutzersuche/
Alexander Ebert [Sat, 4 Dec 2021 16:10:31 +0000 (17:10 +0100)]
Restrict the width of the login form
See https://community.woltlab.com/thread/293054-xsrf-fehlermeldung-beim-acp-login-sieht-b%C3%A4h-b%C3%A4h-aus/
Alexander Ebert [Sat, 4 Dec 2021 15:48:57 +0000 (16:48 +0100)]
Gracefully handle missing permissions to delete cover photos
Alexander Ebert [Sat, 4 Dec 2021 15:14:49 +0000 (16:14 +0100)]
Do not block the DevTools language switch if viewing a non-CMS page
Alexander Ebert [Sat, 4 Dec 2021 14:24:17 +0000 (15:24 +0100)]
Incorrect cleanup of pasted tables
Alexander Ebert [Fri, 3 Dec 2021 14:17:07 +0000 (15:17 +0100)]
Trap the focus inside the menu content
Tim Düsterhus [Fri, 3 Dec 2021 13:11:31 +0000 (14:11 +0100)]
Deprecate IExtendedMessageQuickReplyAction
see #4575
Alexander Ebert [Fri, 3 Dec 2021 11:12:45 +0000 (12:12 +0100)]
Include the `focus-trap` library for a11y
```
cp node_modules/tabbable/dist/index.umd.min.js wcfsetup/install/files/js/3rdParty/focus-trap/
cp node_modules/tabbable/dist/index.umd.min.js.map wcfsetup/install/files/js/3rdParty/focus-trap/
```
```
cp node_modules/focus-trap/dist/focus-trap.umd.min.js wcfsetup/install/files/js/3rdParty/focus-trap/
cp node_modules/focus-trap/dist/focus-trap.umd.min.js.map wcfsetup/install/files/js/3rdParty/focus-trap/
```
Alexander Ebert [Thu, 2 Dec 2021 17:05:29 +0000 (18:05 +0100)]
Reuse data as long as it is not stale, clean-up
Alexander Ebert [Thu, 2 Dec 2021 15:01:58 +0000 (16:01 +0100)]
Removed `favico.js` and `WCF.User.Panel.Notification`
Favico.js was used exclusively for the notification badge in the favicon, but was replaced with a lightweight implementation.
The user panel items cannot be properly mapped to the new implementations, if a custom version of `pageHeaderUser.tpl` is being used, then they are screwed anyway.
Alexander Ebert [Thu, 2 Dec 2021 14:57:33 +0000 (15:57 +0100)]
Menu providers are now self-registering
Tim Düsterhus [Thu, 2 Dec 2021 13:57:29 +0000 (14:57 +0100)]
Merge branch '5.4'
Tim Düsterhus [Thu, 2 Dec 2021 13:56:24 +0000 (14:56 +0100)]
Update composer dependencies
Alexander Ebert [Wed, 1 Dec 2021 18:53:31 +0000 (19:53 +0100)]
Incorrect detection of the last child of a list element when backspacing empty lines
Alexander Ebert [Wed, 1 Dec 2021 18:09:28 +0000 (19:09 +0100)]
Incorrect backspacing of empty paragraphs in list with adjacent lists
Tim Düsterhus [Wed, 1 Dec 2021 12:48:15 +0000 (13:48 +0100)]
Merge pull request #4597 from WoltLab/buffer-pool-size
Add check for minimum InnoDB buffer pool size to the system check
Tim Düsterhus [Wed, 1 Dec 2021 09:51:54 +0000 (10:51 +0100)]
Merge branch '5.4'
Tim Düsterhus [Wed, 1 Dec 2021 09:51:15 +0000 (10:51 +0100)]
Check the name of the PRIMARY KEY in PHP DDL
Resolves #4592
Tim Düsterhus [Wed, 1 Dec 2021 09:36:36 +0000 (10:36 +0100)]
Add check for the buffer pool size to SystemCheckPage
Resolves #4588
Tim Düsterhus [Wed, 1 Dec 2021 09:12:25 +0000 (10:12 +0100)]
Use `SELECT @@<var_name>` instead of `SHOW VARIABLES LIKE '<var_name>'`
> SHOW VARIABLES is subject to a version-dependent display-width limit. For
> variables with very long values that are not completely displayed, use SELECT
> as a workaround. For example:
>
> SELECT @@GLOBAL.innodb_data_file_path;
(https://dev.mysql.com/doc/refman/5.6/en/show-variables.html)
Tim Düsterhus [Wed, 1 Dec 2021 09:13:49 +0000 (10:13 +0100)]
Merge branch '5.4'