GitHub/WoltLab/WCF.git
2 months agoAdds a new function to the `IFileProcessor` which is called to check if the uploaded...
Cyperghost [Wed, 10 Jul 2024 09:36:56 +0000 (11:36 +0200)]
Adds a new function to the `IFileProcessor` which is called to check if the uploaded file is allowed. This function should throw `UserInputException` if the file is not allowed

2 months agoMerge pull request #5951 from WoltLab/upload-form-field-v2
Olaf Braun [Sat, 6 Jul 2024 11:20:14 +0000 (13:20 +0200)]
Merge pull request #5951 from WoltLab/upload-form-field-v2

New upload form field

2 months agoStop reporting the pseudo options category as missing phrase
Alexander Ebert [Fri, 5 Jul 2024 11:07:42 +0000 (13:07 +0200)]
Stop reporting the pseudo options category as missing phrase

2 months agoFixed a bug still accessing the old `_data` field
Cyperghost [Thu, 4 Jul 2024 07:45:07 +0000 (09:45 +0200)]
Fixed a bug still accessing the old `_data` field

2 months agoMerge remote-tracking branch 'origin/upload-form-field-v2' into upload-form-field-v2
Cyperghost [Thu, 4 Jul 2024 07:35:53 +0000 (09:35 +0200)]
Merge remote-tracking branch 'origin/upload-form-field-v2' into upload-form-field-v2

2 months agoRename `WoltLabSuite/Core/Component/File/File` to `WoltLabSuite/Core/Component/File...
Cyperghost [Thu, 4 Jul 2024 07:35:31 +0000 (09:35 +0200)]
Rename `WoltLabSuite/Core/Component/File/File` to `WoltLabSuite/Core/Component/File/Helper`

2 months agoMove `$event->preload('wcf.global.button.replace');` up
Cyperghost [Thu, 4 Jul 2024 07:33:31 +0000 (09:33 +0200)]
Move `$event->preload('wcf.global.button.replace');` up

2 months agoApply suggestions from code review
Olaf Braun [Wed, 3 Jul 2024 12:08:18 +0000 (14:08 +0200)]
Apply suggestions from code review

Co-authored-by: Alexander Ebert <ebert@woltlab.com>
2 months agoMerge pull request #5953 from WoltLab/get-form-field
Marcel Werk [Wed, 3 Jul 2024 12:08:07 +0000 (14:08 +0200)]
Merge pull request #5953 from WoltLab/get-form-field

Make it easier to find a form field from a FormBuilder form

2 months agoMake it easier to find a form field from a FormBuilder form
Marcel Werk [Wed, 3 Jul 2024 12:04:26 +0000 (14:04 +0200)]
Make it easier to find a form field from a FormBuilder form

Basically, it is just a wrapper around `getNodeById()`, which also checks whether it is a `IFormField`.

2 months agoExport `clearPreviousErrors()`
Cyperghost [Wed, 3 Jul 2024 08:50:29 +0000 (10:50 +0200)]
Export `clearPreviousErrors()`
Use a Promise to recognize the beginning of the upload to replace the context

2 months agoAdd a check that the replace button in the `FileProcessorFormField` is clicked, to...
Cyperghost [Wed, 3 Jul 2024 08:20:14 +0000 (10:20 +0200)]
Add a check that the replace button in the `FileProcessorFormField` is clicked, to ignore the upload limit

2 months agoChange the function that adds a button so that it only returns a button and doesn...
Cyperghost [Wed, 3 Jul 2024 07:53:05 +0000 (09:53 +0200)]
Change the function that adds a button so that it only returns a button and doesn't insert it

2 months agoRemove radix parameter from `parseInt`
Cyperghost [Wed, 3 Jul 2024 07:41:19 +0000 (09:41 +0200)]
Remove radix parameter from `parseInt`

2 months agoFix css-class added in `markElementAsErroneous()`
Cyperghost [Wed, 3 Jul 2024 07:39:40 +0000 (09:39 +0200)]
Fix css-class added in `markElementAsErroneous()`

2 months agoAdd helper function to insert default file information (size, filename and the file)
Cyperghost [Wed, 3 Jul 2024 07:39:01 +0000 (09:39 +0200)]
Add helper function to insert default file information (size, filename and the file)

2 months agoRemove the wrong js file
Cyperghost [Wed, 3 Jul 2024 07:34:14 +0000 (09:34 +0200)]
Remove the wrong js file

2 months agoReduce icon size in account security
Marcel Werk [Tue, 2 Jul 2024 15:35:45 +0000 (17:35 +0200)]
Reduce icon size in account security

Closes #5930

2 months agoAdd helper function `fileInitializationFailed`
Cyperghost [Tue, 2 Jul 2024 08:52:01 +0000 (10:52 +0200)]
Add helper function `fileInitializationFailed`

2 months agoUpdate some comments
Cyperghost [Tue, 2 Jul 2024 08:47:32 +0000 (10:47 +0200)]
Update some comments
Remove unnecessary comments

2 months agoAdd helper functions `trackUploadProgress` and `removeUploadProgress` for `WoltlabCor...
Cyperghost [Tue, 2 Jul 2024 08:43:23 +0000 (10:43 +0200)]
Add helper functions `trackUploadProgress` and `removeUploadProgress` for `WoltlabCoreFileElement`.

