tools 삭제

git-svn-id: http://xe-core.googlecode.com/svn/sandbox@4884 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
ngleader 2008-11-18 08:06:55 +00:00
parent 4d48a462d8
commit 2fee4bf3be
23 changed files with 0 additions and 453 deletions

View file

@ -1,16 +0,0 @@
<?php
/**
* @file tools/blank_cache.php
* @author zero <zero@zeroboard.com>
* @brief 첨부파일 디렉토리의 디렉토리 삭제
**/
// 인증이 되지 않은 접근이면 종료
if(!defined('__XE_TOOL_AUTH__') || !__XE_TOOL_AUTH__) exit();
// 캐시 파일 제거
FileHandler::removeBlankDir(_XE_PATH_.'files');
$output = Context::getLang('success_deleted');
Context::set('output', $output);
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->blank_cleaner = 'Remove Empty Directories';
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->blank_cleaner = '空きディレクトリの削除';
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->blank_cleaner = '빈디렉토리 삭제';
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->blank_cleaner = '删除空文件夹';
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->blank_cleaner = '移除空的資料夾';
?>

View file

@ -1,17 +0,0 @@
<?php
/**
* @file tools/clear_cache.php
* @author zero <zero@zeroboard.com>
* @brief XE 캐시파일 불필요한 파일 정리
**/
// 인증이 되지 않은 접근이면 종료
if(!defined('__XE_TOOL_AUTH__') || !__XE_TOOL_AUTH__) exit();
// 캐시 파일 제거
$oAdminController = &getAdminController('admin');
$oAdminController->procAdminRecompileCacheFile();
$output = Context::getLang('success_reset');
Context::set('output', $output);
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->cache_cleaner = 'Recreat Cache File';
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->cache_cleaner = 'キャッシュファイル再生成';
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->cache_cleaner = '캐시파일 재생성';
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->cache_cleaner = '重新生成缓冲文件';
?>

View file

@ -1,3 +0,0 @@
<?php
$lang->cache_cleaner = '重新建立暫存檔';
?>

View file

@ -1,65 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="Generator" content="XE" />
<title>XE Tools</title>
{@ $js_files = Context::getJsFile() }
<!--@foreach($js_files as $key => $js_file)-->
<!--@if($js_file['targetie'])-->
<!--[if {$js_file['targetie']}]>
<!--@end-->
<script type="text/javascript" src="{$js_file['file']}"></script>
<!--@if($js_file['targetie'])-->
<![endif]-->
<!--@end-->
<!--@end-->
{@ $css_files = Context::getCssFile() }
<!--@foreach($css_files as $key => $css_file)-->
<!--@if($css_file['targetie'])-->
<!--[if {$css_file['targetie']}]>
<!--@end-->
<link rel="stylesheet" href="{$css_file['file']}" type="text/css" charset="UTF-8" media="{$css_file['media']}" />
<!--@if($css_file['targetie'])-->
<![endif]-->
<!--@end-->
<!--@end-->
<link rel="stylesheet" href="./style.css" type="text/css" charset="UTF-8" media="all" />
</head>
<body>
<h1>XE Tools</h1>
<hr />
<!--@if($msg)-->
<blockquote class="message">{$msg}</blockquote>
<!--@end-->
<form action="./index.php" method="post">
<div class="tools">
<code>
<!--@foreach($tools as $key => $title)-->
<label for="title_{$key}"><input type="radio" name="tool" value="{$key}" id="title_{$key}" <!--@if($key==$tool)-->checked="checked"<!--@end--> /> {$title}</label>
<!--@end-->
</code>
</div>
<div class="auth">
<code>
<label for="db_id">{$lang->db_userid}</label>
<input type="text" id="db_id" name="id" value="{$id}" />
</code>
<code>
<label for="db_pw">{$lang->db_password}</label>
<input type="password" id="db_pw" name="pw" value="" />
</code>
<input type="submit" value="{$lang->cmd_input}" class="submit"/>
</div>
</form>
<!--@if($output)-->
<blockquote class="output">{$output}</blockquote>
<!--@end-->
</body>
</html>

