GitHub/WoltLab/WCF.git
21 months agoMerge pull request #5012 from WoltLab/php-ddl-text-default
Tim Düsterhus [Wed, 21 Sep 2022 07:10:00 +0000 (09:10 +0200)]
Merge pull request #5012 from WoltLab/php-ddl-text-default

Remove IDefaultValueDatabaseTableColumn from AbstractDatabaseTableColumn

22 months agoRemove TUnsupportedDefaultValue
Tim Düsterhus [Tue, 20 Sep 2022 14:45:02 +0000 (16:45 +0200)]
Remove TUnsupportedDefaultValue

22 months agoStop using TUnsupportedDefaultValue
Tim Düsterhus [Tue, 20 Sep 2022 14:44:49 +0000 (16:44 +0200)]
Stop using TUnsupportedDefaultValue

22 months agoRemove IDefaultValueDatabaseTableColumn from AbstractDatabaseTableColumn
Tim Düsterhus [Tue, 20 Sep 2022 14:44:12 +0000 (16:44 +0200)]
Remove IDefaultValueDatabaseTableColumn from AbstractDatabaseTableColumn

22 months agoMerge pull request #5011 from WoltLab/typescript-lazy-loader
Alexander Ebert [Tue, 20 Sep 2022 13:02:45 +0000 (15:02 +0200)]
Merge pull request #5011 from WoltLab/typescript-lazy-loader

Lazy loader for modules

22 months agoAdd explanation for the lazy loader‘s behavior
Alexander Ebert [Tue, 20 Sep 2022 12:50:34 +0000 (14:50 +0200)]
Add explanation for the lazy loader‘s behavior

22 months agoReliably remove the timer reference to cancel the animation frame
Alexander Ebert [Tue, 20 Sep 2022 12:18:15 +0000 (14:18 +0200)]
Reliably remove the timer reference to cancel the animation frame

22 months agoMerge pull request #5010 from WoltLab/package-cleanup4
Tim Düsterhus [Tue, 20 Sep 2022 12:07:46 +0000 (14:07 +0200)]
Merge pull request #5010 from WoltLab/package-cleanup4

Clean up package system

22 months agoDocument the purpose of the observer functions
Alexander Ebert [Tue, 20 Sep 2022 11:55:07 +0000 (13:55 +0200)]
Document the purpose of the observer functions

22 months agoAdd helpers to watch for existing and new elements matching a selector
Alexander Ebert [Tue, 20 Sep 2022 11:30:37 +0000 (13:30 +0200)]
Add helpers to watch for existing and new elements matching a selector

22 months agoAdd archive location safety check to PackageInstallationDispatcher::getArchive()
Tim Düsterhus [Tue, 20 Sep 2022 10:19:51 +0000 (12:19 +0200)]
Add archive location safety check to PackageInstallationDispatcher::getArchive()

see 4911f9e0c7049666dc586a22aefa939eff35e228

22 months agoUse first-class callables in PackageInstallationScheduler
Tim Düsterhus [Tue, 20 Sep 2022 10:11:01 +0000 (12:11 +0200)]
Use first-class callables in PackageInstallationScheduler

22 months agoMark PackageInstallationScheduler as final
Tim Düsterhus [Tue, 20 Sep 2022 10:09:10 +0000 (12:09 +0200)]
Mark PackageInstallationScheduler as final

22 months agoUse spaceship operator in PackageInstallationScheduler::compareUpdateThreadLists()
Tim Düsterhus [Tue, 20 Sep 2022 10:07:45 +0000 (12:07 +0200)]
Use spaceship operator in PackageInstallationScheduler::compareUpdateThreadLists()

22 months agoUse `->prepare()` in PackageInstallationScheduler
Tim Düsterhus [Tue, 20 Sep 2022 10:06:19 +0000 (12:06 +0200)]
Use `->prepare()` in PackageInstallationScheduler

22 months agoRemove dynamic dispatch in Install/UninstallPackageAction
Tim Düsterhus [Tue, 20 Sep 2022 09:53:46 +0000 (11:53 +0200)]
Remove dynamic dispatch in Install/UninstallPackageAction

It's easier to analyze the code if the called methods are directly visible.
Inheriting from these actions is not really supported with the legacy exception
of DevtoolsInstallPackageAction which does not add additional steps.

