Go to file
Daniel Siepmann e635b66d36
Initialize project (#1)
Provide first implementation with basic setup.
2023-07-03 10:08:33 +02:00
.github/workflows Initialize project (#1) 2023-07-03 10:08:33 +02:00
Classes/Form/FormElement Initialize project (#1) 2023-07-03 10:08:33 +02:00
Configuration/Form Initialize project (#1) 2023-07-03 10:08:33 +02:00
Tests Initialize project (#1) 2023-07-03 10:08:33 +02:00
.gitattributes Initialize project (#1) 2023-07-03 10:08:33 +02:00
.gitignore Initialize project (#1) 2023-07-03 10:08:33 +02:00
.php-cs-fixer.dist.php Initialize project (#1) 2023-07-03 10:08:33 +02:00
composer.json Initialize project (#1) 2023-07-03 10:08:33 +02:00
LICENSE Initial commit 2023-06-06 11:30:13 +02:00
phpstan.neon Initialize project (#1) 2023-07-03 10:08:33 +02:00
phpunit.xml.dist Initialize project (#1) 2023-07-03 10:08:33 +02:00
README.rst Initialize project (#1) 2023-07-03 10:08:33 +02:00
shell.nix Initialize project (#1) 2023-07-03 10:08:33 +02:00

TYPO3 Extension Form File Collection

Adds new EXT:form element used to render a file collection allowing the visitor to choose files.

Concept

The form element will fetch the configured file collection and assign proper options based on the contained files. That allows using existing templates that allow to select a single or multiple options.

EXT:form integration

The provided Configuration needs to be loaded via TypoScript. Use a free identifier:

plugin.tx_form.settings.yamlConfigurations {
    80 = EXT:form_file_collection/Configuration/Form/Setup.yaml
}

This will register a new form element type FileCollection that can be used like this:

-
  type: FileCollection
  identifier: file-collection-1
  label: 'File Collection'
  properties:
    fileCollection:
      # UID of the sys_file_collection to use
      uid: 1
      # Optional, default is identifier
      # Defines the property to use as value for form element.
      valueProperty: 'identifier'
      # Optional, default is identifier
      # Defines the property to use as label for form element.
      labelProperty: 'identifier'

No template is configured by default, choose one of the existing ones or provide your own:

TYPO3:
  CMS:
    Form:
      prototypes:
        standard:
          formElementsDefinition:
            FileCollection:
              renderingOptions:
                # Allows to switch between different rendering like "Checkbox", "MultiCheckbox" or "RadioButton", etc.
                templateName: 'MultiCheckbox'

Example

A concrete example can be found within Tests/Fixtures/form_file_collection_example.