Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: #94406 - Override fileFolder TCA configuration with TSconfig #4415

Open
simonschaufi opened this issue Oct 30, 2024 · 0 comments
Open

Comments

@simonschaufi
Copy link
Collaborator

Feature: #94406 - Override fileFolder TCA configuration with TSconfig

https://docs.typo3.org/c/typo3/cms-core/main/en-us/Changelog/11.4/Feature-94406-OverrideFileFolderTCAConfigurationWithTSconfig.html

Feature: #94406 - Override fileFolder TCA configuration with TSconfig

See 94406

Description

The special fileFolder configuration
options

for TCA columns of type select can be used to fill a select field with
files (images / icons) from a defined folder. This is really handy, e.g.
for selecting predefined icons from a corporate icon set. However, in
installations with multiple sites, such icon sets usually differ from
site to site.

Therefore, the fileFolder configuration can now be overridden with
page TSconfig, allowing administrators to easily handle those situations
by e.g. using different folders or allowing different file extensions,
per site.

To streamline both, the TCA configuration and the corresponding
overrides, the fileFolder configuration options have been moved into a
dedicated sub array fileFolderConfig, some options have been renamed:

  • fileFolder option folder
  • fileFolder_extList to allowedExtensions
  • fileFolder_recursions to depth

A TCA migration wizard is available, showing where adjustments have to
take place.

Before:

'aField' => [
   'config' => [
      'type' => 'select',
      'renderType' => 'selectSingle',
      'fileFolder' => 'EXT:my_ext/Resources/Public/Icons',
      'fileFolder_extList' => 'svg',
      'fileFolder_recursions' => 1,
   ]
]

After:

'aField' => [
   'config' => [
      'type' => 'select',
      'renderType' => 'selectSingle',
      'fileFolderConfig' => [
         'folder' => 'EXT:styleguide/Resources/Public/Icons',
         'allowedExtensions' => 'svg',
         'depth' => 1,
      ]
   ]
]

Thus, the following TSconfig options can be used to overriding their TCA
counterpart:

config.fileFolderConfig.folder
config.fileFolderConfig.allowedExtensions
config.fileFolderConfig.depth

As already known from TCEFORM, those options can be used on various
levels

On table level:

TCEFORM.myTable.myField.config.fileFolderConfig.folder

On table and record type level:

TCEFORM.myTable.myFiled.types.myType.config.fileFolderConfig.folder

On flex form field level:

TCEFORM.myTable.pi_flexform.my_ext_pi1.sDEF.myField.config.fileFolderConfig.folder

Note

Except config.fileFolderConfig.folder, the new options can not only
be used to override an existing property, but also to define one,
which has not yet been configured in TCA.

Impact

It's now possible to override the TCA fileFolder configuration options
with page TSconfig, allowing administrators to manipulate the available
items on a page basis.

The fileFolder TCA configuration is furthermore streamlined and now
encapsulated in a dedicated sub array fileFolderConfig.

Backend, TCA, TSConfig, ext:backend

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant