public static function zipAddDir($dir, $zip, $internalDir = '') { $dirname = basename($dir); $zip->addEmptyDir($internalDir . $dirname); $internalDir .= $dirname .= '/'; $files = OC_Files::getdirectorycontent($dir); foreach ($files as $file) { $filename = $file['name']; $file = $dir . '/' . $filename; if (OC_Filesystem::is_file($file)) { $tmpFile = OC_Filesystem::toTmpFile($file); OC_Files::$tmpFiles[] = $tmpFile; $zip->addFile($tmpFile, $internalDir . $filename); } elseif (OC_Filesystem::is_dir($file)) { self::zipAddDir($file, $zip, $internalDir); } } }
public function sendFile($sourceDir, $sourceFile, $targetDir, $targetFile) { $source = $sourceDir . '/' . $sourceFile; $tmp = OC_Filesystem::toTmpFile($source); return $this->sendTmpFile($tmp, $targetDir, $targetFile); }