GitHub/WoltLab/WCF.git
2 years agoAdd return types to the factory methods of the PHP DDL API
Tim Düsterhus [Wed, 17 Nov 2021 09:04:51 +0000 (10:04 +0100)]
Add return types to the factory methods of the PHP DDL API

2 years agoPrevent object creation for the DatabaseTablePrimaryIndex factory class
Tim Düsterhus [Wed, 17 Nov 2021 09:01:04 +0000 (10:01 +0100)]
Prevent object creation for the DatabaseTablePrimaryIndex factory class

see #4563
see 16525803b548bcbbe80417e59d36484526514973

2 years agoMerge pull request #4583 from WoltLab/5.5-update-avatar
Joshua Rüsweg [Tue, 16 Nov 2021 13:12:20 +0000 (14:12 +0100)]
Merge pull request #4583 from WoltLab/5.5-update-avatar

Add method to set an avatar for an user

2 years agoApply suggestions from code review
joshuaruesweg [Fri, 12 Nov 2021 09:16:02 +0000 (10:16 +0100)]
Apply suggestions from code review

2 years agoRun composer update
Tim Düsterhus [Mon, 15 Nov 2021 11:19:35 +0000 (12:19 +0100)]
Run composer update

No actual changes to the dependencies, just an update of composer's metadata.

2 years agoMerge branch '5.4'
Tim Düsterhus [Thu, 11 Nov 2021 10:45:44 +0000 (11:45 +0100)]
Merge branch '5.4'

2 years agoIncorrect version number in the installer
Alexander Ebert [Thu, 11 Nov 2021 10:22:08 +0000 (11:22 +0100)]
Incorrect version number in the installer

2 years agoMerge branch '5.3' into 5.4
Alexander Ebert [Wed, 10 Nov 2021 18:23:39 +0000 (19:23 +0100)]
Merge branch '5.3' into 5.4

2 years agoMerge branch '5.2' into 5.3
Alexander Ebert [Wed, 10 Nov 2021 18:22:29 +0000 (19:22 +0100)]
Merge branch '5.2' into 5.3

2 years agoMerge branch '3.1' into 5.2
Alexander Ebert [Wed, 10 Nov 2021 18:22:18 +0000 (19:22 +0100)]
Merge branch '3.1' into 5.2

2 years agoIncorrect reset of the timer to show the loading indicator
Alexander Ebert [Wed, 10 Nov 2021 18:21:40 +0000 (19:21 +0100)]
Incorrect reset of the timer to show the loading indicator

The missing reset caused repeated calls to `show()` being effectively ignored, because the check `_timeoutShow === null` would be always true if the callback was cancelled before.

See https://community.woltlab.com/thread/293232-ajaxstatus-wird-nach-einem-fehlerhaften-request-nicht-wieder-angezeigt/

2 years agoEnforce the aspect ratio when capping the image height
Alexander Ebert [Wed, 10 Nov 2021 17:35:43 +0000 (18:35 +0100)]
Enforce the aspect ratio when capping the image height

2 years agoUse `UserProfileAction::setAvatar()` in AvatarUploadFileSaveStrategy
joshuaruesweg [Tue, 9 Nov 2021 14:59:02 +0000 (15:59 +0100)]
Use `UserProfileAction::setAvatar()` in AvatarUploadFileSaveStrategy

2 years agoAdd method to set an avatar for an user
joshuaruesweg [Tue, 9 Nov 2021 14:43:12 +0000 (15:43 +0100)]
Add method to set an avatar for an user

3 years agoFix for code boxes inside quotes
Alexander Ebert [Sun, 7 Nov 2021 15:11:48 +0000 (16:11 +0100)]
Fix for code boxes inside quotes

3 years agoRemoved the (hidden) links in the article lists
Alexander Ebert [Sat, 6 Nov 2021 14:03:09 +0000 (15:03 +0100)]
Removed the (hidden) links in the article lists

The links in the footer are inaccessible due to the title link which spans the entire element. They serve no real purpose anyway and can simply be left out, also improving keyboard navigation by skipping pointless links.

See https://community.woltlab.com/thread/292905-artikelauflistung-link-zu-benutzer-geht-nicht/