View file

@ -1,66 +0,0 @@
<?php
/**
* @file tools/index.php
* @author zero <zero@zeroboard.com>
* @brief 각종 tools 목록을 보여주기 인증 시도
**/
/**
* @brief 기본적인 상수 선언, 웹에서 직접 호출되는 것을 막기 위해 체크하는 상수 선언
**/
define('__ZBXE__', true);
/**
* @brief 필요한 설정 파일들을 include
**/
require_once('../config/config.inc.php');
// id/ password/ tool 구함
$id = $_POST['id'];
$pw = $_POST['pw'];
$tool = $_POST['tool'];
// 저장되어 있는 비밀번호와 비교
$oContext = &Context::getInstance();
$oContext->init();
$db_info = $oContext->getDBInfo();
// 툴 목록을 구하고 언어파일 로그, 변수 설정
Context::loadLang(_XE_PATH_.'modules/install/lang');
$list = FileHandler::readDir(_XE_PATH_.'tools/');
$filters = array('index.php','style.css','form.html');
for($i=0;$i<count($list);$i++) {
if(in_array($list[$i], $filters)) continue;
Context::loadLang(_XE_PATH_.'tools/'.$list[$i].'/lang');
$tools[$list[$i]] = Context::getLang($list[$i]);
}
Context::set('tools', $tools);
// 설치가 되어 있지 않을 경우
if(!Context::isInstalled()) {
$msg = Context::getLang('msg_db_not_setted');
// 인증 정보가 없을 경우
} elseif(!isset($id) || !isset($pw)) {
// 입력된 정보와 저장된 정보 비교
} else if($id !== $db_info->db_userid || $pw !== $db_info->db_password) {
if(!$tool) $msg = Context::getLang('msg_not_founded');
elseif($id !== $db_info->db_userid) $msg = sprintf($lang->filter->equalto, Context::getLang('user_id'));
else $msg = sprintf($lang->filter->equalto, Context::getLang('password'));
// tool 실행
} else if($id === $db_info->db_userid && $pw === $db_info->db_password) {
define('__XE_TOOL_AUTH__', true);
include(_XE_PATH_.'tools/'.$tool.'/'.$tool.'.php');
}
Context::set('msg', $msg);
$oTemplate = &TemplateHandler::getInstance();
print $oTemplate->compile('./tools','form');
?>

View file

