mediaDirectory = $filesystem->getDirectoryRead(DirectoryList::MEDIA); $this->assetRepo = $assetRepo; $this->storeManager = $storeManager; } /** * Get url to preview image * * @param ThemeInterface $theme * @return string */ public function getPreviewImageUrl(ThemeInterface $theme) { return $this->storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA) . self::PREVIEW_DIRECTORY_PATH . '/' . $theme->getPreviewImage(); } /** * Get path to preview image * * @param ThemeInterface $theme * @return string */ public function getPreviewImagePath(ThemeInterface $theme) { return $this->mediaDirectory->getAbsolutePath(self::PREVIEW_DIRECTORY_PATH . '/' . $theme->getPreviewImage()); } /** * Return default themes preview image url * * @return string */ public function getPreviewImageDefaultUrl() { return $this->assetRepo->getUrl(self::DEFAULT_PREVIEW_IMAGE); } /** * Get directory path for preview image * * @return string */ public function getImagePreviewDirectory() { return $this->mediaDirectory->getAbsolutePath(self::PREVIEW_DIRECTORY_PATH); } /** * Temporary directory path to store images * * @return string */ public function getTemporaryDirectory() { return $this->mediaDirectory->getRelativePath('/theme/origin'); } }