From 26a8572bde5d48a6053227ced91eb768a14bc9ce Mon Sep 17 00:00:00 2001 From: xia0ta0 Date: Fri, 2 Aug 2013 10:24:03 +0800 Subject: [PATCH 01/11] * fix bug for set flow. --- module/admin/control.php | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/module/admin/control.php b/module/admin/control.php index 10789455da..8924d8ee02 100644 --- a/module/admin/control.php +++ b/module/admin/control.php @@ -192,12 +192,9 @@ class admin extends control { if($_POST) { + if($this->post->flow != 'full') die(js::locate($this->createLink('extension', 'install', "extension={$this->post->flow}"), 'parent')); - if($this->post->flow != 'full') - { - $this->loadModel('setting')->setItem('system.common.global.flow', 'full'); - die(js::locate($this->createLink('extension', 'install', "extension={$this->post->flow}"), 'parent')); - } + $this->loadModel('setting')->setItem('system.common.global.flow', 'full'); die(js::reload( 'parent.parent')); } $this->display(); From 01dd3ac526c69e760b4b8dc04cbcae7af28485a1 Mon Sep 17 00:00:00 2001 From: wyd621 Date: Fri, 2 Aug 2013 10:36:34 +0800 Subject: [PATCH 02/11] * fix bug for waring. --- module/admin/config.php | 1 + module/extension/view/obtain.html.php | 2 +- module/report/model.php | 1 + module/sso/config.php | 2 ++ module/sso/control.php | 2 +- 5 files changed, 6 insertions(+), 2 deletions(-) diff --git a/module/admin/config.php b/module/admin/config.php index 0826329d7d..3d72b97363 100644 --- a/module/admin/config.php +++ b/module/admin/config.php @@ -9,6 +9,7 @@ $config->url->extension = 'http://www.zentao.net/extension-browse.html'; $config->url->donation = 'http://www.zentao.net/help-donation.html'; $config->url->service = 'http://www.cnezsoft.com/article-browse-1078.html'; +$config->win2Unix = new stdclass(); $config->win2Unix->renameTables = array( 'zt_casestep' => 'zt_caseStep' , 'zt_doclib' => 'zt_docLib' , diff --git a/module/extension/view/obtain.html.php b/module/extension/view/obtain.html.php index b3a98c7ff9..296ee3d113 100644 --- a/module/extension/view/obtain.html.php +++ b/module/extension/view/obtain.html.php @@ -63,7 +63,7 @@ echo "{$lang->extension->compatible}: {$lang->extension->compatibleList[$currentRelease->compatible]} "; echo "{$lang->extension->grade}: ", html::printStars($extension->stars); echo " {$lang->extension->depends}: "; - if($currentRelease->depends) + if(!empty($currentRelease->depends)) { foreach(json_decode($currentRelease->depends) as $code => $limit) { diff --git a/module/report/model.php b/module/report/model.php index 966d2ca469..f7a5dba3cf 100644 --- a/module/report/model.php +++ b/module/report/model.php @@ -288,6 +288,7 @@ EOT; { if($bug->project) { + $projects[$bug->project] = new stdclass(); $projects[$bug->project]->bugs = isset($projects[$bug->project]->bugs) ? $projects[$bug->project]->bugs + 1 : 1; } } diff --git a/module/sso/config.php b/module/sso/config.php index b8c85b1a0c..35f8e1b88b 100644 --- a/module/sso/config.php +++ b/module/sso/config.php @@ -1,3 +1,5 @@ sso->create = new stdclass(); $config->sso->create->requiredFields = 'title,code,key,ip'; +$config->sso->edit = new stdclass(); $config->sso->edit->requiredFields = 'title,key,ip'; diff --git a/module/sso/control.php b/module/sso/control.php index 183863cab7..aae7fcceba 100644 --- a/module/sso/control.php +++ b/module/sso/control.php @@ -9,7 +9,7 @@ class sso extends control */ public function browse() { - $this->view->title = $this->lang->sso->common . $lang->colon . $this->lang->sso->browse; + $this->view->title = $this->lang->sso->common . $this->lang->colon . $this->lang->sso->browse; $this->view->position[] = $this->lang->sso->common; $this->view->position[] = $this->lang->sso->browse; $this->view->auths = $this->sso->getAuths(); From df4c2a15c366c1ebe33bb2b49a06bb98b682215b Mon Sep 17 00:00:00 2001 From: xia0ta0 Date: Fri, 2 Aug 2013 14:56:47 +0800 Subject: [PATCH 03/11] * code for task#1620. --- module/user/css/common.css | 2 - module/user/view/dynamic.html.php | 87 +++++++++++++++---------------- module/user/view/todo.html.php | 22 ++++---- 3 files changed, 52 insertions(+), 59 deletions(-) delete mode 100644 module/user/css/common.css diff --git a/module/user/css/common.css b/module/user/css/common.css deleted file mode 100644 index b7355c499c..0000000000 --- a/module/user/css/common.css +++ /dev/null @@ -1,2 +0,0 @@ -.todoheader {margin-bottom:5px;} -.todoheader .active{color:#009900; font-weight:bold;} diff --git a/module/user/view/dynamic.html.php b/module/user/view/dynamic.html.php index aa49a51b1e..debb912874 100644 --- a/module/user/view/dynamic.html.php +++ b/module/user/view/dynamic.html.php @@ -13,52 +13,47 @@ - - - - - +
+
+ " . html::a(inLink('dynamic', "period=today&account=$account"), $lang->action->dynamic->today) . ''; + echo "" . html::a(inLink('dynamic', "period=yesterday&account=$account"), $lang->action->dynamic->yesterday) . ''; + echo "" . html::a(inLink('dynamic', "period=twodaysago&account=$account"), $lang->action->dynamic->twoDaysAgo) . ''; + echo "" . html::a(inLink('dynamic', "period=thisweek&account=$account"), $lang->action->dynamic->thisWeek) . ''; + echo "" . html::a(inLink('dynamic', "period=lastweek&account=$account"), $lang->action->dynamic->lastWeek) . ''; + echo "" . html::a(inLink('dynamic', "period=thismonth&account=$account"), $lang->action->dynamic->thisMonth) . ''; + echo "" . html::a(inLink('dynamic', "period=lastmonth&account=$account"), $lang->action->dynamic->lastMonth) . ''; + echo "" . html::a(inLink('dynamic', "period=all&account=$account"), $lang->action->dynamic->all) . ''; + ?> +
+
+
-
user->dynamic;?>
-
- action->dynamic->today) . '
'; - echo html::a(inLink('dynamic', "period=yesterday&account=$account"), $lang->action->dynamic->yesterday) . '
'; - echo html::a(inLink('dynamic', "period=twodaysago&account=$account"), $lang->action->dynamic->twoDaysAgo) . '
'; - echo html::a(inLink('dynamic', "period=thisweek&account=$account"), $lang->action->dynamic->thisWeek) . '
'; - echo html::a(inLink('dynamic', "period=lastweek&account=$account"), $lang->action->dynamic->lastWeek) . '
'; - echo html::a(inLink('dynamic', "period=thismonth&account=$account"), $lang->action->dynamic->thisMonth) . '
'; - echo html::a(inLink('dynamic', "period=lastmonth&account=$account"), $lang->action->dynamic->lastMonth) . '
'; - echo html::a(inLink('dynamic', "period=all&account=$account"), $lang->action->dynamic->all) . '
'; - ?> -
-
- - - - - - - - - - - - - - objectType == 'case' ? 'testcase' : $action->objectType;?> - - - - - - - - - - - -
action->date;?> action->actor;?>action->action;?> action->objectType;?> idAB;?>action->objectName;?>
date;?>actor];?>actionLabel;?>action->objectTypes[$action->objectType];?>objectID;?>objectLink, $action->objectName);?>
show();?>
-
+ + + + + + + + + + + + objectType == 'case' ? 'testcase' : $action->objectType;?> + + + + + + + + + + +
action->date;?> action->actor;?>action->action;?> action->objectType;?> idAB;?>action->objectName;?>
date;?>actor];?>actionLabel;?>action->objectTypes[$action->objectType];?>objectID;?>objectLink, $action->objectName);?>
show();?>
+ diff --git a/module/user/view/todo.html.php b/module/user/view/todo.html.php index 2229d24a24..1e7e1c66b1 100644 --- a/module/user/view/todo.html.php +++ b/module/user/view/todo.html.php @@ -14,15 +14,17 @@ -
+
+
todo->periods as $period => $label) - { - $vars = "account={$account}&date=$period"; - if($period == 'before') $vars .= "&status=undone"; - echo "" . html::a(inlink('todo', $vars), $label) . ' '; - } - ?> + foreach($lang->todo->periods as $period => $label) + { + $vars = "account={$account}&date=$period"; + if($period == 'before') $vars .= "&status=undone"; + echo "" . html::a(inlink('todo', $vars), $label) . ' '; + } + ?> +
' id='todoform'> @@ -57,8 +59,6 @@
From 902f2a428f86a34998b107f6ba6fecbd614064c0 Mon Sep 17 00:00:00 2001 From: xia0ta0 Date: Fri, 2 Aug 2013 15:14:00 +0800 Subject: [PATCH 04/11] * code for task#1636. --- module/testtask/model.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/module/testtask/model.php b/module/testtask/model.php index 1a7454110b..f0e786089b 100644 --- a/module/testtask/model.php +++ b/module/testtask/model.php @@ -44,7 +44,13 @@ class testtaskModel extends model $task = fixer::input('post') ->stripTags('name') ->get(); - $this->dao->insert(TABLE_TESTTASK)->data($task)->autoCheck()->batchcheck($this->config->testtask->create->requiredFields, 'notempty')->exec(); + $this->dao->insert(TABLE_TESTTASK)->data($task) + ->autoCheck($skipFields = 'begin,end') + ->batchcheck($this->config->testtask->create->requiredFields, 'notempty') + ->checkIF($task->begin != '', 'begin', 'date') + ->checkIF($task->end != '', 'end', 'date') + ->checkIF($task->end != '', 'end', 'gt', $task->begin) + ->exec(); if(!dao::isError()) return $this->dao->lastInsertID(); } From 1140dbe11fddac62c131e6d94f55eaaf31d0ee6d Mon Sep 17 00:00:00 2001 From: wyd621 Date: Fri, 2 Aug 2013 15:44:40 +0800 Subject: [PATCH 05/11] * finish task #1662. --- module/bug/control.php | 3 +-- module/bug/model.php | 1 + module/build/model.php | 11 ++++++++--- module/group/model.php | 8 ++++++-- module/my/view/testcase.html.php | 2 +- module/product/model.php | 3 ++- module/project/view/task.html.php | 1 - module/qa/lang/en.php | 1 + module/qa/lang/zh-cn.php | 1 + module/release/model.php | 2 +- module/story/model.php | 2 ++ module/task/control.php | 1 + module/task/model.php | 2 ++ module/testcase/model.php | 5 +++-- module/testtask/view/results.html.php | 6 +++--- module/testtask/view/view.html.php | 2 +- module/todo/control.php | 2 +- module/user/model.php | 1 + 18 files changed, 36 insertions(+), 18 deletions(-) diff --git a/module/bug/control.php b/module/bug/control.php index 090960e272..498efd42d6 100644 --- a/module/bug/control.php +++ b/module/bug/control.php @@ -353,7 +353,7 @@ class bug extends control if(!empty($_POST)) { $actions = $this->bug->batchCreate($productID); - foreach($actions as $bugID => $action) $this->sendmail($bugID, $actionID); + foreach($actions as $bugID => $actionID) $this->sendmail($bugID, $actionID); die(js::locate($this->session->bugList, 'parent')); } @@ -377,7 +377,6 @@ class bug extends control $this->view->position[] = html::a($this->createLink('bug', 'browse', "productID=$productID"), $this->products[$productID]); $this->view->position[] = $this->lang->bug->batchCreate; - $this->view->projectBuilds = $projectBuilds; $this->view->productID = $productID; $this->view->stories = $stories; $this->view->builds = $builds; diff --git a/module/bug/model.php b/module/bug/model.php index edc12912e8..c2b54c6153 100644 --- a/module/bug/model.php +++ b/module/bug/model.php @@ -286,6 +286,7 @@ class bugModel extends model { $oldBug = $this->getByID($bugID); + $bug = new stdclass(); $bug->lastEditedBy = $this->app->user->account; $bug->lastEditedDate = $now; $bug->type = $this->post->types[$bugID]; diff --git a/module/build/model.php b/module/build/model.php index f8771c8c98..225d71712c 100644 --- a/module/build/model.php +++ b/module/build/model.php @@ -113,6 +113,7 @@ class buildModel extends model */ public function create($projectID) { + $build = new stdclass(); $build->stories = ''; $build->bugs = ''; @@ -169,16 +170,20 @@ class buildModel extends model */ public function updateLinkedBug($build) { - $bugs = $this->dao->select('*')->from(TABLE_BUG)->where('id')->in($build->bugs)->fetchAll(); + $bugs = empty($build->bugs) ? '' : $this->dao->select('*')->from(TABLE_BUG)->where('id')->in($build->bugs)->fetchAll(); $now = helper::now(); $resolvedPairs = array(); - foreach($this->post->bugs as $key => $bugID) + if(isset($_POST['bugs'])) { - if(isset($_POST['resolvedBy'][$key]))$resolvedPairs[$bugID] = $this->post->resolvedBy[$key]; + foreach($this->post->bugs as $key => $bugID) + { + if(isset($_POST['resolvedBy'][$key]))$resolvedPairs[$bugID] = $this->post->resolvedBy[$key]; + } } $this->loadModel('action'); + if(!$bugs) return false; foreach($bugs as $bug) { if($bug->status == 'resolved') continue; diff --git a/module/group/model.php b/module/group/model.php index aa02e19f17..1fd47ba7bf 100644 --- a/module/group/model.php +++ b/module/group/model.php @@ -224,7 +224,8 @@ class groupModel extends model { foreach($moduleActions as $actionName) { - $data->group = $groupID; + $data = new stdclass(); + $data->group = $groupID; $data->module = $moduleName; $data->method = $actionName; $this->dao->replace(TABLE_GROUPPRIV)->data($data)->exec(); @@ -244,7 +245,8 @@ class groupModel extends model { foreach($moduleActions as $actionName) { - $data->group = $groupID; + $data = new stdclass(); + $data->group = $groupID; $data->module = $moduleName; $data->method = $actionName; $this->dao->insert(TABLE_GROUPPRIV)->data($data)->exec(); @@ -268,6 +270,7 @@ class groupModel extends model { foreach($this->post->groups as $group) { + $data = new stdclass(); $data->group = $group; $data->module = $this->post->module; $data->method = $action; @@ -293,6 +296,7 @@ class groupModel extends model if($this->post->members == false) return; foreach($this->post->members as $account) { + $data = new stdclass(); $data->account = $account; $data->group = $groupID; $this->dao->insert(TABLE_USERGROUP)->data($data)->exec(); diff --git a/module/my/view/testcase.html.php b/module/my/view/testcase.html.php index be3985d65c..ca7a21ee59 100644 --- a/module/my/view/testcase.html.php +++ b/module/my/view/testcase.html.php @@ -62,7 +62,7 @@ lastRunner];?> lastRunDate)) echo date(DT_MONTHTIME1, strtotime($case->lastRunDate));?> lastRunResult) echo $lang->testcase->resultList[$case->lastRunResult];?> - testcase->statusList[$case->status];?> + testcase->statusList[$case->status];?> id&version=$case->version", '', 'list', '', '', 'iframe'); diff --git a/module/product/model.php b/module/product/model.php index f9d71a4b30..7fa4e35290 100644 --- a/module/product/model.php +++ b/module/product/model.php @@ -604,8 +604,9 @@ class productModel extends model } $cases = $this->dao->select('DISTINCT story')->from(TABLE_CASE)->where('story')->in($storyIDs)->fetchAll(); + $rate = count($stories) == 0 ? 0 : round(count($cases) / count($stories), 2); - return sprintf($this->lang->product->storySummary, count($stories), $totalEstimate, round(count($cases) / count($stories), 2) * 100 . "%"); + return sprintf($this->lang->product->storySummary, count($stories), $totalEstimate, $rate * 100 . "%"); } /** diff --git a/module/project/view/task.html.php b/module/project/view/task.html.php index b2c4626ea1..8eef85b608 100644 --- a/module/project/view/task.html.php +++ b/module/project/view/task.html.php @@ -16,7 +16,6 @@ - diff --git a/module/qa/lang/en.php b/module/qa/lang/en.php index 90beca73fb..b4cf228238 100644 --- a/module/qa/lang/en.php +++ b/module/qa/lang/en.php @@ -9,5 +9,6 @@ * @version $Id: en.php 4129 2013-01-18 01:58:14Z wwccss $ * @link http://www.zentao.net */ +$lang->qa = new stdclass(); $lang->qa->common = 'Test'; $lang->qa->index = "Index"; diff --git a/module/qa/lang/zh-cn.php b/module/qa/lang/zh-cn.php index 6be68d0573..9335c6594a 100644 --- a/module/qa/lang/zh-cn.php +++ b/module/qa/lang/zh-cn.php @@ -9,5 +9,6 @@ * @version $Id: zh-cn.php 4129 2013-01-18 01:58:14Z wwccss $ * @link http://www.zentao.net */ +$lang->qa = new stdclass(); $lang->qa->common = '测试视图'; $lang->qa->index = "测试首页"; diff --git a/module/release/model.php b/module/release/model.php index 49017c7d9f..1faf3d84bf 100644 --- a/module/release/model.php +++ b/module/release/model.php @@ -98,7 +98,7 @@ class releaseModel extends model $this->dao->insert(TABLE_RELEASE)->data($release)->autoCheck()->batchCheck($this->config->release->create->requiredFields, 'notempty')->check('name','unique')->exec(); $releaseID = $this->dao->lastInsertID(); - $this->dao->update(TABLE_STORY)->set('stage')->eq('released')->where('id')->in($release->stories)->exec(); + if($release->stories) $this->dao->update(TABLE_STORY)->set('stage')->eq('released')->where('id')->in($release->stories)->exec(); if(!dao::isError()) return $releaseID; } diff --git a/module/story/model.php b/module/story/model.php index 5e83273df1..79855d7c14 100644 --- a/module/story/model.php +++ b/module/story/model.php @@ -222,6 +222,7 @@ class storyModel extends model $storyID = $this->dao->lastInsertID(); $this->setStage($storyID); + $specData[$i] = new stdclass(); $specData[$i]->story = $storyID; $specData[$i]->version = 1; $specData[$i]->title = htmlspecialchars($stories->title[$i]); @@ -230,6 +231,7 @@ class storyModel extends model $this->loadModel('action'); $actionID = $this->action->create('story', $storyID, 'Opened', ''); + $mails[$i] = new stdclass(); $mails[$i]->storyID = $storyID; $mails[$i]->actionID = $actionID; } diff --git a/module/task/control.php b/module/task/control.php index f3150b8936..d5f78a1d42 100644 --- a/module/task/control.php +++ b/module/task/control.php @@ -616,6 +616,7 @@ class task extends control $this->action->logHistory($actionID, $changes); $this->sendmail($taskID, $actionID); } + if(isonlybody()) die(js::closeColorbox('parent.parent')); die(js::locate($this->createLink('task', 'view', "taskID=$taskID"), 'parent')); } diff --git a/module/task/model.php b/module/task/model.php index fc538ee2b4..637c9d735f 100644 --- a/module/task/model.php +++ b/module/task/model.php @@ -238,6 +238,7 @@ class taskModel extends model { $oldTask = $this->getById($taskID); + $task = new stdclass(); $task->name = htmlspecialchars($this->post->names[$taskID]); $task->module = isset($this->post->modules[$taskID]) ? $this->post->modules[$taskID] : 0; $task->type = $this->post->types[$taskID]; @@ -438,6 +439,7 @@ class taskModel extends model { if(!$record->consumed[$id]) die(js::alert($this->lang->task->error->consumedThisTime)); if($record->left[$id] === '') die(js::alert($this->lang->task->error->left)); + $estimates[$id] = new stdclass(); $estimates[$id]->date = $record->dates[$id]; $estimates[$id]->task = $taskID; $estimates[$id]->consumed = $record->consumed[$id]; diff --git a/module/testcase/model.php b/module/testcase/model.php index 02ac94668f..9ffa244a84 100644 --- a/module/testcase/model.php +++ b/module/testcase/model.php @@ -285,14 +285,15 @@ class testcaseModel extends model /* Initialize cases from the post data.*/ foreach($caseIDList as $caseID) { + $case = new stdclass(); $case->lastEditedBy = $this->app->user->account; - $caee->lastEditedDate = $now; + $case->lastEditedDate = $now; $case->pri = $this->post->pris[$caseID]; $case->status = $this->post->statuses[$caseID]; $case->module = $this->post->modules[$caseID]; $case->title = htmlspecialchars($this->post->titles[$caseID]); $case->type = $this->post->types[$caseID]; - $case->stage = implode(',', $this->post->stages[$caseID]); + $case->stage = empty($this->post->stages[$caseID]) ? '' : implode(',', $this->post->stages[$caseID]); $cases[$caseID] = $case; unset($case); diff --git a/module/testtask/view/results.html.php b/module/testtask/view/results.html.php index d214a25bc0..999c2111a7 100644 --- a/module/testtask/view/results.html.php +++ b/module/testtask/view/results.html.php @@ -35,9 +35,9 @@ ?> - - - stepResults)):?> + + + a-center'>testcase->resultList[$stepResult['result']];?> diff --git a/module/testtask/view/view.html.php b/module/testtask/view/view.html.php index 31dc19ebaa..9dc7d84c91 100644 --- a/module/testtask/view/view.html.php +++ b/module/testtask/view/view.html.php @@ -13,7 +13,7 @@
-
deleted) echo "class='deleted'";?>>TESTTASK #id . ' ' . $task->title;?>
+
deleted) echo "class='deleted'";?>>TESTTASK #id . ' ' . $task->name;?>
session->testtaskList ? $this->session->testtaskList : $this->createLink('testtask', 'browse', "productID=$task->product"); diff --git a/module/todo/control.php b/module/todo/control.php index e63d5ea566..c6ced3db44 100644 --- a/module/todo/control.php +++ b/module/todo/control.php @@ -59,7 +59,7 @@ class todo extends control $this->view->position[] = $this->lang->todo->common; $this->view->position[] = $this->lang->todo->create; $this->view->date = strftime("%Y-%m-%d", strtotime($date)); - $this->view->time = date::buildTimeList($this->config->todo->times->begin, $this->config->todo->times->end, $this->config->todo->times->delta); + $this->view->times = date::buildTimeList($this->config->todo->times->begin, $this->config->todo->times->end, $this->config->todo->times->delta); $this->view->time = date::now(); $this->display(); } diff --git a/module/user/model.php b/module/user/model.php index 8565a4f9c4..b1cd4077fb 100644 --- a/module/user/model.php +++ b/module/user/model.php @@ -329,6 +329,7 @@ class userModel extends model $this->dao->delete()->from(TABLE_USERGROUP)->where('account')->eq($oldUser->account)->exec(); foreach($this->post->groups as $groupID) { + $data = new stdclass(); $data->account = $this->post->account; $data->group = $groupID; $this->dao->insert(TABLE_USERGROUP)->data($data)->exec(); From 9aca54f96f1cc617b3d9c7aa80e74a79d16f9adf Mon Sep 17 00:00:00 2001 From: xia0ta0 Date: Fri, 2 Aug 2013 15:52:26 +0800 Subject: [PATCH 06/11] * code for task#1636. --- module/task/model.php | 1 + 1 file changed, 1 insertion(+) diff --git a/module/task/model.php b/module/task/model.php index fc538ee2b4..92be13a1a7 100644 --- a/module/task/model.php +++ b/module/task/model.php @@ -196,6 +196,7 @@ class taskModel extends model $this->dao->update(TABLE_TASK)->data($task) ->autoCheck() ->batchCheckIF($task->status != 'cancel', $this->config->task->edit->requiredFields, 'notempty') + ->checkIF($task->deadline != '', 'deadline', 'ge', $task->estStarted) ->checkIF($task->estimate != false, 'estimate', 'float') ->checkIF($task->left != false, 'left', 'float') From 1e563f2f3ef443d68bac8be7fdf38948de8654d0 Mon Sep 17 00:00:00 2001 From: xia0ta0 Date: Fri, 2 Aug 2013 15:55:13 +0800 Subject: [PATCH 07/11] * code for task#1636. --- module/testtask/model.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/module/testtask/model.php b/module/testtask/model.php index f0e786089b..b217ee495d 100644 --- a/module/testtask/model.php +++ b/module/testtask/model.php @@ -149,7 +149,12 @@ class testtaskModel extends model { $oldTask = $this->getById($taskID); $task = fixer::input('post')->stripTags('name')->get(); - $this->dao->update(TABLE_TESTTASK)->data($task)->autoCheck()->batchcheck($this->config->testtask->edit->requiredFields, 'notempty')->where('id')->eq($taskID)->exec(); + $this->dao->update(TABLE_TESTTASK)->data($task) + ->autoCheck() + ->batchcheck($this->config->testtask->edit->requiredFields, 'notempty') + ->checkIF($task->end != '', 'end', 'ge', $task->begin) + ->where('id')->eq($taskID) + ->exec(); if(!dao::isError()) return common::createChanges($oldTask, $task); } From 44b2bf517163c788d44d126f142243d4811ad819 Mon Sep 17 00:00:00 2001 From: xia0ta0 Date: Fri, 2 Aug 2013 17:20:19 +0800 Subject: [PATCH 08/11] * code for task#1581. --- module/sso/css/create.css | 1 + module/sso/lang/en.php | 3 +++ module/sso/lang/zh-cn.php | 19 +++++++++++++++++++ module/sso/view/browse.html.php | 4 ++-- module/sso/view/create.html.php | 3 ++- 5 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 module/sso/css/create.css diff --git a/module/sso/css/create.css b/module/sso/css/create.css new file mode 100644 index 0000000000..e53c6eb30c --- /dev/null +++ b/module/sso/css/create.css @@ -0,0 +1 @@ +.instruction {margin-top:20px; padding:0 30px;} diff --git a/module/sso/lang/en.php b/module/sso/lang/en.php index 370bd7ff36..4127d3846a 100644 --- a/module/sso/lang/en.php +++ b/module/sso/lang/en.php @@ -22,3 +22,6 @@ $lang->sso->error->title = 'Please input name'; $lang->sso->error->code = 'Please input code'; $lang->sso->error->key = 'Please input key'; $lang->sso->error->ip = 'Please input IP'; + +$lang->sso->instruction = <<sso->error->title = '名称不能为空'; $lang->sso->error->code = '代号不能为空'; $lang->sso->error->key = '密钥不能为空'; $lang->sso->error->ip = 'IP列表不能为空'; + +$lang->sso->instruction = <<示例应用:名称为"测试",代号为"test",密钥为"20c8eb0d522d2e1a09d4ea18e4df3a59",IP列表为"192.168.11.*,127.0.0.1"。

+

1.用户验证

+

授权应用请求禅道的用户验证API,检查用户在该应用输入的用户名和密码是否正确,实现单点登录。

+

API地址为sso模块的auth方法,POST数据为登录用户的用户名account和密码与密钥形成的加密字符串md5(md5(password) + key),成功则返回用户信息(json格式),失败则返回fail。

+

示例:请求地址 http:://www.demo.com/sso-auth-test,POST字符串 account=admin&authcode=c44c577432230ad8e67160d3f9f0b91c。

+

    注:test为应用代号,c44c577432230ad8e67160d3f9f0b91为md5(md5('123456') + '20c8eb0d522d2e1a09d4ea18e4df3a59')

+

2.获取用户列表

+

授权应用访问禅道的用户列表API,获取禅道所有用户信息。

+

API地址为sso模块的users方法,POST数据为应用密钥,成功返回用户列表(json格式),失败返回fail。

+

示例:请求地址 http:://www.demo.com/sso-users-test,POST字符串 key=20c8eb0d522d2e1a09d4ea18e4df3a59。

+

    注:test为应用代号,20c8eb0d522d2e1a09d4ea18e4df3a59为应用密钥

+

3.获取部门列表

+

授权应用访问禅道的部门列表API,获取禅道所有部门信息。

+

API地址为sso模块的depts方法,POST数据为应用密钥,成功返回用户列表(json格式),失败返回fail。

+

示例:请求地址 http:://www.demo.com/sso-depts-test,POST字符串 key=20c8eb0d522d2e1a09d4ea18e4df3a59。

+

    注:test为应用代号,20c8eb0d522d2e1a09d4ea18e4df3a59为应用密钥

+EOT; diff --git a/module/sso/view/browse.html.php b/module/sso/view/browse.html.php index f1f4209202..8f127f6bc7 100644 --- a/module/sso/view/browse.html.php +++ b/module/sso/view/browse.html.php @@ -17,12 +17,12 @@ $auth):?> - + title?> key?> ip?> - + sso->ip;?> sso->note->ip}'");?> - + +
sso->instruction;?>
From 5be7ec6214aa072d8b9ea746f123def445364c23 Mon Sep 17 00:00:00 2001 From: xia0ta0 Date: Mon, 5 Aug 2013 09:23:15 +0800 Subject: [PATCH 09/11] * code for task#1581. --- module/sso/lang/en.php | 32 ++++++++++++++++++++++++-------- module/sso/lang/zh-cn.php | 16 ++++++++-------- 2 files changed, 32 insertions(+), 16 deletions(-) diff --git a/module/sso/lang/en.php b/module/sso/lang/en.php index 4127d3846a..f00156a215 100644 --- a/module/sso/lang/en.php +++ b/module/sso/lang/en.php @@ -1,20 +1,20 @@ sso->common = 'SSO'; -$lang->sso->browse = 'Auth list'; -$lang->sso->create = 'Create auth'; -$lang->sso->edit = 'Edit auth'; -$lang->sso->delete = 'Delete auth'; +$lang->sso->browse = 'App list'; +$lang->sso->create = 'Create App'; +$lang->sso->edit = 'Edit App'; +$lang->sso->delete = 'Delete App'; $lang->sso->code = 'Code'; $lang->sso->title = 'Name'; $lang->sso->key = 'Key'; $lang->sso->ip = 'IP list'; -$lang->sso->createKey = 'Get new key'; +$lang->sso->createKey = 'New one'; -$lang->sso->confirmDelete = 'Are you sure to delete this auth?'; +$lang->sso->confirmDelete = 'Are you sure to delete this App?'; $lang->sso->note = new stdClass(); -$lang->sso->note->title = 'site name'; -$lang->sso->note->code = 'site code'; +$lang->sso->note->title = 'app name'; +$lang->sso->note->code = 'app code'; $lang->sso->note->ip = "Use comma between two IPs, and support IP segment, for example 192.168.1.*"; $lang->sso->error = new stdClass(); @@ -24,4 +24,20 @@ $lang->sso->error->key = 'Please input key'; $lang->sso->error->ip = 'Please input IP'; $lang->sso->instruction = <<Example:Name is 'Test'", Code is 'test', Key is '20c8eb0d522d2e1a09d4ea18e4df3a59',IP list is "192.168.11.*,127.0.0.1"。

