From cc414d4e143b354d28236609a4ec26e833914fdc Mon Sep 17 00:00:00 2001 From: tianshujie Date: Mon, 13 Dec 2021 17:45:42 +0800 Subject: [PATCH] * Fix Kanban dynamic issue. --- module/action/config.php | 1 + module/action/lang/en.php | 14 ++++++++++++++ module/action/lang/zh-cn.php | 14 ++++++++++++++ module/action/model.php | 17 +++++++++++++++-- module/common/lang/menu.php | 7 ++++++- 5 files changed, 50 insertions(+), 3 deletions(-) diff --git a/module/action/config.php b/module/action/config.php index f0a6e2ec47..e7234caf83 100755 --- a/module/action/config.php +++ b/module/action/config.php @@ -38,6 +38,7 @@ $config->action->objectNameFields['kanbanlane'] = 'name'; $config->action->objectNameFields['kanbanspace'] = 'name'; $config->action->objectNameFields['kanbanregion'] = 'name'; $config->action->objectNameFields['kanban'] = 'name'; +$config->action->objectNameFields['kanbancard'] = 'name'; $config->action->commonImgSize = 870; diff --git a/module/action/lang/en.php b/module/action/lang/en.php index 43ef3cb36d..47e86184e7 100755 --- a/module/action/lang/en.php +++ b/module/action/lang/en.php @@ -386,10 +386,23 @@ $lang->action->dynamicAction->execution['undeleted'] = 'Restore ' . $lang->execu $lang->action->dynamicAction->execution['hidden'] = 'Hide ' . $lang->executionCommon; $lang->action->dynamicAction->execution['moved'] = 'Improt Task'; +$lang->action->dynamicAction->kanban['create'] = 'Create Kanban'; +$lang->action->dynamicAction->kanban['edited'] = 'Kanban Settings'; + +$lang->action->dynamicAction->kanbanspace['create'] = 'Create Space'; +$lang->action->dynamicAction->kanbanspace['edited'] = 'Space Settings'; +$lang->action->dynamicAction->kanbanspace['closed'] = 'Close Kanban'; + +$lang->action->dynamicAction->kanbancolumn['create'] = 'Create Column'; $lang->action->dynamicAction->kanbancolumn['edited'] = 'Column Settings'; + +$lang->action->dynamicAction->kanbanlane['created'] = 'Create Swimlane'; $lang->action->dynamicAction->kanbanlane['edited'] = 'Swimlane Settings'; $lang->action->dynamicAction->kanbanlane['moved'] = 'Move Swimlane'; +$lang->action->dynamicAction->kanbancard['create'] = 'Create Card'; +$lang->action->dynamicAction->kanbancard['edited'] = 'Edit card'; + $lang->action->dynamicAction->team['managedTeam'] = 'Manage Team'; $lang->action->dynamicAction->task['opened'] = 'Create Task'; @@ -546,6 +559,7 @@ $lang->action->label->kanbanregion = 'Kanban Region|kanban|view|kanbanID=%s'; $lang->action->label->kanban = 'Kanban|kanban|view|kanbanID=%s'; $lang->action->label->kanbancolumn = 'Kanban Column|execution|kanban|execution=%s'; $lang->action->label->kanbanlane = 'Kanban Lane|execution|kanban|execution=%s&type=all'; +$lang->action->label->kanbancard = 'Kanban Card|kanban|view|kanbanID=%s'; $lang->action->label->mr = 'Merge Request|mr|view|id=%s'; /* Object type. */ diff --git a/module/action/lang/zh-cn.php b/module/action/lang/zh-cn.php index bd4d2972be..a2bc0b438c 100755 --- a/module/action/lang/zh-cn.php +++ b/module/action/lang/zh-cn.php @@ -386,10 +386,23 @@ $lang->action->dynamicAction->execution['undeleted'] = '还原' . $lang->executi $lang->action->dynamicAction->execution['hidden'] = '隐藏' . $lang->executionCommon; $lang->action->dynamicAction->execution['moved'] = '导入任务'; +$lang->action->dynamicAction->kanban['create'] = '创建看板'; +$lang->action->dynamicAction->kanban['edited'] = '设置看板'; + +$lang->action->dynamicAction->kanbanspace['create'] = '创建看板空间'; +$lang->action->dynamicAction->kanbanspace['edited'] = '设置看板空间'; +$lang->action->dynamicAction->kanbanspace['closed'] = '关闭看板空间'; + +$lang->action->dynamicAction->kanbancolumn['create'] = '创建看板列'; $lang->action->dynamicAction->kanbancolumn['edited'] = '设置看板列'; + +$lang->action->dynamicAction->kanbanlane['created'] = '创建泳道'; $lang->action->dynamicAction->kanbanlane['edited'] = '设置泳道'; $lang->action->dynamicAction->kanbanlane['moved'] = '移动泳道'; +$lang->action->dynamicAction->kanbancard['create'] = '创建看板卡片'; +$lang->action->dynamicAction->kanbancard['edited'] = '编辑看板卡片'; + $lang->action->dynamicAction->team['managedTeam'] = '维护团队'; $lang->action->dynamicAction->task['opened'] = '创建任务'; @@ -546,6 +559,7 @@ $lang->action->label->kanbanregion = '看板区域|kanban|view|kanbanID=%s'; $lang->action->label->kanban = '看板|kanban|view|kanbanID=%s'; $lang->action->label->kanbancolumn = '看板列|execution|kanban|execution=%s'; $lang->action->label->kanbanlane = '看板泳道|execution|kanban|execution=%s&type=all'; +$lang->action->label->kanbancard = '看板卡片|kanban|view|kanbanID=%s'; $lang->action->label->mr = '合并请求|mr|view|id=%s'; /* Object type. */ diff --git a/module/action/model.php b/module/action/model.php index ef845917a0..139d0279fd 100755 --- a/module/action/model.php +++ b/module/action/model.php @@ -1233,9 +1233,22 @@ class actionModel extends model $action->objectLink = helper::createLink('assetlib', 'storyView', "storyID=$action->objectID"); } - if($action->objectType == 'kanbanregion') + if(strpos(',kanbanregion,kanbancard,', ",{$action->objectType},") !== false) { - $kanbanID = $this->dao->select('kanban')->from(TABLE_KANBANREGION)->where('id')->eq($action->objectID)->fetch('kanban'); + $table = $this->config->objectTables[$action->objectType]; + $kanbanID = $this->dao->select('kanban')->from($table)->where('id')->eq($action->objectID)->fetch('kanban'); + + $action->objectLink = helper::createLink('kanban', 'view', "kanbanID=$kanbanID"); + } + + if(strpos(',kanbanlane,kanbancolumn,', ",{$action->objectType},") !== false and empty($action->extra)) + { + $table = $this->config->objectTables[$action->objectType]; + $kanbanID = $this->dao->select('t2.kanban')->from($table)->alias('t1') + ->leftJoin(TABLE_KANBANREGION)->alias('t2')->on('t1.region=t2.id') + ->where('t1.id')->eq($action->objectID) + ->fetch('kanban'); + $action->objectLink = helper::createLink('kanban', 'view', "kanbanID=$kanbanID"); } diff --git a/module/common/lang/menu.php b/module/common/lang/menu.php index f2eaa0ab00..3bf77d2863 100644 --- a/module/common/lang/menu.php +++ b/module/common/lang/menu.php @@ -588,7 +588,12 @@ $lang->navGroup->task = 'execution'; $lang->navGroup->build = 'execution'; $lang->navGroup->team = 'execution'; -$lang->navGroup->kanban = 'kanban'; +$lang->navGroup->kanbanspace = 'kanban'; +$lang->navGroup->kanban = 'kanban'; +$lang->navGroup->kanbanregion = 'kanban'; +$lang->navGroup->kanbanlane = 'kanban'; +$lang->navGroup->kanbancolumn = 'kanban'; +$lang->navGroup->kanbancard = 'kanban'; $lang->navGroup->doc = 'doc'; $lang->navGroup->doclib = 'doc';