3 years agoIncorrect position of the edit options for messages on mobile
Alexander Ebert [Sat, 6 Nov 2021 13:51:41 +0000 (14:51 +0100)]
Incorrect position of the edit options for messages on mobile

See https://community.woltlab.com/thread/293126-beitrag-bearbeiten-mobil-nur-schwer-oder-nicht-immer-m%C3%B6glich/

3 years agoPreserve the link that is being edited when the focus is lost
Alexander Ebert [Sat, 6 Nov 2021 13:05:58 +0000 (14:05 +0100)]
Preserve the link that is being edited when the focus is lost

See https://community.woltlab.com/thread/292962-link-bearbeiten-funktioniert-auf-einigen-mobilen-ger%C3%A4ten-nicht/

3 years agoImproved the position of the link tooltip on small screens
Alexander Ebert [Sat, 6 Nov 2021 12:22:44 +0000 (13:22 +0100)]
Improved the position of the link tooltip on small screens

3 years agoWorkaround for a gap with fullscreen dialogs on iOS
Alexander Ebert [Sat, 6 Nov 2021 11:31:31 +0000 (12:31 +0100)]
Workaround for a gap with fullscreen dialogs on iOS

See https://community.woltlab.com/thread/292818-fehler-bei-der-anzeige-von-reaktionen-in-der-mobilen-ansicht/

3 years agoExpose the article bbcode template to the admin panel
Alexander Ebert [Fri, 5 Nov 2021 17:05:49 +0000 (18:05 +0100)]
Expose the article bbcode template to the admin panel

See https://community.woltlab.com/thread/292627-artikelvorschau-funktioniert-nicht-bei-nutzung-von-wsa-bb-code/

3 years agoMerge branch '5.4'
Tim Düsterhus [Fri, 5 Nov 2021 12:33:13 +0000 (13:33 +0100)]
Merge branch '5.4'

3 years agoUpdate to WoltLab/zxcvbn@5b582b24e437f1883ccad3c37dae7c3c5f1e7da3
Tim Düsterhus [Fri, 5 Nov 2021 11:33:05 +0000 (12:33 +0100)]
Update to WoltLab/zxcvbn@5b582b24e437f1883ccad3c37dae7c3c5f1e7da3

see #4578

3 years agoUpdate to WoltLab/zxcvbn@06171c20f9bc1f4fbfbf12ba5c88bc1db0624970
Tim Düsterhus [Fri, 5 Nov 2021 11:16:27 +0000 (12:16 +0100)]
Update to WoltLab/zxcvbn@06171c20f9bc1f4fbfbf12ba5c88bc1db0624970

see #4578

3 years agoUpdate to WoltLab/zxcvbn@ade1e45a9a744600124f760243535b366ce76483
Tim Düsterhus [Fri, 5 Nov 2021 10:56:08 +0000 (11:56 +0100)]
Update to WoltLab/zxcvbn@ade1e45a9a744600124f760243535b366ce76483

Resolves #4578

3 years agoMerge branch '5.4'
Tim Düsterhus [Fri, 5 Nov 2021 08:35:23 +0000 (09:35 +0100)]
Merge branch '5.4'

3 years agoFix typo in TS comment
mutec [Thu, 4 Nov 2021 18:03:19 +0000 (19:03 +0100)]
Fix typo in TS comment

see #4577

