GitHub/WoltLab/WCF.git
2 years agoPrevent closing unclosable dialogs with the escape key
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/

2 years agoDetect changes to the HEX value using the `input` event
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/

2 years agoAllow @-sign in username
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

2 years agoUpdate composer dependencies
Tim Düsterhus [Wed, 27 Jul 2022 07:45:31 +0000 (09:45 +0200)]
Update composer dependencies

2 years agoSilence the PHP_ICO class in StyleAction
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

2 years agoMerge branch '5.4' into 5.5
Tim Düsterhus [Thu, 21 Jul 2022 09:08:44 +0000 (11:08 +0200)]
Merge branch '5.4' into 5.5

2 years agoFix typo in de.xml
Tim Düsterhus [Wed, 20 Jul 2022 12:51:10 +0000 (14:51 +0200)]
Fix typo in de.xml

see e1fa341f67d936b14006a70962734504c1a165cd

2 years agoRelease 5.5.3 5.5.3
Alexander Ebert [Wed, 20 Jul 2022 11:56:41 +0000 (13:56 +0200)]
Release 5.5.3

2 years agoMerge branch '5.4' into 5.5
Alexander Ebert [Wed, 20 Jul 2022 11:48:45 +0000 (13:48 +0200)]
Merge branch '5.4' into 5.5

2 years agoRelease 5.4.21 5.4.21
Alexander Ebert [Wed, 20 Jul 2022 11:15:40 +0000 (13:15 +0200)]
Release 5.4.21

2 years agoMerge branch '5.4' into 5.5
Tim Düsterhus [Wed, 20 Jul 2022 10:55:36 +0000 (12:55 +0200)]
Merge branch '5.4' into 5.5

2 years agoMerge pull request #4908 from WoltLab/upgrade-override-success
Tim Düsterhus [Wed, 20 Jul 2022 10:54:50 +0000 (12:54 +0200)]
Merge pull request #4908 from WoltLab/upgrade-override-success

Add explicit “success” message to PackageEnableUpgradeOverrideForm

2 years agoImprove wording for success message in PackageEnableUpgradeOverrideForm
Tim Düsterhus [Wed, 20 Jul 2022 10:50:39 +0000 (12:50 +0200)]
Improve wording for success message in PackageEnableUpgradeOverrideForm

Co-authored-by: Alexander Ebert <ebert@woltlab.com>
2 years agoAdd explicit “success” message to PackageEnableUpgradeOverrideForm
Tim Düsterhus [Wed, 20 Jul 2022 07:59:59 +0000 (09:59 +0200)]
Add explicit “success” message to PackageEnableUpgradeOverrideForm

2 years agoUpdating minified JavaScript files
WoltLab [Wed, 20 Jul 2022 07:37:17 +0000 (07:37 +0000)]
Updating minified JavaScript files

2 years agoMerge branch '5.4' into 5.5
Tim Düsterhus [Wed, 20 Jul 2022 07:35:29 +0000 (09:35 +0200)]
Merge branch '5.4' into 5.5

2 years agoMerge branch '5.4' into 5.5
Tim Düsterhus [Wed, 20 Jul 2022 07:33:16 +0000 (09:33 +0200)]
Merge branch '5.4' into 5.5

2 years agoUpdating minified JavaScript files
WoltLab [Wed, 20 Jul 2022 07:30:22 +0000 (07:30 +0000)]
Updating minified JavaScript files

2 years agoUpdate npm dependencies in extra/
Tim Düsterhus [Wed, 20 Jul 2022 07:26:10 +0000 (09:26 +0200)]
Update npm dependencies in extra/

2 years agoRelease 5.5.3 dev 2 5.5.3_dev_2
Alexander Ebert [Tue, 19 Jul 2022 14:30:02 +0000 (16:30 +0200)]
Release 5.5.3 dev 2

2 years agoUpdating minified JavaScript files
WoltLab [Tue, 19 Jul 2022 14:21:11 +0000 (14:21 +0000)]
Updating minified JavaScript files

