} // make sure file extension is valid if (!$err) { $file_name = $file['name']; $file_ext = file_extension($file_name); if ($file_ext != 'tgz') { $err = 'Unsupported extension: ' . $file_ext; } } // extract the archive to temp directory if (!$err) { set_time_limit(0); $tmp_dir = end_with_slash($tmp_dir); $tmp_path = $tmp_dir . unique_id('archive'); $archive_dir = $tmp_path . '/' . $filename . '/'; if (!extract_archive($file['tmp_name'], $archive_dir)) { $err = 'Could not extract to ' . $archive_dir; } } // move select files from the archive to media directory if (!$err) { switch ($type) { case 'audio': case 'video': // move any soundtrack $frag = 'media/audio.' . $encoder_audio_extension; $media_path = $media_dir . $frag; $archive_path = $archive_dir . $frag; if (file_exists($archive_path)) { if (!safe_path($media_path)) { $err = 'Could not create directories for ' . $media_path;
break; case 'create_folder': create_folder($_POST["name"], rtrim($_POST["to"], '/') . '/'); break; case 'copy': copy_file($_POST["file_name"], rtrim($_POST["from"], "/") . "/", rtrim($_POST['to'], "/") . "/"); break; case 'multiple_copy': copy_multiple_file($_POST["file"], $_POST["folder"], $_POST["folder_name"], rtrim($_POST["from"], "/") . "/", rtrim($_POST['to'], "/") . "/"); break; case 'rename': rename_file($_POST["old_name"], $_POST["new_name"], rtrim($_POST["to"], "/") . '/'); break; case 'remove': delete_file($_POST["name"], rtrim($_POST["from"], "/") . "/"); break; case 'multiple_remove': delete_multiple_file($_POST["file"], $_POST["folder"], rtrim($_POST["from"], "/") . "/"); break; case 'create_archive': create_archive($_POST["archive_name"], rtrim($_POST["to"], '/') . '/', $_POST["extension"], $_POST["files"], $_POST["multiple"]); break; case 'extract_archive': extract_archive($_POST["archive_name"], rtrim($_POST["to"], '/') . '/', $_POST["archive_password"]); break; case 'properties': get_stat($_POST["name"], rtrim($_POST["to"], '/') . '/'); break; default: break; }