3 years agoClean up attachment tmpHash handling in WYSIWYG autosave (#4576)
Tim Düsterhus [Thu, 4 Nov 2021 14:54:19 +0000 (15:54 +0100)]
Clean up attachment tmpHash handling in WYSIWYG autosave (#4576)

The previous `.splice()` call was erroneous because it might remove more
entries in case the to-be-removed entry is not the last within the array for
whatever reason.

Replace the whole logic with a modern `.filter()`, cleanly filtering out all
existing entries for the current `tmpHash` and then readding it, if it still is
required.

Co-authored-by: Alexander Ebert <ebert@woltlab.com>
3 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Thu, 4 Nov 2021 14:38:16 +0000 (15:38 +0100)]
Merge branch '5.3' into 5.4

3 years agoMerge branch '5.2' into 5.3
Tim Düsterhus [Thu, 4 Nov 2021 14:35:33 +0000 (15:35 +0100)]
Merge branch '5.2' into 5.3

3 years agoFix error message for `foreignColumnChange` in PHP DDL API
Tim Düsterhus [Thu, 4 Nov 2021 14:34:47 +0000 (15:34 +0100)]
Fix error message for `foreignColumnChange` in PHP DDL API

3 years agoDo not require implementation of AbstractSearchEngine::getFulltextMinimumWordLength()
Tim Düsterhus [Wed, 3 Nov 2021 09:23:58 +0000 (10:23 +0100)]
Do not require implementation of AbstractSearchEngine::getFulltextMinimumWordLength()

This method is deprecated since 5.4, do not require an implementation in a specific
search engine by making it abstract.

3 years agoMerge branch '5.4'
Tim Düsterhus [Tue, 2 Nov 2021 12:38:23 +0000 (13:38 +0100)]
Merge branch '5.4'

3 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Tue, 2 Nov 2021 12:38:13 +0000 (13:38 +0100)]
Merge branch '5.3' into 5.4

3 years agoMerge branch '5.2' into 5.3
Tim Düsterhus [Tue, 2 Nov 2021 12:36:47 +0000 (13:36 +0100)]
Merge branch '5.2' into 5.3

3 years agoMerge branch '3.1' into 5.2
Tim Düsterhus [Tue, 2 Nov 2021 12:34:12 +0000 (13:34 +0100)]
Merge branch '3.1' into 5.2

3 years agoMerge pull request #4574 from WoltLab/supportexpiry-31
Tim Düsterhus [Tue, 2 Nov 2021 12:31:07 +0000 (13:31 +0100)]
Merge pull request #4574 from WoltLab/supportexpiry-31

Notify users of the expiring support

3 years agoNotify users of the expiring support
Tim Düsterhus [Tue, 2 Nov 2021 11:11:50 +0000 (12:11 +0100)]
Notify users of the expiring support

This effectively is 14a6db14f1ac63da83098dc648288ae07df62e80 combined with
637c1ca28225918a1a07680b7759c02565cd4c50.

3 years agoHide edit button w/o actions
joshuaruesweg [Tue, 2 Nov 2021 10:00:58 +0000 (11:00 +0100)]
Hide edit button w/o actions

3 years agoUse typeunsafe comparsion
joshuaruesweg [Tue, 2 Nov 2021 09:58:42 +0000 (10:58 +0100)]
Use typeunsafe comparsion

3 years agoPrevent showing deleting own user button
joshuaruesweg [Tue, 2 Nov 2021 09:57:05 +0000 (10:57 +0100)]
Prevent showing deleting own user button

Fixes #4573

3 years agoMerge pull request #4570 from WoltLab/5.5-simple-acl-inverted
Joshua Rüsweg [Tue, 2 Nov 2021 09:31:33 +0000 (10:31 +0100)]
Merge pull request #4570 from WoltLab/5.5-simple-acl-inverted

Add support for inverted permissions in simple acl form field

3 years agoFix code style in UserFormField
Tim Düsterhus [Tue, 2 Nov 2021 09:25:28 +0000 (10:25 +0100)]
Fix code style in UserFormField

3 years agoMerge branch '5.4'
Tim Düsterhus [Tue, 2 Nov 2021 09:25:06 +0000 (10:25 +0100)]
Merge branch '5.4'

3 years agoFix code style in UserFormField
Tim Düsterhus [Tue, 2 Nov 2021 09:24:50 +0000 (10:24 +0100)]
Fix code style in UserFormField

3 years agoMake `UserFormField::$users` a list
Tim Düsterhus [Tue, 2 Nov 2021 09:17:57 +0000 (10:17 +0100)]
Make `UserFormField::$users` a list

This is a small compatibility break, but even previously one could not rely on
a specific value used for indexing. Users passed via `->value()` would be indexed
by userID, whereas users fetched during validation would be indexed by username.

Make this a regular 0-indexed list for consistency.