2 years agoRestore the selection after closing a dialog
Alexander Ebert [Tue, 19 Jul 2022 13:34:26 +0000 (15:34 +0200)]
Restore the selection after closing a dialog

Attempting to restore it too early will cause the focus trap in Safari to move the selection immediately back.

See https://www.woltlab.com/community/thread/296469-beitragserstellung-bilder-werden-nicht-an-der-gew%C3%BCnschten-stelle-eingef%C3%BCgt/

2 years agoWait for `markAllAsRead` before updating the UI
Alexander Ebert [Tue, 19 Jul 2022 11:02:09 +0000 (13:02 +0200)]
Wait for `markAllAsRead` before updating the UI

The number of unread items relies on an internal counter that is updated based on the server-side value of the `markAllAsRead` action.

Not waiting for the action to complete will cause the UI to become out-of-sync. Notably the unread indicator of the mobile UI tab relies on the internal counter that is updated at a later stage.

See https://www.woltlab.com/community/thread/296509-mobiles-kontrollzentrum-icon-bleibt/

2 years agoMove the focus into the first input field in dialogs
Alexander Ebert [Tue, 19 Jul 2022 10:26:06 +0000 (12:26 +0200)]
Move the focus into the first input field in dialogs

2 years agoFix TypeScript code style
Tim Düsterhus [Tue, 19 Jul 2022 09:30:21 +0000 (11:30 +0200)]
Fix TypeScript code style

2 years agoFix querying possible update versions in PackageUpdateDispatcher::getAvailableUpdates()
Tim Düsterhus [Tue, 19 Jul 2022 09:04:00 +0000 (11:04 +0200)]
Fix querying possible update versions in PackageUpdateDispatcher::getAvailableUpdates()

The previous `LEFT JOIN` might return `packageVersion = NULL` if a package
server does not have any accessible versions for an installed package,
ultimately erroring out in PHP 8.1, because `NULL` is passed to a `string`
parameter.

see https://www.woltlab.com/community/thread/296513-passing-null-to-parameter-3-subject-of-type-array-string-is-deprecated/

2 years agoFix the color of the search icon in the mobile header
Alexander Ebert [Mon, 18 Jul 2022 16:25:27 +0000 (18:25 +0200)]
Fix the color of the search icon in the mobile header

See https://www.woltlab.com/community/thread/296499-mobiles-men%C3%BC-mit-falschen-farbzuweisungen/

2 years agoFix javascript error when viewing polls as a guest
Marcel Werk [Mon, 18 Jul 2022 15:01:05 +0000 (17:01 +0200)]
Fix javascript error when viewing polls as a guest

The view mistakenly assumed that the button for showing the results was always present. This caused a javascript error for guests or for users who could only see the result.

2 years agoFix the enable/disable option for styles
Alexander Ebert [Mon, 18 Jul 2022 11:12:58 +0000 (13:12 +0200)]
Fix the enable/disable option for styles

Clicks to toggle the style are only recognized on the icon which is not visible on mobile devices. Forward clicks on the link to the icon in these cases.

See https://www.woltlab.com/community/thread/296437-stile-lassen-sich-mobil-nicht-deaktivieren/

2 years agoReplace use of a PHP 8+ feature
Alexander Ebert [Mon, 18 Jul 2022 10:20:11 +0000 (12:20 +0200)]
Replace use of a PHP 8+ feature

`DOMElement::$childElementCount` is supported in PHP 8.0+ only, for PHP 7 we need to manually check for child elements.

See https://www.woltlab.com/community/thread/296485-zitat-von-user-nochmal-zitieren/

2 years agoMerge branch '5.5' of https://github.com/WoltLab/WCF into 5.5
Marcel Werk [Fri, 15 Jul 2022 13:35:03 +0000 (15:35 +0200)]
Merge branch '5.5' of https://github.com/WoltLab/WCF into 5.5