2 months agoAllow the function `get values()` to return only one number for single file upload...
Cyperghost [Tue, 2 Jul 2024 08:30:22 +0000 (10:30 +0200)]
Allow the function `get values()` to return only one number for single file upload and also `undefined` if no file is uploaded

2 months agoInsert data handler for an ajax form
Cyperghost [Tue, 2 Jul 2024 08:23:49 +0000 (10:23 +0200)]
Insert data handler for an ajax form

2 months agoAdd `wcf.global.button.replace` to phrase preloader
Cyperghost [Tue, 2 Jul 2024 08:06:42 +0000 (10:06 +0200)]
Add `wcf.global.button.replace` to phrase preloader

2 months agoLabel for received reaction shortened
Marcel Werk [Mon, 1 Jul 2024 15:11:30 +0000 (17:11 +0200)]
Label for received reaction shortened

"Reactions received" is too long for use in the user card.

2 months agoFix broken `HtmlNodeUnfurlLink.class.php`
Marcel Werk [Fri, 28 Jun 2024 12:05:08 +0000 (14:05 +0200)]
Fix broken `HtmlNodeUnfurlLink.class.php`

The file was merged incorrectly by this commit:
https://github.com/WoltLab/WCF/commit/7966721e4709d792180fb05a693cafd8db0e2793

2 months agoRemove async from `#registerFile()`
Cyperghost [Wed, 26 Jun 2024 09:48:03 +0000 (11:48 +0200)]
Remove async from `#registerFile()`

2 months agoMove statement to the correct comment position
Cyperghost [Wed, 26 Jun 2024 09:12:29 +0000 (11:12 +0200)]
Move statement to the correct comment position

2 months agoSet `bubbles` to `true` for the custom event `fileProcessorCustomAction`.
Cyperghost [Wed, 26 Jun 2024 09:11:15 +0000 (11:11 +0200)]
Set `bubbles` to `true` for the custom event `fileProcessorCustomAction`.

2 months agoSwap the parameters `$application` and `$template`
Cyperghost [Wed, 26 Jun 2024 08:58:19 +0000 (10:58 +0200)]
Swap the parameters `$application` and `$template`

2 months agoAdds the option of a template that is also included for the extra buttons
Cyperghost [Wed, 26 Jun 2024 08:54:59 +0000 (10:54 +0200)]
Adds the option of a template that is also included for the extra buttons
Use `unsafe:` instead of `@`

2 months agoUse media breakpoints to set the number of columns
Cyperghost [Wed, 26 Jun 2024 08:44:31 +0000 (10:44 +0200)]
Use media breakpoints to set the number of columns