While doing so, filter out any `null` values, as they are completely useless
within a list where one cannot derive any information from the array key.

3 years agoMerge branch '5.4'
Tim Düsterhus [Tue, 2 Nov 2021 09:14:02 +0000 (10:14 +0100)]
Merge branch '5.4'

3 years agoIgnore values referring to non-existent users in UserFormField::value()
Tim Düsterhus [Tue, 2 Nov 2021 09:10:20 +0000 (10:10 +0100)]
Ignore values referring to non-existent users in UserFormField::value()

This is required when reloading database values for a UserFormField that is not
required. The column either contains a `0` or `null` which previously failed to
reload.

Fix this by filtering out `null` values from `$this->users` and gracefully
handling an empty `$this->users` array.

3 years agoAdd support for inverted permissions
joshuaruesweg [Thu, 28 Oct 2021 06:54:40 +0000 (08:54 +0200)]
Add support for inverted permissions

3 years agoMerge branch '5.4'
Tim Düsterhus [Tue, 2 Nov 2021 08:57:01 +0000 (09:57 +0100)]
Merge branch '5.4'

3 years agoDisallow calls to UserFormField::getSaveValue() if multiple values may be entered
Tim Düsterhus [Tue, 2 Nov 2021 08:42:36 +0000 (09:42 +0100)]
Disallow calls to UserFormField::getSaveValue() if multiple values may be entered

3 years agoFix UserProfile::getUserProfilesByUsername() if `null` is cached
Tim Düsterhus [Tue, 2 Nov 2021 08:39:23 +0000 (09:39 +0100)]
Fix UserProfile::getUserProfilesByUsername() if `null` is cached

3 years agoFix type of `UserFormField::$users`
Tim Düsterhus [Tue, 2 Nov 2021 08:24:41 +0000 (09:24 +0100)]
Fix type of `UserFormField::$users`

3 years agoUse `\array_column()` in UserFormField::value()
Tim Düsterhus [Tue, 2 Nov 2021 08:22:41 +0000 (09:22 +0100)]
Use `\array_column()` in UserFormField::value()

3 years agoMerge pull request #4572 from WoltLab/systemcheck-id
Tim Düsterhus [Mon, 1 Nov 2021 14:55:56 +0000 (15:55 +0100)]
Merge pull request #4572 from WoltLab/systemcheck-id

Suggest performing a system check when key system information change

3 years agoImprove readability in `Environment::getSystemId()`
Tim Düsterhus [Mon, 1 Nov 2021 14:47:10 +0000 (15:47 +0100)]
Improve readability in `Environment::getSystemId()`

3 years agoShow an info message on IndexPage if the system ID has changed
Tim Düsterhus [Mon, 1 Nov 2021 13:34:30 +0000 (14:34 +0100)]
Show an info message on IndexPage if the system ID has changed

3 years agoStore the system ID after WCFSetup
Tim Düsterhus [Mon, 1 Nov 2021 13:24:39 +0000 (14:24 +0100)]
Store the system ID after WCFSetup

3 years agoStore the system ID on successful system checks
Tim Düsterhus [Mon, 1 Nov 2021 13:22:58 +0000 (14:22 +0100)]
Store the system ID on successful system checks

3 years agoAdd \wcf\system\Environment
Tim Düsterhus [Mon, 1 Nov 2021 13:18:58 +0000 (14:18 +0100)]
Add \wcf\system\Environment

3 years agoMerge branch '5.4'
Tim Düsterhus [Mon, 1 Nov 2021 13:33:25 +0000 (14:33 +0100)]
Merge branch '5.4'

3 years agoRevert "Make PHP status in SystemCheckPage resilient against method reordering"
Tim Düsterhus [Mon, 1 Nov 2021 13:32:52 +0000 (14:32 +0100)]
Revert "Make PHP status in SystemCheckPage resilient against method reordering"

This change was buggy and it's not worth the effort to do this cleanly.

This reverts commit ba725407cd3e7ee83961e355252841153493face.

3 years agoMerge branch '5.4'
Tim Düsterhus [Mon, 1 Nov 2021 10:30:19 +0000 (11:30 +0100)]
Merge branch '5.4'