2 years agoFix missing cache reset after deleting custom language variables
Marcel Werk [Fri, 15 Jul 2022 13:35:01 +0000 (15:35 +0200)]
Fix missing cache reset after deleting custom language variables

2 years agoRelease 5.5.3 dev 1 5.5.3_dev_1
Alexander Ebert [Fri, 15 Jul 2022 13:01:05 +0000 (15:01 +0200)]
Release 5.5.3 dev 1

2 years agoUpdating minified JavaScript files
WoltLab [Fri, 15 Jul 2022 12:46:31 +0000 (12:46 +0000)]
Updating minified JavaScript files

2 years agoRemove the redundant `role="article"` attribute on `<article>`
Alexander Ebert [Fri, 15 Jul 2022 11:20:31 +0000 (13:20 +0200)]
Remove the redundant `role="article"` attribute on `<article>`

Fixes #4905

2 years agoRemove the `required` attribute from the search input
Alexander Ebert [Thu, 14 Jul 2022 12:05:41 +0000 (14:05 +0200)]
Remove the `required` attribute from the search input

Submitting an “empty” search now serves as a shortcut to the extended search while preserving the filter parameters.

The “required” property behaves strangely on mobile platforms and causes all sorts of positioning and focus management issues.

See https://www.woltlab.com/community/thread/296382-suchoptionen-verschoben/

2 years agoMerge branch '5.4' into 5.5
Alexander Ebert [Thu, 14 Jul 2022 11:12:35 +0000 (13:12 +0200)]
Merge branch '5.4' into 5.5

2 years agoPreserve the aspect ratio of scaled thumbnails
Alexander Ebert [Thu, 14 Jul 2022 10:56:43 +0000 (12:56 +0200)]
Preserve the aspect ratio of scaled thumbnails

See https://www.woltlab.com/community/thread/296285-imageviewer-thumbnail-falsches-format/

2 years agoFix calculation of next cronjob execution for multiple hour declarations
IceQ1337 [Fri, 22 Apr 2022 14:49:59 +0000 (16:49 +0200)]
Fix calculation of next cronjob execution for multiple hour declarations

Resolves #4752

2 years agoFix PHPDoc return type of CronjobUtil::calculateHour()
IceQ1337 [Fri, 10 Jun 2022 13:29:22 +0000 (15:29 +0200)]
Fix PHPDoc return type of CronjobUtil::calculateHour()

see #4752

2 years agoFix function description of CronjobUtil::calculateHour()
IceQ1337 [Fri, 22 Apr 2022 14:24:07 +0000 (16:24 +0200)]
Fix function description of CronjobUtil::calculateHour()

see #4752

2 years agoFixed function description of CronjobUtil::calculcateMinute()
IceQ1337 [Fri, 22 Apr 2022 14:21:12 +0000 (16:21 +0200)]
Fixed function description of CronjobUtil::calculcateMinute()

Also, "returnValue" has been renamed to "addAnHour" to match the return value
of calculateHour() and better reflect its meaning.

see #4752

2 years agoApply the active color to icons on hover
Alexander Ebert [Wed, 13 Jul 2022 16:53:34 +0000 (18:53 +0200)]
Apply the active color to icons on hover

See https://www.woltlab.com/community/thread/296309-wcfusermenutextactive-hat-keinen-einfluss-auf-das-icon/

2 years agoSubmit the color picker dialog on `Enter` in input fields
Alexander Ebert [Wed, 13 Jul 2022 16:24:07 +0000 (18:24 +0200)]
Submit the color picker dialog on `Enter` in input fields

See https://www.woltlab.com/community/thread/296307-safari-farbw%C3%A4hler-mit-enter-nicht-absendbar/

2 years agoFix wrong active menu item on package page
Marcel Werk [Wed, 13 Jul 2022 16:15:10 +0000 (18:15 +0200)]
Fix wrong active menu item on package page

