![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/cartforge.co/vendor/magento/module-theme/Model/Theme/Image/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Theme\Model\Theme\Image; use Magento\Framework\App\Filesystem\DirectoryList; use Magento\Framework\View\Design\ThemeInterface; /** * Theme Image Path */ class Path implements \Magento\Framework\View\Design\Theme\Image\PathInterface { /** * Default theme preview image */ public const DEFAULT_PREVIEW_IMAGE = 'Magento_Theme::theme/default_preview.jpg'; /** * @var \Magento\Framework\Filesystem\Directory\ReadInterface */ protected $mediaDirectory; /** * @var \Magento\Framework\View\Asset\Repository */ protected $assetRepo; /** * @var \Magento\Store\Model\StoreManagerInterface */ protected $storeManager; /** * Initialize dependencies * * @param \Magento\Framework\Filesystem $filesystem * @param \Magento\Framework\View\Asset\Repository $assetRepo * @param \Magento\Store\Model\StoreManagerInterface $storeManager */ public function __construct( \Magento\Framework\Filesystem $filesystem, \Magento\Framework\View\Asset\Repository $assetRepo, \Magento\Store\Model\StoreManagerInterface $storeManager ) { $this->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->getAbsolutePath('theme/origin'); } }