22 months agoMerge pull request #5008 from WoltLab/package-version
Tim Düsterhus [Tue, 20 Sep 2022 09:37:54 +0000 (11:37 +0200)]
Merge pull request #5008 from WoltLab/package-version

Narrow down the list of acceptable versions in Package::isValidVersion()

22 months agoMerge branch '5.5'
Tim Düsterhus [Tue, 20 Sep 2022 08:44:50 +0000 (10:44 +0200)]
Merge branch '5.5'

22 months agoMerge remote-tracking branch 'origin/5.5' into 5.5
Tim Düsterhus [Tue, 20 Sep 2022 08:44:15 +0000 (10:44 +0200)]
Merge remote-tracking branch 'origin/5.5' into 5.5

22 months agoAdd PreventMimeSniffing middleware
Tim Düsterhus [Tue, 20 Sep 2022 08:43:42 +0000 (10:43 +0200)]
Add PreventMimeSniffing middleware

22 months agoMerge branch '5.5'
Tim Düsterhus [Tue, 20 Sep 2022 08:36:29 +0000 (10:36 +0200)]
Merge branch '5.5'

22 months agoMerge branch '5.4' into 5.5
Tim Düsterhus [Tue, 20 Sep 2022 08:35:33 +0000 (10:35 +0200)]
Merge branch '5.4' into 5.5

22 months agoMerge pull request #5009 from WoltLab/attachment-csp
Tim Düsterhus [Tue, 20 Sep 2022 08:34:58 +0000 (10:34 +0200)]
Merge pull request #5009 from WoltLab/attachment-csp

Add security headers to AttachmentPage

22 months agoPrevent MIME sniffing for attachments
Tim Düsterhus [Tue, 20 Sep 2022 07:19:46 +0000 (09:19 +0200)]
Prevent MIME sniffing for attachments

22 months agoConfigure a restrictive content-security-policy for attachments
Tim Düsterhus [Tue, 20 Sep 2022 07:18:56 +0000 (09:18 +0200)]
Configure a restrictive content-security-policy for attachments

22 months agoPass int to FileUtil::checkMemoryLimit() in ImageAdapter::checkMemoryLimit()
Tim Düsterhus [Mon, 19 Sep 2022 21:18:32 +0000 (23:18 +0200)]
Pass int to FileUtil::checkMemoryLimit() in ImageAdapter::checkMemoryLimit()

see 74accff0500ef3d635605b21dd838e8ac673be04

22 months agoAdd a lazy loader to watch for selectors to first match
Alexander Ebert [Mon, 19 Sep 2022 16:12:55 +0000 (18:12 +0200)]
Add a lazy loader to watch for selectors to first match

22 months agoNarrow down the list of acceptable versions in Package::isValidVersion()
Tim Düsterhus [Mon, 19 Sep 2022 15:19:02 +0000 (17:19 +0200)]
Narrow down the list of acceptable versions in Package::isValidVersion()

Specifically this:

- Excludes the `pl` suffix, which is non-obvious and ordered *after* the
  non-suffixed version.
- Excludes non-standard casing for the other suffixes.

22 months agoAdd parameter and return types to Package::isValid*()
Tim Düsterhus [Mon, 19 Sep 2022 15:17:41 +0000 (17:17 +0200)]
Add parameter and return types to Package::isValid*()

22 months agoMerge pull request #5007 from WoltLab/user-avatar-download
Tim Düsterhus [Mon, 19 Sep 2022 15:04:13 +0000 (17:04 +0200)]
Merge pull request #5007 from WoltLab/user-avatar-download

Remove UserAvatarAction::fetchRemoteAvatar()

22 months agoFix wrong indentation in box menus in left sidebar
Marcel Werk [Mon, 19 Sep 2022 15:03:47 +0000 (17:03 +0200)]
Fix wrong indentation in box menus in left sidebar

For active menu items the padding was overwritten causing the indentation to be lost.

22 months agoMerge pull request #5006 from WoltLab/package-cleanup3
Tim Düsterhus [Mon, 19 Sep 2022 15:02:00 +0000 (17:02 +0200)]
Merge pull request #5006 from WoltLab/package-cleanup3

Clean up of package handling logic

22 months agoRemove UserAvatarAction::enforceDimensions()
Tim Düsterhus [Mon, 19 Sep 2022 14:58:47 +0000 (16:58 +0200)]
Remove UserAvatarAction::enforceDimensions()