2 years agoFix missing highlighting of required form fields in dialogs
Marcel Werk [Wed, 13 Jul 2022 16:05:57 +0000 (18:05 +0200)]
Fix missing highlighting of required form fields in dialogs

2 years agoFix wrong position of error messages in form-builder forms
Marcel Werk [Wed, 13 Jul 2022 15:39:07 +0000 (17:39 +0200)]
Fix wrong position of error messages in form-builder forms

2 years agoMerge branch '5.5' of https://github.com/WoltLab/WCF into 5.5
Marcel Werk [Wed, 13 Jul 2022 14:53:20 +0000 (16:53 +0200)]
Merge branch '5.5' of https://github.com/WoltLab/WCF into 5.5

2 years agoFix reset of form fields after submitting an article
Marcel Werk [Wed, 13 Jul 2022 14:53:18 +0000 (16:53 +0200)]
Fix reset of form fields after submitting an article

2 years agoFix the behavior of the user menu on window resize
Alexander Ebert [Wed, 13 Jul 2022 14:42:26 +0000 (16:42 +0200)]
Fix the behavior of the user menu on window resize

The menu previously did not update its position when the window is resized. It was also not automatically hidden when the window becomes so narrow that the mobile UI is enabled.

See https://www.woltlab.com/community/thread/296237-benutzerbereich-verhalten-bei-fenstergr%C3%B6%C3%9Fenver%C3%A4nderung/

2 years agoIncrease minimum php requirement for new installations
Marcel Werk [Wed, 13 Jul 2022 12:24:51 +0000 (14:24 +0200)]
Increase minimum php requirement for new installations

2 years agoRemove bogus `encode=false` from `{link}` in moderationList.tpl
Tim Düsterhus [Tue, 12 Jul 2022 15:26:00 +0000 (17:26 +0200)]
Remove bogus `encode=false` from `{link}` in moderationList.tpl

see d30f775733d3eacf8059a67eb3d87850d65b84fa

2 years agoAdd a link to the list of deleted items in the moderation
Alexander Ebert [Tue, 12 Jul 2022 15:11:46 +0000 (17:11 +0200)]
Add a link to the list of deleted items in the moderation

See #4900

2 years agoMerge pull request #4903 from WoltLab/fix-update-credential-dialog
Tim Düsterhus [Tue, 12 Jul 2022 14:32:22 +0000 (16:32 +0200)]
Merge pull request #4903 from WoltLab/fix-update-credential-dialog

Fix sending credentials when updating packages

2 years agoMerge pull request #4898 from WoltLab/5.5-ds-store
Tim Düsterhus [Tue, 12 Jul 2022 14:06:33 +0000 (16:06 +0200)]
Merge pull request #4898 from WoltLab/5.5-ds-store

Rerun the .DS_Store deletion script

2 years agoRerun the .DS_Store deletion script
Tim Düsterhus [Thu, 7 Jul 2022 13:07:33 +0000 (15:07 +0200)]
Rerun the .DS_Store deletion script

The files.tar of 5.5.0 RC 3 contained them, the files_update.tar did not. Thus
instances upgrading from 5.4 straight to 5.5.0 RC 3 are affected by this issue,
whereas instances coming from RC 2 are not necessarily.

Add this script to the update instructions from 5.4 to clean all instances
coming from 5.4.x. Add it also to the update instructions from 5.5.2 to clean all
instances coming from 5.5.x.

see https://www.woltlab.com/community/thread/296244-ds-store-dateien-erneut-in-der-installation/
see #4699

2 years agoUpdate for PHP CS Fixer 3.9.2
Tim Düsterhus [Tue, 12 Jul 2022 09:56:11 +0000 (11:56 +0200)]
Update for PHP CS Fixer 3.9.2

2 years agoMerge branch '5.4' into 5.5
Tim Düsterhus [Tue, 12 Jul 2022 09:04:00 +0000 (11:04 +0200)]
Merge branch '5.4' into 5.5

