Merge branch 'master' of https://github.com/easysoft/zentaopms
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 = '10.4'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
|
||||
$config->version = '10.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.
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ ALTER TABLE `zt_task` ADD `finishedList` text NOT NULL AFTER `finishedDate`;
|
||||
update zt_config set `value` = 'files,customFiles' where `module` = 'doc' and `section` = 'custom' and `key` = 'objectLibs';
|
||||
ALTER TABLE `zt_file` CHANGE `title` `title` varchar(255) COLLATE 'utf8_general_ci' NOT NULL AFTER `pathname`;
|
||||
|
||||
ALTER TABLE `zt_doclib` ADD `type` varchar(30) COLLATE 'utf8_general_ci' NOT NULL AFTER `id`, COMMENT='';
|
||||
ALTER TABLE `zt_doclib` ADD `type` varchar(30) COLLATE 'utf8_general_ci' NOT NULL AFTER `id`;
|
||||
UPDATE `zt_doclib` SET `type` = 'product' WHERE `product` > 0;
|
||||
UPDATE `zt_doclib` SET `type` = 'project' WHERE `project` > 0;
|
||||
UPDATE `zt_doclib` SET `type` = 'custom' WHERE `product` = 0 AND `project` = 0;
|
||||
|
||||
+5
-3
@@ -300,6 +300,7 @@ CREATE TABLE IF NOT EXISTS `zt_doccontent` (
|
||||
-- DROP TABLE IF EXISTS `zt_doclib`;
|
||||
CREATE TABLE IF NOT EXISTS `zt_doclib` (
|
||||
`id` smallint(5) unsigned NOT NULL auto_increment,
|
||||
`type` varchar(30) NOT NULL,
|
||||
`product` mediumint(8) unsigned NOT NULL,
|
||||
`project` mediumint(8) unsigned NOT NULL,
|
||||
`name` varchar(60) NOT NULL,
|
||||
@@ -356,7 +357,7 @@ CREATE TABLE IF NOT EXISTS `zt_extension` (
|
||||
CREATE TABLE IF NOT EXISTS `zt_file` (
|
||||
`id` mediumint(8) unsigned NOT NULL auto_increment,
|
||||
`pathname` char(50) NOT NULL,
|
||||
`title` char(90) NOT NULL,
|
||||
`title` char(255) NOT NULL,
|
||||
`extension` char(30) NOT NULL,
|
||||
`size` int(10) unsigned NOT NULL default '0',
|
||||
`objectType` char(30) NOT NULL,
|
||||
@@ -638,6 +639,7 @@ CREATE TABLE IF NOT EXISTS `zt_task` (
|
||||
`realStarted` date NOT NULL,
|
||||
`finishedBy` varchar(30) NOT NULL,
|
||||
`finishedDate` datetime NOT NULL,
|
||||
`finishedList` text NOT NULL,
|
||||
`canceledBy` varchar(30) NOT NULL,
|
||||
`canceledDate` datetime NOT NULL,
|
||||
`closedBy` varchar(30) NOT NULL,
|
||||
@@ -878,8 +880,8 @@ CREATE TABLE IF NOT EXISTS `zt_usertpl` (
|
||||
-- DROP TABLE IF EXISTS `zt_userview`;
|
||||
CREATE TABLE IF NOT EXISTS `zt_userview` (
|
||||
`account` char(30) NOT NULL,
|
||||
`products` text NOT NULL,
|
||||
`projects` text NOT NULL,
|
||||
`products` mediumtext NOT NULL,
|
||||
`projects` mediumtext NOT NULL,
|
||||
UNIQUE KEY `account` (`account`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_entry`;
|
||||
|
||||
@@ -1,3 +1,90 @@
|
||||
2018-10-25 10.5.stable
|
||||
完成的需求
|
||||
3389 文档查看方式与产品、项目列表信息保持一致,查看后有明显查看过的颜色标记
|
||||
3373 创建文档的时候增加文档库字段
|
||||
3370 将文档库的快速访问菜单折叠到二级导航的右上角
|
||||
3369 将左侧的文档库导航固定高度
|
||||
3368 文档库左侧导航底部增加筛选条件
|
||||
3366 产品如果只有一个主库的话,左侧导航省略该节点,将附件库、项目库和其默认的分类放在一起显示。
|
||||
3365 调整文档库左侧的布局方式
|
||||
3335 增加浏览器指纹的判断
|
||||
3316 右上角的登录之后的用户姓名应该增大字体
|
||||
3315 调整一二级导航的字体
|
||||
3314 日历右侧的时间线怎么显示的都是8点
|
||||
3313 燃尽图标题字体改为16px
|
||||
3312 其他主题下面操作按钮的背景色去掉
|
||||
3311 弹窗改为直角
|
||||
3310 编辑模块排序时显示移动图标
|
||||
3290 文档模块搜索功能是否还原成旧版
|
||||
3289 文档列表的时间未使用24小时制,目前无法区分上午、下午
|
||||
3229 文档库右侧的设置改为文档库分类的设置
|
||||
3100 文档库左侧结构树和页面上方可以显示维护分类的路径
|
||||
2924 测试-用例 从用例库中导入用例确认页面所属模块增加同上功能
|
||||
2909 控制面板对vc环境的检查改为判断版本
|
||||
2871 测试-bug 报表 按照版本展示折线图的时候按照版本的创建时间排序
|
||||
2868 导出的数据文件中的所属模块显示完整的层级关系
|
||||
2865 项目-需求 -关联需求 增加分页功能
|
||||
2859 安装插件时判断是否为第一次安装需要把禁用的插件也计算在内
|
||||
2833 检查多人任务、子任务在导出时的呈现
|
||||
2832 梳理子任务在各个视图下面的呈现逻辑
|
||||
2594 增加多人任务多个完成人记录及搜索功能
|
||||
2588 调整添加webhook时类型控件
|
||||
2587 测试单关联用例时去掉搜索中的所有产品选项
|
||||
2583 国际版本去掉汉语拼音搜索功能
|
||||
2576 提供docker安装包
|
||||
修复的Bug
|
||||
2007 用户登录界面公司名过长时和语言选项按钮重叠
|
||||
2023 附件名称过长,编辑后附近名称和历史记录的不一致
|
||||
2025 在浏览器语言为英文时,用源代码安装国际版时,显示中文界面
|
||||
2033 添加用户页面,保存和返回按钮位置不对
|
||||
2037 英文下,后台首页的跳转地址需要换成英文的
|
||||
2039 搜索条件保存到菜单栏,在自定义导航中设置显隐无效
|
||||
2040 项目需求详情页面,建任务操作需要优化
|
||||
2049 员工负载表,名称长的项目需要加title
|
||||
2062 动态点击私人事务待办在浏览器标签页可以看到待办名称
|
||||
2079 需求和计划页面共X项 每页X项 中文改为英文
|
||||
2082 富文本编辑框拖动有问题
|
||||
2084 文档库维护模块后显示顺序不一致
|
||||
2091 需求列表显示来源备注字段后重叠
|
||||
2132 维护项目模块点击返回按钮无效
|
||||
2141 钉钉webhook接口中@功能没有生效
|
||||
2145 多分支产品下的bug选择解决版本时可以选择其他分支下的版本
|
||||
2147 mysql8安装提示 mysql has gone away
|
||||
2159 用例步骤录入多个空格只会保存一个
|
||||
2162 文档列表页面时间显示的不是24小时制
|
||||
2164 bug类型和标题增加title提示
|
||||
2173 需求变更状态和菜单里面的需求变动保持一致
|
||||
2174 创建用例可以关联关闭的需求
|
||||
2176 程序无法转到 checktable.php
|
||||
2179 任务看板指派后保存页面报错
|
||||
2180 用例编辑后优先级会改变
|
||||
2182 产品汇总表会显示访问受限的产品
|
||||
2183 测试单点击概况,在弹窗中点击版本,在点击关联需求,弹窗抖动
|
||||
2188 计划创建项目问题
|
||||
2190 创建版本页面标签显示优化
|
||||
2192 项目-需求搜索后选中几条记录导出报错
|
||||
2193 批量创建需求填写需求名称时,使用键盘快捷换行键"↓"时,隔行跳跃
|
||||
2195 用例导出数据用wps打开保存后无法导入禅道
|
||||
2196 待办切换为自定义的类型无法录入待办的名称
|
||||
2197 ie9浏览器提bug提示连接超时
|
||||
2199 批量创建任务多项录入时,超过10条部分日期没有下拉日期选择
|
||||
2201 云禅道批量分解需求时提醒任务名称重复后报错
|
||||
2203 后台新增的待办类型在创建周期待办时无法选择
|
||||
2204 后台流程选择产品-迭代,产品主页部分区块还是显示项目
|
||||
2210 项目概况页面文档库列表区块非超级管理员用户不显示内容
|
||||
2211 已关闭待办会在未完菜单中显示
|
||||
2212 项目需求列表用户名称过长显示重叠
|
||||
2213 无法显示git的view 和 diff
|
||||
2215 添加应用页面,账号字段添加提示
|
||||
2217 项目子模块编辑的返回按钮异常
|
||||
2218 建任务预计工时必填项提示显示优化
|
||||
2220 产品需求列表的用例覆盖率显示错误
|
||||
2222 产品项目删除后在我的地盘区块下还会显示
|
||||
2223 项目选择框点击回车报错
|
||||
2226 点击附件链接导致串号
|
||||
2241 需求列表由谁评审没有显示用户姓名
|
||||
2243 项目需求页面,没有需求时左侧模块会自动隐藏
|
||||
|
||||
2018-09-25 10.4.stable
|
||||
完成的需求
|
||||
3298 详情页面还原我们之前的排版布局
|
||||
|
||||
@@ -259,6 +259,7 @@ $lang->task = new stdclass();
|
||||
$lang->build = new stdclass();
|
||||
$lang->task->menu = $lang->project->menu;
|
||||
$lang->build->menu = $lang->project->menu;
|
||||
$lang->build->menu->qa = array('link' => '版本|project|build|projectID=%s', 'subModule' => 'bug,build,testtask', 'alias' => 'build,testtask', 'class' => 'dropdown dropdown-hover');
|
||||
|
||||
/* QA視圖菜單設置。*/
|
||||
$lang->qa = new stdclass();
|
||||
|
||||
@@ -99,6 +99,10 @@ $lang->doc->libTypeList['product'] = $lang->productCommon . '文檔庫';
|
||||
$lang->doc->libTypeList['project'] = $lang->projectCommon . '文檔庫';
|
||||
$lang->doc->libTypeList['custom'] = '自定義文檔庫';
|
||||
|
||||
$lang->doc->libIconList['product'] = 'icon-cube';
|
||||
$lang->doc->libIconList['project'] = 'icon-stack';
|
||||
$lang->doc->libIconList['custom'] = 'icon-folder-o';
|
||||
|
||||
$lang->doc->systemLibs['product'] = $lang->productCommon;
|
||||
$lang->doc->systemLibs['project'] = $lang->projectCommon;
|
||||
|
||||
@@ -135,6 +139,10 @@ $lang->doc->fastMenuIconList['collectedbyme'] = 'icon-folder-star';
|
||||
$lang->doc->customObjectLibs['files'] = '顯示附件庫';
|
||||
$lang->doc->customObjectLibs['customFiles'] = '顯示自定義文檔庫';
|
||||
|
||||
$lang->doc->customShowLibs = '文檔庫顯示設置';
|
||||
$lang->doc->customShowLibsList['zero'] = '顯示空文檔的庫';
|
||||
$lang->doc->customShowLibsList['unclosed'] = '顯示未關閉的項目';
|
||||
|
||||
$lang->doc->confirmDelete = "您確定刪除該文檔嗎?";
|
||||
$lang->doc->confirmDeleteLib = "您確定刪除該文檔庫嗎?";
|
||||
$lang->doc->errorEditSystemDoc = "系統文檔庫無需修改。";
|
||||
@@ -165,3 +173,9 @@ $lang->doclib->product = $lang->productCommon . '庫';
|
||||
|
||||
$lang->doclib->main['product'] = $lang->productCommon . '主庫';
|
||||
$lang->doclib->main['project'] = $lang->projectCommon . '主庫';
|
||||
|
||||
$lang->doclib->tabList['product'] = $lang->productCommon;
|
||||
$lang->doclib->tabList['project'] = $lang->projectCommon;
|
||||
$lang->doclib->tabList['custom'] = '自定義';
|
||||
|
||||
$lang->doclib->nameList['custom'] = '自定義文檔庫名稱';
|
||||
|
||||
@@ -708,7 +708,7 @@ class docModel extends model
|
||||
$moduleOptionMenu = $this->loadModel('tree')->getOptionMenu($libID, 'doc', $startModuleID = 0);
|
||||
$this->config->doc->search['params']['module']['values'] = $moduleOptionMenu;
|
||||
|
||||
if($type == 'index' || $type == 'objectLibs')
|
||||
if($type == 'index' || $type == 'objectLibs' || $libID == 0)
|
||||
{
|
||||
unset($this->config->doc->search['fields']['module']);
|
||||
unset($this->config->doc->search['fields']['lib']);
|
||||
|
||||
@@ -30,10 +30,11 @@ $lang->entry->confirmDelete = '您確認要刪除該應用嗎?';
|
||||
$lang->entry->help = '使用說明';
|
||||
|
||||
$lang->entry->note = new stdClass();
|
||||
$lang->entry->note->name = '授權應用名稱';
|
||||
$lang->entry->note->code = '授權應用代號,必須為字母或數字的組合';
|
||||
$lang->entry->note->ip = "允許訪問API的應用ip,多個ip用逗號隔開。支持IP段,如192.168.1.*";
|
||||
$lang->entry->note->allIP = '無限制';
|
||||
$lang->entry->note->name = '授權應用名稱';
|
||||
$lang->entry->note->code = '授權應用代號,必須為字母或數字的組合';
|
||||
$lang->entry->note->ip = "允許訪問API的應用ip,多個ip用逗號隔開。支持IP段,如192.168.1.*";
|
||||
$lang->entry->note->allIP = '無限制';
|
||||
$lang->entry->note->account = '授權應用賬號';
|
||||
|
||||
$lang->entry->errmsg['PARAM_CODE_MISSING'] = '缺少code參數';
|
||||
$lang->entry->errmsg['PARAM_TOKEN_MISSING'] = '缺少token參數';
|
||||
|
||||
@@ -44,6 +44,7 @@ $lang->file->downloads = '下載次數';
|
||||
$lang->file->extra = '備註';
|
||||
|
||||
$lang->file->dragFile = '請拖拽檔案到此處';
|
||||
$lang->file->childTaskTips = "任務名稱前有'>'標記的為子任務";
|
||||
$lang->file->errorNotExists = "<span class='text-red'>檔案夾 '%s' 不存在</span>";
|
||||
$lang->file->errorCanNotWrite = "<span class='text-red'>檔案夾 '%s' 不可寫,請改變檔案夾的權限。在linux中輸入指令: <span class='code'>sudo chmod -R 777 %s</span></span>";
|
||||
$lang->file->confirmDelete = " 您確定刪除該附件嗎?";
|
||||
|
||||
@@ -76,6 +76,7 @@ $lang->misc->feature = new stdclass();
|
||||
$lang->misc->feature->lastest = 'Latest Version';
|
||||
$lang->misc->feature->detailed = 'Details';
|
||||
|
||||
$lang->misc->releaseDate['10.5.stable'] = '2018-10-25';
|
||||
$lang->misc->releaseDate['10.4.stable'] = '2018-09-28';
|
||||
$lang->misc->releaseDate['10.3.stable'] = '2018-08-10';
|
||||
$lang->misc->releaseDate['10.2.stable'] = '2018-08-02';
|
||||
@@ -94,6 +95,9 @@ $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['10.5.stable'][] = array('title'=>'Adjust document display', 'desc' => "<p>Adjust the layout method on the left side of the document library.</p><p>Adding filter conditions to the bottom of the document library's navigation bottom.</p>");
|
||||
$lang->misc->feature->all['10.5.stable'][] = array('title'=>'Adjust the sub task logic and optimize the display of father child task.', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'Optimizing and adjusting new interface', 'desc' => '<p>Details page restore our previous layout.</p><p>Refactoring forms to add user pages</p><p>When use cases are executed, do not update the use case state if the user manually chooses to pass through and write the results.</p>');
|
||||
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'After the user machine hibernate login fails, the session is refreshed again.', 'desc' => '');
|
||||
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'Upgrading existing interface mechanisms', 'desc' => '');
|
||||
|
||||
@@ -76,6 +76,7 @@ $lang->misc->feature = new stdclass();
|
||||
$lang->misc->feature->lastest = '最新版本';
|
||||
$lang->misc->feature->detailed = '详情';
|
||||
|
||||
$lang->misc->releaseDate['10.5.stable'] = '2018-10-25';
|
||||
$lang->misc->releaseDate['10.4.stable'] = '2018-09-28';
|
||||
$lang->misc->releaseDate['10.3.stable'] = '2018-08-10';
|
||||
$lang->misc->releaseDate['10.2.stable'] = '2018-08-02';
|
||||
@@ -94,6 +95,9 @@ $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['10.5.stable'][] = array('title'=>'调整文档显示', 'desc' => '<p>调整文档库左侧的布局方式</p><p>文档库左侧导航底部增加筛选条件</p>');
|
||||
$lang->misc->feature->all['10.5.stable'][] = array('title'=>'调整子任务逻辑,优化父子任务显示。', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'优化调整新界面', 'desc' => '<p>详情页面还原我们之前的排版布局</p><p>重构添加用户页面的表单</p><p>用例执行时,如果用户手工选择了通过,写结果的时候不要更新用例状态</p>');
|
||||
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'用户机器休眠登录失效后,重新刷新session', 'desc' => '');
|
||||
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'提升现有的接口机制', 'desc' => '');
|
||||
|
||||
@@ -13,6 +13,7 @@ $lang->misc = new stdclass();
|
||||
$lang->misc->common = '雜項';
|
||||
$lang->misc->ping = '防超時';
|
||||
$lang->misc->api = 'https://api.zentao.net';
|
||||
$lang->misc->enApi = 'http://api.zentao.pm';
|
||||
|
||||
$lang->misc->zentao = new stdclass();
|
||||
$lang->misc->zentao->version = '版本%s';
|
||||
@@ -58,6 +59,7 @@ $lang->misc->checkTable = "檢查修復數據表";
|
||||
$lang->misc->needRepair = "修復表";
|
||||
$lang->misc->repairTable = "資料庫表可能因為斷電原因損壞,需要檢查修復!!";
|
||||
$lang->misc->repairFail = "修復失敗,請到該資料庫的數據目錄下,嘗試執行<code>myisamchk -r -f %s.MYI</code>進行修復。";
|
||||
$lang->misc->connectFail = "連接資料庫失敗,錯誤:%s,<br/> 請檢查mysql錯誤日誌,排查錯誤。";
|
||||
$lang->misc->tableName = "表名";
|
||||
$lang->misc->tableStatus = "狀態";
|
||||
$lang->misc->novice = "您可能初次使用禪道,是否進入新手模式?";
|
||||
@@ -74,6 +76,7 @@ $lang->misc->feature = new stdclass();
|
||||
$lang->misc->feature->lastest = '最新版本';
|
||||
$lang->misc->feature->detailed = '詳情';
|
||||
|
||||
$lang->misc->releaseDate['10.5.stable'] = '2018-10-25';
|
||||
$lang->misc->releaseDate['10.4.stable'] = '2018-09-28';
|
||||
$lang->misc->releaseDate['10.3.stable'] = '2018-08-10';
|
||||
$lang->misc->releaseDate['10.2.stable'] = '2018-08-02';
|
||||
@@ -92,6 +95,9 @@ $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['10.5.stable'][] = array('title'=>'調整文檔顯示', 'desc' => '<p>調整文檔庫左側的佈局方式</p><p>文檔庫左側導航底部增加篩選條件</p>');
|
||||
$lang->misc->feature->all['10.5.stable'][] = array('title'=>'調整子任務邏輯,優化父子任務顯示。', 'desc' => '');
|
||||
|
||||
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'優化調整新界面', 'desc' => '<p>詳情頁面還原我們之前的排版佈局</p><p>重構添加用戶頁面的表單</p><p>用例執行時,如果用戶手工選擇了通過,寫結果的時候不要更新用例狀態</p>');
|
||||
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'用戶機器休眠登錄失效後,重新刷新session', 'desc' => '');
|
||||
$lang->misc->feature->all['10.4.stable'][] = array('title'=>'提升現有的介面機制', 'desc' => '');
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
</div>
|
||||
<div class='panel-body'>
|
||||
<ul>
|
||||
<?php $api = empty($config->isINT) ? $lang->misc->api : $lang->misc->enApi;?>
|
||||
<?php $api = (isset($config->isINT) && !empty($config->isINT)) ? $lang->misc->enApi : $lang->misc->api;?>
|
||||
<?php foreach($groupItems as $item => $label):?>
|
||||
<li><?php echo html::a($api . "/goto.php?item=$item&from=about", $label, '_blank', "id='$item'");;?></li>
|
||||
<?php endforeach;?>
|
||||
|
||||
@@ -43,7 +43,7 @@ $lang->product->doc = '文檔列表';
|
||||
$lang->product->project = $lang->projectCommon . '列表';
|
||||
$lang->product->build = '版本列表';
|
||||
|
||||
$lang->product->currentProject = '當前項目';
|
||||
$lang->product->currentProject = '當前' . $lang->projectCommon;
|
||||
$lang->product->activeStories = '激活需求';
|
||||
$lang->product->changedStories = '已變更需求';
|
||||
$lang->product->draftStories = '草稿需求';
|
||||
|
||||
@@ -405,7 +405,7 @@ $(function()
|
||||
});
|
||||
var rate = Math.round(checkedCase / checkedTotal * 10000) / 100 + '' + '%';
|
||||
return checkedSummary.replace('%total%', checkedTotal)
|
||||
.replace('%estimate%', checkedEstimate)
|
||||
.replace('%estimate%', checkedEstimate.toFixed(1))
|
||||
.replace('%rate%', rate);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -302,7 +302,7 @@ $lang->project->featureBar['task']['unclosed'] = $lang->project->unclosed;
|
||||
$lang->project->featureBar['task']['assignedtome'] = $lang->project->assignedToMe;
|
||||
$lang->project->featureBar['task']['myinvolved'] = $lang->project->myInvolved;
|
||||
$lang->project->featureBar['task']['delayed'] = '已延期';
|
||||
$lang->project->featureBar['task']['needconfirm'] = '需求變動';
|
||||
$lang->project->featureBar['task']['needconfirm'] = '需求變更';
|
||||
$lang->project->featureBar['task']['status'] = $lang->project->statusSelects[''];
|
||||
|
||||
$lang->project->treeLevel = array();
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="main-col">
|
||||
<div class="cell" id="queryBox"></div>
|
||||
<div id='queryBox' class='cell <?php if($type =='bySearch') echo 'show';?>'></div>
|
||||
<?php if(empty($stories)):?>
|
||||
<div class="table-empty-tip">
|
||||
<p>
|
||||
|
||||
@@ -372,9 +372,9 @@ $(function()
|
||||
});
|
||||
return checkedSummary.replace('%total%', checkedTotal).replace('%wait%', checkedWait)
|
||||
.replace('%doing%', checkedDoing)
|
||||
.replace('%estimate%', checkedEstimate)
|
||||
.replace('%consumed%', checkedConsumed)
|
||||
.replace('%left%', checkedLeft);
|
||||
.replace('%estimate%', checkedEstimate.toFixed(1))
|
||||
.replace('%consumed%', checkedConsumed.toFixed(1))
|
||||
.replace('%left%', checkedLeft.toFixed(1));
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
#product_chosen .chosen-single{border-right-width:1px}
|
||||
#branch_chosen .chosen-single{border-left-width:0px;}
|
||||
|
||||
@@ -84,6 +84,7 @@ $lang->task->finishedBy = '由誰完成';
|
||||
$lang->task->finishedByAB = '完成者';
|
||||
$lang->task->finishedDate = '完成時間';
|
||||
$lang->task->finishedDateAB = '完成時間';
|
||||
$lang->task->finishedList = '完成者列表';
|
||||
$lang->task->canceledBy = '由誰取消';
|
||||
$lang->task->canceledDate = '取消時間';
|
||||
$lang->task->closedBy = '由誰關閉';
|
||||
|
||||
@@ -141,6 +141,7 @@ $lang->testcase->dittoNotice = '該用例與上一用例不屬於同一
|
||||
$lang->testcase->reviewList[0] = '否';
|
||||
$lang->testcase->reviewList[1] = '是';
|
||||
|
||||
$lang->testcase->priList[0] = '';
|
||||
$lang->testcase->priList[3] = 3;
|
||||
$lang->testcase->priList[1] = 1;
|
||||
$lang->testcase->priList[2] = 2;
|
||||
|
||||
@@ -96,3 +96,4 @@ $lang->upgrade->fromVersions['10_1'] = '10.1';
|
||||
$lang->upgrade->fromVersions['10_2'] = '10.2';
|
||||
$lang->upgrade->fromVersions['10_3'] = '10.3';
|
||||
$lang->upgrade->fromVersions['10_3_1'] = '10.3.1';
|
||||
$lang->upgrade->fromVersions['10_4'] = '10.4';
|
||||
|
||||
@@ -238,6 +238,7 @@ class upgradeModel extends model
|
||||
$this->removeCustomMenu();
|
||||
$this->initUserView();
|
||||
case '10_4':
|
||||
$this->execSQL($this->getUpgradeFile('10.4'));
|
||||
$this->changeTaskParentValue();
|
||||
}
|
||||
|
||||
@@ -354,6 +355,7 @@ class upgradeModel extends model
|
||||
case '10_2':
|
||||
case '10_3':
|
||||
case '10_3_1': $confirmContent .= file_get_contents($this->getUpgradeFile('10.3.1'));
|
||||
case '10_4': $confirmContent .= file_get_contents($this->getUpgradeFile('10.4'));
|
||||
}
|
||||
return str_replace('zt_', $this->config->db->prefix, $confirmContent);
|
||||
}
|
||||
@@ -2412,7 +2414,7 @@ class upgradeModel extends model
|
||||
*/
|
||||
public function changeTaskParentValue()
|
||||
{
|
||||
$tasks = $this->dao->select(TABLE_TASK)->where('parent')->gt(0)->fetchGroup('parent');
|
||||
$tasks = $this->dao->select('*')->from(TABLE_TASK)->where('parent')->gt(0)->fetchGroup('parent');
|
||||
if($tasks)
|
||||
{
|
||||
$this->dao->update(TABLE_TASK)->set('parent')->eq('-1')->where('id')->in($tasks)->exec();
|
||||
|
||||
@@ -32,9 +32,10 @@ $lang->webhook->date = '發送時間';
|
||||
$lang->webhook->data = '數據';
|
||||
$lang->webhook->result = '結果';
|
||||
|
||||
$lang->webhook->typeList[''] = '';
|
||||
$lang->webhook->typeList['bearychat'] = '倍洽';
|
||||
$lang->webhook->typeList['dingding'] = '釘釘';
|
||||
$lang->webhook->typeList['default'] = '預設';
|
||||
$lang->webhook->typeList['default'] = '其他';
|
||||
|
||||
$lang->webhook->sendTypeList['sync'] = '同步';
|
||||
$lang->webhook->sendTypeList['async'] = '非同步';
|
||||
|
||||
Reference in New Issue
Block a user