@ -1,27 +0,0 @@
body { margin:10px !important; }
h1 { font-size:1.5em; font-family:tahoma; margin:0; padding:0; }
hr { border:none; border-top:1px solid #555555; border-bottom:1px solid #888888; margin:0; margin-bottom:10px; padding:0; }
blockquote.message { border:2px solid red; color:red; margin:0 0 10px 0; padding:10px; font-size:9pt; font-weight:bold; clear:both; }
blockquote.output { border:2px solid blue; margin:10px 0 0 0; padding:10px; font-size:9pt; font-weight:bold; clear:both; }
form { margin:0; padding:0; clear:both; overflow:hidden; }
div.tools { float:left; margin-right:20px; padding-right:20px; border-right:1px dotted #AAAAAA; }
div.tools code label { display:block; white-space:nowrap; margin-bottom:5px; font-size:9pt; }
div.tools code label input { display:inline; }
div.auth { float:left; }
div.auth code label { font-size:9pt; }
div.auth code { display:block; clear:both; margin-bottom:10px;}
div.auth code label { float:left; display:block; width:100px; }
div.auth code input { display:block; width:150px; border:1px solid #AAAAAA; }
div.auth input.submit { width:252px; border:1px solid #AAAAAA;}
div.back { font-size:9pt; text-align:right; margin-bottom:10px; }
div.back a { text-decoration:none; color:#888888; }
table { width:100%; border:none; font-size:9pt; background-color:#CCCCCC; }
table thead th { background-color:#EFEFEF; padding:3px 0 3px 0; }
table tbody th { background-color:#F3F3F3; vertical-align:top; color:#888888; padding:3px 0 3px 0; }
table tbody td { background-color:#FFFFFF; font-family:verdana; padding:3px; }

View file

@ -1,14 +0,0 @@
<?php
$lang->validator = 'Validator';
$lang->msg_cannot_get_source_files = 'Could not download original files';
$lang->msg_cannot_get_target_files = 'Could not get installed target list';
$lang->files_count = 'Number of Files';
$lang->source_files = 'Original File';
$lang->target_files = 'Target File';
$lang->leaveout_files = 'Omitted File';
$lang->modified_files = 'Modified File';
$lang->additional_files = 'Added File';
?>

View file

@ -1,14 +0,0 @@
<?php
$lang->validator = 'インストールファイルの検証';
$lang->msg_cannot_get_source_files = 'オリジナルファイルのダウンロードが出来ませんでした。';
$lang->msg_cannot_get_target_files = 'インストールされた対象ファイルのリスト読み取りが出来ませんでした。';
$lang->files_count = 'ファイル数';
$lang->source_files = 'オリジナルファイル';
$lang->target_files = '対象ファイル';
$lang->leaveout_files = '省略されたファイル';
$lang->modified_files = '修正されたファイル';
$lang->additional_files = '追加されたファイル';
?>

View file

@ -1,14 +0,0 @@
<?php
$lang->validator = '설치파일 검증';
$lang->msg_cannot_get_source_files = '원본 파일을 다운로드 하지 못했습니다';
$lang->msg_cannot_get_target_files = '설치된 대상 파일의 목록을 구하지 못했습니다';
$lang->files_count = '파일 수';
$lang->source_files = '원본 파일';
$lang->target_files = '대상 파일';
$lang->leaveout_files = '누락된 파일';
$lang->modified_files = '수정된 파일';
$lang->additional_files = '추가된 파일';
?>

View file

@ -1,14 +0,0 @@
<?php
$lang->validator = '检测安装文件';
$lang->msg_cannot_get_source_files = '没能下载原版文件。';
$lang->msg_cannot_get_target_files = '没能读取安装文件目录。';
$lang->files_count = '文件数';
$lang->source_files = '原版文件';
$lang->target_files = '对象文件';
$lang->leaveout_files = '遗漏的文件';
$lang->modified_files = '修改过的文件';
$lang->additional_files = '添加的文件';
?>

View file

@ -1,14 +0,0 @@
<?php
$lang->validator = '安裝檔案驗證';
$lang->msg_cannot_get_source_files = '無法下載原始檔';
$lang->msg_cannot_get_target_files = '無法獲得安裝目標清單';
$lang->files_count = '檔案數量';
$lang->source_files = '原始檔案';
$lang->target_files = '目標檔案';
$lang->leaveout_files = '省略檔案';
$lang->modified_files = '修改檔案';
$lang->additional_files = '新增檔案';
?>

View file

@ -1,5 +0,0 @@
table { width:100%; border:none; font-size:9pt; background-color:#CCCCCC; }
table thead th { background-color:#EFEFEF; padding:3px 0 3px 0; }
table tbody th { background-color:#F3F3F3; vertical-align:top; color:#888888; padding:3px 0 3px 0; }
table tbody td { font-weight:normal; background-color:#FFFFFF; font-family:verdana; padding:3px; }

View file

@ -1,55 +0,0 @@
<table>
<thead>
<tr>
<th>&nbsp;</th>
<th>{$lang->source_files}</th>
<th>{$lang->target_files}</th>
</tr>
</thead>
<tbody>
<tr>
<th>{$lang->current_version}</th>
<td colspan="2">{__ZBXE_VERSION__}</td>
</tr>
<tr>
<th>{$lang->released_version}</th>
<td colspan="2"><a href="{$download_link}" onclick="window.open(this.href);return false;">{$released_version}</a></td>
</tr>
<tr>
<th>{$lang->current_path}</th>
<td colspan="2">{_XE_PATH_}</td>
</tr>
<tr>
<th>{$lang->files_count}</th>
<td>{$source_cnt}</td>
<td>{$target_cnt}</td>
</tr>
<tr>
<th>{$lang->leaveout_files} ({count($leaveouts)})</th>
<td>
<!--@foreach($leaveouts as $val)-->
{$val}<br />
<!--@end-->
</td>
<td></td>
</tr>
<tr>
<th>{$lang->modified_files} ({count($modified)})</th>
<td>&nbsp;</td>
<td>
<!--@foreach($modified as $val)-->
{$val}<br />
<!--@end-->
</td>
</tr>
<tr>
<th>{$lang->additional_files} ({count($added)})</th>
<td>&nbsp;</td>
<td>
<!--@foreach($added as $val)-->
{$val}<br />
<!--@end-->
</td>
</tr>
</tbody>
</table>

View file

@ -1,102 +0,0 @@
<?php
/**
* @file tools/validator.php
* @author zero <zero@zeroboard.com>
* @brief 현재 설치된 버전에 해당하는 XE 파일 비교
**/
// 인증이 되지 않은 접근이면 종료
if(!defined('__XE_TOOL_AUTH__') || !__XE_TOOL_AUTH__) exit();
// 언어파일을 로드
Context::loadLang(_XE_PATH_.'modules/admin/lang');
// 현재 버전을 구함
$ver = __ZBXE_VERSION__;
// 현재 버전에 맞는 배포 정보를 구함
$header = "GET /validatorLogs/{$ver}.log HTTP/1.0\r\nHost: news.zeroboard.com\r\n\r\n";
$is_started = false;
$f = fsockopen('news.zeroboard.com', 80);
fputs($f, $header);
while($buff = fgets($f, 1024)) {
if(!trim($buff)) $is_started = true;
if($is_started && trim($buff)) {
$buff = trim($buff);
$pos = strpos($buff,',');
$size = (int)substr($buff,0,$pos);
$filename = substr($buff,$pos+1);
if($filename && $size) $source[$filename] = $size;
}
}
fclose($f);
if(!count($source)) $output = Context::getLang('msg_cannot_get_source_files');
else {
// 현재 설치된 디렉토리와 비교
$avoid_path = array(_XE_PATH_.'files');
getFiles(_XE_PATH_, _XE_PATH_, $avoid_path, $target);
if(!count($target)) $output = Context::getLang('msg_cannot_get_target_files');
else {
// 파일 수를 지정
Context::set('source_cnt', count($source));
Context::set('target_cnt', count($target));
// 최신 버전 정보 구함
$oAdminView = &getAdminView('admin');
$oAdminView->dispAdminIndex();
// 누락된 파일 구함
$leaveouts = array();
foreach($source as $key => $val) {
if(!isset($target[$key])) $leaveouts[] = $key;
}
Context::set('leaveouts', $leaveouts);
// 수정된 파일 구함
$modified = array();
foreach($source as $key => $val) {
if(isset($target[$key]) && $val!=$target[$key]) $modified[] = $key;
}
Context::set('modified', $modified);
// 추가된 파일 구함
$added = array();
foreach($target as $key => $val) {
if(!isset($source[$key])) $added[] = $key;
}
Context::set('added', $added);
// CSS 지정
Context::addCssFile('./validator/style.css', false);
// 결과물을 구함
$oTemplate = &TemplateHandler::getInstance();
$output = $oTemplate->compile('./tools/validator/','validator');
}
}
Context::set('output', $output);
// recursive하게 돌면서 파일 정보 수집
function getFiles($path, $base_path, $avoid_path, &$buff) {
if(substr($path,-1)=='/') $path = substr($path,0,-1);
if(substr($base_path,-1)=='/') $base_path = substr($base_path,0,-1);
if(in_array($path, $avoid_path)) return;
$oDir = @dir($path);
if($oDir) {
while($item = $oDir->read()) {
if(substr($item,0,1)=='.' && $item != '.htaccess' ) continue;
$new_path = $path.'/'.$item;
if(!is_dir($new_path)) {
$filesize = filesize($new_path);
$filename = substr($new_path, strlen($base_path)+1);
$buff[$filename] = $filesize;
} else {
getFiles($new_path, $base_path, $avoid_path, $buff);
}
}
$oDir->close();
}
}
?>