2 years agoFix sending credentials when updating packages
Tim Düsterhus [Tue, 12 Jul 2022 07:53:25 +0000 (09:53 +0200)]
Fix sending credentials when updating packages

Previously the `isStoreCode` array key would not be defined when updating,
resulting in the code erroring out in PackageUpdateAction::createQueue() due to
accessing an undefined array key.

see eb1f573e7ddf8ac96baa80132284e1efc7c9659d

2 years agoMerge pull request #4901 from IceQ1337-Forks/tabmenu-subtab-spacing
Alexander Ebert [Mon, 11 Jul 2022 15:37:40 +0000 (17:37 +0200)]
Merge pull request #4901 from IceQ1337-Forks/tabmenu-subtab-spacing

Fix margin-top for sub tab content

2 years agoImprove exception message in ImageUtil::createWebpVariant()
Tim Düsterhus [Mon, 11 Jul 2022 09:57:11 +0000 (11:57 +0200)]
Improve exception message in ImageUtil::createWebpVariant()

2 years agoSkip removal of conflicting file
Marcel Werk [Sun, 10 Jul 2022 17:41:18 +0000 (19:41 +0200)]
Skip removal of conflicting file

This file was effectively removed in 3.0, but was later added again by a plugin (which mimics the original functionality) using the same name. Having this file removed causes the plugin to break after the upgrade from 5.4 to 5.5.

2 years agoFix margin-top for sub tab content
IceQ1337 [Sat, 9 Jul 2022 17:26:10 +0000 (19:26 +0200)]
Fix margin-top for sub tab content

2 years agoRelease 5.5.2 5.5.2
Alexander Ebert [Fri, 8 Jul 2022 10:53:19 +0000 (12:53 +0200)]
Release 5.5.2

2 years agoForce the redeployment of `pageMenu.scss` and `userMenu.scss`
Alexander Ebert [Thu, 7 Jul 2022 11:26:43 +0000 (13:26 +0200)]
Force the redeployment of `pageMenu.scss` and `userMenu.scss`

These files were manually overwritten because of an error in the upgrade from 5.4 to 5.5.0. These updated comments will force these to be included in the update again.

2 years agoForce the inclusion of the update script in `files_update.tar` 5.5.1
Alexander Ebert [Wed, 6 Jul 2022 14:44:22 +0000 (16:44 +0200)]
Force the inclusion of the update script in `files_update.tar`

2 years agoForce the update of the style variables
Alexander Ebert [Wed, 6 Jul 2022 14:42:04 +0000 (16:42 +0200)]
Force the update of the style variables

See 26f071679484808f0babe54fdc36d21e2d6ba59a

2 years agoRelease 5.5.1
Alexander Ebert [Wed, 6 Jul 2022 14:38:58 +0000 (16:38 +0200)]
Release 5.5.1

2 years agoUpdate the contents of the pre-upgrade archive
Alexander Ebert [Wed, 6 Jul 2022 14:29:24 +0000 (16:29 +0200)]
Update the contents of the pre-upgrade archive

See https://www.woltlab.com/community/thread/296242-fehler-nach-update-auf-5-5-0-von-aktueller-vorheriger-version-could-not-compile/

2 years agoRelease 5.5.0 5.5.0
Alexander Ebert [Wed, 6 Jul 2022 11:55:04 +0000 (13:55 +0200)]
Release 5.5.0

2 years agoUpdating minified JavaScript files
WoltLab [Wed, 6 Jul 2022 11:36:13 +0000 (11:36 +0000)]
Updating minified JavaScript files

2 years agoMerge branch '5.4' into 5.5
Tim Düsterhus [Wed, 6 Jul 2022 10:42:06 +0000 (12:42 +0200)]
Merge branch '5.4' into 5.5

2 years agoStop flagging the new version 5.5 as “Evaluation” 5.4.20
Alexander Ebert [Wed, 6 Jul 2022 10:38:08 +0000 (12:38 +0200)]
Stop flagging the new version 5.5 as “Evaluation”

See 9072d357de11116a15205073237498cab86dcd5c

2 years agoRelease 5.4.20
Alexander Ebert [Wed, 6 Jul 2022 10:35:02 +0000 (12:35 +0200)]
Release 5.4.20

2 years agoEnable the upgrade notice for 5.5 by default
Alexander Ebert [Wed, 6 Jul 2022 10:33:06 +0000 (12:33 +0200)]
Enable the upgrade notice for 5.5 by default

See WoltLab/com.woltlab.website#602

2 years agoUpdating minified JavaScript files
WoltLab [Wed, 6 Jul 2022 10:27:17 +0000 (10:27 +0000)]
Updating minified JavaScript files

2 years agoMerge branch '5.3' into 5.4
Alexander Ebert [Wed, 6 Jul 2022 10:25:55 +0000 (12:25 +0200)]
Merge branch '5.3' into 5.4

2 years agoRelease 5.3.24 5.3.24
Alexander Ebert [Wed, 6 Jul 2022 10:25:19 +0000 (12:25 +0200)]
Release 5.3.24

2 years agoAllow HTML-like text content in links in the editor
Alexander Ebert [Tue, 5 Jul 2022 15:33:54 +0000 (17:33 +0200)]
Allow HTML-like text content in links in the editor

See https://www.woltlab.com/community/thread/296219-attempting-to-link-an-html-tag-removes-the-tag/

2 years agoMerge pull request #4897 from WoltLab/user-option-output-null
Tim Düsterhus [Tue, 5 Jul 2022 13:43:23 +0000 (15:43 +0200)]
Merge pull request #4897 from WoltLab/user-option-output-null

Explicitly handle a `null` value in UserOptionOutput

2 years agoExplicitly handle a `null` value in UserOptionOutput
Tim Düsterhus [Tue, 5 Jul 2022 13:35:08 +0000 (15:35 +0200)]
Explicitly handle a `null` value in UserOptionOutput

userOptions are commonly nullable, because no default value can be defined for
the `TEXT` column type family.

`null` needs to be handled explicitly, because PHP 8.1 deprecated passing
`null` to non-nullable string parameters of native functions. As an example
without this change, `null` could be passed to `StringUtil::trim()` in
`MessageUserOptioNOutput` which in turn passes it to `preg_replace()`.

2 years agoUpdate composer dependencies
Tim Düsterhus [Tue, 5 Jul 2022 12:39:03 +0000 (14:39 +0200)]
Update composer dependencies

2 years agoMerge branch '5.4' into 5.5
Tim Düsterhus [Tue, 5 Jul 2022 11:28:08 +0000 (13:28 +0200)]
Merge branch '5.4' into 5.5

2 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Tue, 5 Jul 2022 11:27:48 +0000 (13:27 +0200)]
Merge branch '5.3' into 5.4

2 years agoMerge pull request #4896 from WoltLab/abstract-category-edit-check-type
Tim Düsterhus [Tue, 5 Jul 2022 11:25:39 +0000 (13:25 +0200)]
Merge pull request #4896 from WoltLab/abstract-category-edit-check-type

Verify that the category's objectType matches the form's objectType in AbstractCategoryEditForm

2 years agoMerge pull request #4895 from WoltLab/abstract-ajax-action
Tim Düsterhus [Tue, 5 Jul 2022 11:25:22 +0000 (13:25 +0200)]
Merge pull request #4895 from WoltLab/abstract-ajax-action

Make AbstractAjaxAction actually abstract

2 years agoMerge pull request #4894 from WoltLab/abstract-category-edit
Tim Düsterhus [Tue, 5 Jul 2022 11:25:14 +0000 (13:25 +0200)]
Merge pull request #4894 from WoltLab/abstract-category-edit

Make AbstractCategoryEditForm actually abstract

