View file iblog/admin/controller/themes_ajax.php

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.";
}
?>