+

1.User Auth

+

Application request API of user auth, check if the account and password is correct, to realize single sign-on (SSO).

+

The API is from sso module, auth method. POST data is account and encrypted string [md5(md5(password) + key)]. Return user info(json) if success, return fail if fail.

+

Example: url is 'http:://www.demo.com/sso-auth-test',POST string is 'account=admin&authcode=c44c577432230ad8e67160d3f9f0b91c'.

+

    Note: 'test' is App code, 'c44c577432230ad8e67160d3f9f0b91' is md5(md5('123456') + '20c8eb0d522d2e1a09d4ea18e4df3a59')

+

2.Get User List

+

Application request API of user list, get all user info of zentao.

+

The API if from sso module, users method. POST data is key. Return user list (json) if success, return fail if fail.

+

Example:url is 'http:://www.demo.com/sso-users-test', POST string is 'key=20c8eb0d522d2e1a09d4ea18e4df3a59'.

+

    Note: 'test' is App code, '20c8eb0d522d2e1a09d4ea18e4df3a59' is App key.

+

3.Get Dept List

+

Application request API of dept list, get all dept info of zentao.

+

The API if from sso module, depts method. POST data is key. Return dept list (json) if success, return fail if fail.

+

Example:url is 'http:://www.demo.com/sso-depts-test', POST string is 'key=20c8eb0d522d2e1a09d4ea18e4df3a59'.

