GitHub/WoltLab/WCF.git
3 years agoUpdate XSD paths in XML files generated by PHP code
Matthias Schmidt [Wed, 23 Jun 2021 07:33:25 +0000 (09:33 +0200)]
Update XSD paths in XML files generated by PHP code

See #4268

3 years agoUpdate XSD paths in XML files
Matthias Schmidt [Wed, 23 Jun 2021 07:31:21 +0000 (09:31 +0200)]
Update XSD paths in XML files

See #4268

3 years agoEmbedded object ids are now explicitly casted to int
Alexander Ebert [Mon, 21 Jun 2021 14:47:42 +0000 (16:47 +0200)]
Embedded object ids are now explicitly casted to int

https://wiki.php.net/rfc/string_to_number_comparison changed the behavior of PHP when comparing strings to numbers.

`123 == "123foo"` is true in PHP <8.0, but false starting with PHP 8.0.

3 years agoRevert "Cast values of simple embedded objects to int"
Alexander Ebert [Mon, 21 Jun 2021 14:39:57 +0000 (16:39 +0200)]
Revert "Cast values of simple embedded objects to int"

This reverts commit 2e3b2fcc855f50238dbe930ea3392cf48894b85f.

3 years agoCast values of simple embedded objects to int
Alexander Ebert [Mon, 21 Jun 2021 14:13:38 +0000 (16:13 +0200)]
Cast values of simple embedded objects to int

These values are not guaranteed to be pure numbers. Any value could be followed by a helper comment, such as `13#Fancy page`. Explicitly calling `intval()` truncates the value to just contain the leading digits as it was intended to be.

3 years agoImproved the regex for simple embedded objects
Alexander Ebert [Mon, 21 Jun 2021 14:08:30 +0000 (16:08 +0200)]
Improved the regex for simple embedded objects

The previous version was borderline erroneous and while it worked so far, it could easily break in future versions of PHP.

3 years agoMerge branch '5.3' into 5.4
Matthias Schmidt [Mon, 21 Jun 2021 06:49:37 +0000 (08:49 +0200)]
Merge branch '5.3' into 5.4

3 years agoReset link-related fields after creating box
Matthias Schmidt [Mon, 21 Jun 2021 06:48:22 +0000 (08:48 +0200)]
Reset link-related fields after creating box

3 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Fri, 18 Jun 2021 13:57:18 +0000 (15:57 +0200)]
Merge branch '5.3' into 5.4

3 years agoMerge branch '5.2' into 5.3
Tim Düsterhus [Fri, 18 Jun 2021 13:47:39 +0000 (15:47 +0200)]
Merge branch '5.2' into 5.3

3 years agoMerge branch '3.1' into 5.2
Tim Düsterhus [Fri, 18 Jun 2021 13:47:18 +0000 (15:47 +0200)]
Merge branch '3.1' into 5.2

3 years agoSet 'accept-encoding: identity' by default in HTTPRequest
Tim Düsterhus [Fri, 18 Jun 2021 13:44:21 +0000 (15:44 +0200)]
Set 'accept-encoding: identity' by default in HTTPRequest

RFC 7231#5.3.4 allows a server to use an arbitrary 'content-encoding' when no
'accept-encoding' request header is sent.

Make it clear that no 'content-encoding' is acceptable by only accepting the
'identity' encoding.

3 years agoRevert "Ignore security token for guests" 5.4.0_Beta_2
Tim Düsterhus [Fri, 18 Jun 2021 09:37:24 +0000 (11:37 +0200)]
Revert "Ignore security token for guests"

Due to the age of this commit it's a bit unclear why exactly it was necessary
at that time, but records indicate that it was related to the URL based session
system (`?s=…`) in combination with with virtual sessions effectively changing
the session ID during login, the `SID` constants being constant and the CSRF
token being stored in the session.

As none of this applies any longer, this workaround should no longer be
necessary and thus reverted. It certainly violates the principle of least
astonishment, because it only applies to AbstractSecureAction, but not forms
and it's questionable from a security perspective.

This reverts commit e5c2467f717632b47f935a0e59a310de2e2867f3.

3 years agoMerge pull request #4309 from WoltLab/acp-cannotuse
Tim Düsterhus [Thu, 17 Jun 2021 15:15:56 +0000 (17:15 +0200)]
Merge pull request #4309 from WoltLab/acp-cannotuse

Set __isLogin if a logged-in user lacks `admin.general.canUseAcp`

