Merge branch 'master' of git@github.com:easysoft/zentaopms

This commit is contained in:
wwccss
2013-08-06 13:05:09 +08:00
60 changed files with 655 additions and 192 deletions
+3 -1
View File
@@ -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.2'; // 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
@@ -134,6 +134,7 @@ define('TABLE_FILE', '`' . $config->db->prefix . 'file`');
define('TABLE_HISTORY', '`' . $config->db->prefix . 'history`');
define('TABLE_EXTENSION', '`' . $config->db->prefix . 'extension`');
define('TABLE_WEBAPP', '`' . $config->db->prefix . 'webapp`');
define('TABLE_CUSTOMLANG', '`' . $config->db->prefix . 'customLang`');
$config->objectTables['product'] = TABLE_PRODUCT;
$config->objectTables['story'] = TABLE_STORY;
@@ -150,6 +151,7 @@ $config->objectTables['user'] = TABLE_USER;
$config->objectTables['doc'] = TABLE_DOC;
$config->objectTables['doclib'] = TABLE_DOCLIB;
$config->objectTables['todo'] = TABLE_TODO;
$config->objectTables['customlang'] = TABLE_CUSTOMLANG;
/* Include extension config files. */
$extConfigFiles = glob($configRoot . 'ext/*.php');
+7
View File
@@ -0,0 +1,7 @@
REATE TABLE `demoTTT`.`zt_customLang` (
`id` MEDIUMINT( 8 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`lang` VARCHAR( 30 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`object` VARCHAR( 30 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`key` VARCHAR( 60 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`value` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL
) ENGINE = MYISAM;
+1
View File
@@ -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',
+84
View File
@@ -1,3 +1,87 @@
2013-8-5 4.3.beta
完成的功能:
1156 在确认bug的时候可以设置bug的优先级
1155 处理发信逻辑,已经删除的用户不要再发送邮件
1154 参考论坛用户的建议,考虑实现浏览器贴图上传功能
1152 备注中添加的超链接在显示的时候被过滤掉了
1151 在禅道中增加对浏览器支持的说明
1150 用例导入模板页面,显示模板编号用于比对。
1127 打包的时候把扩展目录下面的css,js也都生成
1116 显示燃尽图的时候默认将周末去掉。
1111 web应用安装之后,页面不用刷新。改用ajax修改安装按钮的状态。
1108 从计划中移除需求的时候,正确处理其所处的阶段
1105 zentaotest, zentaotask,zentaostory单独设置flow。
1103 发信应该可以重新设置。
1102 调整组织视图用户界面各个功能页面的样式,保持统一
1101 完善升级逻辑,增加插件的兼容性处理。
1100 增加不兼容插件功能
1099 安装插件的时候,将确认按钮放在上面
1096 桌面提醒增加繁体版本
1088 在创建附件目录的时候,自动创建一个空白的index.html
1080 整理使用到的session列表
1078 禅道中有开始和结束日期的地方增加结束日期不能小于开始日期的检查
1074 作为测试人员,我需要在测试任务的详情里方便的查看测试版本需求
1072 用例的批量添加页面需要处理。
1070 项目视图的需求列表页面增加创建用例的链接
1069 添加完项目之后的弹出页面停留。
1068 在添加对象的时候,如果某个字段没有取值列表,给出相应的链接,并可局部刷新
1067 创建新的计划的时候选择最新的一个计划结束日期开始。
1066 创建应用的时候,判断是否有http://
1065 批量添加用户的时候,第一个密码的同上按钮去掉。
1064 用户列表里面的最后登录时间去掉1970。
1063 添加用户的时候,没有带部门条件。(包括批量添加)
1062 部门的排序给默认数字。
1061 安装成功之后的首页,将项目和产品区块的背景色去掉。
1060 init.bat生成的ztcli.bat错误
1059 调整和修复任务、测试和需求扩展模块的代码
1057 重新梳理默认的权限列表
1056 没有批量编辑权限的情况下,把多选框去掉
1055 查看组织日志/TODO时,横向滚动时,锁定前两列的部门及员工姓名。
1053 启动任务的时候自动修改指派者
1052 测试任务的用例列表增加搜索功能 1049 备注编辑功能,只有最后一个备注才可以修改或者删除。
1045 详情页面的操作图标都加上提示。
1043 dao.class.php查询sql的时候自动增加deleted=0的条件
1042 增加bug的批量添加功能
1039 我的地盘里面的我的任务,bug,需求等增加批量操作。
1037 返回的按钮改为<<这种形式的?
1030 插件增加是否是官方出品字段
1029 创建项目的时候,关联产品使用chosen实现
1026 测试任务关联的用例版本发生变化之后,应当给予提示和确认。
1025 我的地盘中的用例增加执行功能,要判断是否是在测试任务中。
1022 添加需求,任务,bug,文档的时候判断是否重复。
1017 修复文档库当内容比较多的时候的页面框架变形的问题。
1010 我的地盘中的待办列表页面可以选择日期导入
1006 整理每个页面的标题和position
1005 各个列表页面的模块都可以折叠隐藏
1003 和禅道服务器进行交互的api都改为二级域名。
1002 和禅道服务器进行交互的api都加上语言选项
1000 从项目提交测试的bug自动修改其解决方案
994 重新设计项目列表的折叠和隐藏功能
986 批量添加的时候,将input改为textarea
981 调整各个对象编辑页面的标题文本框的排版
979 调整测试任务的详情页面,和其他的详情页面保持一致
971 将扩展编辑器放在插件菜单下面。
967 任务列表增加导入按钮
925 创建产品、需求的时候 复责人、评审人建议过滤closed
918 草稿需求阶段在取消计划和取消项目关联的时候没有处理
872 测试用例导出的数据 没有用例的执行结果
871 测试人员创建bug的时候可以选择没有权限的项目,但是创建bug之后却看不到,导致重复提交
853 实现需求测试用例覆盖率功能
826 在禅道中提供api方面的实际例子
746 使用ajax实现列表页面的删除或者移除功能
680 增加依赖插件的功能
586 优化批量添加用例时的需求列表
562 测试用例增加csv格式的导入功能
404 调整统计报表的展示形式
379 完善部门删除的逻辑
130 完善需求列表页面增加批量操作
122 计划中关联bug
修复的BUG:
451 【查询用例】执行用例的时候,不方便查看上一次的用例执行结果,建议将用例执行结果表单链接在用例的下方
453 激活bug时备注内容没有处理html代码,导致保存后页面布局严重混乱。
2013-7-8 4.2.beta
完成的功能:
+1
View File
@@ -1218,6 +1218,7 @@ class router
/* If the not strict mode, the keys of passed params and defaaul params msut be the same. */
if(!isset($this->config->strictParams) or $this->config->strictParams == false)
{
unset($passedParams['onlybody']);
$passedParams = array_values($passedParams);
$i = 0;
foreach($defaultParams as $key => $defaultValue)
+5 -4
View File
@@ -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';
+5 -4
View File
@@ -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 = '文本格式';
+6 -4
View File
@@ -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, 由 <strong>$actor</strong> 添加
$lang->action->desc->activated = '$date, 由 <strong>$actor</strong> 激活。' . "\n";
$lang->action->desc->moved = '$date, 由 <strong>$actor</strong> 移動,之前為 "$extra"。' . "\n";
$lang->action->desc->confirmed = '$date, 由 <strong>$actor</strong> 確認需求變動,最新版本為<strong>#$extra</strong>。' . "\n";
$lang->action->desc->caseconfirmed = '$date, 由 <strong>$actor</strong> 確認用例變動,最新版本為<strong>#$extra</strong>。' . "\n";
$lang->action->desc->bugconfirmed = '$date, 由 <strong>$actor</strong> 確認Bug。' . "\n";
$lang->action->desc->frombug = '$date, 由 <strong>$actor</strong> Bug轉化而來,Bug編號為 <strong>$extra</strong>。';
$lang->action->desc->started = '$date, 由 <strong>$actor</strong> 啟動。' . "\n";
+4 -4
View File
@@ -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 = "<span class='red'>註:如果您使用的不是所有功能,後續可以到“管理->插件”中,卸載相應的插件,即可重新使用禪道所有功能。</span>";
+13 -1
View File
@@ -6,9 +6,21 @@
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @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方式調試請參照頁面表單';
+1 -1
View File
@@ -74,7 +74,7 @@ $lang->bug->create = '提Bug';
$lang->bug->batchCreate = '批量添加';
$lang->bug->confirmBug = '确认';
$lang->bug->edit = '编辑';
$lang->bug->batchEdit = '批量编辑';
$lang->bug->batchEdit = '批量编辑';
$lang->bug->assignTo = '指派';
$lang->bug->browse = 'Bug列表';
$lang->bug->view = 'Bug详情';
+9 -4
View File
@@ -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, 由 <strong>$actor</strong> 解決,方案為 <strong>$extra</strong>。', 'extra' => $lang->bug->resolutionList);
$lang->bug->action->tostory = array('main' => '$date, 由 <strong>$actor</strong> 轉為<strong>需求</strong>,編號為 <strong>$extra</strong>。');
$lang->bug->action->totask = array('main' => '$date, 由 <strong>$actor</strong> 導入為<strong>任務</strong>,編號為 <strong>$extra</strong>。');
$lang->bug->action->resolved = array('main' => '$date, 由 <strong>$actor</strong> 解決,方案為 <strong>$extra</strong>。', 'extra' => $lang->bug->resolutionList);
$lang->bug->action->tostory = array('main' => '$date, 由 <strong>$actor</strong> 轉為<strong>需求</strong>,編號為 <strong>$extra</strong>。');
$lang->bug->action->totask = array('main' => '$date, 由 <strong>$actor</strong> 導入為<strong>任務</strong>,編號為 <strong>$extra</strong>。');
$lang->bug->action->linked2plan = array('main' => '$date, 由 <strong>$actor</strong> 關聯到計劃 <strong>$extra</strong>。');
$lang->bug->action->unlinkedfromplan = array('main' => '$date, 由 <strong>$actor</strong> 從計劃 <strong>$extra</strong> 移除。');
$lang->bug->placeholder = new stdclass();
$lang->bug->placeholder->mailto = '輸入用戶名自動選擇';
$lang->bug->placeholder->chooseBuilds = '選擇相關版本...';
-2
View File
@@ -38,5 +38,3 @@ $lang->build->bugs = '已關聯Bug';
$lang->build->finishStories = '本次共完成需求%s個';
$lang->build->resolvedBugs = '本次共解決Bug%s個';
$lang->build->notice = '版本請到[項目視圖]-[版本]創建。';
+24 -21
View File
@@ -270,29 +270,32 @@ $lang->user->menu = $lang->company->menu;
/* Admin menu. */
$lang->admin = new stdclass();
$lang->admin->menu = new stdclass();
$lang->admin->menu->index = array('link' => 'Index|admin|index');
$lang->admin->menu->extension = array('link' => 'Extension|extension|browse', 'subModule' => 'extension,editor');
$lang->admin->menu->mail = array('link' => 'Email|mail|index', 'subModule' => 'mail');
$lang->admin->menu->clearData = array('link' => 'Clear data|admin|cleardata');
$lang->admin->menu->convert = array('link' => 'Import|convert|index', 'subModule' => 'convert');
$lang->admin->menu->trashes = array('link' => 'Trash|action|trash', 'subModule' => 'action');
$lang->admin->menu->sso = array('link' => 'SSO|sso|browse', 'subModule' => 'sso');
$lang->admin->menu->index = array('link' => 'Index|admin|index');
$lang->admin->menu->extension = array('link' => 'Extension|extension|browse', 'subModule' => 'extension,editor');
$lang->admin->menu->customlang = array('link' => 'Custom lang|customlang|story', 'subModule' => 'customlang');
$lang->admin->menu->mail = array('link' => 'Email|mail|index', 'subModule' => 'mail');
$lang->admin->menu->clearData = array('link' => 'Clear data|admin|cleardata');
$lang->admin->menu->convert = array('link' => 'Import|convert|index', 'subModule' => 'convert');
$lang->admin->menu->trashes = array('link' => 'Trash|action|trash', 'subModule' => 'action');
$lang->admin->menu->sso = array('link' => 'SSO|sso|browse', 'subModule' => 'sso');
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
$lang->action = new stdclass();
$lang->extension = new stdclass();
$lang->editor = new stdclass();
$lang->mail = new stdclass();
$lang->sso = new stdclass();
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
$lang->action = new stdclass();
$lang->extension = new stdclass();
$lang->customlang = 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;
$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->convert->menu = $lang->admin->menu;
$lang->upgrade->menu = $lang->admin->menu;
$lang->action->menu = $lang->admin->menu;
$lang->extension->menu = $lang->admin->menu;
$lang->customlang->menu = $lang->admin->menu;
$lang->editor->menu = $lang->admin->menu;
$lang->mail->menu = $lang->admin->menu;
$lang->sso->menu = $lang->admin->menu;
/* Groups. */
$lang->menugroup = new stdclass();
+14 -12
View File
@@ -108,15 +108,17 @@ $lang->user->menuOrder = $lang->company->menuOrder;
/* admin menu order. */
$lang->admin->menuOrder[5] = 'index';
$lang->admin->menuOrder[10] = 'extension';
$lang->admin->menuOrder[15] = 'editor';
$lang->admin->menuOrder[20] = 'mail';
$lang->admin->menuOrder[25] = 'sso';
$lang->admin->menuOrder[30] = 'convert';
$lang->admin->menuOrder[35] = 'trashes';
$lang->convert->menuOrder = $lang->admin->menuOrder;
$lang->upgrade->menuOrder = $lang->admin->menuOrder;
$lang->action->menuOrder = $lang->admin->menuOrder;
$lang->extension->menuOrder = $lang->admin->menuOrder;
$lang->editor->menuOrder = $lang->admin->menuOrder;
$lang->mail->menuOrder = $lang->admin->menuOrder;
$lang->sso->menuOrder = $lang->admin->menuOrder;
$lang->admin->menuOrder[15] = 'customlang';
$lang->admin->menuOrder[20] = 'editor';
$lang->admin->menuOrder[25] = 'mail';
$lang->admin->menuOrder[30] = 'sso';
$lang->admin->menuOrder[35] = 'convert';
$lang->admin->menuOrder[40] = 'trashes';
$lang->convert->menuOrder = $lang->admin->menuOrder;
$lang->upgrade->menuOrder = $lang->admin->menuOrder;
$lang->action->menuOrder = $lang->admin->menuOrder;
$lang->extension->menuOrder = $lang->admin->menuOrder;
$lang->customlang->menuOrder = $lang->admin->menuOrder;
$lang->editor->menuOrder = $lang->admin->menuOrder;
$lang->mail->menuOrder = $lang->admin->menuOrder;
$lang->sso->menuOrder = $lang->admin->menuOrder;
+24 -21
View File
@@ -270,29 +270,32 @@ $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,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->admin->menu->index = array('link' => '首页|admin|index');
$lang->admin->menu->extension = array('link' => '扩展|extension|browse', 'subModule' => 'extension,editor');
$lang->admin->menu->customlang = array('link' => '语言配置|customlang|story', 'subModule' => 'customlang');
$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();
$lang->action = new stdclass();
$lang->extension = new stdclass();
$lang->editor = new stdclass();
$lang->mail = new stdclass();
$lang->sso = new stdclass();
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
$lang->action = new stdclass();
$lang->extension = new stdclass();
$lang->customlang = 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;
$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->convert->menu = $lang->admin->menu;
$lang->upgrade->menu = $lang->admin->menu;
$lang->action->menu = $lang->admin->menu;
$lang->extension->menu = $lang->admin->menu;
$lang->customlang->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();
+22 -15
View File
@@ -6,7 +6,7 @@
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @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 = '<span class="icon-arrow">&nbsp; </span>';
@@ -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 = "<div class='row'><div class='u-1 a-center' id='debugbar'>時間: %s 毫秒, 內存: %s KB, 查詢: %s. </div></div>";
$lang->reset = '重填';
$lang->refresh = '刷新';
$lang->edit = '編輯';
$lang->copy = '複製';
$lang->delete = '刪除';
@@ -137,10 +139,10 @@ $lang->my->menu = new stdclass();
$lang->my->menu->account = '<span id="mybg">&nbsp;</span>%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' => '<span class="icon-add">&nbsp;</span>添加分組|group|create', 'float' => 'right');
$lang->company->menu->batchAddUser = array('link' => '<span class="icon-add">&nbsp;</span>批量添加|user|batchCreate', 'subModule' => 'user', 'float' => 'right');
$lang->company->menu->batchAddUser = array('link' => '<span class="icon-add">&nbsp;</span>批量添加|user|batchCreate|dept=%s', 'subModule' => 'user', 'float' => 'right');
$lang->company->menu->addUser = array('link' => '<span class="icon-add">&nbsp;</span>添加用戶|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 = "<a href='http://www.zentao.net/goto.php?item=chinascrum' target='_blank'>Scrum社區</a> ";
$lang->agileTraining = "<a href='http://www.zentao.net/goto.php?item=agiletrain' target='_blank'>培訓</a> ";
$lang->donate = "<a href='http://www.zentao.net/goto.php?item=donate' target='_blank'>捐贈</a> ";
$lang->proVersion = "<a href='http://www.zentao.net/goto.php?item=proversion&from=footer' target='_blank' class='red'>購買專業版(特惠)!</a> ";
$lang->chinaScrum = "<a href='http://api.zentao.net/goto.php?item=chinascrum' target='_blank'>Scrum社區</a> ";
$lang->agileTraining = "<a href='http://api.zentao.net/goto.php?item=agiletrain' target='_blank'>培訓</a> ";
$lang->donate = "<a href='http://api.zentao.net/goto.php?item=donate' target='_blank'>捐贈</a> ";
$lang->proVersion = "<a href='http://api.zentao.net/goto.php?item=proversion&from=footer' target='_blank' class='red'>購買專業版(特惠)!</a> ";
$lang->downNotify = "下載桌面提醒";
$lang->suhosinInfo = "警告:數據太多,請在php.ini中修改<font color=red>sohusin.post.max_vars</font>和<font color=red>sohusin.request.max_vars</font>(設置更大的數)。 保存並重新啟動apache,否則會造成部分數據無法保存。";
$lang->noResultsMatch = "沒有匹配結果";
$lang->noResultsMatch = "沒有匹配結果";
$lang->chooseUsersToMail = "選擇要發信通知的用戶...";
/* 時間格式設置。*/
define('DT_DATETIME1', 'Y-m-d H:i:s');
+19
View File
@@ -0,0 +1,19 @@
<?php
$config->customlang = new stdClass();
$config->customlang->story = new stdClass();
$config->customlang->story->fields['priList'] = '优先级';
$config->customlang->story->fields['sourceList'] = '来源';
$config->customlang->story->fields['reasonList'] = '关闭原因';
$config->customlang->story->fields['reviewResultList'] = '评审结果';
$config->customlang->story->fields['statusList'] = '状态';
$config->customlang->story->fields['stageList'] = '阶段';
$config->customlang->story->canAdd = 'reasonList,reviewResultList,sourceList,priList';
$config->customlang->task = '';
$config->customlang->bug = '';
$config->customlang->testcase = '';
$config->customlang->testtask = '';
$config->customlang->todo = '';
$config->customlang->user = '';
+44
View File
@@ -0,0 +1,44 @@
<?php
/**
* The control file of xxx of ZenTaoPMS.
*
* @copyright Copyright 2009-2010 QingDao Nature Easy Soft Network Technology Co,LTD (www.cnezsoft.com)
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package xxx
* @version $Id$
* @link http://www.zentao.net
*/
class customlang extends control
{
public function __construct()
{
parent::__construct();
}
public function story($field = 'priList')
{
if(!empty($_POST))
{
$this->customlang->update('story', $field);
if(!dao::getError()) die(js::reload('parent'));
}
$this->app->loadLang('story');
$fieldList = array();
$standardList = $this->lang->story->$field;
$fieldList = $this->customlang->getLang('', $this->app->getClientLang(), 'story', $field);
$fieldList = $fieldList ? unserialize($fieldList->value) + $standardList: $standardList;
$this->view->title = $this->lang->customlang->common . $this->lang->colon . $this->lang->customlang->story;
$this->view->position[] = $this->lang->customlang->common;
$this->view->position[] = $this->lang->customlang->story;
$this->view->standardList = $standardList;
$this->view->fieldList = $fieldList;
$this->view->field = $field;
$this->view->canAdd = strpos($this->config->customlang->story->canAdd, $field) !== false;
$this->display();
}
}
+10
View File
@@ -0,0 +1,10 @@
<?php
$lang->customlang->common = 'Custom lang';
$lang->customlang->story = 'Story';
$lang->customlang->task = 'Task';
$lang->customlang->bug = 'Bug';
$lang->customlang->testcase = 'Test case';
$lang->customlang->testtask = 'Test task';
$lang->customlang->todo = 'Todo';
$lang->customlang->user = 'User';
+10
View File
@@ -0,0 +1,10 @@
<?php
$lang->customlang->common = '语言配置';
$lang->customlang->story = '需求';
$lang->customlang->task = '任务';
$lang->customlang->bug = 'Bug';
$lang->customlang->testcase = '测试用例';
$lang->customlang->testtask = '测试任务';
$lang->customlang->todo = '待办';
$lang->customlang->user = '用户';
+41
View File
@@ -0,0 +1,41 @@
<?php
/**
* The model file of xxx module of ZenTaoCMS.
*
* @copyright Copyright 2009-2010 QingDao Nature Easy Soft Network Technology Co,LTD (www.cnezsoft.com)
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package xxx
* @version $Id$
* @link http://www.zentao.net
*/
class customlangModel extends model
{
public function getLang($id, $lang, $object, $key, $value)
{
return $this->dao->select('*')->from(TABLE_CUSTOMLANG)
->where('1=1')
->beginIF($id)->andWhere('id')->eq($id)->fi()
->beginIF($lang)->andWhere('lang')->eq($lang)->fi()
->beginIF($object)->andWhere('object')->eq($object)->fi()
->beginIF($key)->andWhere('`key`')->eq($key)->fi()
->beginIF($value)->andWhere('value')->eq($value)->fi()
->fetch();
}
public function update($object, $field)
{
$item = new stdClass();
$item->lang = $this->app->getClientLang();
$item->object = $object;
$item->key = $field;
$item->value = serialize($this->post->$field);
$oldItem = $this->getLang('', $item->lang, $item->object, $item->key);
if($oldItem)
{
return $this->dao->update(TABLE_CUSTOMLANG)->set('value')->eq($item->value)->where('id')->eq($oldItem->id)->exec();
}
return $this->dao->insert(TABLE_CUSTOMLANG)->data($item)->exec();
}
}
+15
View File
@@ -0,0 +1,15 @@
<?php include '../../common/view/header.html.php';?>
<div id='featurebar'>
<div class='f-left'>
<?php
echo "<span id='storyTab'>"; common::printLink('customlang', 'story', "", $lang->customlang->story); echo '</span>';
echo "<span id='taskTab'>"; common::printLink('customlang', 'task', "", $lang->customlang->task); echo '</span>';
echo "<span id='bugTab'>"; common::printLink('customlang', 'bug', "", $lang->customlang->bug); echo '</span>';
echo "<span id='testcaseTab'>"; common::printLink('customlang', 'testcase', "", $lang->customlang->testcase); echo '</span>';
echo "<span id='testtaskTab'>"; common::printLink('customlang', 'testtask', "", $lang->customlang->testtask); echo '</span>';
echo "<span id='todoTab'>"; common::printLink('customlang', 'todo', "", $lang->customlang->todo); echo '</span>' ;
echo "<span id='userTab'>"; common::printLink('customlang', 'user', "", $lang->customlang->user); echo '</span>';
echo "<script>$('#{$this->methodName}Tab').addClass('active')</script>";
?>
</div>
</div>
+40
View File
@@ -0,0 +1,40 @@
<?php
/**
* The xxx view file of xxx module of ZenTaoPMS.
*
* @copyright Copyright 2009-2010 QingDao Nature Easy Soft Network Technology Co,LTD (www.cnezsoft.com)
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @package xxx
* @version $Id$
* @link http://www.zentao.net
*/
?>
<?php include './header.html.php';?>
<div id='featurebar'>
<div class='f-left'>
<?php
foreach($this->config->customlang->story->fields as $key => $value)
{
echo "<span id='{$key}Tab'>" . html::a(inlink('story', "field=$key"), $value) . "</span>";
}
?>
</div>
</div>
<form method='post'>
<table align='center' class='table-5'>
<tr>
<th>键</th>
<th>值</th>
</tr>
<?php foreach($fieldList as $key => $value):?>
<tr class='a-center'>
<td><?php echo $key;?></td>
<td><?php echo html::input("{$field}[$key]", $value, "class='text-1'");?></td>
</tr>
<?php endforeach;?>
<tfoot><tr><td colspan='2' class='a-center'><?php echo html::submitButton()?></td></tr><tfoot>
</table>
</form>
<script>$('#<?php echo $field;?>Tab').addClass('active')</script>
<?php include '../../common/view/footer.html.php';?>
+4
View File
@@ -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 = '該部門有職員,不能刪除!';
+6 -15
View File
@@ -1,8 +1,10 @@
<?php
$lang->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'] = '後台管理';
+5
View File
@@ -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 <strong>%s </
$lang->extension->errorTargetPathNotWritable = 'Target path <strong>%s </strong>not writable.';
$lang->extension->errorTargetPathNotExists = 'Target path <strong>%s </strong>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:<br /><br /> %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';
+7 -1
View File
@@ -36,7 +36,7 @@ $lang->extension->name = '名稱';
$lang->extension->code = '插件代號';
$lang->extension->version = '版本';
$lang->extension->compatible = '適用版本';
$lang->extension->latest = '<small>最新版本<strong><a href="%s" target="_blank" class="extension">%s</a></strong>,兼容禪道<a href="http://www.zentao.net/goto.php?item=latest" target="_blank"><strong>%s</strong></small>';
$lang->extension->latest = '<small>最新版本<strong><a href="%s" target="_blank" class="extension">%s</a></strong>,兼容禪道<a href="http://api.zentao.net/goto.php?item=latest" target="_blank"><strong>%s</strong></small>';
$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 = '包檔案 <strong>%s </strong>
$lang->extension->errorTargetPathNotWritable = '目標路徑 <strong>%s </strong>不可寫。';
$lang->extension->errorTargetPathNotExists = '目標路徑 <strong>%s </strong>不存在。';
$lang->extension->errorInstallDB = '執行資料庫語句失敗。錯誤信息如下:%s';
$lang->extension->errorConflicts = '與插件“%s”衝突!';
$lang->extension->errorDepends = '以下依賴插件沒有安裝或版本不正確:<br /><br /> %s';
$lang->extension->errorIncompatible = '該插件與您的禪道版本不兼容';
$lang->extension->errorUninstallDepends = '插件“%s”依賴該插件,不能卸載';
+6
View File
@@ -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';
-2
View File
@@ -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 = '密碼不能為空';
+1
View File
@@ -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 = '發信郵箱';
+2 -1
View File
@@ -6,7 +6,7 @@
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @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 = "版權所有 &copy;2009-2013 <a href='http://www.cnezsoft.com' target='_blank'>青島易軟天創網絡科技有限公司</a>";
+18 -17
View File
@@ -6,23 +6,24 @@
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @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 = '已關閉&raquo;';
$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 = '已關閉&raquo;';
$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 = "本頁共 <strong>%s</strong> 個需求,預計 <strong>%s</strong> 個工時。";
$lang->product->noMatchedProduct = '找不到與"%s"相關的產品';
$lang->product->storySummary = "本頁共 <strong>%s</strong> 個需求,預計 <strong>%s</strong> 個工時,用例覆蓋率<strong>%s</strong>。";
$lang->product->noMatched = '找不到包含"%s"的產品';
+19 -10
View File
@@ -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 = "本頁共 <strong>%s</strong> 個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 = '產品';
+1 -1
View File
@@ -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;
+23 -19
View File
@@ -6,7 +6,7 @@
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @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 = '可用工時<strong>%s</strong>工時<br />總共預計<strong>%s</strong>工時<br />已經消耗<strong>%s</strong>工時<br />預計剩餘<strong>%s</strong>工時';
$lang->project->oneLineStats = "項目<strong>%s</strong>, 代號為<strong>%s</strong>, 相關產品為<strong>%s</strong>,<strong>%s</strong>開始,<strong>%s</strong>結束,總預計<strong>%s</strong>工時,已消耗<strong>%s</strong>工時,預計剩餘<strong>%s</strong>工時。";
$lang->project->taskSummary = "本頁共 <strong>%s</strong> 個任務,未開始<strong>%s</strong>,進行中<strong>%s</strong>,總預計<strong>%s</strong>工時,已消耗<strong>%s</strong>工時,剩餘<strong>%s</strong>工時。";
$lang->project->memberHours = "%s共有 <strong>%s</strong> 個可用工時,";
$lang->project->groupSummary = "本組共 <strong>%s</strong> 個任務,未開始<strong>%s</strong>,進行中<strong>%s</strong>,總預計<strong>%s</strong>工時,已消耗<strong>%s</strong>工時,剩餘<strong>%s</strong>工時。";
$lang->project->wbs = "分解任務";
$lang->project->batchWBS = "批量分解";
$lang->project->largeBurnChart = '點擊查看大圖';
$lang->project->howToUpdateBurn = "<a href='http://www.zentao.net/goto.php?item=burndown&lang=zh-tw' target='_blank'>如何更新?</a>";
$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 = '可用工時<strong>%s</strong>工時<br />總共預計<strong>%s</strong>工時<br />已經消耗<strong>%s</strong>工時<br />預計剩餘<strong>%s</strong>工時';
$lang->project->oneLineStats = "項目<strong>%s</strong>, 代號為<strong>%s</strong>, 相關產品為<strong>%s</strong>,<strong>%s</strong>開始,<strong>%s</strong>結束,總預計<strong>%s</strong>工時,已消耗<strong>%s</strong>工時,預計剩餘<strong>%s</strong>工時。";
$lang->project->taskSummary = "本頁共 <strong>%s</strong> 個任務,未開始<strong>%s</strong>,進行中<strong>%s</strong>,總預計<strong>%s</strong>工時,已消耗<strong>%s</strong>工時,剩餘<strong>%s</strong>工時。";
$lang->project->memberHours = "%s共有 <strong>%s</strong> 個可用工時,";
$lang->project->groupSummary = "本組共 <strong>%s</strong> 個任務,未開始<strong>%s</strong>,進行中<strong>%s</strong>,總預計<strong>%s</strong>工時,已消耗<strong>%s</strong>工時,剩餘<strong>%s</strong>工時。";
$lang->project->wbs = "分解任務";
$lang->project->batchWBS = "批量分解";
$lang->project->largeBurnChart = '點擊查看大圖';
$lang->project->howToUpdateBurn = "<a href='http://api.zentao.net/goto.php?item=burndown&lang=zh-tw' target='_blank'>如何更新?</a>";
$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();
+1
View File
@@ -16,6 +16,7 @@
<?php include '../../common/view/treeview.html.php';?>
<?php include './taskheader.html.php';?>
<?php js::set('moduleID', $moduleID);?>
<?php js::set('productID', $productID);?>
<script language='Javascript'>
var browseType = '<?php echo $browseType;?>';
</script>
+1 -1
View File
@@ -1,4 +1,4 @@
<?php include '../../common/view/dropmenu.html.php';?>
<?php include $this->app->getModuleRoot() . 'common/view/dropmenu.html.php';?>
<div id='featurebar'>
<div class='f-left'>
<?php
+1
View File
@@ -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 = "測試首頁";
+3 -3
View File
@@ -6,7 +6,7 @@
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @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 = '<a href="http://www.zentao.net/goto.php?item=proversion&from=reportpage" target="_blank">更多精彩,盡在專業版!</a>';
$lang->report->proVersion = '<a href="http://api.zentao.net/goto.php?item=proversion&from=reportpage" target="_blank">更多精彩,盡在專業版!</a>';
+24 -8
View File
@@ -1,20 +1,20 @@
<?php
$lang->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 = <<<EOT
<p><strong>Example</strong>:Name is 'Test'", Code is 'test', Key is '20c8eb0d522d2e1a09d4ea18e4df3a59',IP list is "192.168.11.*,127.0.0.1"。</p>
<p><strong>1.User Auth</strong></p>
<p>Application request API of user auth, check if the account and password is correct, to realize single sign-on (SSO).</p>
<p>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.</p>
<p>Example: url is 'http:://www.demo.com/sso-auth-test',POST string is 'account=admin&authcode=c44c577432230ad8e67160d3f9f0b91c'.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;Note: 'test' is App code, 'c44c577432230ad8e67160d3f9f0b91' is md5(md5('123456') + '20c8eb0d522d2e1a09d4ea18e4df3a59')</p>
<p><strong>2.Get User List</strong></p>
<p>Application request API of user list, get all user info of zentao.</p>
<p>The API if from sso module, users method. POST data is key. Return user list (json) if success, return fail if fail.</p>
<p>Example:url is 'http:://www.demo.com/sso-users-test', POST string is 'key=20c8eb0d522d2e1a09d4ea18e4df3a59'.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;Note: 'test' is App code, '20c8eb0d522d2e1a09d4ea18e4df3a59' is App key.</p>
<p><strong>3.Get Dept List</strong></p>
<p>Application request API of dept list, get all dept info of zentao.</p>
<p>The API if from sso module, depts method. POST data is key. Return dept list (json) if success, return fail if fail.</p>
<p>Example:url is 'http:://www.demo.com/sso-depts-test', POST string is 'key=20c8eb0d522d2e1a09d4ea18e4df3a59'.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;Note: 'test' is App code, '20c8eb0d522d2e1a09d4ea18e4df3a59' is App key.</p>
EOT;
+8 -8
View File
@@ -1,21 +1,21 @@
<?php
$lang->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 = '名称不能为空';
+43
View File
@@ -0,0 +1,43 @@
<?php
$lang->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 = <<<EOT
<p><strong>示例應用</strong>:名稱為"測試",代號為"test",密鑰為"20c8eb0d522d2e1a09d4ea18e4df3a59",IP列表為"192.168.11.*,127.0.0.1"。</p>
<p><strong>1.用戶驗證</strong></p>
<p>授權應用請求禪道的用戶驗證API,檢查用戶在該應用輸入的用戶名和密碼是否正確,實現單點登錄。</p>
<p>API地址為sso模組的auth方法,POST數據為登錄用戶的用戶名account和密碼與密鑰形成的加密字元串md5(md5(password) + key),成功則返回用戶信息(json格式),失敗則返回fail。</p>
<p>示例:請求地址 http:://www.demo.com/sso-auth-test,POST字元串 account=admin&authcode=c44c577432230ad8e67160d3f9f0b91c。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;註:test為應用代號,c44c577432230ad8e67160d3f9f0b91為md5(md5('123456') + '20c8eb0d522d2e1a09d4ea18e4df3a59')</p>
<p><strong>2.獲取用戶列表</strong></p>
<p>授權應用訪問禪道的用戶列表API,獲取禪道所有用戶信息。</p>
<p>API地址為sso模組的users方法,POST數據為應用密鑰,成功返回用戶列表(json格式),失敗返回fail。</p>
<p>示例:請求地址 http:://www.demo.com/sso-users-test,POST字元串 key=20c8eb0d522d2e1a09d4ea18e4df3a59。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;註:test為應用代號,20c8eb0d522d2e1a09d4ea18e4df3a59為應用密鑰</p>
<p><strong>3.獲取部門列表</strong></p>
<p>授權應用訪問禪道的部門列表API,獲取禪道所有部門信息。</p>
<p>API地址為sso模組的depts方法,POST數據為應用密鑰,成功返回用戶列表(json格式),失敗返回fail。</p>
<p>示例:請求地址 http:://www.demo.com/sso-depts-test,POST字元串 key=20c8eb0d522d2e1a09d4ea18e4df3a59。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;註:test為應用代號,20c8eb0d522d2e1a09d4ea18e4df3a59為應用密鑰</p>
EOT;
+2
View File
@@ -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';
+2
View File
@@ -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 = '编号';
+21 -2
View File
@@ -6,7 +6,7 @@
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @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 = '選擇評審人...';
+15 -1
View File
@@ -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 = '輸入用戶名進行選擇';
+2 -1
View File
@@ -72,7 +72,8 @@
</td></tr>
<?php endif;?>
<tr><td colspan='<?php echo $this->config->task->batchEdit->columns + 1;?>' class='a-center'>
<?php $colspan = (!isset($project) or (isset($project) and $project->type != 'sprint')) ? $this->config->task->batchEdit->columns + 1 : $this->config->task->batchEdit->columns;?>
<tr><td colspan='<?php echo $colspan;?>' class='a-center'>
<?php echo html::submitButton();?>
</td></tr>
</table>
-1
View File
@@ -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';
+14 -1
View File
@@ -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 = '無數據,請選擇正確的編碼重新上傳!';
+7 -1
View File
@@ -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 = '所有用例';
+1
View File
@@ -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 = '編號';
+1
View File
@@ -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';
+4 -1
View File
@@ -6,7 +6,7 @@
* @license LGPL (http://www.gnu.org/licenses/lgpl.html)
* @author Chunsheng Wang <chunsheng@cnezsoft.com>
* @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';
+1
View File
@@ -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);
}
+2
View File
@@ -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)中的帳號';
+3 -3
View File
@@ -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;
}
}
+2
View File
@@ -21,6 +21,7 @@ $jsFiles[] = $jqueryRoot . 'datepicker/date.js';
$jsFiles[] = $jqueryRoot . 'datepicker/min.js';
$jsFiles[] = $jqueryRoot . 'alert/min.js';
$jsFiles[] = $jqueryRoot . 'colorize/min.js';
$jsFiles[] = $jqueryRoot . 'dropmenu/dropmenu.js';
/* Combine these js files. */
$allJSFile = $jsRoot . 'all.js';
@@ -70,6 +71,7 @@ foreach($langs as $lang)
$cssCode .= file_get_contents($themeRoot . 'default/treeview.css');
$cssCode .= file_get_contents($themeRoot . 'default/datepicker.css');
$cssCode .= file_get_contents($themeRoot . 'default/alert.css');
$cssCode .= file_get_contents($themeRoot . 'default/dropmenu.css');
/* Css file for current lang and current them. */
$cssCode .= file_get_contents($themeRoot . "lang/$lang.css");
+2
View File
@@ -801,6 +801,8 @@ function setModal4List(colorboxClass, replaceID, callback)
$('.colored').colorize();
$('tfoot td').css('background', 'white').unbind('click').unbind('hover');
$(".date").datePicker({createButton:true, startDate:startDate})
.dpSetPosition($.dpConst.POS_TOP, $.dpConst.POS_RIGHT)
if(typeof(callback) == 'function') callback();
$.cookie('selfClose', 0);
});
+1 -1
View File
@@ -37,7 +37,7 @@ $app->setDebug();
/* Check the installed version is the latest or not. */
$config->installedVersion = $common->loadModel('setting')->getVersion();
if(version_compare($config->version, $config->installedVersion) <= 0) die(header('location: index.php'));
if(!$_SERVER['HTTP_X_REQUESTED_WITH'] and version_compare($config->version, $config->installedVersion) <= 0) die(header('location: index.php'));
/* Run it. */
$app->parseRequest();