2 months agoIntegrate the upload progressbar to file processor form field
Cyperghost [Wed, 26 Jun 2024 08:39:14 +0000 (10:39 +0200)]
Integrate the upload progressbar to file processor form field

2 months agoSet array-key to the fileID
Cyperghost [Wed, 26 Jun 2024 08:38:43 +0000 (10:38 +0200)]
Set array-key to the fileID

2 months agoFixes the problem that the DOM element was not removed when the file was deleted
Cyperghost [Wed, 26 Jun 2024 08:17:06 +0000 (10:17 +0200)]
Fixes the problem that the DOM element was not removed when the file was deleted

2 months agoMerge pull request #5805 from WoltLab/service-worker-notifications
Olaf Braun [Tue, 25 Jun 2024 11:47:37 +0000 (13:47 +0200)]
Merge pull request #5805 from WoltLab/service-worker-notifications

Add service worker for push notifications

2 months agoUpgrade composer packages
Cyperghost [Tue, 25 Jun 2024 11:43:48 +0000 (13:43 +0200)]
Upgrade composer packages
  `web-token/jwt-library` to `3.3.50`
  `spomky-labs/pki-framework` to `1.2.1`

2 months agoUpgrade composer packages
Cyperghost [Tue, 25 Jun 2024 10:19:09 +0000 (12:19 +0200)]
Upgrade composer packages
  `web-token/jwt-library` to `3.3.50`
  `spomky-labs/pki-framework` to `1.2.1`

2 months agoNew indent `composer.json`
Olaf Braun [Mon, 24 Jun 2024 13:13:35 +0000 (15:13 +0200)]
New indent `composer.json`

2 months agoMerge branch 'refs/heads/master' into service-worker-notifications
Olaf Braun [Mon, 24 Jun 2024 12:57:36 +0000 (14:57 +0200)]
Merge branch 'refs/heads/master' into service-worker-notifications

# Conflicts:
# wcfsetup/install/files/lib/system/api/composer.json
# wcfsetup/install/files/lib/system/api/composer.lock
# wcfsetup/install/files/lib/system/api/composer/installed.php

2 months agoMerge pull request #5949 from WoltLab/require-https
Alexander Ebert [Mon, 24 Jun 2024 10:45:01 +0000 (12:45 +0200)]
Merge pull request #5949 from WoltLab/require-https

Make HTTPS a hard requirement

2 months agoUpdated the composer dependencies
Alexander Ebert [Mon, 24 Jun 2024 10:21:54 +0000 (12:21 +0200)]
Updated the composer dependencies

2 months agoMerge branch '6.0'
Alexander Ebert [Mon, 24 Jun 2024 10:19:30 +0000 (12:19 +0200)]
Merge branch '6.0'

2 months agoFix the search of errors by exception id
Alexander Ebert [Mon, 24 Jun 2024 10:18:19 +0000 (12:18 +0200)]
Fix the search of errors by exception id

The non-recursive variant of the `DirectoryUtil` returns a plain list of filenames rather than the pathname.

See #5932

2 months agoUpdate `minishlink/web-push` to `v9.0.0-rc2`
Cyperghost [Mon, 24 Jun 2024 08:30:47 +0000 (10:30 +0200)]
Update `minishlink/web-push` to `v9.0.0-rc2`

2 months agoMerge branch 'refs/heads/master' into service-worker-notifications
Cyperghost [Mon, 24 Jun 2024 08:25:10 +0000 (10:25 +0200)]
Merge branch 'refs/heads/master' into service-worker-notifications

# Conflicts:
# wcfsetup/install/files/acp/database/update_com.woltlab.wcf_6.1.php

2 months agoMove upload progressbar from attachment to fileList
Cyperghost [Mon, 24 Jun 2024 08:21:45 +0000 (10:21 +0200)]
Move upload progressbar from attachment to fileList

