Tim Düsterhus [Fri, 28 Apr 2023 14:02:57 +0000 (16:02 +0200)]
Merge remote-tracking branch 'origin/master'
Tim Düsterhus [Fri, 28 Apr 2023 14:02:26 +0000 (16:02 +0200)]
Merge branch '5.5'
Tim Düsterhus [Fri, 28 Apr 2023 14:01:11 +0000 (16:01 +0200)]
Merge branch '5.4' into 5.5
Tim Düsterhus [Fri, 28 Apr 2023 14:00:48 +0000 (16:00 +0200)]
Update to `actions/upload-artifact@v3` in wcfsetup.yml
This is required, because node.js 12 actions are deprecated.
Alexander Ebert [Fri, 28 Apr 2023 13:56:23 +0000 (15:56 +0200)]
Discard the draft before destroying the editor instance
Fixes #5462
Alexander Ebert [Fri, 28 Apr 2023 12:24:55 +0000 (14:24 +0200)]
Implement mention support for user groups
Fixes #5439
Alexander Ebert [Thu, 27 Apr 2023 17:21:27 +0000 (19:21 +0200)]
Remove an obsolete reference to a previous status code
Closes #4388
Alexander Ebert [Thu, 27 Apr 2023 16:33:38 +0000 (18:33 +0200)]
Force suppress pointer events for the system notification overlay
Fixes #5442
Alexander Ebert [Thu, 27 Apr 2023 16:29:09 +0000 (18:29 +0200)]
Gracefully handle a missing CKEditor instance
Fixes #5441
Marcel Werk [Thu, 27 Apr 2023 16:06:18 +0000 (18:06 +0200)]
Custom icon for search result items (#5461)
Closes #5109
Alexander Ebert [Thu, 27 Apr 2023 16:05:46 +0000 (18:05 +0200)]
Update the CKEditor bundle
Alexander Ebert [Thu, 27 Apr 2023 15:15:04 +0000 (17:15 +0200)]
Add the phrase for the spoiler button
See WoltLab/editor#35
Marcel Werk [Thu, 27 Apr 2023 15:03:45 +0000 (17:03 +0200)]
Merge branch 'master' of https://github.com/WoltLab/WCF
Marcel Werk [Thu, 27 Apr 2023 15:03:43 +0000 (17:03 +0200)]
Add missing PHPDoc
Marcel Werk [Thu, 27 Apr 2023 14:22:14 +0000 (16:22 +0200)]
Merge pull request #5460 from WoltLab/input-type-url
Change URL form field to `input type="url"`
Tim Düsterhus [Thu, 27 Apr 2023 14:21:17 +0000 (16:21 +0200)]
Unify the output format of `|date` and `|plainTime` with `{time}`
see
dbdc39a240f6e2e09550bab547e38d7aadba573a
Tim Düsterhus [Thu, 27 Apr 2023 14:17:34 +0000 (16:17 +0200)]
Fix deprecation note for `|date` and `|plainTime` modifiers
see
dbdc39a240f6e2e09550bab547e38d7aadba573a
Marcel Werk [Thu, 27 Apr 2023 14:08:39 +0000 (16:08 +0200)]
Fix missing caching of article in notifications about comment responses
Marcel Werk [Thu, 27 Apr 2023 14:06:50 +0000 (16:06 +0200)]
Move generic cache preparing to `AbstractCommentResponseUserNotificationEvent`
Marcel Werk [Thu, 27 Apr 2023 14:05:53 +0000 (16:05 +0200)]
Fix event hash for notifications about comment responses
Marcel Werk [Thu, 27 Apr 2023 11:33:21 +0000 (13:33 +0200)]
Enable inputmode for URL form fields by default
Marcel Werk [Thu, 27 Apr 2023 11:32:10 +0000 (13:32 +0200)]
Change URL form field to `input type="url"`
Closes #5266
Marcel Werk [Thu, 27 Apr 2023 13:58:04 +0000 (15:58 +0200)]
Remove obsolete code
The same event hash is already generated in `AbstractUserNotificationEvent`.
Marcel Werk [Thu, 27 Apr 2023 13:25:28 +0000 (15:25 +0200)]
Fix inconsistency of the English version of `wcf.acp.option.url_omit_index_php.description`
Closes #5227
Marcel Werk [Thu, 27 Apr 2023 11:39:05 +0000 (13:39 +0200)]
Merge pull request #5454 from WoltLab/abstract-comment-user-notification-event
Add default implementation for user notifications about comments
Marcel Werk [Thu, 27 Apr 2023 11:38:30 +0000 (13:38 +0200)]
Apply suggestions from code review
Alexander Ebert [Thu, 27 Apr 2023 11:29:26 +0000 (13:29 +0200)]
Prevent iOS from zooming when focusing the editor
Fixes WoltLab/editor#39
Marcel Werk [Thu, 27 Apr 2023 11:20:03 +0000 (13:20 +0200)]
Merge pull request #5459 from WoltLab/time-template-function
Replace |time modifier by {time} function
Tim Düsterhus [Thu, 27 Apr 2023 10:47:08 +0000 (12:47 +0200)]
Improve API for `{time}`
Alexander Ebert [Wed, 26 Apr 2023 17:44:28 +0000 (19:44 +0200)]
Synchronize the `wysiwyg` template
Alexander Ebert [Wed, 26 Apr 2023 17:43:01 +0000 (19:43 +0200)]
Export custom bbcode icons as image src
See #5182
Alexander Ebert [Wed, 26 Apr 2023 17:29:19 +0000 (19:29 +0200)]
Allow custom images as the icon for the bbcode button
See #5182
Marcel Werk [Wed, 26 Apr 2023 16:21:26 +0000 (18:21 +0200)]
Mark time modifier functions as deprecated
Marcel Werk [Wed, 26 Apr 2023 16:21:11 +0000 (18:21 +0200)]
Replace |time modifier by {time} function
Closes #5277
Marcel Werk [Wed, 26 Apr 2023 16:06:42 +0000 (18:06 +0200)]
Fix documentation of the icon template plugin
It's not a compiler plugin.
Marcel Werk [Wed, 26 Apr 2023 15:57:22 +0000 (17:57 +0200)]
Enable `inputmode` for email form fields by default
Marcel Werk [Wed, 26 Apr 2023 13:59:42 +0000 (15:59 +0200)]
Add default implementation for user notifications about comment responses
Tim Düsterhus [Wed, 26 Apr 2023 11:56:10 +0000 (13:56 +0200)]
Merge pull request #5455 from WoltLab/relative-time-weekday-not-first
Fix “today or yesterday” rendering for languages that do not put the weekday first
Tim Düsterhus [Wed, 26 Apr 2023 10:07:54 +0000 (12:07 +0200)]
Disallow changing the languageCode of existing languages
Changing the language code for an existing language effectively invalidates
everything that is already stored within that language and thus is not a useful
operation. Changing the country code or locale should be compatible with
existing phrases or contents and thus is still allowed.
Tim Düsterhus [Wed, 26 Apr 2023 10:07:28 +0000 (12:07 +0200)]
Fix checks for form mode in LanguageAddForm
Tim Düsterhus [Wed, 26 Apr 2023 09:54:31 +0000 (11:54 +0200)]
Fix “today or yesterday” rendering for languages that do not put the weekday first
The previous version was broken, because it just returned the name of the
weekday (`value`), but the time was missing entirely. The code was refactored
to move the “weekday first” check into refresh(), allowing languages that put
the weekday first to proceed as previously without any visual changes and other
languages to just use the absolute date + time. The diff likely looks larger
than it is for that reason.
Rendering was verified with de, en_US, en_GB, ar, he, el, ru, ja.
Tim Düsterhus [Wed, 26 Apr 2023 09:03:00 +0000 (11:03 +0200)]
Merge branch 'language-add-formbuilder'
Closes #5252
mutec [Tue, 31 Jan 2023 19:55:26 +0000 (20:55 +0100)]
Implement `LanguageContentCopying` event
This event is meant to give 3rd-party developers the possibility to copy i18n
contents in every case contents should be copied to another language.
[Tim: Renamed the event to match the event naming scheme]
see #5252
mutec [Sun, 29 Jan 2023 12:36:08 +0000 (13:36 +0100)]
Convert `Language*Form` to form builder
see #5252
[Tim: Performed some final adjustments]
Alexander Ebert [Tue, 25 Apr 2023 16:05:09 +0000 (18:05 +0200)]
Allow for custom workflows that do not rely on passwords
Marcel Werk [Tue, 25 Apr 2023 14:06:04 +0000 (16:06 +0200)]
Add default implementation for user notifications about comments
Tim Düsterhus [Tue, 25 Apr 2023 13:44:04 +0000 (15:44 +0200)]
Merge pull request #5453 from WoltLab/datepicker-disabled
Add `.disabled` class to Date/Picker cells before or after the legal date range
Tim Düsterhus [Tue, 25 Apr 2023 13:39:20 +0000 (15:39 +0200)]
Merge pull request #5452 from WoltLab/devtools-sync
Fix visuals in devtoolsProjectSync if the first non-important PIP has no target
Marcel Werk [Tue, 25 Apr 2023 12:04:14 +0000 (14:04 +0200)]
Merge pull request #5450 from WoltLab/user-notification-mail-title
Remove the "New Notification:" prefix from notification e-mails
Tim Düsterhus [Tue, 25 Apr 2023 10:49:41 +0000 (12:49 +0200)]
Fix CSS to disable the datePicker hover effect on unclickable cells
Tim Düsterhus [Tue, 25 Apr 2023 10:45:19 +0000 (12:45 +0200)]
Add `.disabled` class to Date/Picker cells before or after the legal date range
And then reduce the opacity to make it more clear that these are unselectable.
Valid dates in a different month will still not be clickable, but their opacity
will not be reduced to not be misleading.
see https://www.woltlab.com/community/thread/294117-datepicker-ausw%C3%A4hlbare-daten-eindeutiger-darstellen/
Tim Düsterhus [Tue, 25 Apr 2023 10:24:31 +0000 (12:24 +0200)]
Fix visuals in devtoolsProjectSync if the first non-important PIP has no target
The thicker border was missing, because the element having the border was
visually hidden.
Tim Düsterhus [Tue, 25 Apr 2023 09:34:29 +0000 (11:34 +0200)]
Merge branch '5.5'
Tim Düsterhus [Tue, 25 Apr 2023 09:33:59 +0000 (11:33 +0200)]
Improve phrasing for `user_authentication_failure_*` descriptions
Marcel Werk [Mon, 24 Apr 2023 16:04:48 +0000 (18:04 +0200)]
Remove the "New Notification:" prefix from notification e-mails
The prefix had little use and caused that in many e-mail clients little of the actual subject of the e-mails was immediately visible.
Tim Düsterhus [Mon, 24 Apr 2023 13:08:26 +0000 (15:08 +0200)]
Merge branch '5.5'
Tim Düsterhus [Mon, 24 Apr 2023 13:07:17 +0000 (15:07 +0200)]
Fix creating menuItem PIP entries without parent using dev tools
Fixes #4754
Tim Düsterhus [Mon, 24 Apr 2023 12:19:24 +0000 (14:19 +0200)]
Use `intdiv()` in `ExifUtil::simplifyRational()`
Tim Düsterhus [Mon, 24 Apr 2023 12:00:14 +0000 (14:00 +0200)]
Merge pull request #5449 from WoltLab/exifutil-simplify-exposure
Simplify the ExposureTime fraction in ExifUtil::getFormattedExifData()
Tim Düsterhus [Mon, 24 Apr 2023 11:25:19 +0000 (13:25 +0200)]
Simplify the ExposureTime fraction in ExifUtil::getFormattedExifData()
see https://www.woltlab.com/community/thread/298320-fehlerhafte-exif-daten/
Tim Düsterhus [Mon, 24 Apr 2023 08:55:26 +0000 (10:55 +0200)]
Merge pull request #5437 from WoltLab/random-cronjob
Support randomized cronjobs in cronjob PIP
Tim Düsterhus [Fri, 21 Apr 2023 11:03:00 +0000 (13:03 +0200)]
Remove obsolete manual cronjob randomization.
Tim Düsterhus [Fri, 21 Apr 2023 11:01:36 +0000 (13:01 +0200)]
Use `<expression type="random">` for randomized cronjobs
see #5202
Tim Düsterhus [Fri, 21 Apr 2023 11:07:24 +0000 (13:07 +0200)]
Generate WCF_UUID earlier during installation
This is required for cronjob randomization. Some additional changes needed to
be performed to not break WCFSetup. As the options.inc.php is rewritten, the
cookie prefix update needs to be moved into the install script from
PackageInstallationDispatcher.
Alexander Ebert [Sun, 23 Apr 2023 09:05:10 +0000 (11:05 +0200)]
Fix the styling of the overflow toolbar
Alexander Ebert [Sun, 23 Apr 2023 09:02:13 +0000 (11:02 +0200)]
Fix the overflow behavior of the grouped toolbar
See #18
Alexander Ebert [Sat, 22 Apr 2023 10:30:16 +0000 (12:30 +0200)]
Enable the automatic grouping of items in the toolbar
Fixes WoltLab/editor#18
Alexander Ebert [Fri, 21 Apr 2023 14:05:17 +0000 (16:05 +0200)]
Use a darker shade to separate split buttons
Tim Düsterhus [Fri, 21 Apr 2023 14:04:05 +0000 (16:04 +0200)]
Fix version variable in INVALID_REQUIRED_PACKAGE_VERSION_NUMBER error message
Fixes #5443
Tim Düsterhus [Fri, 21 Apr 2023 13:35:22 +0000 (15:35 +0200)]
Merge pull request #5438 from WoltLab/quit-more-often
Run the userQuit cronjob every 4 hours
Alexander Ebert [Fri, 21 Apr 2023 13:27:17 +0000 (15:27 +0200)]
Merge pull request #5440 from WoltLab/ckeditor5-styling
Align the styling of CKEditor 5 with the regular style
Alexander Ebert [Fri, 21 Apr 2023 13:18:19 +0000 (15:18 +0200)]
Remove the border radius from the table creation widget
Alexander Ebert [Fri, 21 Apr 2023 13:18:07 +0000 (15:18 +0200)]
Apply `cursor: pointer` to all non-disabled buttons
Alexander Ebert [Fri, 21 Apr 2023 12:57:53 +0000 (14:57 +0200)]
Improve the color scheme of focus indicators
Alexander Ebert [Fri, 21 Apr 2023 11:27:34 +0000 (13:27 +0200)]
Add the missing border to the pseudo dialog for draft restores
Alexander Ebert [Thu, 20 Apr 2023 17:19:10 +0000 (19:19 +0200)]
Apply the framework’s style to CKEditor
Alexander Ebert [Thu, 20 Apr 2023 13:53:00 +0000 (15:53 +0200)]
Apply the style variables for the editor toolbar
Tim Düsterhus [Fri, 21 Apr 2023 12:39:38 +0000 (14:39 +0200)]
Delete some remaining `@package` tags in *.php
These were likely sitting in PRs when the tags were removed originally in
bb349f5cfb64ec93ad08f1485a938f851e891cee.
Tim Düsterhus [Fri, 21 Apr 2023 12:10:32 +0000 (14:10 +0200)]
Run the userQuit cronjob every 4 hours
Users that initiated their quit reported more than once that their user account
was not yet deleted, even though their quit time already expired. This is
especially pronounced if the planned quit time was in the morning, as the
cronjob previously only ran during night.
Run the cronjob every 4 hours, reducing the time window where the quit time
already expired, but the account is not actually deleted yet. A delay of a few
hours is likely reasonable even for layman users.
Tim Düsterhus [Fri, 21 Apr 2023 11:42:29 +0000 (13:42 +0200)]
Merge pull request #5436 from WoltLab/mfa-code-visuals
Improve visuals for MFA code inputs
Tim Düsterhus [Fri, 21 Apr 2023 10:59:09 +0000 (12:59 +0200)]
Support randomized cronjobs in cronjob PIP
This uses an additional attribute on the `<expression>` for a clear migration
path forward, if the cron expression library gains native support.
With PHP 8.2+ a seedable engine is used, ensuring the values stay the same
after a reimport of the same cronjob.
Resolves #5202
Tim Düsterhus [Fri, 21 Apr 2023 09:36:05 +0000 (11:36 +0200)]
Improve visuals for MFA code inputs
The `size=""` attribute does not really match the required size for the input,
even with monospace fonts. Use explicit a `width:` attribute with the `ch` unit
for the few field sizes we actually use, because using an attribute value in
calculations is not possible.
This commit also updates the use of the `monospace` font to
`--wcfFontFamilyMonospace` for consistency.
Tim Düsterhus [Fri, 21 Apr 2023 09:20:04 +0000 (11:20 +0200)]
Update to FontAwesome 6.4.0
Tim Düsterhus [Fri, 21 Apr 2023 09:15:58 +0000 (11:15 +0200)]
Merge pull request #5434 from WoltLab/username-validating-event
Add UsernameValidating event
Tim Düsterhus [Fri, 21 Apr 2023 09:14:42 +0000 (11:14 +0200)]
Merge pull request #5435 from WoltLab/fix-google-font
Fix the use of Google Fonts
Tim Düsterhus [Fri, 21 Apr 2023 08:24:46 +0000 (10:24 +0200)]
Fix the use of Google Fonts
Due to the move to proper CSS variables, instead of just SCSS variables, the
variables need to be available during `->bootstrap()` and thus they are
prepared early in the compilation process. This preparation included quoting
the Google Font. Later in the bootstrap, when loading the CSS for the Google
Font, the corresponding CSS file could not be found due to this quoting.
It appears that the quoting of the variable itself is no longer be necessary.
The previous comment stated that font names with 'and' or 'or' in their name
cause issues. While the current list of fonts does not include any font with
'or' in its name, I successfully tested the `Black And White Picture` font.
The SCSS compiled just fine, possibly due to an upgrade of the SCSS compiler
that fixed a limitation. So this is going to be the bugfix.
Fixes #5400
Tim Düsterhus [Thu, 20 Apr 2023 15:33:16 +0000 (17:33 +0200)]
Move the REGISTER_USERNAME_FORCE_ASCII check into an event listener
Tim Düsterhus [Thu, 20 Apr 2023 15:25:55 +0000 (17:25 +0200)]
Add UsernameValidating event
Tim Düsterhus [Thu, 20 Apr 2023 13:07:17 +0000 (15:07 +0200)]
Improve Ckeditor/Types.ts
Alexander Ebert [Thu, 20 Apr 2023 12:15:38 +0000 (14:15 +0200)]
Unify the general styling of CKEditor
Fixes #5428
Tim Düsterhus [Thu, 20 Apr 2023 09:14:19 +0000 (11:14 +0200)]
Fix incorrect phrase reference in styleAdd.tpl
Tim Düsterhus [Thu, 20 Apr 2023 08:40:02 +0000 (10:40 +0200)]
Merge branch '5.5'
Tim Düsterhus [Thu, 20 Apr 2023 08:38:09 +0000 (10:38 +0200)]
Add parameter types from psr/http-message to LegacyPlaceholderResponse
Tim Düsterhus [Thu, 20 Apr 2023 07:02:30 +0000 (09:02 +0200)]
Merge pull request #5429 from WoltLab/username-spoof
Extend REGISTER_USERNAME_FORCE_ASCII to support ICU spoofchecking
Marcel Werk [Wed, 19 Apr 2023 16:44:24 +0000 (18:44 +0200)]
Merge pull request #5430 from WoltLab/generic-share-button
Add generic position for share button in the content interaction section
Marcel Werk [Wed, 19 Apr 2023 14:51:11 +0000 (16:51 +0200)]
Use new position in article template
Marcel Werk [Wed, 19 Apr 2023 14:43:37 +0000 (16:43 +0200)]
Add generic position for share button in the content interaction section
Marcel Werk [Wed, 19 Apr 2023 14:37:49 +0000 (16:37 +0200)]
Add support for button-type share buttons
Tim Düsterhus [Wed, 19 Apr 2023 11:41:06 +0000 (13:41 +0200)]
Extend REGISTER_USERNAME_FORCE_ASCII to support ICU spoofchecking
Alexander Ebert [Wed, 19 Apr 2023 13:32:44 +0000 (15:32 +0200)]
Release 5.5.11