No longer used since the previous commit.

22 months agoRemove UserAvatarAction::fetchRemoteAvatar()
Tim Düsterhus [Mon, 19 Sep 2022 14:57:15 +0000 (16:57 +0200)]
Remove UserAvatarAction::fetchRemoteAvatar()

This method still uses the legacy HTTP API and contains quite a bit of implicit
and non-obvious (thus intransparent) logic.

22 months agoRemove the `PACKAGE_VERSION` constant
Tim Düsterhus [Mon, 19 Sep 2022 14:50:53 +0000 (16:50 +0200)]
Remove the `PACKAGE_VERSION` constant

The value is more reliably retrieved by fetching the appropriate Package DBO.

22 months agoRemove the `PACKAGE_NAME` constant
Tim Düsterhus [Mon, 19 Sep 2022 14:47:08 +0000 (16:47 +0200)]
Remove the `PACKAGE_NAME` constant

The value is more reliably retrieved by fetching the appropriate Package DBO.

22 months agoRemove legacy `config.inc.php` from app directories
Tim Düsterhus [Mon, 19 Sep 2022 14:26:29 +0000 (16:26 +0200)]
Remove legacy `config.inc.php` from app directories

22 months agoReplace `strcmp() != 0` with `!==` in PackageInstallationDispatcher
Tim Düsterhus [Mon, 19 Sep 2022 14:16:22 +0000 (16:16 +0200)]
Replace `strcmp() != 0` with `!==` in PackageInstallationDispatcher

22 months agoRemove PackageArchive::downloadArchive()
Tim Düsterhus [Mon, 19 Sep 2022 14:12:18 +0000 (16:12 +0200)]
Remove PackageArchive::downloadArchive()

The implicit download of the archive during package installation is unsafe:
Downloading might fail and we don't really have control over whatever is
downloaded.

22 months agoMerge pull request #5005 from WoltLab/deprecated-sql
Tim Düsterhus [Mon, 19 Sep 2022 14:14:30 +0000 (16:14 +0200)]
Merge pull request #5005 from WoltLab/deprecated-sql

Remove all deprecated SQL tables

22 months agoUnregister `__wcfSetup_developerMode` after use
Tim Düsterhus [Mon, 19 Sep 2022 14:04:25 +0000 (16:04 +0200)]
Unregister `__wcfSetup_developerMode` after use

22 months agoUpdate package server URL in install.sql
Tim Düsterhus [Mon, 19 Sep 2022 13:55:22 +0000 (15:55 +0200)]
Update package server URL in install.sql

see 3c4af628ffd1f5c005ee94b5fbbad21027313bad

22 months agoRemove wcf1_user_notification_to_user
Tim Düsterhus [Mon, 19 Sep 2022 13:53:10 +0000 (15:53 +0200)]
Remove wcf1_user_notification_to_user

Queries involving this table are a constant source of deadlocks.

22 months agoRemove wcf1_package_update_optional
Tim Düsterhus [Mon, 19 Sep 2022 13:50:50 +0000 (15:50 +0200)]
Remove wcf1_package_update_optional

22 months agoRemove wcf1_package_update_compatibility
Tim Düsterhus [Mon, 19 Sep 2022 13:49:57 +0000 (15:49 +0200)]
Remove wcf1_package_update_compatibility

see 817d1e0a2a5e860bd3b9d3484e210fd9c52aea91

22 months agoMerge pull request #4999 from WoltLab/disk-cache-cleanup
Tim Düsterhus [Mon, 19 Sep 2022 13:31:21 +0000 (15:31 +0200)]
Merge pull request #4999 from WoltLab/disk-cache-cleanup

Clean up DiskCacheSource

22 months agoStop using DirectoryUtil in DiskCacheSource
Tim Düsterhus [Mon, 19 Sep 2022 13:22:52 +0000 (15:22 +0200)]
Stop using DirectoryUtil in DiskCacheSource

22 months agoMerge pull request #5004 from WoltLab/dateutil-immutable
Tim Düsterhus [Mon, 19 Sep 2022 12:41:26 +0000 (14:41 +0200)]
Merge pull request #5004 from WoltLab/dateutil-immutable

Accept \DateTimeImmutable in DateUtil::format()