3 years agoWrap overly long line in SystemCheckPage
Tim Düsterhus [Mon, 1 Nov 2021 10:21:05 +0000 (11:21 +0100)]
Wrap overly long line in SystemCheckPage

3 years agoMake PHP status in SystemCheckPage resilient against method reordering
Tim Düsterhus [Mon, 1 Nov 2021 10:19:53 +0000 (11:19 +0100)]
Make PHP status in SystemCheckPage resilient against method reordering

3 years agoFix indentation in systemCheck.tpl
Tim Düsterhus [Mon, 1 Nov 2021 10:16:37 +0000 (11:16 +0100)]
Fix indentation in systemCheck.tpl

3 years agoImprove error handling in GDImageAdapter::loadFile()
Marcel Werk [Sun, 31 Oct 2021 17:26:19 +0000 (18:26 +0100)]
Improve error handling in GDImageAdapter::loadFile()

Closes #4413

3 years agoMerge branch '5.4'
Tim Düsterhus [Fri, 29 Oct 2021 14:07:17 +0000 (16:07 +0200)]
Merge branch '5.4'

3 years agoFix ACP login for PHP 8.1
Tim Düsterhus [Fri, 29 Oct 2021 14:06:44 +0000 (16:06 +0200)]
Fix ACP login for PHP 8.1

see 9d12c9783ce32b0396a80a498f54b053591d4aa3

3 years agoMove php-css-parser to the WoltLab fork
Tim Düsterhus [Fri, 29 Oct 2021 12:54:51 +0000 (14:54 +0200)]
Move php-css-parser to the WoltLab fork

This is for PHP 8.1 compatibility.

3 years agoDeal with commented-out code in ZipWriter
Marcel Werk [Wed, 27 Oct 2021 16:46:51 +0000 (18:46 +0200)]
Deal with commented-out code in ZipWriter

Closes #4391

3 years agoMerge branch 'master' of https://github.com/WoltLab/WCF
Marcel Werk [Wed, 27 Oct 2021 16:22:42 +0000 (18:22 +0200)]
Merge branch 'master' of https://github.com/WoltLab/WCF

3 years agoDeal with commented-out code in StyleUtil
Marcel Werk [Wed, 27 Oct 2021 16:22:35 +0000 (18:22 +0200)]
Deal with commented-out code in StyleUtil

Closes #4390#

3 years agoMerge pull request #4569 from WoltLab/cleanup-paypal-callback
Marcel Werk [Wed, 27 Oct 2021 16:15:43 +0000 (18:15 +0200)]
Merge pull request #4569 from WoltLab/cleanup-paypal-callback

Clean up PaypalCallbackAction

3 years agoImproved code style
Marcel Werk [Wed, 27 Oct 2021 16:10:12 +0000 (18:10 +0200)]
Improved code style

3 years agoStop using SystemException in PaypalCallbackAction
Tim Düsterhus [Wed, 27 Oct 2021 09:16:11 +0000 (11:16 +0200)]
Stop using SystemException in PaypalCallbackAction

3 years agoFixed request
Marcel Werk [Wed, 27 Oct 2021 08:38:34 +0000 (10:38 +0200)]
Fixed request

3 years agoFixed code style
Marcel Werk [Wed, 27 Oct 2021 08:27:16 +0000 (10:27 +0200)]
Fixed code style

3 years agoApply suggestions from code review
Marcel Werk [Wed, 27 Oct 2021 08:25:48 +0000 (10:25 +0200)]
Apply suggestions from code review

Co-authored-by: Tim Düsterhus <duesterhus@woltlab.com>
3 years agoClean up PaypalCallbackAction
Marcel Werk [Tue, 26 Oct 2021 16:52:04 +0000 (18:52 +0200)]
Clean up PaypalCallbackAction

Closes #4351

3 years agoShow online status indicator in user management
Marcel Werk [Tue, 26 Oct 2021 14:44:39 +0000 (16:44 +0200)]
Show online status indicator in user management

Closes #4568

3 years agoDo not increase article view counter for unpublished articles
Marcel Werk [Tue, 26 Oct 2021 14:09:20 +0000 (16:09 +0200)]
Do not increase article view counter for unpublished articles