2 months agoMerge branch 'refs/heads/master' into upload-form-field-v2
Cyperghost [Mon, 24 Jun 2024 08:18:04 +0000 (10:18 +0200)]
Merge branch 'refs/heads/master' into upload-form-field-v2

# Conflicts:
# wcfsetup/install/files/style/ui/attachment.scss

2 months agoEnable the Sandbox for Templates Inside of BBCodes
Alexander Ebert [Sun, 23 Jun 2024 11:35:09 +0000 (13:35 +0200)]
Enable the Sandbox for Templates Inside of BBCodes

See #5910

2 months agoRename endpoint classes to match the naming schema
Alexander Ebert [Sat, 22 Jun 2024 18:03:51 +0000 (20:03 +0200)]
Rename endpoint classes to match the naming schema

2 months agoAdd a preflight script for the upgrade from 6.0
Alexander Ebert [Sat, 22 Jun 2024 17:32:11 +0000 (19:32 +0200)]
Add a preflight script for the upgrade from 6.0

2 months agoRedirect insecure requests to the frontend
Alexander Ebert [Sat, 22 Jun 2024 17:23:51 +0000 (19:23 +0200)]
Redirect insecure requests to the frontend

2 months agoAdd the TLS check to the test script
Alexander Ebert [Sat, 22 Jun 2024 13:50:56 +0000 (15:50 +0200)]
Add the TLS check to the test script

2 months agoApply the code formatter to the test script
Alexander Ebert [Sat, 22 Jun 2024 13:40:41 +0000 (15:40 +0200)]
Apply the code formatter to the test script

2 months agoPromote HTTPS from being a recommendation to an requirement
Alexander Ebert [Sat, 22 Jun 2024 13:39:09 +0000 (15:39 +0200)]
Promote HTTPS from being a recommendation to an requirement

2 months agoAdd a check for the secure context on the index page
Alexander Ebert [Sat, 22 Jun 2024 13:28:58 +0000 (15:28 +0200)]
Add a check for the secure context on the index page

2 months agoVerify the HTTPS support within the system check
Alexander Ebert [Sat, 22 Jun 2024 12:43:04 +0000 (14:43 +0200)]
Verify the HTTPS support within the system check

2 months agoRemove files for the upgrade 5.5 → 6.0
Alexander Ebert [Sat, 22 Jun 2024 12:08:12 +0000 (14:08 +0200)]
Remove files for the upgrade 5.5 → 6.0

2 months agoAdd a workaround for the migration of the spider data
Alexander Ebert [Sat, 22 Jun 2024 12:07:51 +0000 (14:07 +0200)]
Add a workaround for the migration of the spider data

Fixes #5941

2 months agoRemove files for the upgrade 5.5 → 6.0
Alexander Ebert [Sat, 22 Jun 2024 12:02:34 +0000 (14:02 +0200)]
Remove files for the upgrade 5.5 → 6.0

2 months agoUnify phrases
Marcel Werk [Fri, 21 Jun 2024 14:42:06 +0000 (16:42 +0200)]
Unify phrases

2 months agoAdd a chunk-based progress tracking
Alexander Ebert [Fri, 21 Jun 2024 12:46:27 +0000 (14:46 +0200)]
Add a chunk-based progress tracking

There will be no progress bar if there is only a single chunk to be uploaded.

2 months agoAdd extra buttons to FileProcessorFormField
Cyperghost [Fri, 21 Jun 2024 08:47:51 +0000 (10:47 +0200)]
Add extra buttons to FileProcessorFormField

2 months agoImprove visuals of selects when used in the sidebar
Marcel Werk [Thu, 20 Jun 2024 13:58:05 +0000 (15:58 +0200)]
Improve visuals of selects when used in the sidebar

Closes #5924

2 months agoMove the file list under the input field
Cyperghost [Thu, 20 Jun 2024 11:34:09 +0000 (13:34 +0200)]
Move the file list under the input field

