Export of pages and their layouts to a zip file works. Bug on importing the exported zip file for pages.
This commit is contained in:
@@ -1533,4 +1533,47 @@ function get_webpage_elements($channel, $type = 'all') {
|
||||
return null;
|
||||
}
|
||||
return $elements;
|
||||
}
|
||||
}
|
||||
|
||||
/* creates a compressed zip file */
|
||||
|
||||
function create_zip_file($files = array(), $destination = '', $overwrite = false) {
|
||||
//if the zip file already exists and overwrite is false, return false
|
||||
if (file_exists($destination) && !$overwrite) {
|
||||
return false;
|
||||
}
|
||||
//vars
|
||||
$valid_files = array();
|
||||
//if files were passed in...
|
||||
if (is_array($files)) {
|
||||
//cycle through each file
|
||||
foreach ($files as $file) {
|
||||
//make sure the file exists
|
||||
if (file_exists($file)) {
|
||||
$valid_files[] = $file;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//if we have good files...
|
||||
if (count($valid_files)) {
|
||||
//create the archive
|
||||
$zip = new ZipArchive();
|
||||
if ($zip->open($destination, $overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true) {
|
||||
return false;
|
||||
}
|
||||
//add the files
|
||||
foreach ($valid_files as $file) {
|
||||
$zip->addFile($file, $file);
|
||||
}
|
||||
//debug
|
||||
//echo 'The zip archive contains ',$zip->numFiles,' files with a status of ',$zip->status;
|
||||
//close the zip -- done!
|
||||
$zip->close();
|
||||
|
||||
//check to make sure the file exists
|
||||
return file_exists($destination);
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user