22 months agoMerge pull request #5003 from WoltLab/controller-final
Tim Düsterhus [Mon, 19 Sep 2022 12:41:07 +0000 (14:41 +0200)]
Merge pull request #5003 from WoltLab/controller-final

Mark various action controllers as final

22 months agoAccept \DateTimeImmutable in DateUtil::format()
Tim Düsterhus [Mon, 19 Sep 2022 12:37:23 +0000 (14:37 +0200)]
Accept \DateTimeImmutable in DateUtil::format()

22 months agoMark various action controllers as final
Tim Düsterhus [Mon, 19 Sep 2022 12:16:21 +0000 (14:16 +0200)]
Mark various action controllers as final

There is no good reason to inherit from a controller and possible child classes
are not taken into account during refactoring anyway. Mark these as `final` to
prevent inheritance in the first place.

22 months agoAdd parameter/return types to PackageValidationArchive
Tim Düsterhus [Mon, 19 Sep 2022 12:03:43 +0000 (14:03 +0200)]
Add parameter/return types to PackageValidationArchive

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoRemove `@` from autoloader
Tim Düsterhus [Mon, 19 Sep 2022 11:58:04 +0000 (13:58 +0200)]
Remove `@` from autoloader

see #4684

22 months agoAdd parameter/return types to PageNode
Tim Düsterhus [Mon, 19 Sep 2022 11:56:59 +0000 (13:56 +0200)]
Add parameter/return types to PageNode

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoAdd various parameter/return types to form builder
Tim Düsterhus [Mon, 19 Sep 2022 10:20:50 +0000 (12:20 +0200)]
Add various parameter/return types to form builder

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoAdd parameter/return types to StructuredComment
Tim Düsterhus [Mon, 19 Sep 2022 10:58:48 +0000 (12:58 +0200)]
Add parameter/return types to StructuredComment

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoAdd parameter/return types to CategoryNodeTree/ArticleCategoryNodeTree
Tim Düsterhus [Mon, 19 Sep 2022 10:56:57 +0000 (12:56 +0200)]
Add parameter/return types to CategoryNodeTree/ArticleCategoryNodeTree

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoAdd parameter/return types to TObjectTreeNode
Tim Düsterhus [Mon, 19 Sep 2022 10:41:07 +0000 (12:41 +0200)]
Add parameter/return types to TObjectTreeNode

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoAdd parameter/return types to Breadcrumbs
Tim Düsterhus [Mon, 19 Sep 2022 10:16:34 +0000 (12:16 +0200)]
Add parameter/return types to Breadcrumbs

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoMark Breadcrumbs as final
Tim Düsterhus [Mon, 19 Sep 2022 10:15:35 +0000 (12:15 +0200)]
Mark Breadcrumbs as final

22 months agoAdd parameter/return types to MenuItemNode
Tim Düsterhus [Mon, 19 Sep 2022 10:15:03 +0000 (12:15 +0200)]
Add parameter/return types to MenuItemNode

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoAdd parameter/return types to MetaTagHandler
Tim Düsterhus [Mon, 19 Sep 2022 10:11:36 +0000 (12:11 +0200)]
Add parameter/return types to MetaTagHandler

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoMark MetaTagHandler as final
Tim Düsterhus [Mon, 19 Sep 2022 10:10:40 +0000 (12:10 +0200)]
Mark MetaTagHandler as final

22 months agoAdd parameter/return types to wcf\util\Url
Tim Düsterhus [Mon, 19 Sep 2022 10:07:53 +0000 (12:07 +0200)]
Add parameter/return types to wcf\util\Url

This is required to fix PHP 8.1 deprecations.

see #4684

22 months agoMerge pull request #5001 from WoltLab/php8.2
Tim Düsterhus [Mon, 19 Sep 2022 10:31:35 +0000 (12:31 +0200)]
Merge pull request #5001 from WoltLab/php8.2

Mark PHP 8.2 as supported

22 months agoMark PHP 8.2 as supported
Tim Düsterhus [Mon, 19 Sep 2022 10:02:36 +0000 (12:02 +0200)]
Mark PHP 8.2 as supported

With the update of HTMLPurifier to 4.16.0 the last known incompatibility with
PHP 8.2 is fixed.

see 91bf9126edc2343511f7b54043f1cc203ea3ce4e

22 months agoUpdate version constraints in composer.json
Tim Düsterhus [Mon, 19 Sep 2022 09:42:10 +0000 (11:42 +0200)]
Update version constraints in composer.json

