From 34b6b1528c3ceb14f95513fc26f249eb985e7823 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sat, 12 Aug 2017 18:35:16 +0200 Subject: [PATCH] Show collection file list --- Controller.php | 10 +++++++++- Models/Collection.php | 27 ++++++++++++++++++++++++++- Theme/Backend/media-single.tpl.php | 12 ++++++++---- 3 files changed, 43 insertions(+), 6 deletions(-) diff --git a/Controller.php b/Controller.php index 8e1217b..76b84fc 100644 --- a/Controller.php +++ b/Controller.php @@ -16,6 +16,9 @@ namespace Modules\Media; use Modules\Media\Models\Media; use Modules\Media\Models\MediaMapper; +use Modules\Media\Models\CollectionMapper; +use Modules\Media\Models\Collection; + use Modules\Media\Models\UploadFile; use Modules\Media\Models\UploadStatus; use phpOMS\Asset\AssetType; @@ -133,7 +136,12 @@ class Controller extends ModuleAbstract implements WebInterface $view->setTemplate('/Modules/Media/Theme/Backend/media-single'); $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1000401001, $request, $response)); - $view->addData('media', MediaMapper::get($request->getData('id'))); + $media = MediaMapper::get($request->getData('id')); + if($media->getExtension() === 'collection') { + $media = CollectionMapper::get($media->getId()); + } + + $view->addData('media', $media); return $view; } diff --git a/Models/Collection.php b/Models/Collection.php index 431d8f9..2e4deaa 100644 --- a/Models/Collection.php +++ b/Models/Collection.php @@ -23,7 +23,7 @@ namespace Modules\Media\Models; * @link http://orange-management.com * @since 1.0.0 */ -class Collection extends Media +class Collection extends Media implements \Iterator { /** @@ -95,4 +95,29 @@ class Collection extends Media public function setVersioned(bool $versioned) { } + + public function rewind() + { + reset($this->sources); + } + + public function current() + { + return current($this->sources); + } + + public function key() + { + return key($this->sources); + } + + public function next() + { + next($this->sources); + } + + public function valid() + { + return current($this->sources) !== false; + } } diff --git a/Theme/Backend/media-single.tpl.php b/Theme/Backend/media-single.tpl.php index 3e75f03..f19e606 100644 --- a/Theme/Backend/media-single.tpl.php +++ b/Theme/Backend/media-single.tpl.php @@ -30,21 +30,25 @@ echo $this->getData('nav')->render(); SizegetSize(), ENT_COMPAT, 'utf-8'); ?> Created atgetCreatedAt()->format('Y-m-d'), ENT_COMPAT, 'utf-8'); ?> - Created bygetCreatedBy(), ENT_COMPAT, 'utf-8'); ?> + Created bygetCreatedBy()->getName1(), ENT_COMPAT, 'utf-8'); ?> DescriptiongetDescription(), ENT_COMPAT, 'utf-8'); ?> Content getExtension()) === \phpOMS\System\File\ExtensionType::IMAGE) : ?>
getExtension() === 'collection') : ?> - collection +
                     getPath()));
+                    $output = file_get_contents(__DIR__ . '/../../../../' . $media->getPath());
                     $output = str_replace(["\r\n", "\r"], "\n", $output);
                     $output = explode("\n", $output);
-                    foreach($output as $line) : ?>
+                    foreach($output as $line) : ?>