/** * Update custom images * * @return void */ protected function updateCustomImages() { $dir = \XLite\Module\XC\ThemeTweaker\Main::getThemeDir() . 'images' . LC_DS; if ($_FILES && $_FILES['new_images'] && $_FILES['new_images']['name']) { if (!\Includes\Utils\FileManager::isExists($dir)) { \Includes\Utils\FileManager::mkdirRecursive($dir); } if (\Includes\Utils\FileManager::isDirWriteable($dir)) { foreach ($_FILES['new_images']['name'] as $i => $data) { \Includes\Utils\FileManager::moveUploadedFileByMultiple('new_images', $i, $dir); } } else { \XLite\Core\TopMessage::addError('The directory {{dir}} does not exist or is not writable.', array('dir' => $dir)); } } $delete = \XLite\Core\Request::getInstance()->delete; if ($delete && is_array($delete)) { foreach ($delete as $file => $del) { if ($del) { \Includes\Utils\FileManager::deleteFile($dir . $file); } } } }
/** * Load from multiple request * * @param string $key Key in $_FILES service array * @param integer $position Position in multiple $_FILES service array * * @return boolean */ public function loadFromMultipleRequest($key, $position) { $path = \Includes\Utils\FileManager::moveUploadedFileByMultiple($key, $position, $this->getStoreFileSystemRoot()); if ($path) { $this->setStorageType(static::STORAGE_RELATIVE); if ('' != $_FILES[$key]['type'][$position]) { $this->setMime($_FILES[$key]['type'][$position]); } if (!$this->savePath($path)) { \Includes\Utils\FileManager::deleteFile($path); $path = null; } } else { \XLite\Logger::getInstance()->log('The file was not loaded', LOG_ERR); } return !empty($path); }