22 months agoMerge branch '5.5'
Tim Düsterhus [Mon, 19 Sep 2022 09:40:54 +0000 (11:40 +0200)]
Merge branch '5.5'

22 months agoMerge pull request #5000 from WoltLab/purifier
Tim Düsterhus [Mon, 19 Sep 2022 09:38:13 +0000 (11:38 +0200)]
Merge pull request #5000 from WoltLab/purifier

Update htmlpurifier to 4.16.0

22 months agoUpdate htmlpurifier to 4.16.0
Tim Düsterhus [Mon, 19 Sep 2022 09:31:46 +0000 (11:31 +0200)]
Update htmlpurifier to 4.16.0

22 months agoUpdate composer dependencies
Tim Düsterhus [Mon, 19 Sep 2022 09:24:23 +0000 (11:24 +0200)]
Update composer dependencies

22 months agoMerge pull request #4998 from WoltLab/sid-constant-javascript
Tim Düsterhus [Fri, 16 Sep 2022 14:52:22 +0000 (16:52 +0200)]
Merge pull request #4998 from WoltLab/sid-constant-javascript

Remove SID_ARG_2ND from JavaScript

22 months agoMerge pull request #4997 from WoltLab/package-cleanup2
Tim Düsterhus [Fri, 16 Sep 2022 14:51:56 +0000 (16:51 +0200)]
Merge pull request #4997 from WoltLab/package-cleanup2

Clean up the package system further

22 months agoMerge pull request #4996 from WoltLab/icon-prefilter
Tim Düsterhus [Fri, 16 Sep 2022 14:44:41 +0000 (16:44 +0200)]
Merge pull request #4996 from WoltLab/icon-prefilter

Add IconPrefilterTemplatePlugin

22 months agoClean up error handling in DiskCacheSource::readCache()
Tim Düsterhus [Fri, 16 Sep 2022 14:26:41 +0000 (16:26 +0200)]
Clean up error handling in DiskCacheSource::readCache()

22 months agoAdd proper types to DiskCacheSource's non-inherited methods
Tim Düsterhus [Fri, 16 Sep 2022 14:23:46 +0000 (16:23 +0200)]
Add proper types to DiskCacheSource's non-inherited methods

22 months agoMark protected members of DiskCacheSource as private
Tim Düsterhus [Fri, 16 Sep 2022 14:21:56 +0000 (16:21 +0200)]
Mark protected members of DiskCacheSource as private

22 months agoMark DiskCacheSource as final
Tim Düsterhus [Fri, 16 Sep 2022 14:21:09 +0000 (16:21 +0200)]
Mark DiskCacheSource as final

22 months agoMerge branch '5.5'
Tim Düsterhus [Fri, 16 Sep 2022 14:29:34 +0000 (16:29 +0200)]
Merge branch '5.5'

22 months agoMerge remote-tracking branch 'origin/5.5' into 5.5
Tim Düsterhus [Fri, 16 Sep 2022 14:29:05 +0000 (16:29 +0200)]
Merge remote-tracking branch 'origin/5.5' into 5.5

22 months agoMerge branch '5.5'
Tim Düsterhus [Fri, 16 Sep 2022 14:20:39 +0000 (16:20 +0200)]
Merge branch '5.5'

22 months agoGuard against throwing unserialize handlers when unserializing template metadata
Tim Düsterhus [Fri, 16 Sep 2022 14:15:20 +0000 (16:15 +0200)]
Guard against throwing unserialize handlers when unserializing template metadata

22 months agoRemove SID_ARG_2ND from JavaScript
Tim Düsterhus [Fri, 16 Sep 2022 14:05:13 +0000 (16:05 +0200)]
Remove SID_ARG_2ND from JavaScript

These were removed from PHP in 8a35fd6de81f1138456fb777eb57d4b3907c0c66.

22 months agoAdd IconPrefilterTemplatePlugin
Tim Düsterhus [Fri, 16 Sep 2022 13:03:06 +0000 (15:03 +0200)]
Add IconPrefilterTemplatePlugin

22 months agoFix editing of active paid subscription that has a permanent length
Marcel Werk [Fri, 16 Sep 2022 12:44:00 +0000 (14:44 +0200)]
Fix editing of active paid subscription that has a permanent length