Closes #4374

3 years agoMerge branch '5.4'
Tim Düsterhus [Tue, 26 Oct 2021 12:57:31 +0000 (14:57 +0200)]
Merge branch '5.4'

3 years agoMerge branch '5.3' into 5.4
Tim Düsterhus [Tue, 26 Oct 2021 12:57:19 +0000 (14:57 +0200)]
Merge branch '5.3' into 5.4

3 years agoRegenerate composer autoloader
Tim Düsterhus [Tue, 26 Oct 2021 12:56:26 +0000 (14:56 +0200)]
Regenerate composer autoloader

3 years agoUpdate composer dependencies
Tim Düsterhus [Mon, 25 Oct 2021 11:45:41 +0000 (13:45 +0200)]
Update composer dependencies

3 years agoMerge branch '5.4'
Tim Düsterhus [Mon, 25 Oct 2021 09:19:11 +0000 (11:19 +0200)]
Merge branch '5.4'

3 years agoSync `aclSimple.tpl`
joshuaruesweg [Mon, 25 Oct 2021 09:08:44 +0000 (11:08 +0200)]
Sync `aclSimple.tpl`

3 years ago Improved a11y of radio buttons
joshuaruesweg [Mon, 25 Oct 2021 09:02:52 +0000 (11:02 +0200)]
 Improved a11y of radio buttons

 See f4ec1c5a25e150fbb8b27818fdbaed816259decb

3 years agoWorkaround for multiple quote handlers on one page
Alexander Ebert [Sun, 24 Oct 2021 12:57:39 +0000 (14:57 +0200)]
Workaround for multiple quote handlers on one page

3 years agoSync `aclSimple.tpl`
joshuaruesweg [Mon, 25 Oct 2021 09:08:44 +0000 (11:08 +0200)]
Sync `aclSimple.tpl`

3 years agoMerge pull request #4567 from WoltLab/censorship
Tim Düsterhus [Mon, 25 Oct 2021 09:03:27 +0000 (11:03 +0200)]
Merge pull request #4567 from WoltLab/censorship

Clean up Censorship

3 years ago Improved a11y of radio buttons
joshuaruesweg [Mon, 25 Oct 2021 09:02:52 +0000 (11:02 +0200)]
 Improved a11y of radio buttons

 See f4ec1c5a25e150fbb8b27818fdbaed816259decb

3 years agoWorkaround for multiple quote handlers on one page
Alexander Ebert [Sun, 24 Oct 2021 12:57:39 +0000 (14:57 +0200)]
Workaround for multiple quote handlers on one page

3 years agoStop checking the `enable_censorship` option
Tim Düsterhus [Fri, 22 Oct 2021 09:28:16 +0000 (11:28 +0200)]
Stop checking the `enable_censorship` option

3 years agoRemove the `enable_censorship` option
Tim Düsterhus [Fri, 22 Oct 2021 09:25:30 +0000 (11:25 +0200)]
Remove the `enable_censorship` option

Resolves #4566

3 years agoMake Censorship::$matches a local variable
Tim Düsterhus [Fri, 22 Oct 2021 09:17:48 +0000 (11:17 +0200)]
Make Censorship::$matches a local variable

There is no good reason why this should be a class property.

3 years agoClean up initialization in `Censorship`
Tim Düsterhus [Fri, 22 Oct 2021 09:14:07 +0000 (11:14 +0200)]
Clean up initialization in `Censorship`

- Use a regular foreach loop.
- Use `ArrayUtil::trim()` which also removes empty elements by itself.

3 years agoAdd early check if censored words are configured in `Censorship::test()`
Tim Düsterhus [Fri, 22 Oct 2021 09:15:54 +0000 (11:15 +0200)]
Add early check if censored words are configured in `Censorship::test()`

3 years agoFix the use of `preg_quote()` in `Censorship`
Tim Düsterhus [Fri, 22 Oct 2021 09:20:14 +0000 (11:20 +0200)]
Fix the use of `preg_quote()` in `Censorship`

Specify the correct `$delimiter`.