/** * Load from URL * * @param string $url URL * @param boolean $copy2fs Copy file to file system or not OPTIONAL * * @return boolean */ public function loadFromURL($url, $copy2fs = false) { $result = $this->isURL($url); if ($result) { $name = basename(parse_url($url, PHP_URL_PATH)); if ($copy2fs) { $file = \XLite\Core\Operator::getURLContent($url); $result = !empty($file); if ($result) { $tmp = LC_DIR_TMP . $name; $result = \Includes\Utils\FileManager::write($tmp, $file); if ($result) { $result = $this->loadFromLocalFile($tmp); } else { \XLite\Logger::getInstance()->log('Unable to write data to file \'' . $tmp . '\'.', LOG_ERR); } if ($result) { \Includes\Utils\FileManager::deleteFile($tmp); } } else { \XLite\Logger::getInstance()->log('Unable to get at the contents of \'' . $url . '\'.', LOG_ERR); } } else { $savedPath = $this->getPath(); $this->setPath($url); $this->setFileName($name); $result = $this->renew(); if ($result) { $this->removeFile($savedPath); $this->setStorageType(static::STORAGE_URL); } } } return $result; }
/** * "URL" handler for category images. * Returns path of the temporary file * fixme: $path is undefined * * @return void */ protected function doActionSelectUrlLanguageFile() { $result = null; $url = \XLite\Core\Request::getInstance()->url; $content = \XLite\Core\Operator::getURLContent($url); $path = \Includes\Utils\FileManager::getUniquePath(LC_DIR_TMP, basename($path)); if ($content && file_put_contents($path, $content)) { $result = $path; } $this->doActionSelectLanguageFile($result); }
/** * Load import file from URL * * @param string $url URL * * @return string */ protected function loadFromURLImport($url) { $result = null; $content = \XLite\Core\Operator::getURLContent($url); $path = \Includes\Utils\FileManager::getUniquePath(LC_DIR_TMP, basename($path)); if ($content && file_put_contents($path, $content)) { $result = $path; } return $result; }