diff -ru typo3_src-6.2.4.orig/typo3/sysext/core/Classes/Resource/Collection/FolderBasedFileCollection.php typo3_src-6.2.4/typo3/sysext/core/Classes/Resource/Collection/FolderBasedFileCollection.php --- typo3_src-6.2.4.orig/typo3/sysext/core/Classes/Resource/Collection/FolderBasedFileCollection.php 2014-07-08 15:05:31.000000000 +0200 +++ typo3_src-6.2.4/typo3/sysext/core/Classes/Resource/Collection/FolderBasedFileCollection.php 2014-07-16 19:07:15.000000000 +0200 @@ -57,7 +57,11 @@ */ public function loadContents() { if ($this->folder instanceof \TYPO3\CMS\Core\Resource\Folder) { - $entries = $this->folder->getFiles(); + $recursive = FALSE; + if ($this->recursive) { + $recursive = TRUE; + } + $entries = $this->folder->getFiles(0,0,FILTER_MODE_NO_FILTERS,$recursive); foreach ($entries as $entry) { $this->add($entry); } @@ -99,6 +103,7 @@ public function fromArray(array $array) { $this->uid = $array['uid']; $this->title = $array['title']; + $this->recursive = $array['recursive']; $this->description = $array['description']; if (!empty($array['folder']) && !empty($array['storage'])) { /** @var $storageRepository \TYPO3\CMS\Core\Resource\StorageRepository */ diff -ru typo3_src-6.2.4.orig/typo3/sysext/core/Configuration/TCA/sys_file_collection.php typo3_src-6.2.4/typo3/sysext/core/Configuration/TCA/sys_file_collection.php --- typo3_src-6.2.4.orig/typo3/sysext/core/Configuration/TCA/sys_file_collection.php 2014-07-08 15:05:31.000000000 +0200 +++ typo3_src-6.2.4/typo3/sysext/core/Configuration/TCA/sys_file_collection.php 2014-07-16 19:09:09.000000000 +0200 @@ -156,6 +156,14 @@ 'itemsProcFunc' => 'typo3/sysext/core/Classes/Resource/Service/UserFileMountService.php:TYPO3\CMS\Core\Resource\Service\UserFileMountService->renderTceformsSelectDropdown', ) ), + 'recursive' => array( + 'exclude' => 0, + 'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_collection.recursive', + 'config' => array( + 'type' => 'check', + 'default' => 0 + ) + ), 'category' => array( 'exclude' => 0, 'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_collection.category', @@ -179,7 +187,7 @@ 'types' => array( '0' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, title;;1, type, files'), 'static' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, title;;1, type, files'), - 'folder' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, title;;1, type, storage, folder'), + 'folder' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, title;;1, type, storage, folder, recursive'), 'category' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, title;;1, type, category') ), 'palettes' => array( diff -ru typo3_src-6.2.4.orig/typo3/sysext/lang/locallang_tca.xlf typo3_src-6.2.4/typo3/sysext/lang/locallang_tca.xlf --- typo3_src-6.2.4.orig/typo3/sysext/lang/locallang_tca.xlf 2014-07-08 15:05:32.000000000 +0200 +++ typo3_src-6.2.4/typo3/sysext/lang/locallang_tca.xlf 2014-07-16 19:05:21.000000000 +0200 @@ -570,6 +570,9 @@ Folder + + Recursive + Category