2 years agoMerge pull request #4893 from WoltLab/tabmenu-select-invalid-container
Tim Düsterhus [Tue, 5 Jul 2022 11:25:01 +0000 (13:25 +0200)]
Merge pull request #4893 from WoltLab/tabmenu-select-invalid-container

Select the first erroneous tab in a form if multiple are erroneous

2 years agoMake AbstractAjaxAction actually abstract
Tim Düsterhus [Tue, 5 Jul 2022 09:05:42 +0000 (11:05 +0200)]
Make AbstractAjaxAction actually abstract

Without a controller that inherits from it, the AbstractAjaxAction will do
absolutely nothing useful:

- It fires events that cannot usefully be handled in a generic way.
- It sends an empty HTML response (i.e. a white page).

2 years agoImprove type of exception for invalid object types in AbstractCategoryAddForm
Tim Düsterhus [Tue, 5 Jul 2022 09:02:19 +0000 (11:02 +0200)]
Improve type of exception for invalid object types in AbstractCategoryAddForm

This technically is a BC break, but this exception must not be caught anyway as
it indicates a clear programming error.

2 years agoMake AbstractCategoryEditForm actually abstract
Tim Düsterhus [Mon, 27 Jun 2022 14:03:31 +0000 (16:03 +0200)]
Make AbstractCategoryEditForm actually abstract

This form is not functional, unless an objectType is defined in a child class.

2 years agoHandle invalid `<textarea>` elements when submitting a form within a TabMenu
Tim Düsterhus [Tue, 5 Jul 2022 08:37:50 +0000 (10:37 +0200)]
Handle invalid `<textarea>` elements when submitting a form within a TabMenu

2 years agoSelect the first erroneous tab in a form if multiple are erroneous
Tim Düsterhus [Tue, 5 Jul 2022 07:51:24 +0000 (09:51 +0200)]
Select the first erroneous tab in a form if multiple are erroneous

This was incorrectly migrated to TypeScript. Before TypeScript this used a
regular `for` loop counting indices, allowing the `return;` to correctly leave
the loop.

see https://www.woltlab.com/community/thread/296198-formbuilder-tabmenuformcontainer-required-js-fehler/

2 years agoAdd `DOM.Iterable` to tsconfig.json's `lib` list
Tim Düsterhus [Tue, 5 Jul 2022 07:48:39 +0000 (09:48 +0200)]
Add `DOM.Iterable` to tsconfig.json's `lib` list

This makes `NodeList`, `FormData` et al iterable. This is part of ES 2015 and
thus can be used.

2 years agoMerge remote-tracking branch 'origin/5.5' into 5.5
Tim Düsterhus [Mon, 4 Jul 2022 15:06:02 +0000 (17:06 +0200)]
Merge remote-tracking branch 'origin/5.5' into 5.5

2 years agoMerge branch '5.4' into 5.5
Tim Düsterhus [Mon, 4 Jul 2022 15:05:48 +0000 (17:05 +0200)]
Merge branch '5.4' into 5.5

2 years agoMerge pull request #4891 from WoltLab/fetch-template-plugin
Tim Düsterhus [Mon, 4 Jul 2022 15:05:13 +0000 (17:05 +0200)]
Merge pull request #4891 from WoltLab/fetch-template-plugin

Deprecate the `{fetch}` template plugin

2 years agoDeprecate the `{fetch}` template plugin
Tim Düsterhus [Mon, 4 Jul 2022 14:27:39 +0000 (16:27 +0200)]
Deprecate the `{fetch}` template plugin

2 years agoAdd support for hover color in the user menu
Alexander Ebert [Mon, 4 Jul 2022 14:45:04 +0000 (16:45 +0200)]
Add support for hover color in the user menu

See https://www.woltlab.com/community/thread/296209-wcfusermenulinkactive-fehlt/

2 years agoMerge branch '5.4' into 5.5
Tim Düsterhus [Mon, 4 Jul 2022 14:11:58 +0000 (16:11 +0200)]
Merge branch '5.4' into 5.5