public static function DeleteDir($cDir) { $files = array_diff(scandir($cDir), array('.', '..')); foreach ($files as $file) { is_dir($cDir . "/" . $file) ? scOdt::delDir($cDir . "/" . $file) : unlink($cDir . "/" . $file); } return rmdir($cDir); }
function StartRestore($va) { global $scDb; $nKey = (int) $va['nKey']; $nEnd = (int) $va['nEnd']; $vaTable = unserialize(GetSession("cRestore_File")); $cDir = "./tmp/db_restore/folder/"; if ($nKey == 0) { //ddl if (is_file($cDir . "ddl.scdb")) { include_once $cDir . "ddl.scdb"; } } else { //table $cFile = $vaTable[$nKey - 1]; if (is_file($cFile)) { include_once $cFile; } } $nKey++; if ($nKey < $nEnd) { echo ' console.log("' . $cFile . '") ;onProgress_Restore(' . $nKey . ',' . $nEnd . ') '; } else { echo ' $("#tab_1").find(".cText").html("Compressing") ;'; $cFileName = $cFolder . "scDB_" . date("dmY_his") . ".backup"; scOdt::scZipFile($cFolder, $cFileName); echo ' $("#tab_2").find(".cText").html("Finish") ; $("#tab_2").find(".progress-bar").attr("aria-valuenow","100") ; $("#tab_2").find(".progress-bar").css("width","100%") ; $(".cmdRestore").button("reset") ; '; } }
public static function scScanDir($cLocation, &$zip, $cLocDefault) { $objDir = opendir($cLocation); while (false !== ($cFileName = readdir($objDir))) { $lValid = true; if ($cFileName == ".." || $cFileName == ".") { $lValid = false; } else { if (strpos($cFileName, "~") > -1) { $lValid = false; } } if ($lValid) { $cDir = $cLocation . $cFileName; $cDirSave = str_replace($cLocDefault, "", $cDir); if (is_file($cDir)) { scOdt::scAddFiles($zip, $cDir, $cLocDefault); //echo "Create file {$cDirSave} <br >" ; } else { if (is_dir($cDir)) { $cDir .= "/"; scOdt::scAddDir($zip, $cDirSave); //echo "Create Folder {$cDirSave} <br >" ; //masuk ke dir scOdt::scScanDir($cDir, $zip, $cLocDefault); } } } } }