@@ -95,13 +95,38 @@ public function __construct(
95
95
*/
96
96
public function renderFileCollection (string $ table , string $ fieldName , array $ row , array $ configuration = []): array
97
97
{
98
- $ this ->configuration = $ configuration ;
99
- $ this ->setMetaDataConfiguration ();
98
+ $ this ->initialize ($ configuration );
100
99
101
100
$ fileCollector = GeneralUtility::makeInstance (FileCollector::class);
102
101
$ fileCollector ->addFilesFromRelation ($ table , $ fieldName , $ row );
103
102
$ files = $ fileCollector ->getFiles ();
104
103
104
+ return $ this ->processFileCollection ($ files );
105
+ }
106
+
107
+ /**
108
+ * @param array $collection The referencing uid of file collections
109
+ * @param array $configuration
110
+ * @return array
111
+ */
112
+ public function renderFilesFromCollection (array $ collection , array $ configuration = []): array
113
+ {
114
+ $ this ->initialize ($ configuration );
115
+ $ fileCollector = GeneralUtility::makeInstance (FileCollector::class);
116
+ $ fileCollector ->addFilesFromFileCollections ($ collection );
117
+ $ files = $ fileCollector ->getFiles ();
118
+
119
+ return $ this ->processFileCollection ($ files );
120
+ }
121
+
122
+ protected function initialize (array $ configuration ): void
123
+ {
124
+ $ this ->configuration = $ configuration ;
125
+ $ this ->setMetaDataConfiguration ();
126
+ }
127
+
128
+ protected function processFileCollection (array $ files ): array
129
+ {
105
130
$ processedFiles = [];
106
131
foreach ($ files as $ file ) {
107
132
$ processedFiles [] = $ this ->getDownloadItem ($ file );
0 commit comments