22 months agoRemove PackageUpdateDispatcher::prepareInstallation()
Tim Düsterhus [Thu, 15 Sep 2022 08:19:24 +0000 (10:19 +0200)]
Remove PackageUpdateDispatcher::prepareInstallation()

This method is unused.

22 months agoRemove PackageInstallationQueueAction::prepareQueue()
Tim Düsterhus [Thu, 15 Sep 2022 08:06:32 +0000 (10:06 +0200)]
Remove PackageInstallationQueueAction::prepareQueue()

This method is unused.

22 months agoSimplify the package queue retrieval for completing WCFSetup in IndexPage
Tim Düsterhus [Wed, 14 Sep 2022 15:06:02 +0000 (17:06 +0200)]
Simplify the package queue retrieval for completing WCFSetup in IndexPage

22 months agoPreserve the sequence numbers when cloning a package node
Tim Düsterhus [Wed, 14 Sep 2022 14:51:53 +0000 (16:51 +0200)]
Preserve the sequence numbers when cloning a package node

This change is safe, the only place where the sequence number is used is within
the `ORDER BY` when reading the nodes for the current request.

Preserving the sequence numbers makes debugging a little easier, because steps
that were created using a split are immediately recognizable by their sequence
numbers not starting at 0.

22 months agoMake use of `shiftNodes()` in PackageInstallationNodeBuilder::cloneNode()
Tim Düsterhus [Wed, 14 Sep 2022 13:26:11 +0000 (15:26 +0200)]
Make use of `shiftNodes()` in PackageInstallationNodeBuilder::cloneNode()

22 months agoRemove PackageInstallationNodeBuilder::insertNode()
Tim Düsterhus [Wed, 14 Sep 2022 13:24:21 +0000 (15:24 +0200)]
Remove PackageInstallationNodeBuilder::insertNode()

This method is unused.

22 months agoSimplify redirect in PackageStartInstallForm
Tim Düsterhus [Wed, 14 Sep 2022 13:13:28 +0000 (15:13 +0200)]
Simplify redirect in PackageStartInstallForm

The previous logic could only match the queue entry that was just created,
because the `processNo` is unique.

22 months agoMerge branch '5.5'
Tim Düsterhus [Fri, 16 Sep 2022 10:54:54 +0000 (12:54 +0200)]
Merge branch '5.5'

22 months agoAdd `type="button"` to jsButtonAttachmentInsertThumbnail
Tim Düsterhus [Fri, 16 Sep 2022 10:53:11 +0000 (12:53 +0200)]
Add `type="button"` to jsButtonAttachmentInsertThumbnail

This was missed in 35c59174f69bbaca5bc72c3a49beb886594ada11.

22 months agoRelease 5.5.5 dev 1 5.5.5_dev_1
Alexander Ebert [Thu, 15 Sep 2022 14:56:56 +0000 (16:56 +0200)]
Release 5.5.5 dev 1

22 months agoUpdating minified JavaScript files
WoltLab [Thu, 15 Sep 2022 14:45:49 +0000 (14:45 +0000)]
Updating minified JavaScript files

22 months agoUnescape the apostrophe in notification messages
Alexander Ebert [Thu, 15 Sep 2022 12:42:09 +0000 (14:42 +0200)]
Unescape the apostrophe in notification messages

See https://www.woltlab.com/community/thread/296665-unicode-dezimal-bei-desktop-benachrichtigungen/

22 months agoAppend a cache buster to upload images
Alexander Ebert [Thu, 15 Sep 2022 12:24:48 +0000 (14:24 +0200)]
Append a cache buster to upload images

See https://www.woltlab.com/community/thread/296221-cache-in-template-uploadfieldcomponent/

22 months agoFix the scroll behavior on iOS when opening the comment editor
Alexander Ebert [Thu, 15 Sep 2022 11:46:42 +0000 (13:46 +0200)]
Fix the scroll behavior on iOS when opening the comment editor

See https://www.woltlab.com/community/thread/297023-kommentare-unter-ios-antworten-springt-mobil-zum-seitenende/

22 months agoMark the attachment controls as plain buttons
Alexander Ebert [Thu, 15 Sep 2022 11:03:16 +0000 (13:03 +0200)]
Mark the attachment controls as plain buttons

See https://www.woltlab.com/community/thread/297057-absenden-des-formulars-via-eingabetaste-m%C3%B6chte-dateianhang-l%C3%B6schen/