diff --git a/lib/Controller/AlbumsController.php b/lib/Controller/AlbumsController.php index d047474b2..c9612b3db 100644 --- a/lib/Controller/AlbumsController.php +++ b/lib/Controller/AlbumsController.php @@ -36,19 +36,29 @@ use OCP\FIles\Node; use OCP\Files\NotFoundException; use OCP\Files\StorageNotAvailableException; +use OCP\IPreview; use OCP\IRequest; class AlbumsController extends Controller { /** @var string */ private $userId; + /** @var IRootFolder */ private $rootFolder; + + /** @var IPreview */ + private $previewManager; + + public function __construct(string $userId, + IRequest $request, + IRootFolder $rootFolder, + IPreview $previewManager) { + parent::__construct(Application::APP_ID, $request); - public function __construct($appName, IRequest $request, string $userId, IRootFolder $rootFolder) { - parent::__construct($appName, $request); $this->userId = $userId; $this->rootFolder = $rootFolder; + $this->previewManager = $previewManager; } /** @@ -102,7 +112,8 @@ private function formatData(iterable $nodes): array { 'lastmod' => $node->getMTime(), 'mime' => $node->getMimetype(), 'size' => $node->getSize(), - 'type' => $node->getType() + 'type' => $node->getType(), + 'hasPreview' => $this->previewManager->isAvailable($node), ]; }