File size: 2.47Kb
<?php
include "../../lib/functions_class.php";
$action=$_POST['action'];
$name = $_POST['name'];
$id = $_POST['id'];
ini_set('post_max_size', '128M');
ini_set('upload_max_filesize', '128M');
if(isset($_FILES['file'])){
$errors= array();
$file_name = $_FILES['file']['name'];
$file_size = $_FILES['file']['size'];
$file_tmp = $_FILES['file']['tmp_name'];
$file_type = $_FILES['file']['type'];
$file_ext = pathinfo($file_name,PATHINFO_EXTENSION);
if($file_ext != "zip"){
$errors[]="extension not allowed, please choose a JPEG or PNG file.";
}
// if($file_size > 2097152) {
// $errors[]='File size must be excately 2 MB';
// }
if(empty($errors)==true) {
zip_action($file_tmp,$file_name,$DB);
}else{
print_r($errors);
}
}
/*
* PHP Zip - Extract the contents of a zip archive
*/
function zip_action($file_tmp,$file_name,$DB){
$file_directory = "../../themes/".$file_name;
move_uploaded_file($file_tmp,$file_directory);
$zipfile = $file_directory;
$extract_to = "../../themes/";
echo "Please wait uploading.... $filename<br>";
//create a ZipArchive instance
$zip = new ZipArchive;
//open the archive
if ($zip->open($zipfile) === TRUE) {
$fileinfo = $zip->getNameIndex(1);
$filename = pathinfo($fileinfo,PATHINFO_DIRNAME);
//extract contents to /data/ folder
$zip->extractTo($extract_to);
//close the archive
$zip->close();
echo "Upload Completed!<br>";
echo "Opening $filename<br>";
echo "Archive extracted zip<br>";
echo "Installing theme<br>";
echo "Installation Completed!<br>";
$DB->add_themes($filename);
unlink($zipfile);
} else {
echo 'Failed to open the archive!';
echo $expensions;
}
}
//Delete Directory
function delete_directory($dirname) {
if (is_dir($dirname))
$dir_handle = opendir($dirname);
if (!$dir_handle)
return false;
while($file = readdir($dir_handle)) {
if ($file != "." && $file != "..") {
if (!is_dir($dirname."/".$file))
unlink($dirname."/".$file);
else
delete_directory($dirname.'/'.$file);
}
}
closedir($dir_handle);
rmdir($dirname);
return true;
}
if($action == 'active'){
$msg = $DB->activate_themes($id);
echo $msg;
}
if($action == 'delete'){
$file_directory = "../../themes/".$name;
delete_directory($file_directory);
$msg = $DB->delete_themes($id);
echo $name." theme deleted.";
}
?>