+

    Note: 'test' is App code, '20c8eb0d522d2e1a09d4ea18e4df3a59' is App key.

EOT; diff --git a/module/sso/lang/zh-cn.php b/module/sso/lang/zh-cn.php index 19f97c2df7..5520d0237d 100644 --- a/module/sso/lang/zh-cn.php +++ b/module/sso/lang/zh-cn.php @@ -1,21 +1,21 @@ sso->common = '单点登录'; -$lang->sso->browse = '授权列表'; -$lang->sso->create = '创建授权'; -$lang->sso->edit = '编辑授权'; -$lang->sso->delete = '删除授权'; +$lang->sso->browse = '应用列表'; +$lang->sso->create = '添加应用'; +$lang->sso->edit = '编辑应用'; +$lang->sso->delete = '删除应用'; $lang->sso->code = '代号'; $lang->sso->title = '名称'; $lang->sso->key = '密钥'; $lang->sso->ip = 'IP列表'; $lang->sso->createKey = '重新生成密钥'; -$lang->sso->confirmDelete = '您确定删除该授权吗?'; +$lang->sso->confirmDelete = '您确定删除该应用吗?'; $lang->sso->note = new stdClass(); -$lang->sso->note->title = '授权站点名称'; -$lang->sso->note->code = '授权站点代号'; -$lang->sso->note->ip = "允许该站点使用这些ip访问,多个ip使用逗号隔开。支持IP段,如192.168.1.*"; +$lang->sso->note->title = '授权应用名称'; +$lang->sso->note->code = '授权应用代号'; +$lang->sso->note->ip = "允许该应用使用这些ip访问,多个ip使用逗号隔开。支持IP段,如192.168.1.*"; $lang->sso->error = new stdClass(); $lang->sso->error->title = '名称不能为空'; From 5e2622260896496e8f56ef08ebddd9b476a52fb5 Mon Sep 17 00:00:00 2001 From: wyd621 Date: Mon, 5 Aug 2013 09:43:06 +0800 Subject: [PATCH 10/11] * adjust code and fix bug. --- module/project/control.php | 2 +- module/project/view/task.html.php | 1 + module/project/view/taskheader.html.php | 2 +- www/js/my.full.js | 2 ++ 4 files changed, 5 insertions(+), 2 deletions(-) diff --git a/module/project/control.php b/module/project/control.php index f7a9ed096d..569705e5d7 100644 --- a/module/project/control.php +++ b/module/project/control.php @@ -713,7 +713,7 @@ class project extends control $baselineJSON = '[]'; if($projectInfo->days <= $maxDays) { - $firstBurn = reset($sets); + $firstBurn = empty($sets) ? 0 : reset($sets); $firstTime = isset($firstBurn->value) ? $firstBurn->value : 0; $days = count($dateList) - 1; $rate = $firstTime / $days; diff --git a/module/project/view/task.html.php b/module/project/view/task.html.php index eb08a1c04a..34465ac24f 100644 --- a/module/project/view/task.html.php +++ b/module/project/view/task.html.php @@ -16,6 +16,7 @@ + diff --git a/module/project/view/taskheader.html.php b/module/project/view/taskheader.html.php index 87356a9b8a..826209656c 100644 --- a/module/project/view/taskheader.html.php +++ b/module/project/view/taskheader.html.php @@ -1,4 +1,4 @@ - +app->getModuleRoot() . 'common/view/dropmenu.html.php';?>
Date: Mon, 5 Aug 2013 10:22:07 +0800 Subject: [PATCH 11/11] * change for new version. --- config/config.php | 2 +- db/zentao.sql | 1 + module/action/lang/en.php | 9 ++++--- module/action/lang/zh-cn.php | 9 ++++--- module/action/lang/zh-tw.php | 10 ++++--- module/admin/lang/zh-tw.php | 8 +++--- module/api/lang/zh-tw.php | 14 +++++++++- module/bug/lang/zh-tw.php | 13 +++++++--- module/build/lang/zh-tw.php | 2 -- module/common/lang/zh-tw.php | 37 +++++++++++++++----------- module/dept/lang/zh-tw.php | 4 +++ module/editor/lang/zh-tw.php | 21 +++++---------- module/extension/lang/en.php | 5 ++++ module/extension/lang/zh-tw.php | 8 +++++- module/group/lang/resource.php | 6 +++++ module/install/lang/zh-tw.php | 2 -- module/mail/lang/zh-tw.php | 1 + module/misc/lang/zh-tw.php | 3 ++- module/product/lang/zh-tw.php | 35 +++++++++++++------------ module/productplan/lang/zh-tw.php | 29 ++++++++++++++------- module/project/lang/zh-tw.php | 42 ++++++++++++++++-------------- module/qa/lang/zh-tw.php | 1 + module/report/lang/zh-tw.php | 6 ++--- module/sso/lang/zh-tw.php | 43 +++++++++++++++++++++++++++++++ module/story/lang/en.php | 2 ++ module/story/lang/zh-cn.php | 2 ++ module/story/lang/zh-tw.php | 23 +++++++++++++++-- module/task/lang/zh-tw.php | 16 +++++++++++- module/testcase/lang/en.php | 1 - module/testcase/lang/zh-tw.php | 15 ++++++++++- module/testtask/lang/zh-tw.php | 8 +++++- module/todo/lang/zh-tw.php | 1 + module/upgrade/lang/en.php | 1 + module/upgrade/lang/zh-tw.php | 5 +++- module/upgrade/model.php | 1 + module/user/lang/zh-tw.php | 2 ++ tools/check.php | 6 ++--- 37 files changed, 277 insertions(+), 117 deletions(-) diff --git a/config/config.php b/config/config.php index ec646ba334..e1dcc42680 100644 --- a/config/config.php +++ b/config/config.php @@ -17,7 +17,7 @@ if(!function_exists('getWebRoot')){function getWebRoot(){}} /* Basic settings. */ $config = new config(); -$config->version = '4.2.beta'; // The version of zentaopms. Don't change it. +$config->version = '4.3.beta'; // The version of zentaopms. Don't change it. $config->charset = 'UTF-8'; // The charset of zentaopms. $config->cookieLife = time() + 2592000; // The cookie life time. $config->timezone = 'Asia/Shanghai'; // The time zone setting, for more see http://www.php.net/manual/en/timezones.php diff --git a/db/zentao.sql b/db/zentao.sql index 918e27515d..2f2e7af25f 100644 --- a/db/zentao.sql +++ b/db/zentao.sql @@ -19,6 +19,7 @@ CREATE TABLE IF NOT EXISTS `zt_bug` ( `product` mediumint(8) unsigned NOT NULL default '0', `module` mediumint(8) unsigned NOT NULL default '0', `project` mediumint(8) unsigned NOT NULL default '0', + `plan` mediumint(8) unsigned NOT NULL default '0', `story` mediumint(8) unsigned NOT NULL default '0', `storyVersion` smallint(6) NOT NULL default '1', `task` mediumint(8) unsigned NOT NULL default '0', diff --git a/module/action/lang/en.php b/module/action/lang/en.php index ba85b78faf..bd3da97934 100644 --- a/module/action/lang/en.php +++ b/module/action/lang/en.php @@ -20,10 +20,11 @@ $lang->action->action = 'Action'; $lang->action->actionID = 'ActionID'; $lang->action->date = 'Date'; -$lang->action->trash = 'Trash'; -$lang->action->undelete = 'Undelete'; -$lang->action->hideOne = 'Hide'; -$lang->action->hideAll = 'Hide all'; +$lang->action->trash = 'Trash'; +$lang->action->undelete = 'Undelete'; +$lang->action->hideOne = 'Hide'; +$lang->action->hideAll = 'Hide all'; +$lang->action->editComment = 'Edit comment'; $lang->action->trashTips = "Tips:The deleting actions in zentao are all logic"; $lang->action->textDiff = 'Text mode'; diff --git a/module/action/lang/zh-cn.php b/module/action/lang/zh-cn.php index c594b0596f..4fdb662e10 100644 --- a/module/action/lang/zh-cn.php +++ b/module/action/lang/zh-cn.php @@ -20,10 +20,11 @@ $lang->action->action = '动作'; $lang->action->actionID = '记录ID'; $lang->action->date = '日期'; -$lang->action->trash = '回收站'; -$lang->action->undelete = '还原'; -$lang->action->hideOne = '隐藏'; -$lang->action->hideAll = '全部隐藏'; +$lang->action->trash = '回收站'; +$lang->action->undelete = '还原'; +$lang->action->hideOne = '隐藏'; +$lang->action->hideAll = '全部隐藏'; +$lang->action->editComment = '修改备注'; $lang->action->trashTips = '提示:为了保证系统的完整性,禅道系统的删除都是标记删除。'; $lang->action->textDiff = '文本格式'; diff --git a/module/action/lang/zh-tw.php b/module/action/lang/zh-tw.php index d6b8acd10e..0ae62589ad 100644 --- a/module/action/lang/zh-tw.php +++ b/module/action/lang/zh-tw.php @@ -20,10 +20,11 @@ $lang->action->action = '動作'; $lang->action->actionID = '記錄ID'; $lang->action->date = '日期'; -$lang->action->trash = '資源回收筒'; -$lang->action->undelete = '還原'; -$lang->action->hideOne = '隱藏'; -$lang->action->hideAll = '全部隱藏'; +$lang->action->trash = '資源回收筒'; +$lang->action->undelete = '還原'; +$lang->action->hideOne = '隱藏'; +$lang->action->hideAll = '全部隱藏'; +$lang->action->editComment = '修改備註'; $lang->action->trashTips = '提示:為了保證系統的完整性,禪道系統的刪除都是標記刪除。'; $lang->action->textDiff = '文本格式'; @@ -77,6 +78,7 @@ $lang->action->desc->commented = '$date, 由 $actor 添加 $lang->action->desc->activated = '$date, 由 $actor 激活。' . "\n"; $lang->action->desc->moved = '$date, 由 $actor 移動,之前為 "$extra"。' . "\n"; $lang->action->desc->confirmed = '$date, 由 $actor 確認需求變動,最新版本為#$extra。' . "\n"; +$lang->action->desc->caseconfirmed = '$date, 由 $actor 確認用例變動,最新版本為#$extra。' . "\n"; $lang->action->desc->bugconfirmed = '$date, 由 $actor 確認Bug。' . "\n"; $lang->action->desc->frombug = '$date, 由 $actor Bug轉化而來,Bug編號為 $extra。'; $lang->action->desc->started = '$date, 由 $actor 啟動。' . "\n"; diff --git a/module/admin/lang/zh-tw.php b/module/admin/lang/zh-tw.php index f5abbe1d91..1c6da2e614 100644 --- a/module/admin/lang/zh-tw.php +++ b/module/admin/lang/zh-tw.php @@ -58,9 +58,9 @@ $lang->admin->bind->success = "關聯賬戶成功"; $lang->admin->selectFlow = '您計劃如何使用禪道?'; -$lang->admin->flowList['full'] = '所有功能(包括產品、項目、需求、計劃、發佈、任務、Bug、用例、測試任務和文檔等功能。)'; -$lang->admin->flowList['onlyTest'] = '僅測試管理(包括產品、版本、Bug、用例、測試任務和文檔管理等功能。)'; -$lang->admin->flowList['onlyTask'] = '僅任務管理(包括項目、任務和文檔管理。)'; -$lang->admin->flowList['onlyStory'] = '僅需求管理(包括產品、需求、計劃、發佈和文檔管理等功能。)'; +$lang->admin->flowList['full'] = '所有功能(包括產品、項目、需求、計劃、發佈、任務、Bug、用例、測試任務和文檔等功能。)'; +$lang->admin->flowList['zentaotest'] = '僅測試管理(包括產品、版本、Bug、用例、測試任務和文檔管理等功能。)'; +$lang->admin->flowList['zentaotask'] = '僅任務管理(包括項目、任務和文檔管理。)'; +$lang->admin->flowList['zentaostory'] = '僅需求管理(包括產品、需求、計劃、發佈和文檔管理等功能。)'; $lang->admin->flowNotice = "註:如果您使用的不是所有功能,後續可以到“管理->插件”中,卸載相應的插件,即可重新使用禪道所有功能。"; diff --git a/module/api/lang/zh-tw.php b/module/api/lang/zh-tw.php index b8c0e34796..953170babb 100644 --- a/module/api/lang/zh-tw.php +++ b/module/api/lang/zh-tw.php @@ -6,9 +6,21 @@ * @license LGPL (http://www.gnu.org/licenses/lgpl.html) * @author Chunsheng Wang * @package api - * @version $Id: zh-tw.php 4344 2013-02-06 04:10:55Z wwccss $ + * @version $Id: zh-tw.php 5129 2013-07-15 00:16:07Z zhujinyonging@gmail.com $ * @link http://www.zentao.net */ $lang->api = new stdclass(); $lang->api->common = 'API介面'; $lang->api->getModel = '超級model調用介面'; + +$lang->api->position = '位置'; +$lang->api->startLine = "%s,%s行"; +$lang->api->desc = '描述'; +$lang->api->debug = '調試'; +$lang->api->submit = '提交'; +$lang->api->url = '請求地址'; +$lang->api->result = '返回結果'; +$lang->api->status = '狀態'; +$lang->api->data = '內容'; +$lang->api->noParam = 'GET方式調試不需要輸入參數,'; +$lang->api->post = 'POST方式調試請參照頁面表單'; diff --git a/module/bug/lang/zh-tw.php b/module/bug/lang/zh-tw.php index 1a9a9926f9..7611b86ea6 100644 --- a/module/bug/lang/zh-tw.php +++ b/module/bug/lang/zh-tw.php @@ -13,6 +13,7 @@ $lang->bug->common = 'Bug'; $lang->bug->id = 'Bug編號'; $lang->bug->product = '所屬產品'; +$lang->bug->productplan = '所屬計劃'; $lang->bug->module = '所屬模組'; $lang->bug->path = '模組路徑'; $lang->bug->project = '所屬項目'; @@ -25,6 +26,7 @@ $lang->bug->severityAB = '級別'; $lang->bug->pri = '優先順序'; $lang->bug->type = 'Bug類型'; $lang->bug->os = '操作系統'; +$lang->bug->plan = '所屬計劃'; $lang->bug->hardware = '硬件平台'; $lang->bug->browser = '瀏覽器'; $lang->bug->machine = '機器硬件'; @@ -69,6 +71,7 @@ $lang->bug->toCase = '生成用例'; /* 方法列表。*/ $lang->bug->index = '首頁'; $lang->bug->create = '提Bug'; +$lang->bug->batchCreate = '批量添加'; $lang->bug->confirmBug = '確認'; $lang->bug->edit = '編輯'; $lang->bug->batchEdit = '批量編輯'; @@ -352,9 +355,11 @@ $lang->bug->report->bugHistories->graph->xAxisName = '處理步驟'; /* 操作記錄。*/ $lang->bug->action = new stdclass(); -$lang->bug->action->resolved = array('main' => '$date, 由 $actor 解決,方案為 $extra。', 'extra' => $lang->bug->resolutionList); -$lang->bug->action->tostory = array('main' => '$date, 由 $actor 轉為需求,編號為 $extra。'); -$lang->bug->action->totask = array('main' => '$date, 由 $actor 導入為任務,編號為 $extra。'); +$lang->bug->action->resolved = array('main' => '$date, 由 $actor 解決,方案為 $extra。', 'extra' => $lang->bug->resolutionList); +$lang->bug->action->tostory = array('main' => '$date, 由 $actor 轉為需求,編號為 $extra。'); +$lang->bug->action->totask = array('main' => '$date, 由 $actor 導入為任務,編號為 $extra。'); +$lang->bug->action->linked2plan = array('main' => '$date, 由 $actor 關聯到計劃 $extra。'); +$lang->bug->action->unlinkedfromplan = array('main' => '$date, 由 $actor 從計劃 $extra 移除。'); $lang->bug->placeholder = new stdclass(); -$lang->bug->placeholder->mailto = '輸入用戶名自動選擇'; +$lang->bug->placeholder->chooseBuilds = '選擇相關版本...'; diff --git a/module/build/lang/zh-tw.php b/module/build/lang/zh-tw.php index fe75e47ed3..78a6957084 100644 --- a/module/build/lang/zh-tw.php +++ b/module/build/lang/zh-tw.php @@ -38,5 +38,3 @@ $lang->build->bugs = '已關聯Bug'; $lang->build->finishStories = '本次共完成需求%s個'; $lang->build->resolvedBugs = '本次共解決Bug%s個'; - -$lang->build->notice = '版本請到[項目視圖]-[版本]創建。'; diff --git a/module/common/lang/zh-tw.php b/module/common/lang/zh-tw.php index e716490e90..305fe16796 100644 --- a/module/common/lang/zh-tw.php +++ b/module/common/lang/zh-tw.php @@ -6,7 +6,7 @@ * @license LGPL (http://www.gnu.org/licenses/lgpl.html) * @author Chunsheng Wang * @package ZenTaoPMS - * @version $Id: zh-tw.php 5029 2013-07-06 03:00:01Z chencongzhi520@gmail.com $ + * @version $Id: zh-tw.php 5116 2013-07-12 06:37:48Z chencongzhi520@gmail.com $ * @link http://www.zentao.net */ $lang->arrow = '  '; @@ -15,6 +15,7 @@ $lang->comma = ','; $lang->dot = '。'; $lang->at = ' 于 '; $lang->downArrow = '↓'; +$lang->null = '空'; $lang->zentaoPMS = '禪道管理'; $lang->welcome = "歡迎使用『%s』{$lang->colon} {$lang->zentaoPMS}"; @@ -27,6 +28,7 @@ $lang->todayIs = '今天是%s,'; $lang->runInfo = "
時間: %s 毫秒, 內存: %s KB, 查詢: %s.
"; $lang->reset = '重填'; +$lang->refresh = '刷新'; $lang->edit = '編輯'; $lang->copy = '複製'; $lang->delete = '刪除'; @@ -137,10 +139,10 @@ $lang->my->menu = new stdclass(); $lang->my->menu->account = ' %s' . $lang->arrow; $lang->my->menu->index = '首頁|my|index'; $lang->my->menu->todo = array('link' => '待辦|my|todo|', 'subModule' => 'todo'); -$lang->my->menu->task = '任務|my|task|'; -$lang->my->menu->bug = 'Bug|my|bug|'; -$lang->my->menu->testtask = array('link' => '測試|my|testtask|', 'alias' => 'testcase'); -$lang->my->menu->story = '需求|my|story|'; +$lang->my->menu->task = array('link' => '任務|my|task|', 'subModule' => 'task'); +$lang->my->menu->bug = array('link' => 'Bug|my|bug|', 'subModule' => 'bug'); +$lang->my->menu->testtask = array('link' => '測試|my|testtask|', 'subModule' => 'testcase,testtask', 'alias' => 'testcase'); +$lang->my->menu->story = array('link' => '需求|my|story|', 'subModule' => 'story'); $lang->my->menu->myProject = '項目|my|project|'; $lang->my->menu->dynamic = '動態|my|dynamic|'; $lang->my->menu->profile = array('link' => '檔案|my|profile|', 'alias' => 'editprofile'); @@ -202,7 +204,7 @@ $lang->bug = new stdclass(); $lang->bug->menu = new stdclass(); $lang->bug->menu->product = '%s'; -$lang->bug->menu->bug = array('link' => 'Bug|bug|browse|productID=%s', 'alias' => 'view,create,edit,resolve,close,activate,report,batchedit,confirmbug,assignto', 'subModule' => 'tree'); +$lang->bug->menu->bug = array('link' => 'Bug|bug|browse|productID=%s', 'alias' => 'view,create,batchcreate,edit,resolve,close,activate,report,batchedit,confirmbug,assignto', 'subModule' => 'tree'); $lang->bug->menu->testcase = array('link' => '用例|testcase|browse|productID=%s', 'alias' => 'view,create,edit'); $lang->bug->menu->testtask = array('link' => '測試任務|testtask|browse|productID=%s'); @@ -211,7 +213,7 @@ $lang->testcase->menu = new stdclass(); $lang->testcase->menu->product = '%s'; $lang->testcase->menu->bug = array('link' => 'Bug|bug|browse|productID=%s'); -$lang->testcase->menu->testcase = array('link' => '用例|testcase|browse|productID=%s', 'alias' => 'view,create,batchcreate,edit,batchedit', 'subModule' => 'tree'); +$lang->testcase->menu->testcase = array('link' => '用例|testcase|browse|productID=%s', 'alias' => 'view,create,batchcreate,edit,batchedit,showimport', 'subModule' => 'tree'); $lang->testcase->menu->testtask = array('link' => '測試任務|testtask|browse|productID=%s', 'alias' => 'view,create,edit,linkcase,cases,start,close,batchrun'); $lang->testtask = new stdclass(); @@ -254,7 +256,7 @@ $lang->company->menu->browseGroup = array('link' => '權限|group|browse', 'sub $lang->company->menu->view = array('link' => '公司|company|view', 'alias' => 'edit'); $lang->company->menu->dynamic = '動態|company|dynamic|'; $lang->company->menu->addGroup = array('link' => ' 添加分組|group|create', 'float' => 'right'); -$lang->company->menu->batchAddUser = array('link' => ' 批量添加|user|batchCreate', 'subModule' => 'user', 'float' => 'right'); +$lang->company->menu->batchAddUser = array('link' => ' 批量添加|user|batchCreate|dept=%s', 'subModule' => 'user', 'float' => 'right'); $lang->company->menu->addUser = array('link' => ' 添加用戶|user|create|dept=%s', 'subModule' => 'user', 'float' => 'right'); $lang->dept = new stdclass(); @@ -269,12 +271,12 @@ $lang->user->menu = $lang->company->menu; $lang->admin = new stdclass(); $lang->admin->menu = new stdclass(); $lang->admin->menu->index = array('link' => '首頁|admin|index'); -$lang->admin->menu->extension = array('link' => '插件|extension|browse', 'subModule' => 'extension'); -$lang->admin->menu->editor = array('link' => '擴展編輯器|editor|index', 'subModule' => 'editor'); +$lang->admin->menu->extension = array('link' => '擴展|extension|browse', 'subModule' => 'extension,editor'); $lang->admin->menu->mail = array('link' => '發信|mail|index', 'subModule' => 'mail'); $lang->admin->menu->clearData = array('link' => '清除數據|admin|cleardata'); $lang->admin->menu->convert = array('link' => '導入|convert|index', 'subModule' => 'convert'); $lang->admin->menu->trashes = array('link' => '資源回收筒|action|trash', 'subModule' => 'action'); +$lang->admin->menu->sso = array('link' => '單點登錄|sso|browse', 'subModule' => 'sso'); $lang->convert = new stdclass(); $lang->upgrade = new stdclass(); @@ -282,6 +284,7 @@ $lang->action = new stdclass(); $lang->extension = new stdclass(); $lang->editor = new stdclass(); $lang->mail = new stdclass(); +$lang->sso = new stdclass(); $lang->convert->menu = $lang->admin->menu; $lang->upgrade->menu = $lang->admin->menu; @@ -289,6 +292,7 @@ $lang->action->menu = $lang->admin->menu; $lang->extension->menu = $lang->admin->menu; $lang->editor->menu = $lang->admin->menu; $lang->mail->menu = $lang->admin->menu; +$lang->sso->menu = $lang->admin->menu; /* 菜單分組。*/ $lang->menugroup = new stdclass(); @@ -311,6 +315,7 @@ $lang->menugroup->action = 'admin'; $lang->menugroup->extension = 'admin'; $lang->menugroup->editor = 'admin'; $lang->menugroup->mail = 'admin'; +$lang->menugroup->sso = 'admin'; /* 錯誤提示信息。*/ $lang->error = new stdclass(); @@ -331,6 +336,7 @@ $lang->error->account = "『%s』應當為合法的用戶名。"; $lang->error->passwordsame = "兩次密碼應當相等。"; $lang->error->passwordrule = "密碼應該符合規則,長度至少為六位。"; $lang->error->accessDenied = '您沒有訪問權限'; +$lang->error->noData = '沒有數據'; /* 分頁信息。*/ $lang->pager = new stdclass(); @@ -343,15 +349,16 @@ $lang->pager->last = "末頁"; $lang->pager->locate = "GO!"; $lang->zentaoSite = "官方網站"; -$lang->chinaScrum = "Scrum社區 "; -$lang->agileTraining = "培訓 "; -$lang->donate = "捐贈 "; -$lang->proVersion = "購買專業版(特惠)! "; +$lang->chinaScrum = "Scrum社區 "; +$lang->agileTraining = "培訓 "; +$lang->donate = "捐贈 "; +$lang->proVersion = "購買專業版(特惠)! "; $lang->downNotify = "下載桌面提醒"; $lang->suhosinInfo = "警告:數據太多,請在php.ini中修改sohusin.post.max_vars和sohusin.request.max_vars(設置更大的數)。 保存並重新啟動apache,否則會造成部分數據無法保存。"; -$lang->noResultsMatch = "沒有匹配結果"; +$lang->noResultsMatch = "沒有匹配結果"; +$lang->chooseUsersToMail = "選擇要發信通知的用戶..."; /* 時間格式設置。*/ define('DT_DATETIME1', 'Y-m-d H:i:s'); diff --git a/module/dept/lang/zh-tw.php b/module/dept/lang/zh-tw.php index 5efecb26fc..0c520b2c19 100644 --- a/module/dept/lang/zh-tw.php +++ b/module/dept/lang/zh-tw.php @@ -21,3 +21,7 @@ $lang->dept->users = "成員列表"; $lang->dept->saveButton = " 保存 (S) "; $lang->dept->confirmDelete = " 您確定刪除該部門嗎?"; + +$lang->dept->error = new stdclass(); +$lang->dept->error->hasSons = '該部門有子部門,不能刪除!'; +$lang->dept->error->hasUsers = '該部門有職員,不能刪除!'; diff --git a/module/editor/lang/zh-tw.php b/module/editor/lang/zh-tw.php index d8440d7ffd..8fb414a075 100644 --- a/module/editor/lang/zh-tw.php +++ b/module/editor/lang/zh-tw.php @@ -1,8 +1,10 @@ editor->common = '擴展編輯器'; +$lang->editor->common = '編輯器'; +$lang->editor->api = 'API'; $lang->editor->index = '首頁'; $lang->editor->newMethod = '新增方法'; $lang->editor->extend = '擴展'; +$lang->editor->api = 'API'; $lang->editor->newLang = '新增語言'; $lang->editor->newConfig = '新增配置'; $lang->editor->newHook = '新增鈎子'; @@ -33,20 +35,9 @@ $lang->editor->notWritable = "無法寫入,可能沒有權限。請嘗試執 $lang->editor->notDelete = '無法刪除,請檢查權限!'; $lang->editor->emptyFileName = '請寫入一個檔案名!'; -$lang->editor->translate['config.php'] = '配置檔案'; -$lang->editor->translate['config'] = '配置擴展'; -$lang->editor->translate['control.php'] = '控制檔案'; -$lang->editor->translate['control'] = '控制擴展'; -$lang->editor->translate['model.php'] = '模型檔案'; -$lang->editor->translate['model'] = '模型擴展'; -$lang->editor->translate['view'] = '模板檔案'; -$lang->editor->translate['lang'] = '語言檔案'; -$lang->editor->translate['en'] = '英文'; -$lang->editor->translate['zh-tw'] = '中文簡體'; -$lang->editor->translate['zh-tw'] = '中文繁體'; -$lang->editor->translate['js'] = 'JS腳本'; -$lang->editor->translate['css'] = 'CSS樣式'; -$lang->editor->translate['ext'] = '擴展檔案'; +$lang->editor->translate['config.php'] = 'config'; +$lang->editor->translate['control.php'] = 'control'; +$lang->editor->translate['model.php'] = 'model'; $lang->editor->modules['action'] = '系統日誌'; $lang->editor->modules['admin'] = '後台管理'; diff --git a/module/extension/lang/en.php b/module/extension/lang/en.php index a9fd672a89..85d8e4994c 100644 --- a/module/extension/lang/en.php +++ b/module/extension/lang/en.php @@ -63,6 +63,7 @@ $lang->extension->bySearch = 'Search'; $lang->extension->byCategory = 'By Category'; $lang->extension->installFailed = '%s failed, the reason is:'; +$lang->extension->uninstallFailed = 'Uninstall failed, the reason is:'; $lang->extension->installFinished = 'Good, the extension has been %s successfully.'; $lang->extension->refreshPage = 'Refresh'; $lang->extension->uninstallFinished = 'Extension has been successfully uninstalled.'; @@ -97,3 +98,7 @@ $lang->extension->errorPackageNotFound = 'The package file %s extension->errorTargetPathNotWritable = 'Target path %s not writable.'; $lang->extension->errorTargetPathNotExists = 'Target path %s not exists'; $lang->extension->errorInstallDB = 'Execute database sql failed, the error is: %s'; +$lang->extension->errorConflicts = 'With plug-in "%s" Conflict!'; +$lang->extension->errorDepends = 'The following dependency plugin is not installed or the version is incorrect:

%s'; +$lang->extension->errorIncompatible = 'The plug-in with your ZenTao incompatible version'; +$lang->extension->errorUninstallDepends = 'Plugin "%s" relying on the plug-in, can not uninstall'; diff --git a/module/extension/lang/zh-tw.php b/module/extension/lang/zh-tw.php index c80affc9c4..f176f01aca 100644 --- a/module/extension/lang/zh-tw.php +++ b/module/extension/lang/zh-tw.php @@ -36,7 +36,7 @@ $lang->extension->name = '名稱'; $lang->extension->code = '插件代號'; $lang->extension->version = '版本'; $lang->extension->compatible = '適用版本'; -$lang->extension->latest = '最新版本%s,兼容禪道%s'; +$lang->extension->latest = '最新版本%s,兼容禪道%s'; $lang->extension->author = '作者'; $lang->extension->license = '授權'; $lang->extension->intro = '詳情'; @@ -48,6 +48,7 @@ $lang->extension->downloads = '下載量'; $lang->extension->public = '下載方式'; $lang->extension->compatible = '兼容性'; $lang->extension->grade = '評分'; +$lang->extension->depends = '依賴'; $lang->extension->publicList[0] = '手工下載'; $lang->extension->publicList[1] = '直接下載'; @@ -62,6 +63,7 @@ $lang->extension->bySearch = '搜索'; $lang->extension->byCategory = '分類瀏覽'; $lang->extension->installFailed = '%s失敗,錯誤原因如下:'; +$lang->extension->uninstallFailed = '卸載失敗,錯誤原因如下:'; $lang->extension->installFinished = '恭喜您,插件順利的%s成功!'; $lang->extension->refreshPage = '刷新頁面'; $lang->extension->uninstallFinished = '插件已經成功卸載'; @@ -96,3 +98,7 @@ $lang->extension->errorPackageNotFound = '包檔案 %s $lang->extension->errorTargetPathNotWritable = '目標路徑 %s 不可寫。'; $lang->extension->errorTargetPathNotExists = '目標路徑 %s 不存在。'; $lang->extension->errorInstallDB = '執行資料庫語句失敗。錯誤信息如下:%s'; +$lang->extension->errorConflicts = '與插件“%s”衝突!'; +$lang->extension->errorDepends = '以下依賴插件沒有安裝或版本不正確:

%s'; +$lang->extension->errorIncompatible = '該插件與您的禪道版本不兼容'; +$lang->extension->errorUninstallDepends = '插件“%s”依賴該插件,不能卸載'; diff --git a/module/group/lang/resource.php b/module/group/lang/resource.php index 81c723992e..b04e4137db 100644 --- a/module/group/lang/resource.php +++ b/module/group/lang/resource.php @@ -159,6 +159,8 @@ $lang->resource->story->batchClose = 'batchClose'; $lang->resource->story->activate = 'lblActivate'; $lang->resource->story->tasks = 'tasks'; $lang->resource->story->report = 'reportChart'; +$lang->resource->story->batchChangePlan = 'batchChangePlan'; +$lang->resource->story->batchChangeStage = 'batchChangeStage'; $lang->story->methodOrder[5] = 'create'; $lang->story->methodOrder[10] = 'batchCreate'; @@ -398,6 +400,9 @@ $lang->resource->testcase->edit = 'edit'; $lang->resource->testcase->batchEdit = 'batchEdit'; $lang->resource->testcase->delete = 'delete'; $lang->resource->testcase->export = 'export'; +$lang->resource->testcase->exportTemplet = 'exportTemplet'; +$lang->resource->testcase->import = 'import'; +$lang->resource->testcase->showImport = 'showImport'; $lang->resource->testcase->confirmChange = 'confirmChange'; $lang->resource->testcase->confirmStoryChange = 'confirmStoryChange'; @@ -750,6 +755,7 @@ $lang->resource->action->trash = 'trash'; $lang->resource->action->undelete = 'undelete'; $lang->resource->action->hideOne = 'hideOne'; $lang->resource->action->hideAll = 'hideAll'; +$lang->resource->action->editComment = 'editComment'; $lang->action->methodOrder[5] = 'trash'; $lang->action->methodOrder[10] = 'undelete'; diff --git a/module/install/lang/zh-tw.php b/module/install/lang/zh-tw.php index 4c2d0b1254..a49b856139 100644 --- a/module/install/lang/zh-tw.php +++ b/module/install/lang/zh-tw.php @@ -102,8 +102,6 @@ $lang->install->errorNotSaveConfig = '還沒有保存配置檔案'; $lang->install->getPriv = '設置帳號'; $lang->install->company = '公司名稱'; -$lang->install->pms = 'PMS地址'; -$lang->install->pmsNote = '即通過什麼地址可以訪問到禪道項目管理,設置域名或者IP地址即可,不需要http'; $lang->install->account = '管理員帳號'; $lang->install->password = '管理員密碼'; $lang->install->errorEmptyPassword = '密碼不能為空'; diff --git a/module/mail/lang/zh-tw.php b/module/mail/lang/zh-tw.php index df7bb99d4f..fdd7d99fd5 100644 --- a/module/mail/lang/zh-tw.php +++ b/module/mail/lang/zh-tw.php @@ -5,6 +5,7 @@ $lang->mail->detect = '檢測'; $lang->mail->edit = '編輯配置'; $lang->mail->save = '成功保存'; $lang->mail->test = '測試發信'; +$lang->mail->reset = '重置'; $lang->mail->turnon = '是否打開'; $lang->mail->fromAddress = '發信郵箱'; diff --git a/module/misc/lang/zh-tw.php b/module/misc/lang/zh-tw.php index 21efc5d178..b8baf59427 100644 --- a/module/misc/lang/zh-tw.php +++ b/module/misc/lang/zh-tw.php @@ -6,7 +6,7 @@ * @license LGPL (http://www.gnu.org/licenses/lgpl.html) * @author Chunsheng Wang * @package misc - * @version $Id: zh-tw.php 4129 2013-01-18 01:58:14Z wwccss $ + * @version $Id: zh-tw.php 5128 2013-07-13 08:59:49Z chencongzhi520@gmail.com $ * @link http://www.zentao.net */ $lang->misc = new stdclass(); @@ -46,4 +46,5 @@ $lang->misc->zentao->service['install'] = '禪道安裝服務'; $lang->misc->zentao->service['fixissue'] = '禪道問題解決'; $lang->misc->zentao->service['servicemore']= '更多服務...'; +$lang->misc->noGDLib = "找不到GD庫,請用手機瀏覽器直接訪問:%s"; $lang->misc->copyright = "版權所有 ©2009-2013
青島易軟天創網絡科技有限公司"; diff --git a/module/product/lang/zh-tw.php b/module/product/lang/zh-tw.php index 225efec8ec..4355911ae9 100644 --- a/module/product/lang/zh-tw.php +++ b/module/product/lang/zh-tw.php @@ -6,23 +6,24 @@ * @license LGPL (http://www.gnu.org/licenses/lgpl.html) * @author Chunsheng Wang * @package product - * @version $Id: zh-tw.php 5029 2013-07-06 03:00:01Z chencongzhi520@gmail.com $ + * @version $Id: zh-tw.php 5091 2013-07-10 06:06:46Z chencongzhi520@gmail.com $ * @link http://www.zentao.net */ -$lang->product->common = '產品視圖'; -$lang->product->index = "產品首頁"; -$lang->product->browse = "瀏覽產品"; -$lang->product->dynamic= "動態"; -$lang->product->view = "產品信息"; -$lang->product->edit = "編輯產品"; -$lang->product->create = "新增產品"; -$lang->product->read = "產品詳情"; -$lang->product->delete = "刪除產品"; -$lang->product->close = "關閉"; -$lang->product->select = '--請選擇產品--'; -$lang->product->mine = '我負責:'; -$lang->product->other = '其他:'; -$lang->product->closed = '已關閉»'; +$lang->product->common = '產品視圖'; +$lang->product->index = "產品首頁"; +$lang->product->browse = "瀏覽產品"; +$lang->product->dynamic = "動態"; +$lang->product->view = "產品信息"; +$lang->product->edit = "編輯產品"; +$lang->product->batchEdit = "批量編輯"; +$lang->product->create = "新增產品"; +$lang->product->read = "產品詳情"; +$lang->product->delete = "刪除產品"; +$lang->product->close = "關閉"; +$lang->product->select = '--請選擇產品--'; +$lang->product->mine = '我負責:'; +$lang->product->other = '其他:'; +$lang->product->closed = '已關閉»'; $lang->product->basicInfo = '基本信息'; $lang->product->otherInfo = '其他信息'; @@ -86,5 +87,5 @@ $lang->product->aclList['open'] = '預設設置(有產品視圖權限,即 $lang->product->aclList['private'] = '私有產品(只有項目團隊成員才能訪問)'; $lang->product->aclList['custom'] = '自定義白名單(團隊成員和白名單的成員可以訪問)'; -$lang->product->storySummary = "本頁共 %s 個需求,預計 %s 個工時。"; -$lang->product->noMatchedProduct = '找不到與"%s"相關的產品'; +$lang->product->storySummary = "本頁共 %s 個需求,預計 %s 個工時,用例覆蓋率%s。"; +$lang->product->noMatched = '找不到包含"%s"的產品'; diff --git a/module/productplan/lang/zh-tw.php b/module/productplan/lang/zh-tw.php index 9dc2426390..7b964729fe 100644 --- a/module/productplan/lang/zh-tw.php +++ b/module/productplan/lang/zh-tw.php @@ -9,23 +9,32 @@ * @version $Id: zh-tw.php 4659 2013-04-17 06:45:08Z chencongzhi520@gmail.com $ * @link http://www.zentao.net */ -$lang->productplan->common = '產品計劃'; -$lang->productplan->browse = "瀏覽計劃"; -$lang->productplan->index = "計劃列表"; -$lang->productplan->create = "創建計劃"; -$lang->productplan->edit = "編輯計劃"; -$lang->productplan->delete = "刪除計劃"; -$lang->productplan->view = "計劃詳情"; +$lang->productplan->common = '產品計劃'; +$lang->productplan->browse = "瀏覽計劃"; +$lang->productplan->index = "計劃列表"; +$lang->productplan->create = "創建計劃"; +$lang->productplan->edit = "編輯計劃"; +$lang->productplan->delete = "刪除計劃"; +$lang->productplan->view = "計劃詳情"; +$lang->productplan->bugSummary = "本頁共 %s 個Bug"; +$lang->productplan->basicInfo = '基本信息'; + +$lang->productplan->batchUnlink = "批量移除"; $lang->productplan->linkStory = "關聯需求"; $lang->productplan->unlinkStory = "移除需求"; -$lang->productplan->batchUnlinkStory = "批量移除"; +$lang->productplan->batchUnlinkStory = "批量移除需求"; $lang->productplan->linkedStories = '已關聯需求列表'; $lang->productplan->unlinkedStories = '未關聯需求列表'; +$lang->productplan->linkBug = "關聯Bug"; +$lang->productplan->unlinkBug = "移除Bug"; +$lang->productplan->batchUnlinkBug = "批量移除Bug"; +$lang->productplan->linkedBugs = '已關聯Bug列表'; +$lang->productplan->unlinkedBugs = '未關聯Bug列表'; + $lang->productplan->confirmDelete = "您確認刪除該計劃嗎?"; $lang->productplan->confirmUnlinkStory = "您確認移除該需求嗎?"; - -$lang->productplan->basicInfo ='基本信息'; +$lang->productplan->confirmUnlinkBug = "您確認移除該Bug嗎?"; $lang->productplan->id = '編號'; $lang->productplan->product = '產品'; diff --git a/module/project/lang/zh-tw.php b/module/project/lang/zh-tw.php index 50f995189b..d205b18809 100644 --- a/module/project/lang/zh-tw.php +++ b/module/project/lang/zh-tw.php @@ -6,7 +6,7 @@ * @license LGPL (http://www.gnu.org/licenses/lgpl.html) * @author Chunsheng Wang * @package project - * @version $Id: zh-tw.php 5029 2013-07-06 03:00:01Z chencongzhi520@gmail.com $ + * @version $Id: zh-tw.php 5094 2013-07-10 08:46:15Z chencongzhi520@gmail.com $ * @link http://www.zentao.net */ /* 欄位列表。*/ @@ -118,6 +118,7 @@ $lang->project->copy = "複製項目"; $lang->project->delete = "刪除項目"; $lang->project->browse = "瀏覽項目"; $lang->project->edit = "編輯項目"; +$lang->project->batchEdit = "批量編輯"; $lang->project->manageMembers = '團隊管理'; $lang->project->unlinkMember = '移除成員'; $lang->project->unlinkStory = '移除需求'; @@ -162,23 +163,23 @@ $lang->project->aboveAllProduct = '以上所有產品'; $lang->project->aboveAllProject = '以上所有項目'; /* 頁面提示。*/ -$lang->project->selectProject = "請選擇項目"; -$lang->project->beginAndEnd = '起止時間'; -$lang->project->lblStats = '工時統計'; -$lang->project->stats = '可用工時%s工時
總共預計%s工時
已經消耗%s工時
預計剩餘%s工時'; -$lang->project->oneLineStats = "項目%s, 代號為%s, 相關產品為%s,%s開始,%s結束,總預計%s工時,已消耗%s工時,預計剩餘%s工時。"; -$lang->project->taskSummary = "本頁共 %s 個任務,未開始%s,進行中%s,總預計%s工時,已消耗%s工時,剩餘%s工時。"; -$lang->project->memberHours = "%s共有 %s 個可用工時,"; -$lang->project->groupSummary = "本組共 %s 個任務,未開始%s,進行中%s,總預計%s工時,已消耗%s工時,剩餘%s工時。"; -$lang->project->wbs = "分解任務"; -$lang->project->batchWBS = "批量分解"; -$lang->project->largeBurnChart = '點擊查看大圖'; -$lang->project->howToUpdateBurn = "如何更新?"; -$lang->project->whyNoStories = "看起來沒有需求可以關聯。請檢查下項目關聯的產品中有沒有需求,而且要確保它們已經審核通過。"; -$lang->project->doneProjects = '已結束'; -$lang->project->unDoneProjects = '未結束'; -$lang->project->copyTeam = '複製團隊'; -$lang->product->noMatchedProject = '找不到與"%s"相關的項目'; +$lang->project->selectProject = "請選擇項目"; +$lang->project->beginAndEnd = '起止時間'; +$lang->project->lblStats = '工時統計'; +$lang->project->stats = '可用工時%s工時
總共預計%s工時
已經消耗%s工時
預計剩餘%s工時'; +$lang->project->oneLineStats = "項目%s, 代號為%s, 相關產品為%s,%s開始,%s結束,總預計%s工時,已消耗%s工時,預計剩餘%s工時。"; +$lang->project->taskSummary = "本頁共 %s 個任務,未開始%s,進行中%s,總預計%s工時,已消耗%s工時,剩餘%s工時。"; +$lang->project->memberHours = "%s共有 %s 個可用工時,"; +$lang->project->groupSummary = "本組共 %s 個任務,未開始%s,進行中%s,總預計%s工時,已消耗%s工時,剩餘%s工時。"; +$lang->project->wbs = "分解任務"; +$lang->project->batchWBS = "批量分解"; +$lang->project->largeBurnChart = '點擊查看大圖'; +$lang->project->howToUpdateBurn = "如何更新?"; +$lang->project->whyNoStories = "看起來沒有需求可以關聯。請檢查下項目關聯的產品中有沒有需求,而且要確保它們已經審核通過。"; +$lang->project->doneProjects = '已結束'; +$lang->project->unDoneProjects = '未結束'; +$lang->project->copyTeam = '複製團隊'; +$lang->product->noMatched = '找不到包含"%s"的項目'; /* 交互提示。*/ $lang->project->confirmDelete = '您確定刪除項目[%s]嗎?'; @@ -191,7 +192,10 @@ $lang->project->afterInfo = '項目添加成功,您現在可以進 $lang->project->setTeam = '設置團隊'; $lang->project->linkStory = '關聯需求'; $lang->project->createTask = '添加任務'; -$lang->project->goback = '返回項目首頁(5秒後將自動跳轉)'; +$lang->project->goback = '返回項目首頁'; +$lang->project->linkProduct = '選擇產品關聯...'; +$lang->project->withWeekend = '顯示周末'; +$lang->project->noWeekend = '去除周末'; /* 統計。*/ $lang->project->charts = new stdclass(); diff --git a/module/qa/lang/zh-tw.php b/module/qa/lang/zh-tw.php index 3dda2b596d..c512f9c2c7 100644 --- a/module/qa/lang/zh-tw.php +++ b/module/qa/lang/zh-tw.php @@ -9,5 +9,6 @@ * @version $Id: zh-tw.php 4129 2013-01-18 01:58:14Z wwccss $ * @link http://www.zentao.net */ +$lang->qa = new stdclass(); $lang->qa->common = '測試視圖'; $lang->qa->index = "測試首頁"; diff --git a/module/report/lang/zh-tw.php b/module/report/lang/zh-tw.php index aa1f7304ed..bc24b08818 100644 --- a/module/report/lang/zh-tw.php +++ b/module/report/lang/zh-tw.php @@ -6,7 +6,7 @@ * @license LGPL (http://www.gnu.org/licenses/lgpl.html) * @author Chunsheng Wang * @package report - * @version $Id: zh-tw.php 4955 2013-07-02 01:47:21Z chencongzhi520@gmail.com $ + * @version $Id: zh-tw.php 5080 2013-07-10 00:46:59Z wyd621@gmail.com $ * @link http://www.zentao.net */ $lang->report->common = '統計視圖'; @@ -69,7 +69,7 @@ $lang->report->taskTotal = "總任務數"; $lang->report->manhourTotal = "總工時"; $lang->report->bugTotal = "共%s個Bug"; $lang->report->validRate = "有效率"; -$lang->report->validRateTips = "方案為已解決或延期/狀態為已解決"; +$lang->report->validRateTips = "方案為已解決或延期/狀態為已解決或已關閉"; $lang->report->unplanned = '未計劃'; /* daily reminder. */ @@ -84,4 +84,4 @@ $lang->report->mailtitle->bug = " Bugs(%s),"; $lang->report->mailtitle->task = " 任務(%s),"; $lang->report->mailtitle->todo = " 待辦(%s),"; -$lang->report->proVersion = '更多精彩,盡在專業版!'; +$lang->report->proVersion = '更多精彩,盡在專業版!'; diff --git a/module/sso/lang/zh-tw.php b/module/sso/lang/zh-tw.php index e69de29bb2..b6b208c353 100644 --- a/module/sso/lang/zh-tw.php +++ b/module/sso/lang/zh-tw.php @@ -0,0 +1,43 @@ +sso->common = '單點登錄'; +$lang->sso->browse = '應用列表'; +$lang->sso->create = '添加應用'; +$lang->sso->edit = '編輯應用'; +$lang->sso->delete = '刪除應用'; +$lang->sso->code = '代號'; +$lang->sso->title = '名稱'; +$lang->sso->key = '密鑰'; +$lang->sso->ip = 'IP列表'; +$lang->sso->createKey = '重新生成密鑰'; + +$lang->sso->confirmDelete = '您確定刪除該應用嗎?'; + +$lang->sso->note = new stdClass(); +$lang->sso->note->title = '授權應用名稱'; +$lang->sso->note->code = '授權應用代號'; +$lang->sso->note->ip = "允許該應用使用這些ip訪問,多個ip使用逗號隔開。支持IP段,如192.168.1.*"; + +$lang->sso->error = new stdClass(); +$lang->sso->error->title = '名稱不能為空'; +$lang->sso->error->code = '代號不能為空'; +$lang->sso->error->key = '密鑰不能為空'; +$lang->sso->error->ip = 'IP列表不能為空'; + +$lang->sso->instruction = <<示例應用:名稱為"測試",代號為"test",密鑰為"20c8eb0d522d2e1a09d4ea18e4df3a59",IP列表為"192.168.11.*,127.0.0.1"。

+

1.用戶驗證

+

授權應用請求禪道的用戶驗證API,檢查用戶在該應用輸入的用戶名和密碼是否正確,實現單點登錄。

+

API地址為sso模組的auth方法,POST數據為登錄用戶的用戶名account和密碼與密鑰形成的加密字元串md5(md5(password) + key),成功則返回用戶信息(json格式),失敗則返回fail。

+

示例:請求地址 http:://www.demo.com/sso-auth-test,POST字元串 account=admin&authcode=c44c577432230ad8e67160d3f9f0b91c。

+

    註:test為應用代號,c44c577432230ad8e67160d3f9f0b91為md5(md5('123456') + '20c8eb0d522d2e1a09d4ea18e4df3a59')

+

2.獲取用戶列表

+

授權應用訪問禪道的用戶列表API,獲取禪道所有用戶信息。

+

API地址為sso模組的users方法,POST數據為應用密鑰,成功返回用戶列表(json格式),失敗返回fail。

+

示例:請求地址 http:://www.demo.com/sso-users-test,POST字元串 key=20c8eb0d522d2e1a09d4ea18e4df3a59。

+

    註:test為應用代號,20c8eb0d522d2e1a09d4ea18e4df3a59為應用密鑰

+

3.獲取部門列表

+

授權應用訪問禪道的部門列表API,獲取禪道所有部門信息。

+

API地址為sso模組的depts方法,POST數據為應用密鑰,成功返回用戶列表(json格式),失敗返回fail。

+

示例:請求地址 http:://www.demo.com/sso-depts-test,POST字元串 key=20c8eb0d522d2e1a09d4ea18e4df3a59。

+

    註:test為應用代號,20c8eb0d522d2e1a09d4ea18e4df3a59為應用密鑰

+EOT; diff --git a/module/story/lang/en.php b/module/story/lang/en.php index 2d9fadf106..7efd42928b 100644 --- a/module/story/lang/en.php +++ b/module/story/lang/en.php @@ -30,6 +30,8 @@ $lang->story->bugs = "Bug"; $lang->story->linkStory = 'Related story'; $lang->story->export = "Export"; $lang->story->reportChart = "Report"; +$lang->story->batchChangePlan = "Batch change plan"; +$lang->story->batchChangeStage = "Batch change stage"; $lang->story->common = 'Story'; $lang->story->id = 'ID'; diff --git a/module/story/lang/zh-cn.php b/module/story/lang/zh-cn.php index 52bd9502c1..0a0728d689 100644 --- a/module/story/lang/zh-cn.php +++ b/module/story/lang/zh-cn.php @@ -30,6 +30,8 @@ $lang->story->bugs = "Bug"; $lang->story->linkStory = '关联需求'; $lang->story->export = "导出"; $lang->story->reportChart = "统计报表"; +$lang->story->batchChangePlan = "批量修改计划"; +$lang->story->batchChangeStage = "批量修改阶段"; $lang->story->common = '需求'; $lang->story->id = '编号'; diff --git a/module/story/lang/zh-tw.php b/module/story/lang/zh-tw.php index 3fddd06781..e182186108 100644 --- a/module/story/lang/zh-tw.php +++ b/module/story/lang/zh-tw.php @@ -6,7 +6,7 @@ * @license LGPL (http://www.gnu.org/licenses/lgpl.html) * @author Chunsheng Wang * @package story - * @version $Id: zh-tw.php 4684 2013-04-27 05:49:28Z chencongzhi520@gmail.com $ + * @version $Id: zh-tw.php 5141 2013-07-15 05:57:15Z chencongzhi520@gmail.com $ * @link http://www.zentao.net */ $lang->story->browse = "需求列表"; @@ -16,6 +16,7 @@ $lang->story->batchCreate = "批量添加"; $lang->story->change = "變更"; $lang->story->changed = '需求變更'; $lang->story->review = '評審'; +$lang->story->batchReview = '批量評審'; $lang->story->edit = "編輯"; $lang->story->batchEdit = "批量編輯"; $lang->story->close = '關閉'; @@ -29,6 +30,8 @@ $lang->story->bugs = "Bug"; $lang->story->linkStory = '關聯需求'; $lang->story->export = "導出"; $lang->story->reportChart = "統計報表"; +$lang->story->batchChangePlan = "批量修改計劃"; +$lang->story->batchChangeStage = "批量修改階段"; $lang->story->common = '需求'; $lang->story->id = '編號'; @@ -194,6 +197,7 @@ $lang->story->report = new stdclass(); $lang->story->report->common = '報表'; $lang->story->report->select = '請選擇報表類型'; $lang->story->report->create = '生成報表'; +$lang->story->report->value = '需求數'; $lang->story->report->charts['storysPerProduct'] = '產品需求數量'; $lang->story->report->charts['storysPerModule'] = '模組需求數量'; @@ -236,6 +240,19 @@ $lang->story->report->storysPerClosedReason = new stdclass(); $lang->story->report->storysPerEstimate = new stdclass(); $lang->story->report->storysPerChange = new stdclass(); +$lang->story->report->storysPerProduct->item = '產品'; +$lang->story->report->storysPerModule->item = '模組'; +$lang->story->report->storysPerSource->item = '來源'; +$lang->story->report->storysPerPlan->item = '計劃'; +$lang->story->report->storysPerStatus->item = '狀態'; +$lang->story->report->storysPerStage->item = '階段'; +$lang->story->report->storysPerPri->item = '優先順序'; +$lang->story->report->storysPerOpenedBy->item = '用戶'; +$lang->story->report->storysPerAssignedTo->item = '用戶'; +$lang->story->report->storysPerClosedReason->item = '原因'; +$lang->story->report->storysPerEstimate->item = '預計工時'; +$lang->story->report->storysPerChange->item = '變更次數'; + $lang->story->report->storysPerProduct->graph = new stdclass(); $lang->story->report->storysPerModule->graph = new stdclass(); $lang->story->report->storysPerSource->graph = new stdclass(); @@ -264,4 +281,6 @@ $lang->story->report->storysPerChange->graph->xAxisName = '變更次數'; $lang->story->placeholder = new stdclass(); $lang->story->placeholder->estimate = "完成該需求的工作量"; -$lang->story->placeholder->mailto = '輸入用戶名自動完成'; + +$lang->story->chosen = new stdClass(); +$lang->story->chosen->reviewedBy = '選擇評審人...'; diff --git a/module/task/lang/zh-tw.php b/module/task/lang/zh-tw.php index 191fb1d9c2..8f6beef9e6 100644 --- a/module/task/lang/zh-tw.php +++ b/module/task/lang/zh-tw.php @@ -155,6 +155,7 @@ $lang->task->report = new stdclass(); $lang->task->report->common = '報表'; $lang->task->report->select = '請選擇報表類型'; $lang->task->report->create = '生成報表'; +$lang->task->report->value = '任務數'; $lang->task->report->charts['tasksPerProject'] = '項目任務數統計'; $lang->task->report->charts['tasksPerModule'] = '模組任務數統計'; @@ -199,6 +200,20 @@ $lang->task->report->tasksPerFinishedBy = new stdclass(); $lang->task->report->tasksPerClosedReason = new stdclass(); $lang->task->report->finishedTasksPerDay = new stdclass(); +$lang->task->report->tasksPerProject->item ='項目'; +$lang->task->report->tasksPerModule->item ='模組'; +$lang->task->report->tasksPerAssignedTo->item ='用戶'; +$lang->task->report->tasksPerType->item ='類型'; +$lang->task->report->tasksPerPri->item ='優先順序'; +$lang->task->report->tasksPerStatus->item ='狀態'; +$lang->task->report->tasksPerDeadline->item ='日期'; +$lang->task->report->tasksPerEstimate->item ='預計'; +$lang->task->report->tasksPerLeft->item ='剩餘'; +$lang->task->report->tasksPerConsumed->item ='消耗'; +$lang->task->report->tasksPerFinishedBy->item ='用戶'; +$lang->task->report->tasksPerClosedReason->item ='原因'; +$lang->task->report->finishedTasksPerDay->item ='日期'; + $lang->task->report->tasksPerProject->graph = new stdclass(); $lang->task->report->tasksPerModule->graph = new stdclass(); $lang->task->report->tasksPerAssignedTo->graph = new stdclass(); @@ -233,4 +248,3 @@ $lang->task->report->finishedTasksPerDay->graph->rotateNames = '1'; $lang->task->placeholder = new stdclass(); $lang->task->placeholder->estimate = '對該任務最初的預計'; -$lang->task->placeholder->mailto = '輸入用戶名進行選擇'; diff --git a/module/testcase/lang/en.php b/module/testcase/lang/en.php index da4c2833f2..5b2a8a9d42 100644 --- a/module/testcase/lang/en.php +++ b/module/testcase/lang/en.php @@ -66,7 +66,6 @@ $lang->testcase->importID = "Linenum"; $lang->testcase->showImport = "Show import"; $lang->testcase->exportTemplet = "Export templet"; $lang->testcase->export = "Export"; -$lang->testcase->export = "Export"; $lang->testcase->confirmChange = 'Confirm case change'; $lang->testcase->confirmStoryChange = 'Confirm story change'; diff --git a/module/testcase/lang/zh-tw.php b/module/testcase/lang/zh-tw.php index 93fd0e11bd..4f18d5b153 100644 --- a/module/testcase/lang/zh-tw.php +++ b/module/testcase/lang/zh-tw.php @@ -28,6 +28,7 @@ $lang->testcase->lastEditedBy = '最後修改者'; $lang->testcase->lastEditedDate = '最後修改日期'; $lang->testcase->version = '用例版本'; $lang->testcase->result = '測試結果'; +$lang->testcase->lastRunResult = '結果'; $lang->testcase->real = '實際情況'; $lang->testcase->keywords = '關鍵詞'; $lang->testcase->files = '附件'; @@ -43,6 +44,7 @@ $lang->testcase->lastEditedDateAB = '修改日期'; $lang->testcase->allProduct = '所有產品'; $lang->testcase->fromBug = '來源Bug'; $lang->testcase->toBug = '生成Bug'; +$lang->testcase->changed = '用例變更'; $lang->case = $lang->testcase; // 用於DAO檢查時使用。因為case是系統關鍵字,所以無法定義該模組為case,只能使用testcase,但表還是使用的case。 $lang->testcase->stepID = '編號'; @@ -59,10 +61,19 @@ $lang->testcase->edit = "編輯"; $lang->testcase->batchEdit = "批量編輯 "; $lang->testcase->delete = "刪除"; $lang->testcase->browse = "用例列表"; -$lang->testcase->import = "導入用例"; +$lang->testcase->import = "導入"; +$lang->testcase->importID = "行號"; +$lang->testcase->showImport = "顯示導入內容"; +$lang->testcase->exportTemplet = "導出模板"; $lang->testcase->export = "導出"; +$lang->testcase->confirmChange = '確認用例變動'; $lang->testcase->confirmStoryChange = '確認需求變動'; +$lang->testcase->editHaved = '修改已有用例'; +$lang->testcase->addNew = '添加新用例'; + +$lang->testcase->num = '導入用例個數:'; + $lang->testcase->deleteStep = '刪除'; $lang->testcase->insertBefore = '之前添加'; $lang->testcase->insertAfter = '之後添加'; @@ -143,3 +154,5 @@ $lang->testcase->resultList['blocked'] = '阻塞'; $lang->testcase->buttonEdit = '編輯'; $lang->testcase->buttonToList = '返回'; + +$lang->testcase->errorEncode = '無數據,請選擇正確的編碼重新上傳!'; diff --git a/module/testtask/lang/zh-tw.php b/module/testtask/lang/zh-tw.php index 35344b19f7..641e6d3102 100644 --- a/module/testtask/lang/zh-tw.php +++ b/module/testtask/lang/zh-tw.php @@ -49,6 +49,10 @@ $lang->testtask->lastRunTime = '執行時間'; $lang->testtask->lastRunResult = '結果'; $lang->testtask->report = '測試總結'; +$lang->testtask->legendDesc = '任務描述'; +$lang->testtask->legendReport = '測試總結'; +$lang->testtask->legendBasicInfo = '基本信息'; + $lang->testtask->statusList['wait'] = '未開始'; $lang->testtask->statusList['doing'] = '進行中'; $lang->testtask->statusList['done'] = '已完成'; @@ -64,11 +68,13 @@ $lang->testtask->unlinkedCases = '未關聯'; $lang->testtask->linkedCases = '已關聯'; $lang->testtask->linkByStory = '按需求關聯'; $lang->testtask->linkByBug = '按Bug關聯'; -$lang->testtask->confirmDelete = '您確認要刪除該測試任務嗎?'; $lang->testtask->passAll = '全部通過'; $lang->testtask->pass = '通過'; $lang->testtask->fail = '失敗'; +$lang->testtask->confirmDelete = '您確認要刪除該測試任務嗎?'; +$lang->testtask->confirmUnlinkCase = '您確認要移除該用例嗎?'; + $lang->testtask->byModule = '按模組'; $lang->testtask->assignedToMe = '指派給我'; $lang->testtask->allCases = '所有用例'; diff --git a/module/todo/lang/zh-tw.php b/module/todo/lang/zh-tw.php index bbc16c1110..0a5ed76c85 100644 --- a/module/todo/lang/zh-tw.php +++ b/module/todo/lang/zh-tw.php @@ -23,6 +23,7 @@ $lang->todo->export = "導出"; $lang->todo->delete = "刪除待辦"; $lang->todo->browse = "瀏覽待辦"; $lang->todo->import2Today = "導入到今天"; +$lang->todo->import = "導入到"; $lang->todo->changeStatus = "更改"; $lang->todo->id = '編號'; diff --git a/module/upgrade/lang/en.php b/module/upgrade/lang/en.php index e15810cddf..330c1d004f 100644 --- a/module/upgrade/lang/en.php +++ b/module/upgrade/lang/en.php @@ -38,6 +38,7 @@ $lang->upgrade->toVersion = 'To version'; $lang->upgrade->confirm = 'Confirm the sql to executed.'; $lang->upgrade->sureExecute = 'Execute'; $lang->upgrade->forbiddenExt = 'Because it is incompatible with this version, the following extension automatically disabled, :'; +$lang->upgrade->checkExtension = 'Checking plugin compatibility, please wait ...'; $lang->upgrade->fromVersions['0_3beta'] = '0.3 BETA'; $lang->upgrade->fromVersions['0_4beta'] = '0.4 BETA'; diff --git a/module/upgrade/lang/zh-tw.php b/module/upgrade/lang/zh-tw.php index 6ebb1c8865..36e3161374 100644 --- a/module/upgrade/lang/zh-tw.php +++ b/module/upgrade/lang/zh-tw.php @@ -6,7 +6,7 @@ * @license LGPL (http://www.gnu.org/licenses/lgpl.html) * @author Chunsheng Wang * @package upgrade - * @version $Id: zh-tw.php 4989 2013-07-03 07:05:45Z zhujinyonging@gmail.com $ + * @version $Id: zh-tw.php 5119 2013-07-12 08:06:42Z wyd621@gmail.com $ * @link http://www.zentao.net */ $lang->upgrade->common = '升級'; @@ -37,6 +37,8 @@ $lang->upgrade->fromVersion = '原來的版本'; $lang->upgrade->toVersion = '升級到'; $lang->upgrade->confirm = '確認要執行的SQL語句'; $lang->upgrade->sureExecute = '確認執行'; +$lang->upgrade->forbiddenExt = '以下插件與新版本不兼容,已經自動禁用:'; +$lang->upgrade->checkExtension = '正在檢查插件的兼容性,請稍後 ...'; $lang->upgrade->fromVersions['0_3beta'] = '0.3 BETA'; $lang->upgrade->fromVersions['0_4beta'] = '0.4 BETA'; @@ -69,3 +71,4 @@ $lang->upgrade->fromVersions['4_0_beta2'] = '4.0 BETA2'; $lang->upgrade->fromVersions['4_0'] = '4.0'; $lang->upgrade->fromVersions['4_0_1'] = '4.0.1'; $lang->upgrade->fromVersions['4_1'] = '4.1'; +$lang->upgrade->fromVersions['4_2_beta'] = '4.2.beta'; diff --git a/module/upgrade/model.php b/module/upgrade/model.php index e797e71033..27edd4eba1 100644 --- a/module/upgrade/model.php +++ b/module/upgrade/model.php @@ -142,6 +142,7 @@ class upgradeModel extends model case '4_0': $confirmContent .= file_get_contents($this->getUpgradeFile('4.0')); case '4_0_1': $confirmContent .= file_get_contents($this->getUpgradeFile('4.0.1')); case '4_1': $confirmContent .= file_get_contents($this->getUpgradeFile('4.1')); + case '4_2_beta': $confirmContent .= file_get_contents($this->getUpgradeFile('4.2')); } return str_replace('zt_', $this->config->db->prefix, $confirmContent); } diff --git a/module/user/lang/zh-tw.php b/module/user/lang/zh-tw.php index 6f6ef280a7..c8af0508c1 100644 --- a/module/user/lang/zh-tw.php +++ b/module/user/lang/zh-tw.php @@ -124,6 +124,8 @@ $lang->user->loginWithDemoUser = '使用demo賬號登錄:'; $lang->user->placeholder = new stdclass(); $lang->user->placeholder->account = '英文、數字和下劃線的組合,三位以上'; $lang->user->placeholder->password1 = '六位以上'; +$lang->user->placeholder->role = '角色影響內容和用戶列表的順序。'; +$lang->user->placeholder->group = '分組決定用戶的權限列表。'; $lang->user->placeholder->join = '入職日期'; $lang->user->placeholder->commiter = '版本控制系統(subversion)中的帳號'; diff --git a/tools/check.php b/tools/check.php index 5ac62db33c..66f750ce0d 100755 --- a/tools/check.php +++ b/tools/check.php @@ -111,8 +111,8 @@ foreach(glob($moduleRoot . '*') as $modulePath) /* checking actions of every module. */ echo '-------------lang checking-----------------' . "\n"; -include '../../module/common/lang/zh-cn.php'; -include '../../config/config.php'; +include '../module/common/lang/zh-cn.php'; +include '../config/config.php'; foreach(glob($moduleRoot . '*') as $modulePath) { unset($lang); @@ -142,7 +142,7 @@ foreach(glob($moduleRoot . '*') as $modulePath) $key = trim($key); $lineNO = $lineNO + 1; echo "module $moduleName need checking, command is:"; - echo " vim -O +$lineNO ../../module/$moduleName/lang/zh-cn.php +$lineNO ../../module/$moduleName/lang/en.php \n"; + echo " vim -O +$lineNO ../module/$moduleName/lang/zh-cn.php +$lineNO ../module/$moduleName/lang/en.php \n"; break; } }