Alexander Ebert [Thu, 2 Dec 2021 17:05:29 +0000 (18:05 +0100)]
Reuse data as long as it is not stale, clean-up
Alexander Ebert [Thu, 2 Dec 2021 15:01:58 +0000 (16:01 +0100)]
Removed `favico.js` and `WCF.User.Panel.Notification`
Favico.js was used exclusively for the notification badge in the favicon, but was replaced with a lightweight implementation.
The user panel items cannot be properly mapped to the new implementations, if a custom version of `pageHeaderUser.tpl` is being used, then they are screwed anyway.
Alexander Ebert [Thu, 2 Dec 2021 14:57:33 +0000 (15:57 +0100)]
Menu providers are now self-registering
Alexander Ebert [Mon, 29 Nov 2021 17:16:21 +0000 (18:16 +0100)]
Update the notification counter on push, properly close overlays
Alexander Ebert [Mon, 29 Nov 2021 15:22:17 +0000 (16:22 +0100)]
Set the unread counter on page load
Alexander Ebert [Sun, 28 Nov 2021 19:23:43 +0000 (20:23 +0100)]
Prototype for the new user menus
Alexander Ebert [Fri, 26 Nov 2021 17:24:08 +0000 (18:24 +0100)]
Clone the ajax response to read the body again
https://developer.mozilla.org/en-US/docs/Web/API/Response/clone
Tim Düsterhus [Fri, 26 Nov 2021 10:01:42 +0000 (11:01 +0100)]
Merge branch '5.4'
Tim Düsterhus [Wed, 24 Nov 2021 14:04:19 +0000 (15:04 +0100)]
Update composer dependencies
Tim Düsterhus [Wed, 24 Nov 2021 09:41:58 +0000 (10:41 +0100)]
Stop using getAnchor() with static targets
Adjusted with search and replace:
\{@?\$__wcf->getAnchor\(['"]([_a-zA-Z0-9-]+)['"]\)\}
to
#$1
This method still is in use in various templates with dynamic names. This
locations has not yet been adjusted, because it needs to be checked whether it
may contains special characters that need to be escaped.
see #4580
Tim Düsterhus [Tue, 23 Nov 2021 14:57:38 +0000 (15:57 +0100)]
Merge pull request #4591 from WoltLab/script-relocate-conditional-comment
Remove support for conditional comments from JavaScript relocation
Tim Düsterhus [Tue, 23 Nov 2021 13:41:24 +0000 (14:41 +0100)]
Merge pull request #4590 from WoltLab/tmpHash-session
Deprecate QuickReplyManager::setTmpHash()
Tim Düsterhus [Tue, 23 Nov 2021 09:32:46 +0000 (10:32 +0100)]
Remove support for conditional comments from JavaScript relocation
We no longer support any browsers with support for conditional comments since …
ages.
Alexander Ebert [Mon, 22 Nov 2021 16:28:56 +0000 (17:28 +0100)]
Release 5.4.9 dev 2
WoltLab [Mon, 22 Nov 2021 16:21:26 +0000 (16:21 +0000)]
Updating minified JavaScript files
Alexander Ebert [Mon, 22 Nov 2021 16:19:55 +0000 (17:19 +0100)]
Unable to insert new links into the editor
Fixes
3222504e625d0760d82edc4856cda903be8d7497
Tim Düsterhus [Mon, 22 Nov 2021 15:04:41 +0000 (16:04 +0100)]
Deprecate QuickReplyManager::setTmpHash()
Resolves #4575
Tim Düsterhus [Mon, 22 Nov 2021 15:00:00 +0000 (16:00 +0100)]
Stop reading __wcfAttachmentTmpHash in ContactForm
It is not expected that a user starts drafting a message on some other page and
then continues in ContactForm.
see #4575
Tim Düsterhus [Mon, 22 Nov 2021 12:25:22 +0000 (13:25 +0100)]
Merge pull request #4581 from WoltLab/formbuilder-interface-static-method
Remove static methods from form builder interfaces
Tim Düsterhus [Mon, 22 Nov 2021 11:39:41 +0000 (12:39 +0100)]
Merge pull request #4589 from WoltLab/5.4-vb5crypt
Add `Vb5Bcrypt` password algorithm
joshuaruesweg [Mon, 22 Nov 2021 11:24:54 +0000 (12:24 +0100)]
Add `Vb5Bcrypt` password algorithm
Tim Düsterhus [Mon, 22 Nov 2021 10:02:28 +0000 (11:02 +0100)]
Merge branch '5.4'
Alexander Ebert [Sun, 21 Nov 2021 22:48:12 +0000 (23:48 +0100)]
Release 5.4.9 dev 1
Marcel Werk [Sun, 21 Nov 2021 13:41:06 +0000 (14:41 +0100)]
Set default value to noindex for some pages
These pages do not contain any content of their own and are basically duplicate content.
Marcel Werk [Sun, 21 Nov 2021 13:06:28 +0000 (14:06 +0100)]
Fixed wrong return type documentation
WoltLab [Sat, 20 Nov 2021 13:46:26 +0000 (13:46 +0000)]
Updating minified JavaScript files
Alexander Ebert [Sat, 20 Nov 2021 12:40:17 +0000 (13:40 +0100)]
Incorrect `width` of images for embedded links
Replaces #4587
Alexander Ebert [Fri, 19 Nov 2021 16:59:04 +0000 (17:59 +0100)]
Workaround to recover tmpHashes for attachments for the `wcf\form\MessageForm`
Fixes WoltLab/com.woltlab.wbb#504
Alexander Ebert [Wed, 17 Nov 2021 17:22:11 +0000 (18:22 +0100)]
Merge pull request #4585 from WoltLab/typescript-ajax-api
Draft for a new ajax API built on top of `fetch()`
Tim Düsterhus [Wed, 17 Nov 2021 09:05:48 +0000 (10:05 +0100)]
Do not delegate to NotNullInt10DatabaseTableColumn in ObjectIdDatabaseTableColumn
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
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
Alexander Ebert [Tue, 16 Nov 2021 14:44:41 +0000 (15:44 +0100)]
Integrated the new AJAX API into the existing module
Alexander Ebert [Tue, 16 Nov 2021 13:30:04 +0000 (14:30 +0100)]
Simplified the code, avoid re-packing the same error
Alexander Ebert [Tue, 16 Nov 2021 13:13:30 +0000 (14:13 +0100)]
Common ApiError class for ergonomic type checks
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
Alexander Ebert [Tue, 16 Nov 2021 12:34:46 +0000 (13:34 +0100)]
Invoke the background queue asynchronously
Alexander Ebert [Tue, 16 Nov 2021 11:02:07 +0000 (12:02 +0100)]
Modified the error handling to use regular errors with a global rejection handler
joshuaruesweg [Fri, 12 Nov 2021 09:16:02 +0000 (10:16 +0100)]
Apply suggestions from code review
Alexander Ebert [Mon, 15 Nov 2021 17:15:48 +0000 (18:15 +0100)]
Improved the dynamic loading of modules
Alexander Ebert [Mon, 15 Nov 2021 15:25:33 +0000 (16:25 +0100)]
Missing JS rebuild
Alexander Ebert [Mon, 15 Nov 2021 15:23:31 +0000 (16:23 +0100)]
Improved the API, implemented the XSRF token
See #3609
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.
Alexander Ebert [Sun, 14 Nov 2021 16:54:19 +0000 (17:54 +0100)]
Draft for a new ajax API built on top of `fetch()`
Tim Düsterhus [Thu, 11 Nov 2021 10:45:44 +0000 (11:45 +0100)]
Merge branch '5.4'
Alexander Ebert [Thu, 11 Nov 2021 10:22:08 +0000 (11:22 +0100)]
Incorrect version number in the installer
Alexander Ebert [Wed, 10 Nov 2021 18:23:39 +0000 (19:23 +0100)]
Merge branch '5.3' into 5.4
Alexander Ebert [Wed, 10 Nov 2021 18:22:29 +0000 (19:22 +0100)]
Merge branch '5.2' into 5.3
Alexander Ebert [Wed, 10 Nov 2021 18:22:18 +0000 (19:22 +0100)]
Merge branch '3.1' into 5.2
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/
Alexander Ebert [Wed, 10 Nov 2021 17:35:43 +0000 (18:35 +0100)]
Enforce the aspect ratio when capping the image height
joshuaruesweg [Tue, 9 Nov 2021 14:59:02 +0000 (15:59 +0100)]
Use `UserProfileAction::setAvatar()` in AvatarUploadFileSaveStrategy
joshuaruesweg [Tue, 9 Nov 2021 14:43:12 +0000 (15:43 +0100)]
Add method to set an avatar for an user
Tim Düsterhus [Mon, 8 Nov 2021 14:32:44 +0000 (15:32 +0100)]
Remove static methods from AbstractFormFieldDecorator
These have been forced by the `IFormField` interface, but were not actually
usable. As the interface has been cleaned up, they can be removed.
Tim Düsterhus [Mon, 8 Nov 2021 14:32:17 +0000 (15:32 +0100)]
Remove static methods from form builder interfaces
Resolves #4468
Alexander Ebert [Sun, 7 Nov 2021 15:11:48 +0000 (16:11 +0100)]
Fix for code boxes inside quotes
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/
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/
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/
Alexander Ebert [Sat, 6 Nov 2021 12:22:44 +0000 (13:22 +0100)]
Improved the position of the link tooltip on small screens
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/
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/
Tim Düsterhus [Fri, 5 Nov 2021 12:33:13 +0000 (13:33 +0100)]
Merge branch '5.4'
Tim Düsterhus [Fri, 5 Nov 2021 11:33:05 +0000 (12:33 +0100)]
Tim Düsterhus [Fri, 5 Nov 2021 11:16:27 +0000 (12:16 +0100)]
Tim Düsterhus [Fri, 5 Nov 2021 10:56:08 +0000 (11:56 +0100)]
Update to WoltLab/zxcvbn@
ade1e45a9a744600124f760243535b366ce76483
Resolves #4578
Tim Düsterhus [Fri, 5 Nov 2021 08:35:23 +0000 (09:35 +0100)]
Merge branch '5.4'
mutec [Thu, 4 Nov 2021 18:03:19 +0000 (19:03 +0100)]
Fix typo in TS comment
see #4577
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>
Tim Düsterhus [Thu, 4 Nov 2021 14:38:16 +0000 (15:38 +0100)]
Merge branch '5.3' into 5.4
Tim Düsterhus [Thu, 4 Nov 2021 14:35:33 +0000 (15:35 +0100)]
Merge branch '5.2' into 5.3
Tim Düsterhus [Thu, 4 Nov 2021 14:34:47 +0000 (15:34 +0100)]
Fix error message for `foreignColumnChange` in PHP DDL API
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.
Tim Düsterhus [Tue, 2 Nov 2021 12:38:23 +0000 (13:38 +0100)]
Merge branch '5.4'
Tim Düsterhus [Tue, 2 Nov 2021 12:38:13 +0000 (13:38 +0100)]
Merge branch '5.3' into 5.4
Tim Düsterhus [Tue, 2 Nov 2021 12:36:47 +0000 (13:36 +0100)]
Merge branch '5.2' into 5.3
Tim Düsterhus [Tue, 2 Nov 2021 12:34:12 +0000 (13:34 +0100)]
Merge branch '3.1' into 5.2
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
Tim Düsterhus [Tue, 2 Nov 2021 11:11:50 +0000 (12:11 +0100)]
joshuaruesweg [Tue, 2 Nov 2021 10:00:58 +0000 (11:00 +0100)]
Hide edit button w/o actions
joshuaruesweg [Tue, 2 Nov 2021 09:58:42 +0000 (10:58 +0100)]
Use typeunsafe comparsion
joshuaruesweg [Tue, 2 Nov 2021 09:57:05 +0000 (10:57 +0100)]
Prevent showing deleting own user button
Fixes #4573
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
Tim Düsterhus [Tue, 2 Nov 2021 09:25:28 +0000 (10:25 +0100)]
Fix code style in UserFormField
Tim Düsterhus [Tue, 2 Nov 2021 09:25:06 +0000 (10:25 +0100)]
Merge branch '5.4'
Tim Düsterhus [Tue, 2 Nov 2021 09:24:50 +0000 (10:24 +0100)]
Fix code style in UserFormField
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.
Tim Düsterhus [Tue, 2 Nov 2021 09:14:02 +0000 (10:14 +0100)]
Merge branch '5.4'
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.
joshuaruesweg [Thu, 28 Oct 2021 06:54:40 +0000 (08:54 +0200)]
Add support for inverted permissions
Tim Düsterhus [Tue, 2 Nov 2021 08:57:01 +0000 (09:57 +0100)]
Merge branch '5.4'
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
Tim Düsterhus [Tue, 2 Nov 2021 08:39:23 +0000 (09:39 +0100)]
Fix UserProfile::getUserProfilesByUsername() if `null` is cached
Tim Düsterhus [Tue, 2 Nov 2021 08:24:41 +0000 (09:24 +0100)]
Fix type of `UserFormField::$users`
Tim Düsterhus [Tue, 2 Nov 2021 08:22:41 +0000 (09:22 +0100)]
Use `\array_column()` in UserFormField::value()
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
Tim Düsterhus [Mon, 1 Nov 2021 14:47:10 +0000 (15:47 +0100)]
Improve readability in `Environment::getSystemId()`
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
Tim Düsterhus [Mon, 1 Nov 2021 13:24:39 +0000 (14:24 +0100)]
Store the system ID after WCFSetup
Tim Düsterhus [Mon, 1 Nov 2021 13:22:58 +0000 (14:22 +0100)]
Store the system ID on successful system checks