2 months agoCombine the CSS of Attachment and FileProcessorFormField to fileList
Cyperghost [Thu, 20 Jun 2024 11:24:54 +0000 (13:24 +0200)]
Combine the CSS of Attachment and FileProcessorFormField to fileList

2 months ago`\ini_parse_quantity()` is provided by the Symfony polyfill
Alexander Ebert [Thu, 20 Jun 2024 10:50:25 +0000 (12:50 +0200)]
`\ini_parse_quantity()` is provided by the Symfony polyfill

This reintroduces the changes made in 76b16ba4e89a7ff46cc2e1f79a158afc1c5e4c40 which was reverted in 5d52de11b680078012eba04ae983058e6086b7d7 due to a bug in an earlier version of Symphony’s polyfill.

2 months agoAdd `item__` prefix to the css-classname
Cyperghost [Thu, 20 Jun 2024 10:48:50 +0000 (12:48 +0200)]
Add `item__` prefix to the css-classname

2 months agoUpdate the Composer dependencies
Alexander Ebert [Thu, 20 Jun 2024 10:48:35 +0000 (12:48 +0200)]
Update the Composer dependencies

2 months agoAdd lazy loading for the hidden image
Cyperghost [Thu, 20 Jun 2024 10:30:04 +0000 (12:30 +0200)]
Add lazy loading for the hidden image

2 months agoAdd filename and filesize information
Cyperghost [Thu, 20 Jun 2024 10:25:22 +0000 (12:25 +0200)]
Add filename and filesize information
Add image viewer support

2 months agoRemove the other EventListener if one has been executed
Cyperghost [Thu, 20 Jun 2024 09:39:16 +0000 (11:39 +0200)]
Remove the other EventListener if one has been executed

2 months agoDisplay of the replace button only if one file can be uploaded
Cyperghost [Thu, 20 Jun 2024 09:16:19 +0000 (11:16 +0200)]
Display of the replace button only if one file can be uploaded

2 months agoRemove the TODO, this cannot be implemented because the browser only allows the call...
Cyperghost [Thu, 20 Jun 2024 09:14:00 +0000 (11:14 +0200)]
Remove the TODO, this cannot be implemented because the browser only allows the call `....click()` in the case of a `click` event.

2 months agoMerge branch '6.0'
Alexander Ebert [Wed, 19 Jun 2024 12:51:28 +0000 (14:51 +0200)]
Merge branch '6.0'

2 months agoUse this.classPrefix for class name on error message element
Cyperghost [Wed, 19 Jun 2024 10:44:48 +0000 (12:44 +0200)]
Use this.classPrefix for class name on error message element
register the language phrase `wcf.global.button.replace`

2 months agoAdd language item `wcf.global.button.replace`
Cyperghost [Wed, 19 Jun 2024 10:43:31 +0000 (12:43 +0200)]
Add language item `wcf.global.button.replace`

2 months agoRelease 6.0.16 6.0.16
Alexander Ebert [Wed, 19 Jun 2024 10:38:49 +0000 (12:38 +0200)]
Release 6.0.16

2 months agoAdd validation of submitted files
Cyperghost [Wed, 19 Jun 2024 10:38:47 +0000 (12:38 +0200)]
Add validation of submitted files

2 months agoMerge branch '5.5' into 6.0
Alexander Ebert [Wed, 19 Jun 2024 10:37:24 +0000 (12:37 +0200)]
Merge branch '5.5' into 6.0

2 months agoRelease 5.5.22 5.5.22
Alexander Ebert [Wed, 19 Jun 2024 10:31:51 +0000 (12:31 +0200)]
Release 5.5.22

2 months agoMerge branch '5.4' into 5.5
Alexander Ebert [Wed, 19 Jun 2024 10:30:58 +0000 (12:30 +0200)]
Merge branch '5.4' into 5.5

2 months agoRelease 5.4.34 5.4 5.4.34
Alexander Ebert [Wed, 19 Jun 2024 10:23:32 +0000 (12:23 +0200)]
Release 5.4.34