3 years agoRename the third gender from 'Other' to 'Non-Binary' in en.xml
Tim Düsterhus [Thu, 17 Jun 2021 13:02:14 +0000 (15:02 +0200)]
Rename the third gender from 'Other' to 'Non-Binary' in en.xml

3 years agoImprove name of the 'image_proxy_host_whitelist' option
Tim Düsterhus [Thu, 17 Jun 2021 12:52:15 +0000 (14:52 +0200)]
Improve name of the 'image_proxy_host_whitelist' option

Whitelist implies that only the given domains will be passes through the proxy.
Additionally the German version already uses “Ausnahme” which translates to
“Exception”.

3 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Thu, 17 Jun 2021 12:43:15 +0000 (14:43 +0200)]
Merge branch '5.3' into 5.4

3 years agoMerge branch '5.2' into 5.3
Tim Düsterhus [Thu, 17 Jun 2021 12:42:53 +0000 (14:42 +0200)]
Merge branch '5.2' into 5.3

3 years agoMerge branch '3.1' into 5.2
Tim Düsterhus [Thu, 17 Jun 2021 12:42:42 +0000 (14:42 +0200)]
Merge branch '3.1' into 5.2

3 years agoFix 'to its full extent' in en.xml
Tim Düsterhus [Thu, 17 Jun 2021 12:41:10 +0000 (14:41 +0200)]
Fix 'to its full extent' in en.xml

3 years agoSet __isLogin if a logged-in user lacks `admin.general.canUseAcp`
Tim Düsterhus [Thu, 17 Jun 2021 12:09:34 +0000 (14:09 +0200)]
Set __isLogin if a logged-in user lacks `admin.general.canUseAcp`

Resolves #4307

3 years agoRelease 5.4.0 Beta 2
Alexander Ebert [Wed, 16 Jun 2021 15:27:06 +0000 (17:27 +0200)]
Release 5.4.0 Beta 2

3 years agoUpdating minified JavaScript files
WoltLab [Wed, 16 Jun 2021 13:58:51 +0000 (13:58 +0000)]
Updating minified JavaScript files

3 years agoRevert "Strip the `loading` attribute from smileys for AMP output"
Alexander Ebert [Wed, 16 Jun 2021 12:08:27 +0000 (14:08 +0200)]
Revert "Strip the `loading` attribute from smileys for AMP output"

This reverts commit 4cfc175da480a13704dd6b52e49723c9a84cb62d.

3 years agoIncorrect use of DOM attributes
Alexander Ebert [Wed, 16 Jun 2021 12:01:20 +0000 (14:01 +0200)]
Incorrect use of DOM attributes

See #4290

3 years agoStrip the `loading` attribute from smileys for AMP output
Alexander Ebert [Wed, 16 Jun 2021 12:00:24 +0000 (14:00 +0200)]
Strip the `loading` attribute from smileys for AMP output

See #4290

3 years agoMerge pull request #4292 from WoltLab/verify-webp-support
Alexander Ebert [Wed, 16 Jun 2021 09:31:55 +0000 (11:31 +0200)]
Merge pull request #4292 from WoltLab/verify-webp-support

Verify WebP support in GD/Imagick

3 years agoVerify the support for WebP images during the setup
Alexander Ebert [Tue, 15 Jun 2021 16:53:08 +0000 (18:53 +0200)]
Verify the support for WebP images during the setup

3 years agoVerify WebP support in the test script
Alexander Ebert [Tue, 15 Jun 2021 13:58:49 +0000 (15:58 +0200)]
Verify WebP support in the test script

3 years agoHelper method to check for WebP support
Alexander Ebert [Tue, 15 Jun 2021 13:47:53 +0000 (15:47 +0200)]
Helper method to check for WebP support

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 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 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 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 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 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 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 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 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 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.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 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 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 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

3 years agoMerge branch '5.3' into 5.4
Alexander Ebert [Tue, 8 Jun 2021 13:09:36 +0000 (15:09 +0200)]
Merge branch '5.3' into 5.4

3 years agoFully clickable notification items
Alexander Ebert [Tue, 8 Jun 2021 13:09:10 +0000 (15:09 +0200)]
Fully clickable notification items

3 years agoFix iconContainer identifier
joshuaruesweg [Tue, 8 Jun 2021 07:10:05 +0000 (09:10 +0200)]
Fix iconContainer identifier

