/** * Constructor * * @param Magento_Filesystem $filesystem * @param array $data */ public function __construct(Magento_Filesystem $filesystem, array $data = array()) { $this->_filesystem = $filesystem; $this->_filesystem->setIsAllowCreateDirectories(true); $this->_filesystem->setWorkingDirectory($this->getHelper()->getStorageRoot()); parent::__construct($data); }
/** * Constructor * * @param Magento_Filesystem $filesystem */ public function __construct(Magento_Filesystem $filesystem) { $this->_filesystem = $filesystem; $this->_filesystem->setIsAllowCreateDirectories(true); $this->_filesystem->ensureDirectoryExists($this->getStorageRoot()); $this->_filesystem->setWorkingDirectory($this->getStorageRoot()); }
/** * @param Mage_Core_Model_Event_Manager $eventDispatcher * @param Mage_Core_Model_Cache $cacheManager * @param Magento_Filesystem $filesystem * @param Mage_Core_Model_Resource_Abstract $resource * @param Varien_Data_Collection_Db $resourceCollection * @param array $data */ public function __construct(Mage_Core_Model_Event_Manager $eventDispatcher, Mage_Core_Model_Cache $cacheManager, Magento_Filesystem $filesystem, Mage_Core_Model_Resource_Abstract $resource = null, Varien_Data_Collection_Db $resourceCollection = null, array $data = array()) { parent::__construct($eventDispatcher, $cacheManager, $resource, $resourceCollection, $data); $baseDir = Mage::getSingleton('Mage_Catalog_Model_Product_Media_Config')->getBaseMediaPath(); $this->_filesystem = $filesystem; $this->_filesystem->setIsAllowCreateDirectories(true); $this->_filesystem->ensureDirectoryExists($baseDir); $this->_filesystem->setIsAllowCreateDirectories(false); $this->_filesystem->setWorkingDirectory($baseDir); }
/** * @param Magento_Filesystem $filesystem * @param Mage_Core_Helper_File_Storage_Database $dbHelper * @param Mage_Core_Helper_Data $helper * @param Mage_Core_Model_Logger $log */ public function __construct(Magento_Filesystem $filesystem, Mage_Core_Helper_File_Storage_Database $dbHelper, Mage_Core_Helper_Data $helper, Mage_Core_Model_Logger $log) { $this->_dbHelper = $dbHelper; $this->_helper = $helper; $this->_logger = $log; $this->_filesystem = $filesystem; $this->_filesystem->setIsAllowCreateDirectories(true); $this->_filesystem->ensureDirectoryExists($this->getMediaBaseDirectory()); $this->_filesystem->setWorkingDirectory($this->getMediaBaseDirectory()); }
/** * Constructor to inject dependencies * * @param Magento_Filesystem $filesystem * @param array $data */ public function __construct(Magento_Filesystem $filesystem, $data = array()) { if (isset($data['resourceModel'])) { $this->_resourceModel = $data['resourceModel']; } $this->_filesystem = $filesystem; $this->_filesystem->setIsAllowCreateDirectories(true); $this->_filesystem->setWorkingDirectory(Mage::getBaseDir('media')); $this->_baseMediaPath = $this->_getConfig()->getBaseMediaPath(); $this->_baseTmpMediaPath = $this->_getConfig()->getBaseTmpMediaPath(); $this->_filesystem->ensureDirectoryExists($this->_baseMediaPath); $this->_filesystem->ensureDirectoryExists($this->_baseTmpMediaPath); }
/** * Set collection specific parameters and make sure backups folder will exist * * @param Magento_Filesystem $filesystem */ public function __construct(Magento_Filesystem $filesystem) { parent::__construct(); $this->_baseDir = Mage::getBaseDir('var') . DS . 'backups'; $this->_filesystem = $filesystem; $this->_filesystem->setIsAllowCreateDirectories(true); $this->_filesystem->ensureDirectoryExists($this->_baseDir); $this->_filesystem->setWorkingDirectory($this->_baseDir); $this->_hideBackupsForApache(); // set collection specific params $extensions = Mage::helper('Mage_Backup_Helper_Data')->getExtensions(); foreach ($extensions as $value) { $extensions[] = '(' . preg_quote($value, '/') . ')'; } $extensions = implode('|', $extensions); $this->setOrder('time', self::SORT_ORDER_DESC)->addTargetDir($this->_baseDir)->setFilesFilter('/^[a-z0-9\\-\\_]+\\.' . $extensions . '$/')->setCollectRecursively(false); }
/** * Get captcha image directory * * @param mixed $website * @return string */ public function getImgDir($website = null) { $mediaDir = $this->_config->getOptions()->getDir('media'); $captchaDir = Magento_Filesystem::getPathFromArray(array($mediaDir, 'captcha', $this->_app->getWebsite($website)->getCode())); $this->_filesystem->setWorkingDirectory($mediaDir); $this->_filesystem->setIsAllowCreateDirectories(true); $this->_filesystem->ensureDirectoryExists($captchaDir, 0755); return $captchaDir . Magento_Filesystem::DIRECTORY_SEPARATOR; }
/** * Saves uploaded by Mage_Core_Model_File_Uploader file to DB with existence tests * * param $result should be result from Mage_Core_Model_File_Uploader::save() method * Checks in DB, whether uploaded file exists ($result['file']) * If yes, renames file on FS (!!!!!) * Saves file with unique name into DB * If passed file exists returns new name, file was renamed to (in the same context) * Otherwise returns $result['file'] * * @param array $result * @return string */ public function saveUploadedFile($result = array()) { if ($this->checkDbUsage()) { $path = rtrim(str_replace(array('\\', '/'), DS, $result['path']), DS); $file = '/' . ltrim($result['file'], '\\/'); $uniqueResultFile = $this->getUniqueFilename($path, $file); if ($uniqueResultFile !== $file) { $this->_filesystem->setWorkingDirectory($path); $this->_filesystem->rename($path . $file, $path . $uniqueResultFile); } $this->saveFile($path . $uniqueResultFile); return $uniqueResultFile; } else { return $result['file']; } }
/** * Get themes root directory absolute path * * @return string */ protected function _getPreviewImagePublishedRootDir() { /** @var $design Mage_Core_Model_Design_Package */ $design = $this->_objectManager->get('Mage_Core_Model_Design_Package'); $dirPath = $design->getPublicDir(); $this->_filesystem->setIsAllowCreateDirectories(true); $this->_filesystem->ensureDirectoryExists($dirPath); $this->_filesystem->setWorkingDirectory($dirPath); return $dirPath; }
/** * @dataProvider searchFilesIsolationDataProvider * @param string $workingDirectory * @param string $baseDirectory * @param string $pattern * @param string $expectedMessage */ public function testSearchFilesIsolation($workingDirectory, $baseDirectory, $pattern, $expectedMessage) { $adapterMock = $this->getMock('Magento_Filesystem_AdapterInterface'); $adapterMock->expects($this->once())->method('isDirectory')->with($workingDirectory)->will($this->returnValue(true)); $filesystem = new Magento_Filesystem($adapterMock); $filesystem->setWorkingDirectory($workingDirectory); $this->setExpectedException('InvalidArgumentException', $expectedMessage); $filesystem->searchKeys($baseDirectory, $pattern); }