header("Content-Disposition: attachment; filename=" . getSafeCode($record['file_name'], "utf-8")); $fp = fopen($the_file, 'rb'); fseek($fp, $pos_start); while (!feof($fp)) { $buffer = stream_get_contents($fp, $block_size); $pos_current += $block_size; if ($pos_current >= $pos_end) { echo substr($buffer, 0, $block_size - ($pos_current - $pos_end)); break; } else { echo $buffer; } } fclose($fp); } else { header("HTTP/1.1 200 OK"); header("Content-type: " . $record['file_type']); header("Accept-Ranges: bytes"); header("Accept-Length: " . $record['file_size']); header("Content-Disposition: attachment; filename=" . getSafeCode($record['file_name'], "utf-8")); if (strpos($record['file_type'], "image") === 0 && ($setting['watermark']['mode'] & 2) == 2 && $record['watermark'] == 1) { img_watermark($the_file, ROOT_PATH . "/" . $setting['watermark']['img'], dirname($the_file) . "/cache/" . basename($the_file), $setting['watermark']['position'], array('rate' => $setting['watermark']['img_rate'], 'alpha' => $setting['watermark']['alpha'], 'font' => ROOT_PATH . "/" . $setting['watermark']['txt_font'], 'fontsize' => $setting['watermark']['txt_fontsize'], 'fontcolor' => $setting['watermark']['txt_fontcolor'], 'bgcolor' => $setting['watermark']['txt_bgcolor'])); } else { readfile($the_file); } } } else { $db->close(); header("HTTP/1.0 404 Not Found"); } unset($db);
break; case "export": $log_info = $setting['language']['admin_web_template_export']; require ROOT_PATH . "/source/class/myzip.class.php"; $dir = ROOT_PATH . "/" . $setting['path']['upload'] . "/tmp/"; $zipfile = $dir . "template_" . $idx . ".zip"; @unlink($zipfile); $files = array(); $files[] = $tpl_path . $idx . "/"; $files[] = ROOT_PATH . "/images/" . $idx . "/"; if (zip($files, $zipfile, ROOT_PATH . "/")) { $content = file_get_contents($zipfile); header("Content-type: application/zip"); header("Accept-Ranges: bytes"); header("Accept-Length: " . strlen($content)); header("Content-Disposition: attachment; filename=" . getSafeCode("template_" . $idx . ".zip", "utf-8")); echo $content; } else { showInfo($setting['language']['admin_web_template_export_error']); } break; case "upload": $log_info = $setting['language']['admin_web_template_upload']; if (count($_POST) > 0) { $path_upload = $setting['path']['upload'] . "/tmp/" . date("Ym") . "/"; $upload = new MyUploader(); $upload->init(ROOT_PATH . "/" . $path_upload, true); $upload->DoIt(false); if ($upload->upload_result[0]['error'] == 0) { $theFile = ROOT_PATH . "/" . $path_upload . "/" . $upload->upload_result[0]['new_name']; require ROOT_PATH . "/source/class/myzip.class.php";
unlink("setting/{$mid}_cf_print_en.tpl"); unlink("setting/{$mid}_cf_list_cn.tpl"); unlink("setting/{$mid}_cf_list_en.tpl"); unlink("setting/{$mid}_block_cf_list_cn.tpl"); unlink("setting/{$mid}_block_cf_list_en.tpl"); unlink("setting/{$mid}_mail_cn.tpl"); unlink("setting/{$mid}_mail_en.tpl"); unlink("setting/{$mid}_edit_data.tpl"); unlink("setting/{$mid}_list_data.tpl"); unlink("setting/{$mid}_ext_script.php"); unlink("setting/{$mid}.php"); MultiDel("setting/{$mid}/"); deleteCache("admin_cat"); } $goto_url = $req->getServer("HTTP_REFERER"); $goto_url = getSafeCode($goto_url, $setting['gen']['charset']); break; case "mail": if (function_exists("ext_func")) { ext_func(); } if (!empty($_POST['sender_name'])) { $setting['web']['title'] = $_POST['sender_name']; } if (!empty($_POST['sender_email'])) { $setting['web']['email'] = $_POST['sender_email']; } $mail = $mystep->getInstance("MyEmail", $setting['web']['email'], $setting['gen']['charset']); $mail->addEmail($setting['web']['email'], $setting['web']['title'], "reply"); $mail->setSubject($_POST['subject']); $mail->setContent(str_replace("file.php?mid=", "http://" . $setting['info']['web']['host'] . dirname($_SERVER["PHP_SELF"]) . "/file.php?mid=", $_POST['content']));