Bug #88539

Form Framework: same filename in different storages not possible

Added by Andreas Kiessling 2 months ago.

Status:
New
Priority:
Should have
Assignee:
-
Category:
Form Framework
Target version:
-
Start date:
2019-06-11
Due date:
% Done:

0%

TYPO3 Version:
8
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

Within a multisite setup, i have several ContactRequest.form.yaml files, one for each domain.
Each domain has an own folder for storing forms.

When i open the Forms backend module, only forms with a unique filename show up
The list is generated through \TYPO3\CMS\Form\Mvc\Persistence\FormPersistenceManager::retrieveYamlFilesFromStorageFolders, but since it iterates over all storage folders, but only uses the filenames to generate the list of forms to show in the module.

https://github.com/TYPO3/TYPO3.CMS/blob/TYPO3_8-7/typo3/sysext/form/Classes/Mvc/Persistence/FormPersistenceManager.php#L390

            $files = $folder->getFiles(
                0,
                0,
                Folder::FILTER_MODE_USE_OWN_AND_STORAGE_FILTERS,
                true
            );
            $filesFromStorageFolders = $filesFromStorageFolders + $files;

Thus the resulting list only consists of files with unique filenames, whereas the full path or hash should be used to distinguish the form definitions
The code seems to be there from the beginning, thus should be fixed in 8.7, 9.5 and master

Also available in: Atom PDF