3 years agoMerge pull request #4263 from Fabii547/patch-76
Tim Düsterhus [Mon, 7 Jun 2021 07:43:29 +0000 (09:43 +0200)]
Merge pull request #4263 from Fabii547/patch-76

Fix visibility check in `Condition/Page/Dependence`

3 years agoFix visibility check in `Condition/Page/Dependence`
Fabii547 [Mon, 7 Jun 2021 07:37:31 +0000 (09:37 +0200)]
Fix visibility check in `Condition/Page/Dependence`

3 years agoMerge pull request #4259 from WoltLab/session-ip-address
Tim Düsterhus [Fri, 4 Jun 2021 14:31:48 +0000 (16:31 +0200)]
Merge pull request #4259 from WoltLab/session-ip-address

Mask IP address in session list

3 years agoMerge pull request #4258 from WoltLab/userAgent-final
Joshua Rüsweg [Fri, 4 Jun 2021 12:59:44 +0000 (14:59 +0200)]
Merge pull request #4258 from WoltLab/userAgent-final

Mark `\wcf\util\UserAgent` as final

3 years agoMerge branch 'master' of https://github.com/WoltLab/WCF
Alexander Ebert [Fri, 4 Jun 2021 12:05:54 +0000 (14:05 +0200)]
Merge branch 'master' of https://github.com/WoltLab/WCF

3 years agoCode style fix
Alexander Ebert [Fri, 4 Jun 2021 12:05:47 +0000 (14:05 +0200)]
Code style fix

3 years agoUse `->toBulletMasked()` in `accountSecurity.tpl`
Tim Düsterhus [Fri, 4 Jun 2021 11:43:07 +0000 (13:43 +0200)]
Use `->toBulletMasked()` in `accountSecurity.tpl`

3 years agoAdd `IpAddress::toBulletMasked()`
Tim Düsterhus [Fri, 4 Jun 2021 11:40:00 +0000 (13:40 +0200)]
Add `IpAddress::toBulletMasked()`

3 years agoRename `IpAddress::mask()` to `IpAddress::toMasked()`
Tim Düsterhus [Fri, 4 Jun 2021 11:27:57 +0000 (13:27 +0200)]
Rename `IpAddress::mask()` to `IpAddress::toMasked()`

3 years agoShow a masked IP address in accountSecurity.tpl
Tim Düsterhus [Fri, 4 Jun 2021 10:16:13 +0000 (12:16 +0200)]
Show a masked IP address in accountSecurity.tpl

3 years agoReturn an IP address in Session::getIpAddress()
Tim Düsterhus [Fri, 4 Jun 2021 10:08:20 +0000 (12:08 +0200)]
Return an IP address in Session::getIpAddress()

3 years agoAdd `\wcf\util\IpAddress`
Tim Düsterhus [Thu, 15 Nov 2018 12:30:59 +0000 (13:30 +0100)]
Add `\wcf\util\IpAddress`

3 years agoFix SCSS code style
Tim Düsterhus [Fri, 4 Jun 2021 11:52:52 +0000 (13:52 +0200)]
Fix SCSS code style

3 years agoImproved UX and visuals of embedded URLs
Alexander Ebert [Fri, 4 Jun 2021 11:45:09 +0000 (13:45 +0200)]
Improved UX and visuals of embedded URLs

The link now has a proper title and the tab focus will highlight the headline.

3 years agoMerge branch '5.3'
Matthias Schmidt [Fri, 4 Jun 2021 11:10:04 +0000 (13:10 +0200)]
Merge branch '5.3'

3 years agoMerge branch '5.2' into 5.3
Matthias Schmidt [Fri, 4 Jun 2021 11:09:51 +0000 (13:09 +0200)]
Merge branch '5.2' into 5.3

3 years agoAdd missing `wcf.acp.devtools.pip.error.className` phrase
Matthias Schmidt [Fri, 4 Jun 2021 11:09:34 +0000 (13:09 +0200)]
Add missing `wcf.acp.devtools.pip.error.className` phrase

Close #4256

3 years agoMark `\wcf\util\UserAgent` as final
Tim Düsterhus [Fri, 4 Jun 2021 10:22:47 +0000 (12:22 +0200)]
Mark `\wcf\util\UserAgent` as final

3 years agoMerge pull request #4257 from WoltLab/abstract-event-listener-error
Tim Düsterhus [Fri, 4 Jun 2021 08:51:44 +0000 (10:51 +0200)]
Merge pull request #4257 from WoltLab/abstract-event-listener-error

Make error message in AbstractEventListener more useful

3 years agoMake error message in AbstractEventListener more useful
Tim Düsterhus [Fri, 4 Jun 2021 08:16:30 +0000 (10:16 +0200)]
Make error message in AbstractEventListener more useful

3 years agoMerge branch '5.3'
Tim Düsterhus [Fri, 4 Jun 2021 08:30:45 +0000 (10:30 +0200)]
Merge branch '5.3'

3 years agoEnsure the style logo is properly preserved in the database when not performing changes
Tim Düsterhus [Fri, 4 Jun 2021 08:25:54 +0000 (10:25 +0200)]
Ensure the style logo is properly preserved in the database when not performing changes

This bug was introduced recently when the `!$file->isProcessed()` condition was
added. It was verified that the logo's filename remained stable within the file
system. However it was not verified that it was properly stored within the
database. As the previous style variables are deleted during the update we must
explicitly set the corresponding variable, otherwise it will be empty and the
logo will not be found.

see c72c06dc7bb21c5098613ab8fafc8596c8f6ce41
see #4240

3 years agoFix displaying `runStandalone` in devtools (#4255)
Fabii547 [Thu, 3 Jun 2021 10:09:41 +0000 (12:09 +0200)]
Fix displaying `runStandalone` in devtools (#4255)

3 years agoFix ids of instruction items in devtools (#4254)
Fabii547 [Thu, 3 Jun 2021 10:07:18 +0000 (12:07 +0200)]
Fix ids of instruction items in devtools (#4254)

3 years agoAdd 5.4 branch to GitHub workflows
Tim Düsterhus [Mon, 31 May 2021 14:19:13 +0000 (16:19 +0200)]
Add 5.4 branch to GitHub workflows

3 years agoRemove obsolete meta keywords input for monolingual pages (#4251)
Matthias Schmidt [Wed, 2 Jun 2021 14:35:36 +0000 (16:35 +0200)]
Remove obsolete meta keywords input for monolingual pages (#4251)

See #3637

3 years agoRelease 5.4.0 Beta 1 5.4.0_Beta_1
Alexander Ebert [Wed, 2 Jun 2021 12:58:45 +0000 (14:58 +0200)]
Release 5.4.0 Beta 1

3 years agoRemove obsolete private property/method from `MediaImporter`
Matthias Schmidt [Wed, 2 Jun 2021 08:12:57 +0000 (10:12 +0200)]
Remove obsolete private property/method from `MediaImporter`

See b3b5e461e0291d25d06f8d2b07bcdc18a4c5a391

3 years agoIncorrect property name
Marcel Werk [Tue, 1 Jun 2021 14:44:22 +0000 (16:44 +0200)]
Incorrect property name

3 years agoDeploy some last minute changes
Alexander Ebert [Tue, 1 Jun 2021 14:33:57 +0000 (16:33 +0200)]
Deploy some last minute changes

3 years agoMerge pull request #4248 from WoltLab/improved-article-bbcode
Alexander Ebert [Tue, 1 Jun 2021 13:46:25 +0000 (15:46 +0200)]
Merge pull request #4248 from WoltLab/improved-article-bbcode

Overhauled article bbcode using embedded content

3 years agoUse an `<img>` element with lazy loading for embedded content
Alexander Ebert [Tue, 1 Jun 2021 12:11:04 +0000 (14:11 +0200)]
Use an `<img>` element with lazy loading for embedded content

3 years agoHelper methods to query the style's cover photo dimensions
Alexander Ebert [Tue, 1 Jun 2021 12:10:45 +0000 (14:10 +0200)]
Helper methods to query the style's cover photo dimensions

3 years agoMerge branch 'master' into improved-article-bbcode
Alexander Ebert [Tue, 1 Jun 2021 11:41:04 +0000 (13:41 +0200)]
Merge branch 'master' into improved-article-bbcode

3 years agoAdd `labeledUrl` column to `update_com.woltlab.wcf_5.4.php`
Tim Düsterhus [Tue, 1 Jun 2021 07:38:51 +0000 (09:38 +0200)]
Add `labeledUrl` column to `update_com.woltlab.wcf_5.4.php`

Fixes #4249

3 years agoFix CSS formatting
Tim Düsterhus [Tue, 1 Jun 2021 07:28:12 +0000 (09:28 +0200)]
Fix CSS formatting

3 years agoOverhauled embedded content design
Marcel Werk [Mon, 31 May 2021 20:25:22 +0000 (22:25 +0200)]
Overhauled embedded content design