1
0
mirror of https://github.com/flextype/flextype.git synced 2025-08-08 06:06:45 +02:00

feat(media): MediaFolders updates

- fix directory scan depth
- add new basname field
- add new dirname field
This commit is contained in:
Awilum
2021-02-04 17:29:38 +03:00
parent cffa9e56f7
commit cda6a7c559

View File

@@ -53,6 +53,11 @@ class MediaFolders
$result = [];
if (filesystem()->directory(flextype('media')->folders()->meta()->getDirectoryMetaLocation($id))->exists()) {
$id = trim($id, '/');
$result['basename'] = basename($id);
$result['dirname'] = dirname($id);
$result['path'] = $id;
$result['full_path'] = str_replace('/.meta', '', flextype('media')->folders()->meta()->getDirectoryMetaLocation($id));
$result['url'] = 'project/media/' . $id;
@@ -75,15 +80,15 @@ class MediaFolders
isset($options['collection']) &&
strings($options['collection'])->isTrue()
) {
$result = [];
$result = [];
foreach (filesystem()->find()->directories()->in(flextype('media')->folders()->meta()->getDirectoryMetaLocation($id)) as $folder) {
foreach (filesystem()->find()->directories()->depth(0)->in(flextype('media')->folders()->meta()->getDirectoryMetaLocation($id)) as $folder) {
$result[$folder->getFilename()] = $single($id . '/' . $folder->getFilename(), [])->toArray();
}
$result = filter($result, $options);
$result = filter($result, $options);
return arrays($result);
return arrays($result);
}
return $single($id, $options);