GitHub/WoltLab/WCF.git
3 years agoAdd `EventHandler::executeListeners()`
Matthias Schmidt [Thu, 17 Jun 2021 05:03:59 +0000 (07:03 +0200)]
Add `EventHandler::executeListeners()`

Instead of having the same code in `EventHandler::executeInheritedActions()` and `EventHandler::fireAction()`, it is now just in one method.

3 years agoRefactor code in `EventHandler`
Matthias Schmidt [Thu, 17 Jun 2021 04:57:55 +0000 (06:57 +0200)]
Refactor code in `EventHandler`

… to reduce code complexity and nesting levels.

3 years agoAdd `EventHandler::getListenerObject()`
Matthias Schmidt [Thu, 17 Jun 2021 04:52:22 +0000 (06:52 +0200)]
Add `EventHandler::getListenerObject()`

Instead of having the same code in `EventHandler::executeInheritedActions()` and `EventHandler::fireAction()`, it is now just in one method.

3 years agoRemove obsolete `Breadcrumbs` methods (#4298)
Matthias Schmidt [Wed, 16 Jun 2021 12:21:11 +0000 (14:21 +0200)]
Remove obsolete `Breadcrumbs` methods (#4298)

As these methods would result in exceptions for many versions, it is safe to remove them.

3 years agoDelete `TemplateListenerCacheBuilder` (#4297)
Matthias Schmidt [Wed, 16 Jun 2021 12:20:56 +0000 (14:20 +0200)]
Delete `TemplateListenerCacheBuilder` (#4297)

3 years agoMerge pull request #4293 from WoltLab/guzzle-recaptcha
Tim Düsterhus [Wed, 16 Jun 2021 07:03:56 +0000 (09:03 +0200)]
Merge pull request #4293 from WoltLab/guzzle-recaptcha

Migrate RecaptchaHandler to Guzzle

3 years agoMerge pull request #4294 from WoltLab/suhosin
Tim Düsterhus [Tue, 15 Jun 2021 15:30:27 +0000 (17:30 +0200)]
Merge pull request #4294 from WoltLab/suhosin

Remove Suhosin compatibility layer in PackageInstallationDispatcher

3 years agoRemove Suhosin compatibility layer in PackageInstallationDispatcher
Tim Düsterhus [Tue, 15 Jun 2021 15:06:28 +0000 (17:06 +0200)]
Remove Suhosin compatibility layer in PackageInstallationDispatcher

Suhosin is no more. The last / final release was in 2015.

3 years agoMigrate RecaptchaHandler to Guzzle
Tim Düsterhus [Tue, 15 Jun 2021 14:14:50 +0000 (16:14 +0200)]
Migrate RecaptchaHandler to Guzzle

see #4281

3 years agoMerge branch '5.4'
Matthias Schmidt [Tue, 15 Jun 2021 13:11:11 +0000 (15:11 +0200)]
Merge branch '5.4'

3 years agoMerge branch '5.3' into 5.4
Matthias Schmidt [Tue, 15 Jun 2021 13:10:55 +0000 (15:10 +0200)]
Merge branch '5.3' into 5.4

3 years agoMake `WysiwygAttachmentFormField` only available if upload is allowed
Matthias Schmidt [Tue, 15 Jun 2021 12:55:02 +0000 (14:55 +0200)]
Make `WysiwygAttachmentFormField` only available if upload is allowed

The same check exists in the non-form builder template `messageFormTabs.tpl`.

3 years agoMerge pull request #4278 from WoltLab/blocklist-removal
Tim Düsterhus [Tue, 15 Jun 2021 12:06:46 +0000 (14:06 +0200)]
Merge pull request #4278 from WoltLab/blocklist-removal

Remove the client blocklist options

3 years agoRemove `BLACKLIST_USER_AGENTS`
Tim Düsterhus [Thu, 10 Jun 2021 13:37:23 +0000 (15:37 +0200)]
Remove `BLACKLIST_USER_AGENTS`

see #3914

3 years agoRemove `BLACKLIST_IP_ADDRESSES`
Tim Düsterhus [Thu, 10 Jun 2021 13:33:30 +0000 (15:33 +0200)]
Remove `BLACKLIST_IP_ADDRESSES`

see #3914

3 years agoMerge branch '5.4'
Marcel Werk [Tue, 15 Jun 2021 11:27:59 +0000 (13:27 +0200)]
Merge branch '5.4'

3 years agoMerge branch '5.3' into 5.4
Marcel Werk [Tue, 15 Jun 2021 11:27:22 +0000 (13:27 +0200)]
Merge branch '5.3' into 5.4

3 years agoPages in the Template format were not imported correctly
Marcel Werk [Tue, 15 Jun 2021 11:23:53 +0000 (13:23 +0200)]
Pages in the Template format were not imported correctly

3 years agoEnforce strict camel case for method names
Alexander Ebert [Tue, 15 Jun 2021 09:49:32 +0000 (11:49 +0200)]
Enforce strict camel case for method names

`ImageUtil::browserSupportsWebP()` was renamed to `ImageUtil::browserSupportsWebp()` for consistency with other methods.

3 years agoDisable lazy loading for images in AMP
Alexander Ebert [Tue, 15 Jun 2021 09:36:59 +0000 (11:36 +0200)]
Disable lazy loading for images in AMP

Fixes #4290

3 years agoMerge branch '5.4'
Tim Düsterhus [Tue, 15 Jun 2021 07:50:05 +0000 (09:50 +0200)]
Merge branch '5.4'

3 years agoRevert "Add ES 5 syntax check (#4291)"
Tim Düsterhus [Tue, 15 Jun 2021 07:49:33 +0000 (09:49 +0200)]
Revert "Add ES 5 syntax check (#4291)"

This is only needed in '5.3', thus it is being reverted for 5.4+.

This reverts commit 2d35dbce84fbe97e8dc80629d889b51953e1641e.

3 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Tue, 15 Jun 2021 07:48:59 +0000 (09:48 +0200)]
Merge branch '5.3' into 5.4

3 years agoAdd ES 5 syntax check (#4291)
Tim Düsterhus [Tue, 15 Jun 2021 07:48:19 +0000 (09:48 +0200)]
Add ES 5 syntax check (#4291)

3 years agoRemove deprecated Recaptcha-related classes (#4289)
Matthias Schmidt [Tue, 15 Jun 2021 05:58:12 +0000 (07:58 +0200)]
Remove deprecated Recaptcha-related classes (#4289)

See #4281

3 years agoMerge branch '5.4'
Matthias Schmidt [Tue, 15 Jun 2021 05:40:00 +0000 (07:40 +0200)]
Merge branch '5.4'

3 years agoMerge branch '5.3' into 5.4
Matthias Schmidt [Tue, 15 Jun 2021 05:39:49 +0000 (07:39 +0200)]
Merge branch '5.3' into 5.4

3 years agoFix links to developer documentation in phrases
Felix | D1strict [Tue, 15 Jun 2021 05:33:15 +0000 (07:33 +0200)]
Fix links to developer documentation in phrases

3 years agoRelease 5.3.9 5.3.9
Alexander Ebert [Mon, 14 Jun 2021 17:11:24 +0000 (19:11 +0200)]
Release 5.3.9

3 years agoUpdating minified JavaScript files
WoltLab [Mon, 14 Jun 2021 17:06:40 +0000 (17:06 +0000)]
Updating minified JavaScript files

3 years agoES6+ syntax trips the legacy UglifyJS compiler
Alexander Ebert [Mon, 14 Jun 2021 17:05:23 +0000 (19:05 +0200)]
ES6+ syntax trips the legacy UglifyJS compiler

3 years agoRelease 5.3.8 5.3.8
Alexander Ebert [Mon, 14 Jun 2021 14:46:04 +0000 (16:46 +0200)]
Release 5.3.8

3 years agoUpdating minified JavaScript files
WoltLab [Mon, 14 Jun 2021 13:52:54 +0000 (13:52 +0000)]
Updating minified JavaScript files

3 years agoMinor design tweaks for content item list
Marcel Werk [Mon, 14 Jun 2021 13:16:16 +0000 (15:16 +0200)]
Minor design tweaks for content item list

3 years agoUnified width of the unfurl card
Marcel Werk [Mon, 14 Jun 2021 12:43:26 +0000 (14:43 +0200)]
Unified width of the unfurl card

3 years agoSupport embedded objects in users' "About Me" text (#4282)
Matthias Schmidt [Mon, 14 Jun 2021 09:26:19 +0000 (11:26 +0200)]
Support embedded objects in users' "About Me" text (#4282)

See #4253

3 years agoMerge pull request #4283 from WoltLab/devtools_package_server
Matthias Schmidt [Mon, 14 Jun 2021 09:25:28 +0000 (11:25 +0200)]
Merge pull request #4283 from WoltLab/devtools_package_server

Support adding WoltLab package server login credentials to dev config file

3 years agoMerge pull request #4288 from WoltLab/SourceCodeFormField
Matthias Schmidt [Mon, 14 Jun 2021 08:47:23 +0000 (10:47 +0200)]
Merge pull request #4288 from WoltLab/SourceCodeFormField

Add and use `SourceCodeFormField`

3 years agoMerge branch '5.4'
Tim Düsterhus [Mon, 14 Jun 2021 08:46:26 +0000 (10:46 +0200)]
Merge branch '5.4'

3 years agoRevert deprecation of `ApplicationHandler::getWCF()`
Matthias Schmidt [Mon, 14 Jun 2021 08:35:31 +0000 (10:35 +0200)]
Revert deprecation of `ApplicationHandler::getWCF()`

While "WCF" is no longer an up-to-date abbreviation for "WoltLab Suite Core", "wcf" is still used as its application abbreviation in all other contexts so that keeping this method is fine until all references to "wcf" are removed.

3 years agoForce `LF` line endings for generated JavaScript (#4285)
MysteryCode [Mon, 14 Jun 2021 08:30:55 +0000 (10:30 +0200)]
Force `LF` line endings for generated JavaScript (#4285)

The `newLine` configuration option in tsconfig is platform specific. Explicitly set it to ensure consistent behavior.

[Tim: Rephrased the commit message]

3 years agoMerge branch '5.4'
Matthias Schmidt [Mon, 14 Jun 2021 07:36:09 +0000 (09:36 +0200)]
Merge branch '5.4'

3 years agoRemove duplicate `getSingleObject()` comment in `DevtoolsMissingLanguageItemList`
Matthias Schmidt [Mon, 14 Jun 2021 07:36:01 +0000 (09:36 +0200)]
Remove duplicate `getSingleObject()` comment in `DevtoolsMissingLanguageItemList`

3 years agoMerge branch '5.4'
Matthias Schmidt [Mon, 14 Jun 2021 06:50:45 +0000 (08:50 +0200)]
Merge branch '5.4'

3 years agoFix deleting non-image attachments from WYSIWYG editor
Matthias Schmidt [Mon, 14 Jun 2021 06:50:07 +0000 (08:50 +0200)]
Fix deleting non-image attachments from WYSIWYG editor

3 years agoStop using deprecated `UserNotificationHandler::markAsConfirmedByID()`
Matthias Schmidt [Mon, 14 Jun 2021 06:40:15 +0000 (08:40 +0200)]
Stop using deprecated `UserNotificationHandler::markAsConfirmedByID()`

See #4281

3 years agoUse `SourceCodeFormField`
Matthias Schmidt [Mon, 14 Jun 2021 05:43:06 +0000 (07:43 +0200)]
Use `SourceCodeFormField`

3 years agoAdd `SourceCodeFormField`
Matthias Schmidt [Mon, 14 Jun 2021 05:42:57 +0000 (07:42 +0200)]
Add `SourceCodeFormField`

3 years agoFix CodeMirror mode for global style values form
Matthias Schmidt [Mon, 14 Jun 2021 05:35:23 +0000 (07:35 +0200)]
Fix CodeMirror mode for global style values form

3 years agoFix reading i18n data from form builder forms (#4284)
MysteryCode [Mon, 14 Jun 2021 05:23:27 +0000 (07:23 +0200)]
Fix reading i18n data from form builder forms (#4284)

Previous the code caused the following error: `Uncaught TypeError: Cannot set property '1' of undefined` since it tries to set the language's value in an object which doesn't exist (yet).

3 years agoUpdate language PIP GUI to new file structure
Matthias Schmidt [Mon, 14 Jun 2021 05:16:40 +0000 (07:16 +0200)]
Update language PIP GUI to new file structure

3 years agoFix CodeMirror instance with no mode
Matthias Schmidt [Fri, 11 Jun 2021 15:30:09 +0000 (17:30 +0200)]
Fix CodeMirror instance with no mode

3 years agoFix CodeMirror CSS inclusion check for multiple CodeMirror instances
Matthias Schmidt [Fri, 11 Jun 2021 15:29:51 +0000 (17:29 +0200)]
Fix CodeMirror CSS inclusion check for multiple CodeMirror instances

3 years agoSupport adding WoltLab package server login credentials to dev config file
Matthias Schmidt [Fri, 11 Jun 2021 15:10:56 +0000 (17:10 +0200)]
Support adding WoltLab package server login credentials to dev config file

3 years agoSupport `Database::prepare()` during WCFSetup
Matthias Schmidt [Fri, 11 Jun 2021 15:11:48 +0000 (17:11 +0200)]
Support `Database::prepare()` during WCFSetup

3 years agoRename `wsc-dev-config-54.json` to `wsc-dev-config-55.json`
Matthias Schmidt [Fri, 11 Jun 2021 15:09:42 +0000 (17:09 +0200)]
Rename `wsc-dev-config-54.json` to `wsc-dev-config-55.json`

3 years agoMove developer mode setup into separate method
Matthias Schmidt [Fri, 11 Jun 2021 14:33:08 +0000 (16:33 +0200)]
Move developer mode setup into separate method

3 years agoDo nothing in file deletion PIPs during uninstallation
Matthias Schmidt [Fri, 11 Jun 2021 12:26:06 +0000 (14:26 +0200)]
Do nothing in file deletion PIPs during uninstallation

3 years agoIncorrect removal of formatting when pasting as plain text
Alexander Ebert [Thu, 10 Jun 2021 16:22:31 +0000 (18:22 +0200)]
Incorrect removal of formatting when pasting as plain text

Fixes #4276

3 years agoDelay the caret positioning on iOS
Alexander Ebert [Thu, 10 Jun 2021 15:50:12 +0000 (17:50 +0200)]
Delay the caret positioning on iOS

3 years agoRely on the dialog's auto focus with proper iOS handling
Alexander Ebert [Thu, 10 Jun 2021 15:49:49 +0000 (17:49 +0200)]
Rely on the dialog's auto focus with proper iOS handling

3 years agoMerge pull request #4279 from WoltLab/stringutil-getHash
Tim Düsterhus [Thu, 10 Jun 2021 14:57:11 +0000 (16:57 +0200)]
Merge pull request #4279 from WoltLab/stringutil-getHash

Deprecate StringUtil::getHash()

3 years agoMerge pull request #4280 from WoltLab/mathutil-getRandomValue
Tim Düsterhus [Thu, 10 Jun 2021 14:56:44 +0000 (16:56 +0200)]
Merge pull request #4280 from WoltLab/mathutil-getRandomValue

Deprecate MathUtil::getRandomValue()

3 years agoDeprecate StringUtil::getHash()
Tim Düsterhus [Thu, 10 Jun 2021 13:50:34 +0000 (15:50 +0200)]
Deprecate StringUtil::getHash()

This method was a simple alias to `\sha1()` and also defined as such. Users of
this method relied on the output of this method not changing, making it
entirely useless, because there is no benefit to use this method over `sha1()`
directly.

Deprecate `StringUtil::getHash()` and update the users to use `sha1()`.

3 years agoDeprecate MathUtil::getRandomValue()
Tim Düsterhus [Thu, 10 Jun 2021 13:54:53 +0000 (15:54 +0200)]
Deprecate MathUtil::getRandomValue()

This method is a thin wrapper around `\mt_rand()` without any usability
benefits. Users of this method should either switch to `\random_int()` or
`\mt_rand()` directly.

3 years agoMerge pull request #4277 from WoltLab/codemirror
Matthias Schmidt [Thu, 10 Jun 2021 09:22:29 +0000 (11:22 +0200)]
Merge pull request #4277 from WoltLab/codemirror

Update CodeMirror to version 5.61.1 and use it with requireJS

3 years agoUse Sass highlighter for CodeMirror Sass inputs
Matthias Schmidt [Thu, 10 Jun 2021 09:13:38 +0000 (11:13 +0200)]
Use Sass highlighter for CodeMirror Sass inputs

3 years agoUse requireJS to load CodeMirror
Matthias Schmidt [Thu, 10 Jun 2021 09:12:56 +0000 (11:12 +0200)]
Use requireJS to load CodeMirror

3 years agoUpdate CodeMirror to version 5.61.1
Matthias Schmidt [Thu, 10 Jun 2021 09:06:32 +0000 (11:06 +0200)]
Update CodeMirror to version 5.61.1

With this change, the original folder structure from CodeMirror is preserved, i.e. `codemirror.js` and `codemirror.css` being in a `lib` folder.
To preserve backward-compatibility if codemirror is used directly, these files are also kept in the `codemirror` folder directly.

3 years agoMerge branch '5.4'
Tim Düsterhus [Thu, 10 Jun 2021 08:52:12 +0000 (10:52 +0200)]
Merge branch '5.4'

3 years agoPrevent caching of redirects in shared caches
Tim Düsterhus [Thu, 10 Jun 2021 08:49:15 +0000 (10:49 +0200)]
Prevent caching of redirects in shared caches

see #4273

3 years agoMerge branch '5.4'
Matthias Schmidt [Thu, 10 Jun 2021 07:02:40 +0000 (09:02 +0200)]
Merge branch '5.4'

3 years agoMerge branch '5.3' into 5.4
Matthias Schmidt [Thu, 10 Jun 2021 07:02:27 +0000 (09:02 +0200)]
Merge branch '5.3' into 5.4

3 years agoSync client-side poll validation with server-side validation
Matthias Schmidt [Thu, 10 Jun 2021 07:01:57 +0000 (09:01 +0200)]
Sync client-side poll validation with server-side validation

`PollManager` marks an empty question field as empty if poll options are given, while `WCF.Poll.Management` aborted validation once the question field is empty, no matter whether options are given or not.

3 years agoHandle poll question validation errors for quick replies
Matthias Schmidt [Thu, 10 Jun 2021 06:56:53 +0000 (08:56 +0200)]
Handle poll question validation errors for quick replies

3 years agoShow embedded objects after editing comments
Matthias Schmidt [Thu, 10 Jun 2021 05:52:01 +0000 (07:52 +0200)]
Show embedded objects after editing comments

3 years agoFix embedded object handling after editing comment responses
Matthias Schmidt [Thu, 10 Jun 2021 05:51:43 +0000 (07:51 +0200)]
Fix embedded object handling after editing comment responses

3 years agoRemove `email_mail` template
Matthias Schmidt [Wed, 9 Jun 2021 16:03:19 +0000 (18:03 +0200)]
Remove `email_mail` template

Close #4203

3 years agoUnescape BBCode attributes on editor load
Alexander Ebert [Wed, 9 Jun 2021 14:59:57 +0000 (16:59 +0200)]
Unescape BBCode attributes on editor load

3 years agoMerge pull request #4275 from WoltLab/comment_embedded
Matthias Schmidt [Wed, 9 Jun 2021 14:56:47 +0000 (16:56 +0200)]
Merge pull request #4275 from WoltLab/comment_embedded

Support embedded objects in comments and comment responses

3 years agoExplicitly delete old file
Matthias Schmidt [Wed, 9 Jun 2021 14:55:36 +0000 (16:55 +0200)]
Explicitly delete old file

These files were deleted in the repository so that they are not part of releases after that point in time. In older installations that were updated, these obsolete files might still exist, however.

3 years agoRemove the master password (#4272)
Matthias Schmidt [Wed, 9 Jun 2021 13:26:52 +0000 (15:26 +0200)]
Remove the master password (#4272)

Close #3913

3 years agoSupport embedded objects when rendering comment (responses) activities
Matthias Schmidt [Wed, 9 Jun 2021 13:17:56 +0000 (15:17 +0200)]
Support embedded objects when rendering comment (responses) activities

3 years agoSupport embedded objects when rendering liked comment (responses)
Matthias Schmidt [Wed, 9 Jun 2021 13:17:32 +0000 (15:17 +0200)]
Support embedded objects when rendering liked comment (responses)

3 years agoLoad embedded objects for structured/viewable comment (response) lists
Matthias Schmidt [Wed, 9 Jun 2021 13:16:18 +0000 (15:16 +0200)]
Load embedded objects for structured/viewable comment (response) lists

3 years agoAdd `ViewableComment(Response)RuntimeCache`
Matthias Schmidt [Wed, 9 Jun 2021 13:13:42 +0000 (15:13 +0200)]
Add `ViewableComment(Response)RuntimeCache`

3 years agoSupport mentions and media in comment (responses)
Matthias Schmidt [Wed, 9 Jun 2021 13:11:20 +0000 (15:11 +0200)]
Support mentions and media in comment (responses)

3 years agoUpdate `hasEmbeddedObjects` in comment (response) rebuild data worker
Matthias Schmidt [Wed, 9 Jun 2021 13:09:31 +0000 (15:09 +0200)]
Update `hasEmbeddedObjects` in comment (response) rebuild data worker

3 years agoProcess embedded objects when creating/updating/deleting comment (responses)
Matthias Schmidt [Wed, 9 Jun 2021 13:08:47 +0000 (15:08 +0200)]
Process embedded objects when creating/updating/deleting comment (responses)

3 years agoUpgrade to PHP-CS-Fixer 3
Tim Düsterhus [Wed, 9 Jun 2021 10:19:52 +0000 (12:19 +0200)]
Upgrade to PHP-CS-Fixer 3

see WoltLab/WCF#4183

3 years agoUse `static::class` instead of `get_called_class()` / `get_class($this)`
Tim Düsterhus [Wed, 9 Jun 2021 12:41:29 +0000 (14:41 +0200)]
Use `static::class` instead of `get_called_class()` / `get_class($this)`

3 years agoFix code style
Tim Düsterhus [Wed, 9 Jun 2021 11:36:16 +0000 (13:36 +0200)]
Fix code style

see 76ee04b0c0c96b657edaf953e4adacc3ceebb457

3 years agoPrevent errors due to subsequent price changes for active subscriptions
Marcel Werk [Wed, 9 Jun 2021 10:30:34 +0000 (12:30 +0200)]
Prevent errors due to subsequent price changes for active subscriptions

3 years agoUpdate composer dependencies
Tim Düsterhus [Wed, 9 Jun 2021 09:46:31 +0000 (11:46 +0200)]
Update composer dependencies

3 years agoDelete DownloadRankImageJob
Tim Düsterhus [Wed, 9 Jun 2021 08:46:28 +0000 (10:46 +0200)]
Delete DownloadRankImageJob

see 60cb68989dc3968a0a29eb71f00c16645b5f63f3

3 years agoMerge branch '5.4'
Tim Düsterhus [Wed, 9 Jun 2021 08:41:28 +0000 (10:41 +0200)]
Merge branch '5.4'

3 years agoFix SearchEngineConvertInnoDbWorker when MySQL is not the active engine
Tim Düsterhus [Wed, 9 Jun 2021 08:40:33 +0000 (10:40 +0200)]
Fix SearchEngineConvertInnoDbWorker when MySQL is not the active engine

Fixes #4192

3 years agoAdd `hasEmbeddedObjects` for comments and comment responses
Matthias Schmidt [Wed, 9 Jun 2021 07:19:02 +0000 (09:19 +0200)]
Add `hasEmbeddedObjects` for comments and comment responses

3 years agoMerge branch '5.4'
Matthias Schmidt [Wed, 9 Jun 2021 06:26:08 +0000 (08:26 +0200)]
Merge branch '5.4'

3 years agoUpdate developer documentation links in PIP info phrases
Matthias Schmidt [Wed, 9 Jun 2021 06:25:56 +0000 (08:25 +0200)]
Update developer documentation links in PIP info phrases

Close #4266