2 months agoFix the missing error message
Alexander Ebert [Wed, 19 Jun 2024 10:23:03 +0000 (12:23 +0200)]
Fix the missing error message

2 months agoCheck for disallowed BB codes in the content
Cyperghost [Mon, 17 Jun 2024 10:27:59 +0000 (12:27 +0200)]
Check for disallowed BB codes in the content

2 months agoSet `addDeleteButton`, `addReplaceButton` and `addButtons` to protected
Cyperghost [Wed, 19 Jun 2024 09:45:25 +0000 (11:45 +0200)]
Set `addDeleteButton`, `addReplaceButton` and `addButtons` to protected

2 months agoFix the check if this is a single file upload
Cyperghost [Wed, 19 Jun 2024 09:42:16 +0000 (11:42 +0200)]
Fix the check if this is a single file upload

2 months agoRename the setter function
Cyperghost [Wed, 19 Jun 2024 09:41:48 +0000 (11:41 +0200)]
Rename the setter function

2 months agoAllow the `FileProcessorFormField` to handle only one file.
Cyperghost [Wed, 19 Jun 2024 09:37:59 +0000 (11:37 +0200)]
Allow the `FileProcessorFormField` to handle only one file.

2 months agoLoad the file(s) when `$this->value` is set
Cyperghost [Wed, 19 Jun 2024 09:09:45 +0000 (11:09 +0200)]
Load the file(s) when `$this->value` is set

2 months agoSet the parameter `$metaData` as optional
Cyperghost [Wed, 19 Jun 2024 09:09:02 +0000 (11:09 +0200)]
Set the parameter `$metaData` as optional

2 months agoMerge pull request #5946 from WoltLab/bugfix/article-bb-code-permission
Olaf Braun [Tue, 18 Jun 2024 17:01:07 +0000 (19:01 +0200)]
Merge pull request #5946 from WoltLab/bugfix/article-bb-code-permission

Check for disallowed BB codes in the content

2 months agoRelease 6.0.15 6.0.15
Alexander Ebert [Tue, 18 Jun 2024 15:38:15 +0000 (17:38 +0200)]
Release 6.0.15

2 months agoShow an error message on upload failed
Cyperghost [Tue, 18 Jun 2024 10:12:00 +0000 (12:12 +0200)]
Show an error message on upload failed

2 months agoHandle replace button clicked
Cyperghost [Tue, 18 Jun 2024 09:55:24 +0000 (11:55 +0200)]
Handle replace button clicked

2 months agoRemove SVG from the list of safe file extensions
Alexander Ebert [Tue, 18 Jun 2024 09:20:32 +0000 (11:20 +0200)]
Remove SVG from the list of safe file extensions

Serving SVG from untrusted sources directly can be a security issue. SVG can contain JavaScript code that is executed when the file is opened in a standalone tab.

2 months agoMerge pull request #5944 from WoltLab/comment-backend-overhaul
Marcel Werk [Mon, 17 Jun 2024 12:52:19 +0000 (14:52 +0200)]
Merge pull request #5944 from WoltLab/comment-backend-overhaul

Comment backend overhaul

2 months agoMerge pull request #5945 from WoltLab/bugfix/signature-attachment
Olaf Braun [Mon, 17 Jun 2024 12:51:04 +0000 (14:51 +0200)]
Merge pull request #5945 from WoltLab/bugfix/signature-attachment

Extra check that the user also has the right to upload attachment when editing a user

2 months agoAdd link to migration guide
Marcel Werk [Mon, 17 Jun 2024 12:50:33 +0000 (14:50 +0200)]
Add link to migration guide

2 months agoMerge pull request #5947 from WoltLab/delete-files-after-attachment-deleted
Olaf Braun [Mon, 17 Jun 2024 12:25:34 +0000 (14:25 +0200)]
Merge pull request #5947 from WoltLab/delete-files-after-attachment-deleted

Also delete the associated file when an attachment is deleted