* add new version and upgrade.
This commit is contained in:
+1
-1
@@ -16,7 +16,7 @@ if(!class_exists('config')){class config{}}
|
||||
if(!function_exists('getWebRoot')){function getWebRoot(){}}
|
||||
|
||||
/* 基本设置。Basic settings. */
|
||||
$config->version = '12.4.4'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
|
||||
$config->version = '12.5'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
|
||||
$config->charset = 'UTF-8'; // ZenTaoPHP的编码。 The encoding of ZenTaoPHP.
|
||||
$config->cookieLife = time() + 2592000; // Cookie的生存时间。 The cookie life time.
|
||||
$config->timezone = 'Asia/Shanghai'; // 时区设置。 The time zone setting, for more see http://www.php.net/manual/en/timezones.php.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+4
-2
@@ -13,5 +13,7 @@ ALTER TABLE `zt_history` ADD INDEX `action` (`action`);
|
||||
ALTER TABLE `zt_action` ADD INDEX `action` (`action`);
|
||||
ALTER TABLE `zt_action` DROP INDEX `product`;
|
||||
|
||||
INSERT INTO `zt_config` (`owner`, `module`, `section`, `key`, `value`) VALUES ('system', 'common', '', 'CRProduct', '1');
|
||||
INSERT INTO `zt_config` (`owner`, `module`, `section`, `key`, `value`) VALUES ('system', 'common', '', 'CRProject', '1');
|
||||
REPLACE INTO `zt_config` (`owner`, `module`, `section`, `key`, `value`) VALUES ('system', 'common', '', 'CRProduct', '1');
|
||||
REPLACE INTO `zt_config` (`owner`, `module`, `section`, `key`, `value`) VALUES ('system', 'common', '', 'CRProject', '1');
|
||||
REPLACE INTO `zt_config` (`owner`, `module`, `section`, `key`, `value`) VALUES ('system', 'common', 'xuanxuan', 'pollingInterval', '60');
|
||||
REPLACE INTO `zt_config` (`owner`, `module`, `section`, `key`, `value`) VALUES ('system', 'common', 'xuanxuan', 'aes', 'on');
|
||||
|
||||
+21
-5
@@ -15,6 +15,7 @@ CREATE TABLE IF NOT EXISTS `zt_action` (
|
||||
KEY `date` (`date`),
|
||||
KEY `actor` (`actor`),
|
||||
KEY `project` (`project`),
|
||||
KEY `action` (`action`),
|
||||
KEY `objectID` (`objectID`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_block`;
|
||||
@@ -108,6 +109,8 @@ CREATE TABLE IF NOT EXISTS `zt_bug` (
|
||||
KEY `plan` (`plan`),
|
||||
KEY `story` (`story`),
|
||||
KEY `case` (`case`),
|
||||
KEY `toStory` (`toStory`),
|
||||
KEY `result` (`result`),
|
||||
KEY `assignedTo` (`assignedTo`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_build`;
|
||||
@@ -185,6 +188,7 @@ CREATE TABLE IF NOT EXISTS `zt_case` (
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `product` (`product`),
|
||||
KEY `story` (`story`),
|
||||
KEY `fromBug` (`fromBug`),
|
||||
KEY `module` (`module`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_casestep`;
|
||||
@@ -458,6 +462,7 @@ CREATE TABLE IF NOT EXISTS `zt_job` (
|
||||
`svnDir` varchar(255) NOT NULL,
|
||||
`atDay` varchar(255) DEFAULT NULL,
|
||||
`atTime` varchar(10) DEFAULT NULL,
|
||||
`customParam` text NOT NULL,
|
||||
`comment` varchar(255) DEFAULT NULL,
|
||||
`createdBy` varchar(30) NOT NULL,
|
||||
`createdDate` datetime NOT NULL,
|
||||
@@ -466,7 +471,6 @@ CREATE TABLE IF NOT EXISTS `zt_job` (
|
||||
`lastExec` datetime DEFAULT NULL,
|
||||
`lastStatus` varchar(255) DEFAULT NULL,
|
||||
`lastTag` varchar(255) DEFAULT NULL,
|
||||
`customParam` text NOT NULL,
|
||||
`deleted` enum('0','1') NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
@@ -492,7 +496,7 @@ CREATE TABLE IF NOT EXISTS `zt_module` (
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_notify`;
|
||||
CREATE TABLE IF NOT EXISTS `zt_notify` (
|
||||
`id` mediumint unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
`id` mediumint unsigned NOT NULL AUTO_INCREMENT,
|
||||
`objectType` varchar(50) NOT NULL,
|
||||
`objectID` mediumint unsigned NOT NULL,
|
||||
`action` mediumint NOT NULL,
|
||||
@@ -504,7 +508,9 @@ CREATE TABLE IF NOT EXISTS `zt_notify` (
|
||||
`createdDate` datetime NOT NULL,
|
||||
`sendTime` datetime NOT NULL,
|
||||
`status` varchar(10) NOT NULL DEFAULT 'wait',
|
||||
`failReason` text NOT NULL
|
||||
`failReason` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `objectType_toList_status` (`objectType`,`toList`,`status`)
|
||||
) ENGINE='MyISAM' COLLATE 'utf8_general_ci';
|
||||
-- DROP TABLE IF EXISTS `zt_oauth`;
|
||||
CREATE TABLE IF NOT EXISTS `zt_oauth` (
|
||||
@@ -794,7 +800,7 @@ CREATE TABLE IF NOT EXISTS `zt_task` (
|
||||
`assignedTo` varchar(30) NOT NULL,
|
||||
`assignedDate` datetime NOT NULL,
|
||||
`estStarted` date NOT NULL,
|
||||
`realStarted` date NOT NULL,
|
||||
`realStarted` datetime NOT NULL,
|
||||
`finishedBy` varchar(30) NOT NULL,
|
||||
`finishedDate` datetime NOT NULL,
|
||||
`finishedList` text NOT NULL,
|
||||
@@ -809,6 +815,7 @@ CREATE TABLE IF NOT EXISTS `zt_task` (
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `project` (`project`),
|
||||
KEY `story` (`story`),
|
||||
KEY `parent` (`parent`),
|
||||
KEY `assignedTo` (`assignedTo`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_taskestimate`;
|
||||
@@ -1001,7 +1008,8 @@ CREATE TABLE IF NOT EXISTS `zt_user` (
|
||||
UNIQUE KEY `account` (`account`),
|
||||
KEY `dept` (`dept`),
|
||||
KEY `email` (`email`),
|
||||
KEY `commiter` (`commiter`)
|
||||
KEY `commiter` (`commiter`),
|
||||
KEY `deleted` (`deleted`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_usercontact`;
|
||||
CREATE TABLE IF NOT EXISTS `zt_usercontact` (
|
||||
@@ -1245,6 +1253,8 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
|
||||
(1, 'custom', 'working'),
|
||||
(1, 'custom', 'index'),
|
||||
(1, 'custom', 'restore'),
|
||||
(1, 'custom', 'project'),
|
||||
(1, 'custom', 'product'),
|
||||
(1, 'custom', 'set'),
|
||||
(1, 'dept', 'browse'),
|
||||
(1, 'dept', 'delete'),
|
||||
@@ -1455,6 +1465,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
|
||||
(1, 'story', 'change'),
|
||||
(1, 'story', 'close'),
|
||||
(1, 'story', 'create'),
|
||||
(1, 'story', 'batchToTask'),
|
||||
(1, 'story', 'delete'),
|
||||
(1, 'story', 'edit'),
|
||||
(1, 'story', 'assignTo'),
|
||||
@@ -1728,6 +1739,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
|
||||
(2, 'story', 'bugs'),
|
||||
(2, 'story', 'cases'),
|
||||
(2, 'story', 'view'),
|
||||
(2, 'story', 'batchToTask'),
|
||||
(2, 'svn', 'apiSync'),
|
||||
(2, 'svn', 'cat'),
|
||||
(2, 'svn', 'diff'),
|
||||
@@ -1923,6 +1935,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
|
||||
(3, 'story', 'cases'),
|
||||
(3, 'story', 'view'),
|
||||
(3, 'story', 'zeroCase'),
|
||||
(3, 'story', 'batchToTask'),
|
||||
(3, 'svn', 'apiSync'),
|
||||
(3, 'svn', 'cat'),
|
||||
(3, 'svn', 'diff'),
|
||||
@@ -2210,6 +2223,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
|
||||
(4, 'story', 'cases'),
|
||||
(4, 'story', 'view'),
|
||||
(4, 'story', 'zeroCase'),
|
||||
(4, 'story', 'batchToTask'),
|
||||
(4, 'svn', 'apiSync'),
|
||||
(4, 'svn', 'cat'),
|
||||
(4, 'svn', 'diff'),
|
||||
@@ -2746,6 +2760,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
|
||||
(6, 'story', 'cases'),
|
||||
(6, 'story', 'view'),
|
||||
(6, 'story', 'zeroCase'),
|
||||
(6, 'story', 'batchToTask'),
|
||||
(6, 'svn', 'apiSync'),
|
||||
(6, 'svn', 'cat'),
|
||||
(6, 'svn', 'diff'),
|
||||
@@ -3223,6 +3238,7 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
|
||||
(8, 'story', 'cases'),
|
||||
(8, 'story', 'view'),
|
||||
(8, 'story', 'zeroCase'),
|
||||
(8, 'story', 'batchToTask'),
|
||||
(8, 'svn', 'apiSync'),
|
||||
(8, 'svn', 'cat'),
|
||||
(8, 'svn', 'diff'),
|
||||
|
||||
@@ -1,3 +1,100 @@
|
||||
2020-11-19 12.5.stable
|
||||
完成的需求
|
||||
5487 在禅道专业版、企业版的授权中增加版本号限制
|
||||
5458 任务实际开始、完成时间记录上完整的日期+时分秒
|
||||
5389 安装成功后页面语言优化
|
||||
5387 后台-二开-应用 代号错误提醒多余标点去掉
|
||||
5383 增加需求一键转任务功能
|
||||
5382 删除项目的时候给一个确认提示
|
||||
5261 看板模式下面移动任务到进行中甬道时默认保持指派给字段不变
|
||||
5221 测试-测试单关联用例的搜索中增加所属库字段
|
||||
5219 文档增加抄送功能
|
||||
5218 可以按照指定的日期添加待办
|
||||
5217 期望版本增加标签和查询功能。
|
||||
5194 任务页面点击相关需求可以直接对需求创建用例
|
||||
5193 期望用例在测试单中显示和用例库的关联图标
|
||||
5144 后台自定义增加产品和项目的关闭后是否只读的开关
|
||||
5126 构建增加给jenkins传参功能
|
||||
4421 一键安装包兼容centos8
|
||||
4329 增加webhook权限控制
|
||||
3423 session.save_path 逻辑调整
|
||||
修复的Bug
|
||||
3625 CNVD-C-2020-238015 禅道CMS存在文件上传漏洞
|
||||
3621 测试单中用例搜索后无法正常排序
|
||||
3620 升级成功后默认不应该跳转到非研发页面
|
||||
3619 国际版禅道安装和升级页面,zdoo网址应换为英文网址链接
|
||||
3618 提bug页面IE浏览器加载所有用户失败
|
||||
3617 批量编辑修改需求阶段后未起效
|
||||
3612 项目-需求 点击B字段中数据弹窗中数据统计问题
|
||||
3600 windows一键安装包无法更改数据库密码
|
||||
3599 xampp中存在大量mariadb ssl报错
|
||||
3597 父需求的任务数不会自动计算
|
||||
3596 CNVD-C-2020-204858_关于zentao开源版V12.3.3后台存在任意文件读取漏洞的情况通报
|
||||
3595 CNVD-C-2020-204868_关于zentao开源版后台存在SQL注入漏洞的情况通报
|
||||
3594 CNVD-C-2020-230107 关于禅道专业版后台存在命令执行漏洞的情况通报
|
||||
3593 CNVD-C-2020-209376_关于青岛易企天创管理咨询有限公司禅道PMS存在SQL注入漏洞的情况通报
|
||||
3592 项目需求下批量创建需求没有关联到项目
|
||||
3591 安装界面最后一步,输入框离文字太远
|
||||
3590 创建OK文件的页面,需要把刷新按钮加回来
|
||||
3589 bug 编辑页面需求没有根据模块展示,需要切换下模块才会规则生效
|
||||
3579 访问禅道加载失败时,给出刷新按钮
|
||||
3578 禅道应用的logo背景需要优化
|
||||
3577 人数较多时,抄送功能输入用户名回车后,输入信息不查询下一个用户名
|
||||
3576 父计划关联需求设计问题
|
||||
3575 开始任务关闭弹窗后按钮禁用
|
||||
3573 创建OK文件的页面,需要添加网页标题头
|
||||
3572 地盘需求只显示父需求
|
||||
3571 必填项限制无法批量创建测试任务。
|
||||
3570 细分需求后进行指派,被指派人我的地盘-需求显示问题
|
||||
3569 安装翻译插件后,创建翻译提示优化
|
||||
3568 windows和linux一键安装包切换日语后页面未能正确跳转
|
||||
3567 客户端调试页面ip地址建议与服务器设置页保持一致
|
||||
3566 企业微信应用消息绑定用户时提示“malformed”
|
||||
3565 文档中编辑表格属性报错后未生效
|
||||
3564 批量编辑用例模块处没有显示title
|
||||
3563 zbox一键安装包域名解析问题
|
||||
3562 自定义添加需求来源后导出需求模板无法正常打开
|
||||
3561 添加必填后批量创建需求页面提示后无法正常跳转
|
||||
3557 创建需求保存时页面有报错
|
||||
3551 父任务指派,提示剩余工时不能为空
|
||||
3550 禁用和删除日志插件后文件无法成功删除
|
||||
3548 批量编辑项目时,调整重名的逻辑
|
||||
3546 终身版插件安装后到期日期显示错误
|
||||
3543 客户端登录禅道后用户最后的登录ip记录的是xxd的ip
|
||||
3535 所属计划设为必填项后不生效
|
||||
3534 用户后台绑定社区账号无法确认
|
||||
3507 集成版本库点击刷新按钮数据不更新
|
||||
3505 查看相关需求不存在时出现空白弹窗
|
||||
3504 客户端创建文档链接报错
|
||||
3503 客户端关于页面无法展示
|
||||
3502 在步骤里面编辑内容会触发页面自动滚动
|
||||
3501 发布关联子需求后父需求的阶段没有自动更新
|
||||
3500 xampp启动失败没有任何日志记录
|
||||
3496 帮助手册不能正常查看
|
||||
3493 用户被锁定,仍可以成功登录禅道客户端
|
||||
3492 锁定用户的时间,有时没到10分钟就失效
|
||||
3490 插件目录结构未显示信息
|
||||
3489 插件详情页页面需优化
|
||||
3482 改进意见:任务确认变更,展示需求的详情信息
|
||||
3481 9.6升级到12.1,有sql报错
|
||||
3480 11.5升级到12.3,升级失败有sql报错
|
||||
3479 通知邮件中的连接地址拼装不正确
|
||||
3319 创建任务提示报错,还可以正常创建
|
||||
3250 bug详情页面有2排操作按钮都可以点击
|
||||
3212 Markdown格式的文档中表格列宽显示问题
|
||||
3097 数据量大导致禅道操作过程中锁表
|
||||
3089 导出文件时编码字段默认“UTF-8”,导出的excel中文字不能正常展示。
|
||||
3078 客户端如果停留在我的地盘点击通知里面的信息跳转不过去
|
||||
3040 覆盖新版本代码后不会自动跳转upgrade.php会报错config或者userview表不存在
|
||||
3022 发布bug列表页面显示优化
|
||||
2979 数据比较多时下拉框渲染比较慢
|
||||
2963 项目-版本中解决的bug移除不过后bug解决版本没有更新
|
||||
2909 linux 在centos 8.0 兼容问题
|
||||
2855 阿里云mysql,备份数据还原报错
|
||||
2604 关闭客户端提醒后,整个页面都置灰
|
||||
|
||||
2020-11-03 12.4.4
|
||||
|
||||
2020-10-13 12.4.3
|
||||
修复的Bug
|
||||
2385 客户端访问禅道多次点击新手教程页面空白
|
||||
|
||||
@@ -408,7 +408,7 @@ $lang->admin = new stdclass();
|
||||
$lang->admin->menu = new stdclass();
|
||||
$lang->admin->menu->index = array('link' => 'Home|admin|index', 'alias' => 'register,certifytemail,certifyztmobile,ztcompany');
|
||||
$lang->admin->menu->message = array('link' => 'Notification|message|index', 'subModule' => 'message,mail,webhook');
|
||||
$lang->admin->menu->custom = array('link' => 'Custom|custom|product', 'subModule' => 'custom');
|
||||
$lang->admin->menu->custom = array('link' => 'Custom|custom|index', 'subModule' => 'custom');
|
||||
$lang->admin->menu->sso = array('link' => 'Integration|admin|sso');
|
||||
$lang->admin->menu->extension = array('link' => 'Extension|extension|browse', 'subModule' => 'extension');
|
||||
$lang->admin->menu->dev = array('link' => 'Entwicklung|dev|api', 'alias' => 'db', 'subModule' => 'dev,entry');
|
||||
|
||||
@@ -408,7 +408,7 @@ $lang->admin = new stdclass();
|
||||
$lang->admin->menu = new stdclass();
|
||||
$lang->admin->menu->index = array('link' => 'Home|admin|index', 'alias' => 'register,certifytemail,certifyztmobile,ztcompany');
|
||||
$lang->admin->menu->message = array('link' => 'Notification|message|index', 'subModule' => 'message,mail,webhook');
|
||||
$lang->admin->menu->custom = array('link' => 'Custom|custom|product', 'subModule' => 'custom');
|
||||
$lang->admin->menu->custom = array('link' => 'Custom|custom|index', 'subModule' => 'custom');
|
||||
$lang->admin->menu->sso = array('link' => 'Integration|admin|sso');
|
||||
$lang->admin->menu->extension = array('link' => 'Extension|extension|browse', 'subModule' => 'extension');
|
||||
$lang->admin->menu->dev = array('link' => 'Develop|dev|api', 'alias' => 'db', 'subModule' => 'dev,entry');
|
||||
|
||||
@@ -408,7 +408,7 @@ $lang->admin = new stdclass();
|
||||
$lang->admin->menu = new stdclass();
|
||||
$lang->admin->menu->index = array('link' => 'Accueil|admin|index', 'alias' => 'register,certifytemail,certifyztmobile,ztcompany');
|
||||
$lang->admin->menu->message = array('link' => 'Notification|message|index', 'subModule' => 'message,mail,webhook');
|
||||
$lang->admin->menu->custom = array('link' => 'Personnalisation|custom|product', 'subModule' => 'custom');
|
||||
$lang->admin->menu->custom = array('link' => 'Personnalisation|custom|index', 'subModule' => 'custom');
|
||||
$lang->admin->menu->sso = array('link' => 'Intégration|admin|sso');
|
||||
$lang->admin->menu->extension = array('link' => 'Extension|extension|browse', 'subModule' => 'extension');
|
||||
$lang->admin->menu->dev = array('link' => 'Dévelop.|dev|api', 'alias' => 'db', 'subModule' => 'dev,entry');
|
||||
|
||||
@@ -408,7 +408,7 @@ $lang->admin = new stdclass();
|
||||
$lang->admin->menu = new stdclass();
|
||||
$lang->admin->menu->index = array('link' => 'Home|admin|index', 'alias' => 'register,certifytemail,certifyztmobile,ztcompany');
|
||||
$lang->admin->menu->message = array('link' => 'Thông báo|message|index', 'subModule' => 'message,mail,webhook');
|
||||
$lang->admin->menu->custom = array('link' => 'Custom|custom|product', 'subModule' => 'custom');
|
||||
$lang->admin->menu->custom = array('link' => 'Custom|custom|index', 'subModule' => 'custom');
|
||||
$lang->admin->menu->sso = array('link' => 'Integration|admin|sso');
|
||||
$lang->admin->menu->extension = array('link' => 'Extension|extension|browse', 'subModule' => 'extension');
|
||||
$lang->admin->menu->dev = array('link' => 'Develop|dev|api', 'alias' => 'db', 'subModule' => 'dev,entry');
|
||||
|
||||
@@ -408,7 +408,7 @@ $lang->admin = new stdclass();
|
||||
$lang->admin->menu = new stdclass();
|
||||
$lang->admin->menu->index = array('link' => '首页|admin|index', 'alias' => 'register,certifytemail,certifyztmobile,ztcompany');
|
||||
$lang->admin->menu->message = array('link' => '通知|message|index', 'subModule' => 'message,mail,webhook');
|
||||
$lang->admin->menu->custom = array('link' => '自定义|custom|product', 'subModule' => 'custom');
|
||||
$lang->admin->menu->custom = array('link' => '自定义|custom|index', 'subModule' => 'custom');
|
||||
$lang->admin->menu->sso = array('link' => '集成|admin|sso', 'subModule' => '');
|
||||
$lang->admin->menu->extension = array('link' => '插件|extension|browse', 'subModule' => 'extension');
|
||||
$lang->admin->menu->dev = array('link' => '二次开发|dev|api', 'alias' => 'db', 'subModule' => 'dev,entry');
|
||||
|
||||
@@ -408,7 +408,7 @@ $lang->admin = new stdclass();
|
||||
$lang->admin->menu = new stdclass();
|
||||
$lang->admin->menu->index = array('link' => '首頁|admin|index', 'alias' => 'register,certifytemail,certifyztmobile,ztcompany');
|
||||
$lang->admin->menu->message = array('link' => '通知|message|index', 'subModule' => 'message,mail,webhook');
|
||||
$lang->admin->menu->custom = array('link' => '自定義|custom|product', 'subModule' => 'custom');
|
||||
$lang->admin->menu->custom = array('link' => '自定義|custom|index', 'subModule' => 'custom');
|
||||
$lang->admin->menu->sso = array('link' => '整合|admin|sso', 'subModule' => '');
|
||||
$lang->admin->menu->extension = array('link' => '插件|extension|browse', 'subModule' => 'extension');
|
||||
$lang->admin->menu->dev = array('link' => '二次開發|dev|api', 'alias' => 'db', 'subModule' => 'dev,entry');
|
||||
|
||||
@@ -19,7 +19,14 @@ class custom extends control
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
die(js::locate(inlink('set')));
|
||||
if(common::hasPriv('custom', 'product')) die(js::locate(inlink('product')));
|
||||
if(common::hasPriv('custom', 'project')) die(js::locate(inlink('project')));
|
||||
if(common::hasPriv('custom', 'set')) die(js::locate(inlink('set')));
|
||||
|
||||
foreach($this->lang->custom->system as $sysObject)
|
||||
{
|
||||
if(common::hasPriv('custom', $sysObject)) die(js::locate(inlink($sysObject)));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -106,7 +106,7 @@ $lang->custom->notice->noClosedBlock = '沒有永久關閉的區
|
||||
$lang->custom->notice->required = '頁面提交時,選中的欄位必填';
|
||||
$lang->custom->notice->conceptResult = '我們已經根據您的選擇為您設置了<b> %s-%s </b>模式,使用<b>%s</b> + <b> %s</b>。';
|
||||
$lang->custom->notice->conceptPath = '您可以在:後台 -> 自定義 -> 流程頁面修改。';
|
||||
$lang->custom->notice->readOnlyOfProduct = '禁止修改後,已關閉' . $lang->productCommon . '下的' . $lang->storyCommon . '、Bug、用例、日誌、發布、計劃都禁止修改。';
|
||||
$lang->custom->notice->readOnlyOfProduct = '禁止修改後,已關閉' . $lang->productCommon . '下的' . $lang->storyCommon . '、Bug、用例、日誌、發佈、計劃都禁止修改。';
|
||||
$lang->custom->notice->readOnlyOfProject = '禁止修改後,已關閉' . $lang->projectCommon . '下的任務、版本、日誌以及關聯需求都禁止修改。';
|
||||
|
||||
$lang->custom->notice->indexPage['product'] = "從8.2版本起增加了產品主頁視圖,是否預設進入產品主頁?";
|
||||
|
||||
@@ -47,6 +47,7 @@ $lang->doc->users = '用戶';
|
||||
$lang->doc->item = '項';
|
||||
$lang->doc->num = '文檔數量';
|
||||
$lang->doc->searchResult = '搜索結果';
|
||||
$lang->doc->mailto = '抄送給';
|
||||
|
||||
$lang->doc->moduleDoc = '按模組瀏覽';
|
||||
$lang->doc->searchDoc = '搜索';
|
||||
@@ -155,6 +156,12 @@ $lang->doc->customShowLibsList['zero'] = '顯示空文檔的庫';
|
||||
$lang->doc->customShowLibsList['children'] = '顯示子分類的文檔';
|
||||
$lang->doc->customShowLibsList['unclosed'] = '只顯示未關閉的項目';
|
||||
|
||||
$lang->doc->mail = new stdclass();
|
||||
$lang->doc->mail->create = new stdclass();
|
||||
$lang->doc->mail->edit = new stdclass();
|
||||
$lang->doc->mail->create->title = "%s創建了文檔 #%s:%s";
|
||||
$lang->doc->mail->edit->title = "%s編輯了文檔 #%s:%s";
|
||||
|
||||
$lang->doc->confirmDelete = "您確定刪除該文檔嗎?";
|
||||
$lang->doc->confirmDeleteLib = "您確定刪除該文檔庫嗎?";
|
||||
$lang->doc->errorEditSystemDoc = "系統文檔庫無需修改。";
|
||||
|
||||
@@ -51,6 +51,7 @@ $lang->group->copyOptions['copyPriv'] = 'Rechte kopieren';
|
||||
$lang->group->copyOptions['copyUser'] = 'Benutzer kopieren';
|
||||
|
||||
$lang->group->versions[''] = 'Verlauf';
|
||||
$lang->group->versions['12_5'] = 'ZenTao12.5';
|
||||
$lang->group->versions['12_3'] = 'ZenTao12.3';
|
||||
$lang->group->versions['11_6_2'] = 'ZenTao11.6.2';
|
||||
$lang->group->versions['10_6'] = 'ZenTao10.6';
|
||||
|
||||
@@ -51,6 +51,7 @@ $lang->group->copyOptions['copyPriv'] = 'Copy Privileges';
|
||||
$lang->group->copyOptions['copyUser'] = 'Copy Users';
|
||||
|
||||
$lang->group->versions[''] = 'History';
|
||||
$lang->group->versions['12_5'] = 'ZenTao12.5';
|
||||
$lang->group->versions['12_3'] = 'ZenTao12.3';
|
||||
$lang->group->versions['11_6_2'] = 'ZenTao11.6.2';
|
||||
$lang->group->versions['10_6'] = 'ZenTao10.6';
|
||||
|
||||
@@ -51,6 +51,7 @@ $lang->group->copyOptions['copyPriv'] = 'Copier Privilèges';
|
||||
$lang->group->copyOptions['copyUser'] = 'Copier Utilisateurs';
|
||||
|
||||
$lang->group->versions[''] = 'History';
|
||||
$lang->group->versions['12_5'] = 'ZenTao12.5';
|
||||
$lang->group->versions['12_3'] = 'ZenTao12.3';
|
||||
$lang->group->versions['11_6_2'] = 'ZenTao11.6.2';
|
||||
$lang->group->versions['10_6'] = 'ZenTao10.6';
|
||||
|
||||
@@ -827,6 +827,8 @@ $lang->mail->methodOrder[65] = 'ztCloud';
|
||||
$lang->resource->custom = new stdclass();
|
||||
$lang->resource->custom->index = 'index';
|
||||
$lang->resource->custom->set = 'set';
|
||||
$lang->resource->custom->project = 'project';
|
||||
$lang->resource->custom->product = 'product';
|
||||
$lang->resource->custom->restore = 'restore';
|
||||
$lang->resource->custom->flow = 'flow';
|
||||
$lang->resource->custom->working = 'working';
|
||||
@@ -835,11 +837,13 @@ $lang->resource->custom->timezone = 'timezone';
|
||||
|
||||
$lang->custom->methodOrder[5] = 'index';
|
||||
$lang->custom->methodOrder[10] = 'set';
|
||||
$lang->custom->methodOrder[15] = 'restore';
|
||||
$lang->custom->methodOrder[20] = 'flow';
|
||||
$lang->custom->methodOrder[25] = 'working';
|
||||
$lang->custom->methodOrder[30] = 'setPublic';
|
||||
$lang->custom->methodOrder[35] = 'timezone';
|
||||
$lang->custom->methodOrder[15] = 'project';
|
||||
$lang->custom->methodOrder[10] = 'product';
|
||||
$lang->custom->methodOrder[25] = 'restore';
|
||||
$lang->custom->methodOrder[30] = 'flow';
|
||||
$lang->custom->methodOrder[35] = 'working';
|
||||
$lang->custom->methodOrder[40] = 'setPublic';
|
||||
$lang->custom->methodOrder[45] = 'timezone';
|
||||
|
||||
$lang->resource->datatable = new stdclass();
|
||||
$lang->resource->datatable->setGlobal = 'setGlobal';
|
||||
@@ -1479,7 +1483,9 @@ $lang->changelog['12.3'][] = 'testtask-importUnitResult';
|
||||
$lang->changelog['12.3'][] = 'job-view';
|
||||
$lang->changelog['12.3'][] = 'ci-commitResult';
|
||||
|
||||
$lang->changelog['12.4.5'][] = 'story-batchToTask';
|
||||
$lang->changelog['12.5'][] = 'story-batchToTask';
|
||||
$lang->changelog['12.5'][] = 'custom-product';
|
||||
$lang->changelog['12.5'][] = 'custom-project';
|
||||
|
||||
global $config;
|
||||
if($config->global->flow != 'full')
|
||||
|
||||
@@ -51,6 +51,7 @@ $lang->group->copyOptions['copyPriv'] = 'Copy Privileges';
|
||||
$lang->group->copyOptions['copyUser'] = 'Copy người dùng';
|
||||
|
||||
$lang->group->versions[''] = 'Lịch sử';
|
||||
$lang->group->versions['12_5'] = 'ZenTao12.5';
|
||||
$lang->group->versions['12_3'] = 'ZenTao12.3';
|
||||
$lang->group->versions['11_6_2'] = 'ZenTao11.6.2';
|
||||
$lang->group->versions['10_6'] = 'ZenTao10.6';
|
||||
|
||||
@@ -51,6 +51,7 @@ $lang->group->copyOptions['copyPriv'] = '复制权限';
|
||||
$lang->group->copyOptions['copyUser'] = '复制用户';
|
||||
|
||||
$lang->group->versions[''] = '修改历史';
|
||||
$lang->group->versions['12_5'] = '禅道12.5';
|
||||
$lang->group->versions['12_3'] = '禅道12.3';
|
||||
$lang->group->versions['11_6_2'] = '禅道11.6.2';
|
||||
$lang->group->versions['10_6'] = '禅道10.6';
|
||||
|
||||
@@ -51,6 +51,7 @@ $lang->group->copyOptions['copyPriv'] = '複製權限';
|
||||
$lang->group->copyOptions['copyUser'] = '複製用戶';
|
||||
|
||||
$lang->group->versions[''] = '修改歷史';
|
||||
$lang->group->versions['12_5'] = '禪道12.5';
|
||||
$lang->group->versions['12_3'] = '禪道12.3';
|
||||
$lang->group->versions['11_6_2'] = '禪道11.6.2';
|
||||
$lang->group->versions['10_6'] = '禪道10.6';
|
||||
|
||||
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
|
||||
$lang->misc->feature->lastest = 'Letzte Version';
|
||||
$lang->misc->feature->detailed = 'Details';
|
||||
|
||||
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
|
||||
$lang->misc->releaseDate['12.4.4'] = '2020-10-30';
|
||||
$lang->misc->releaseDate['12.4.3'] = '2020-10-13';
|
||||
$lang->misc->releaseDate['12.4.2'] = '2020-09-18';
|
||||
@@ -135,6 +136,8 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
|
||||
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
|
||||
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
|
||||
|
||||
$lang->misc->feature->all['12.5.stable'][] = array('title' => 'Fix Bug. Complete high priority story.', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['12.4.4'][] = array('title'=>'Compatible with professional and enterprise editions', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.3'][] = array('title'=>'Fix Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.2'][] = array('title'=>'Fix Bug', 'desc' => '');
|
||||
|
||||
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
|
||||
$lang->misc->feature->lastest = 'Latest Version';
|
||||
$lang->misc->feature->detailed = 'Detail';
|
||||
|
||||
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
|
||||
$lang->misc->releaseDate['12.4.4'] = '2020-10-30';
|
||||
$lang->misc->releaseDate['12.4.3'] = '2020-10-13';
|
||||
$lang->misc->releaseDate['12.4.2'] = '2020-09-18';
|
||||
@@ -135,6 +136,8 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
|
||||
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
|
||||
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
|
||||
|
||||
$lang->misc->feature->all['12.5.stable'][] = array('title' => 'Fix Bug. Complete high priority story.', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['12.4.4'][] = array('title'=>'Compatible with professional and enterprise editions', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.3'][] = array('title'=>'Fix Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.2'][] = array('title'=>'Fix Bug', 'desc' => '');
|
||||
|
||||
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
|
||||
$lang->misc->feature->lastest = 'Dernière Version';
|
||||
$lang->misc->feature->detailed = 'Détail';
|
||||
|
||||
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
|
||||
$lang->misc->releaseDate['12.4.4'] = '2020-10-30';
|
||||
$lang->misc->releaseDate['12.4.3'] = '2020-10-13';
|
||||
$lang->misc->releaseDate['12.4.2'] = '2020-09-18';
|
||||
@@ -135,6 +136,8 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
|
||||
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
|
||||
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
|
||||
|
||||
$lang->misc->feature->all['12.5.stable'][] = array('title' => 'Fix Bug. Complete high priority story.', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['12.4.4'][] = array('title'=>'Compatible with professional and enterprise editions', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.3'][] = array('title'=>'Fix Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.2'][] = array('title'=>'Fix Bug', 'desc' => '');
|
||||
|
||||
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
|
||||
$lang->misc->feature->lastest = 'Latest Version';
|
||||
$lang->misc->feature->detailed = 'Chi tiết';
|
||||
|
||||
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
|
||||
$lang->misc->releaseDate['12.4.4'] = '2020-10-30';
|
||||
$lang->misc->releaseDate['12.4.3'] = '2020-10-13';
|
||||
$lang->misc->releaseDate['12.4.2'] = '2020-09-18';
|
||||
@@ -135,6 +136,8 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
|
||||
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
|
||||
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
|
||||
|
||||
$lang->misc->feature->all['12.5.stable'][] = array('title' => 'Fix Bug. Complete high priority story.', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['12.4.4'][] = array('title'=>'Compatible with professional and enterprise editions', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.3'][] = array('title'=>'Fix Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.2'][] = array('title'=>'Fix Bug', 'desc' => '');
|
||||
|
||||
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
|
||||
$lang->misc->feature->lastest = '最新版本';
|
||||
$lang->misc->feature->detailed = '详情';
|
||||
|
||||
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
|
||||
$lang->misc->releaseDate['12.4.4'] = '2020-10-30';
|
||||
$lang->misc->releaseDate['12.4.3'] = '2020-10-13';
|
||||
$lang->misc->releaseDate['12.4.2'] = '2020-09-18';
|
||||
@@ -135,10 +136,12 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
|
||||
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
|
||||
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
|
||||
|
||||
$lang->misc->feature->all['12.4.4'][] = array('title'=>'兼容专业版和企业版', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.3'][] = array('title'=>'修复Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.2'][] = array('title'=>'修复Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.1'][] = array('title'=>'修复Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.5.stable'][] = array('title' => '解决bug,完成高优先级需求。', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['12.4.4'][] = array('title' => '兼容专业版和企业版', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.3'][] = array('title' => '修复Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.2'][] = array('title' => '修复Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.1'][] = array('title' => '修复Bug', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['12.4.stable'][] = array('title'=>'修复Bug', 'desc' => '');
|
||||
|
||||
|
||||
@@ -86,6 +86,7 @@ $lang->misc->feature = new stdclass();
|
||||
$lang->misc->feature->lastest = '最新版本';
|
||||
$lang->misc->feature->detailed = '詳情';
|
||||
|
||||
$lang->misc->releaseDate['12.5.stable'] = '2020-11-19';
|
||||
$lang->misc->releaseDate['12.4.4'] = '2020-10-30';
|
||||
$lang->misc->releaseDate['12.4.3'] = '2020-10-13';
|
||||
$lang->misc->releaseDate['12.4.2'] = '2020-09-18';
|
||||
@@ -135,10 +136,12 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
|
||||
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
|
||||
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
|
||||
|
||||
$lang->misc->feature->all['12.4.4'][] = array('title'=>'兼容專業版和企業版', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.3'][] = array('title'=>'修復Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.2'][] = array('title'=>'修復Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.1'][] = array('title'=>'修復Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.5.stable'][] = array('title' => '解決bug,完成高優先順序需求。', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['12.4.4'][] = array('title' => '兼容專業版和企業版', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.3'][] = array('title' => '修復Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.2'][] = array('title' => '修復Bug', 'desc' => '');
|
||||
$lang->misc->feature->all['12.4.1'][] = array('title' => '修復Bug', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['12.4.stable'][] = array('title'=>'修復Bug', 'desc' => '');
|
||||
|
||||
|
||||
@@ -275,6 +275,9 @@ $lang->project->noweekend = '去除周末';
|
||||
$lang->project->withweekend = '顯示周末';
|
||||
$lang->project->interval = '間隔';
|
||||
$lang->project->fixFirstWithLeft = '修改剩餘工時';
|
||||
$lang->project->unfinishedProject = "該{$lang->projectCommon}下還有";
|
||||
$lang->project->unfinishedTask = "[%s]個未完成的任務,";
|
||||
$lang->project->unresolvedBug = "[%s]個未解決的bug,";
|
||||
|
||||
$lang->project->action = new stdclass();
|
||||
$lang->project->action->opened = '$date, 由 <strong>$actor</strong> 創建。$extra' . "\n";
|
||||
|
||||
+61
-45
@@ -9,57 +9,63 @@
|
||||
* @version $Id: zh-tw.php 5141 2013-07-15 05:57:15Z chencongzhi520@gmail.com $
|
||||
* @link http://www.zentao.net
|
||||
*/
|
||||
$lang->story->create = "提{$lang->storyCommon}";
|
||||
$lang->story->batchCreate = "批量創建";
|
||||
$lang->story->change = "變更";
|
||||
$lang->story->changeAction = "變更{$lang->storyCommon}";
|
||||
$lang->story->changed = "{$lang->storyCommon}變更";
|
||||
$lang->story->assignTo = '指派';
|
||||
$lang->story->assignAction = "指派{$lang->storyCommon}";
|
||||
$lang->story->review = '評審';
|
||||
$lang->story->reviewAction = "評審{$lang->storyCommon}";
|
||||
$lang->story->needReview = '需要評審';
|
||||
$lang->story->batchReview = '批量評審';
|
||||
$lang->story->edit = "編輯";
|
||||
$lang->story->batchEdit = "批量編輯";
|
||||
$lang->story->subdivide = '細分';
|
||||
$lang->story->subdivideAction = "細分{$lang->storyCommon}";
|
||||
$lang->story->splitRequirent = '拆分';
|
||||
$lang->story->close = '關閉';
|
||||
$lang->story->closeAction = "關閉{$lang->storyCommon}";
|
||||
$lang->story->batchClose = '批量關閉';
|
||||
$lang->story->activate = '激活';
|
||||
$lang->story->activateAction = "激活{$lang->storyCommon}";
|
||||
$lang->story->delete = "刪除";
|
||||
$lang->story->deleteAction = "刪除{$lang->storyCommon}";
|
||||
$lang->story->view = "{$lang->storyCommon}詳情";
|
||||
$lang->story->setting = "設置";
|
||||
$lang->story->tasks = "相關任務";
|
||||
$lang->story->bugs = "相關Bug";
|
||||
$lang->story->cases = "相關用例";
|
||||
$lang->story->taskCount = '任務數';
|
||||
$lang->story->bugCount = 'Bug數';
|
||||
$lang->story->caseCount = '用例數';
|
||||
$lang->story->taskCountAB = 'T';
|
||||
$lang->story->bugCountAB = 'B';
|
||||
$lang->story->caseCountAB = 'C';
|
||||
$lang->story->linkStory = "關聯{$lang->storyCommon}";
|
||||
$lang->story->unlinkStory = "移除相關{$lang->storyCommon}";
|
||||
$lang->story->export = "導出數據";
|
||||
$lang->story->exportAction = "導出{$lang->storyCommon}";
|
||||
$lang->story->zeroCase = "零用例{$lang->storyCommon}";
|
||||
$lang->story->zeroTask = "只列零任務{$lang->storyCommon}";
|
||||
$lang->story->reportChart = "統計報表";
|
||||
$lang->story->reportAction = "統計報表";
|
||||
$lang->story->copyTitle = "同{$lang->storyCommon}名稱";
|
||||
$lang->story->create = "提{$lang->storyCommon}";
|
||||
$lang->story->batchCreate = "批量創建";
|
||||
$lang->story->change = "變更";
|
||||
$lang->story->changeAction = "變更{$lang->storyCommon}";
|
||||
$lang->story->changed = "{$lang->storyCommon}變更";
|
||||
$lang->story->assignTo = '指派';
|
||||
$lang->story->assignAction = "指派{$lang->storyCommon}";
|
||||
$lang->story->review = '評審';
|
||||
$lang->story->reviewAction = "評審{$lang->storyCommon}";
|
||||
$lang->story->needReview = '需要評審';
|
||||
$lang->story->batchReview = '批量評審';
|
||||
$lang->story->edit = "編輯";
|
||||
$lang->story->batchEdit = "批量編輯";
|
||||
$lang->story->subdivide = '細分';
|
||||
$lang->story->subdivideAction = "細分{$lang->storyCommon}";
|
||||
$lang->story->splitRequirent = '拆分';
|
||||
$lang->story->close = '關閉';
|
||||
$lang->story->closeAction = "關閉{$lang->storyCommon}";
|
||||
$lang->story->batchClose = '批量關閉';
|
||||
$lang->story->activate = '激活';
|
||||
$lang->story->activateAction = "激活{$lang->storyCommon}";
|
||||
$lang->story->delete = "刪除";
|
||||
$lang->story->deleteAction = "刪除{$lang->storyCommon}";
|
||||
$lang->story->view = "{$lang->storyCommon}詳情";
|
||||
$lang->story->setting = "設置";
|
||||
$lang->story->tasks = "相關任務";
|
||||
$lang->story->bugs = "相關Bug";
|
||||
$lang->story->cases = "相關用例";
|
||||
$lang->story->taskCount = '任務數';
|
||||
$lang->story->bugCount = 'Bug數';
|
||||
$lang->story->caseCount = '用例數';
|
||||
$lang->story->taskCountAB = 'T';
|
||||
$lang->story->bugCountAB = 'B';
|
||||
$lang->story->caseCountAB = 'C';
|
||||
$lang->story->linkStory = "關聯{$lang->storyCommon}";
|
||||
$lang->story->unlinkStory = "移除相關{$lang->storyCommon}";
|
||||
$lang->story->export = "導出數據";
|
||||
$lang->story->exportAction = "導出{$lang->storyCommon}";
|
||||
$lang->story->zeroCase = "零用例{$lang->storyCommon}";
|
||||
$lang->story->zeroTask = "只列零任務{$lang->storyCommon}";
|
||||
$lang->story->reportChart = "統計報表";
|
||||
$lang->story->reportAction = "統計報表";
|
||||
$lang->story->copyTitle = "同{$lang->storyCommon}名稱";
|
||||
$lang->story->batchChangePlan = "批量修改計劃";
|
||||
$lang->story->batchChangeBranch = "批量修改分支";
|
||||
$lang->story->batchChangeStage = "批量修改階段";
|
||||
$lang->story->batchAssignTo = "批量指派";
|
||||
$lang->story->batchChangeModule = "批量修改模組";
|
||||
$lang->story->viewAll = '查看全部';
|
||||
$lang->story->skipStory = '需求:%s 為父需求,將不會被關閉。';
|
||||
$lang->story->closedStory = '需求:%s 已關閉,將不會被關閉。';
|
||||
$lang->story->toTask = '轉任務';
|
||||
$lang->story->batchToTask = '批量轉任務';
|
||||
$lang->story->convertRelations = '換算關係';
|
||||
|
||||
$lang->story->skipStory = '需求:%s 為父需求,將不會被關閉。';
|
||||
$lang->story->closedStory = '需求:%s 已關閉,將不會被關閉。';
|
||||
$lang->story->batchToTaskTips = "此操作會創建與所選{$lang->storyCommon}同名的任務,並將{$lang->storyCommon}關聯到任務中,已關閉的需求不會轉為任務。";
|
||||
$lang->story->successToTask = '批量轉任務成功';
|
||||
|
||||
$lang->story->common = $lang->storyCommon;
|
||||
$lang->story->id = '編號';
|
||||
@@ -121,6 +127,8 @@ $lang->story->allStories = "所有{$lang->storyCommon}";
|
||||
$lang->story->unclosed = '未關閉';
|
||||
$lang->story->deleted = '已刪除';
|
||||
$lang->story->released = "已發佈{$lang->storyCommon}數";
|
||||
$lang->story->one = '一個';
|
||||
$lang->story->field = '同步的欄位';
|
||||
|
||||
$lang->story->ditto = '同上';
|
||||
$lang->story->dittoNotice = "該{$lang->storyCommon}與上一{$lang->storyCommon}不屬於同一產品!";
|
||||
@@ -337,3 +345,11 @@ $lang->story->chosen->reviewedBy = '選擇評審人...';
|
||||
|
||||
$lang->story->notice = new stdClass();
|
||||
$lang->story->notice->closed = "您選擇的{$lang->storyCommon}已經被關閉了!";
|
||||
|
||||
$lang->story->convertToTask = new stdClass();
|
||||
$lang->story->convertToTask->fieldList = array();
|
||||
$lang->story->convertToTask->fieldList['module'] = '所屬模組';
|
||||
$lang->story->convertToTask->fieldList['spec'] = "{$lang->storyCommon}描述";
|
||||
$lang->story->convertToTask->fieldList['pri'] = '優先順序';
|
||||
$lang->story->convertToTask->fieldList['mailto'] = '抄送給';
|
||||
$lang->story->convertToTask->fieldList['assignedTo'] = '指派給';
|
||||
|
||||
@@ -128,3 +128,4 @@ $lang->upgrade->fromVersions['12_4'] = '12.4';
|
||||
$lang->upgrade->fromVersions['12_4_1'] = '12.4.1';
|
||||
$lang->upgrade->fromVersions['12_4_2'] = '12.4.2';
|
||||
$lang->upgrade->fromVersions['12_4_3'] = '12.4.3';
|
||||
$lang->upgrade->fromVersions['12_4_4'] = '12.4.4';
|
||||
|
||||
@@ -619,6 +619,11 @@ class upgradeModel extends model
|
||||
case '12_4_3':
|
||||
$this->saveLogs('Execute 12_4_3');
|
||||
$this->appendExec('12_4_3');
|
||||
case '12_4_4':
|
||||
$this->saveLogs('Execute 12_4_4');
|
||||
$this->execSQL($this->getUpgradeFile('12.4.4'));
|
||||
$this->adjustPriv12_5();
|
||||
$this->appendExec('12_4_4');
|
||||
}
|
||||
|
||||
$this->deletePatch();
|
||||
@@ -798,6 +803,7 @@ class upgradeModel extends model
|
||||
case '12_4_1': $confirmContent .= file_get_contents($this->getUpgradeFile('12.4.1'));
|
||||
case '12_4_2': $confirmContent .= file_get_contents($this->getUpgradeFile('12.4.2'));
|
||||
case '12_4_3':
|
||||
case '12_4_4': $confirmContent .= file_get_contents($this->getUpgradeFile('12.4.4'));
|
||||
}
|
||||
return str_replace('zt_', $this->config->db->prefix, $confirmContent);
|
||||
}
|
||||
@@ -3872,6 +3878,45 @@ class upgradeModel extends model
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Adjust priv 12.5.
|
||||
*
|
||||
* @access public
|
||||
* @return bool
|
||||
*/
|
||||
public function adjustPriv12_5()
|
||||
{
|
||||
$this->saveLogs('Run Method ' . __FUNCTION__);
|
||||
|
||||
$groups = $this->dao->select('*')->from(TABLE_GROUPPRIV)->where('module')->eq('custom')->andWhere('method')->eq('set')->fetchPairs('group', 'group');
|
||||
foreach($groups as $groupID)
|
||||
{
|
||||
$groupPriv = new stdclass();
|
||||
$groupPriv->group = $groupID;
|
||||
$groupPriv->module = 'custom';
|
||||
$groupPriv->method = 'product';
|
||||
$this->dao->replace(TABLE_GROUPPRIV)->data($groupPriv)->exec();
|
||||
$this->saveLogs($this->dao->get());
|
||||
|
||||
$groupPriv->method = 'project';
|
||||
$this->dao->replace(TABLE_GROUPPRIV)->data($groupPriv)->exec();
|
||||
$this->saveLogs($this->dao->get());
|
||||
}
|
||||
|
||||
$groups = $this->dao->select('*')->from(TABLE_GROUPPRIV)->where('module')->eq('task')->andWhere('method')->eq('create')->fetchPairs('group', 'group');
|
||||
foreach($groups as $groupID)
|
||||
{
|
||||
$groupPriv = new stdclass();
|
||||
$groupPriv->group = $groupID;
|
||||
$groupPriv->module = 'story';
|
||||
$groupPriv->method = 'batchToTask';
|
||||
$this->dao->replace(TABLE_GROUPPRIV)->data($groupPriv)->exec();
|
||||
$this->saveLogs($this->dao->get());
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Save Logs.
|
||||
*
|
||||
|
||||
@@ -63,6 +63,8 @@ $lang->user->unlock = "解鎖用戶";
|
||||
$lang->user->delete = "刪除用戶";
|
||||
$lang->user->unbind = "解除ZDOO綁定";
|
||||
$lang->user->login = "用戶登錄";
|
||||
$lang->user->bind = "綁定已有賬戶";
|
||||
$lang->user->oauthRegister = "註冊新賬號";
|
||||
$lang->user->mobileLogin = "手機訪問";
|
||||
$lang->user->editProfile = "修改檔案";
|
||||
$lang->user->deny = "訪問受限";
|
||||
|
||||
@@ -51,6 +51,7 @@ $whiteList[] = 'testtask-sendmail';
|
||||
$whiteList[] = 'user-login';
|
||||
$whiteList[] = 'im-login';
|
||||
$whiteList[] = 'im-debug';
|
||||
$whiteList[] = 'im-sysgetserverinfo';
|
||||
$whiteList[] = 'user-deny';
|
||||
$whiteList[] = 'user-logout';
|
||||
$whiteList[] = 'user-setreferer';
|
||||
|
||||
Reference in New Issue
Block a user