diff --git a/module/common/lang/common.php b/module/common/lang/common.php index 57a3c16b1c..ee993c8a48 100644 --- a/module/common/lang/common.php +++ b/module/common/lang/common.php @@ -9,6 +9,7 @@ $lang->project = new stdclass(); $lang->scrum = new stdclass(); $lang->waterfall = new stdclass(); $lang->execution = new stdclass(); +$lang->kanban = new stdclass(); $lang->story = new stdclass(); $lang->release = new stdclass(); $lang->branch = new stdclass(); diff --git a/module/common/lang/en.php b/module/common/lang/en.php index 6abe39e078..99a8a185da 100644 --- a/module/common/lang/en.php +++ b/module/common/lang/en.php @@ -178,38 +178,38 @@ $lang->score->shortCommon = 'Score'; $lang->testreport->shortCommon = 'Report'; $lang->qa->shortCommon = 'QA'; -$lang->dashboard = 'Dashboard'; -$lang->contribute = 'Contribute'; -$lang->dynamic = 'Dynamic'; -$lang->contact = 'Contacts'; -$lang->whitelist = 'Whitelist'; -$lang->roadmap = 'Roadmap'; -$lang->track = 'Track'; -$lang->settings = 'Settings'; -$lang->overview = 'Overview'; -$lang->module = 'Module'; -$lang->priv = 'Privilege'; -$lang->design = 'Design'; -$lang->other = 'Other'; -$lang->estimation = 'Estimation'; -$lang->issue = 'Issue'; -$lang->risk = 'Risk'; -$lang->measure = 'Report'; -$lang->treeView = 'Tree View'; -$lang->groupView = 'Group View'; -$lang->kanban = 'Kanban'; -$lang->burn = 'Burndown'; -$lang->view = 'View'; -$lang->intro = 'Introduction'; -$lang->indexPage = 'Index'; -$lang->model = 'Model'; -$lang->redev = 'Develop'; -$lang->browser = 'Browser'; -$lang->db = 'Database'; -$lang->editor = 'Editor'; -$lang->timezone = 'Timezone'; -$lang->security = 'Security'; -$lang->calendar = 'Calendar'; +$lang->dashboard = 'Dashboard'; +$lang->contribute = 'Contribute'; +$lang->dynamic = 'Dynamic'; +$lang->contact = 'Contacts'; +$lang->whitelist = 'Whitelist'; +$lang->roadmap = 'Roadmap'; +$lang->track = 'Track'; +$lang->settings = 'Settings'; +$lang->overview = 'Overview'; +$lang->module = 'Module'; +$lang->priv = 'Privilege'; +$lang->design = 'Design'; +$lang->other = 'Other'; +$lang->estimation = 'Estimation'; +$lang->issue = 'Issue'; +$lang->risk = 'Risk'; +$lang->measure = 'Report'; +$lang->treeView = 'Tree View'; +$lang->groupView = 'Group View'; +$lang->executionKanban = 'Kanban'; +$lang->burn = 'Burndown'; +$lang->view = 'View'; +$lang->intro = 'Introduction'; +$lang->indexPage = 'Index'; +$lang->model = 'Model'; +$lang->redev = 'Develop'; +$lang->browser = 'Browser'; +$lang->db = 'Database'; +$lang->editor = 'Editor'; +$lang->timezone = 'Timezone'; +$lang->security = 'Security'; +$lang->calendar = 'Calendar'; $lang->my->work = 'Work'; diff --git a/module/common/lang/menu.php b/module/common/lang/menu.php index 61fbac1fa3..e53a8fd484 100644 --- a/module/common/lang/menu.php +++ b/module/common/lang/menu.php @@ -246,7 +246,7 @@ if($config->systemMode == 'new') $lang->execution->homeMenu->executionkanban = a $lang->execution->menu = new stdclass(); $lang->execution->menu->task = array('link' => "{$lang->task->common}|execution|task|executionID=%s", 'subModule' => 'task,tree', 'alias' => 'importtask,importbug'); -$lang->execution->menu->kanban = array('link' => "$lang->kanban|execution|kanban|executionID=%s"); +$lang->execution->menu->kanban = array('link' => "$lang->executionKanban|execution|kanban|executionID=%s"); $lang->execution->menu->burn = array('link' => "$lang->burn|execution|burn|executionID=%s"); $lang->execution->menu->view = array('link' => "$lang->view|execution|grouptask|executionID=%s", 'alias' => 'grouptask,tree,taskeffort,gantt,calendar,relation,maintainrelation'); $lang->execution->menu->story = array('link' => "$lang->SRCommon|execution|story|executionID=%s", 'subModule' => 'story', 'alias' => 'batchcreate,linkstory,storykanban'); @@ -521,6 +521,7 @@ $lang->navGroup->build = 'project'; $lang->navGroup->measrecord = 'project'; $lang->navGroup->milestone = 'project'; +$lang->navGroup->kanban = 'execution'; $lang->navGroup->execution = 'execution'; $lang->navGroup->task = 'execution'; $lang->navGroup->build = 'execution'; diff --git a/module/common/lang/zh-cn.php b/module/common/lang/zh-cn.php index b9e107f2d2..077ff2857b 100644 --- a/module/common/lang/zh-cn.php +++ b/module/common/lang/zh-cn.php @@ -178,38 +178,38 @@ $lang->score->shortCommon = '积分'; $lang->testreport->shortCommon = '报告'; $lang->qa->shortCommon = 'QA'; -$lang->dashboard = '仪表盘'; -$lang->contribute = '贡献'; -$lang->dynamic = '动态'; -$lang->contact = '联系人'; -$lang->whitelist = '白名单'; -$lang->roadmap = '路线图'; -$lang->track = '矩阵'; -$lang->settings = '设置'; -$lang->overview = '概况'; -$lang->module = '模块'; -$lang->priv = '权限'; -$lang->design = '设计'; -$lang->other = '其他'; -$lang->estimation = '估算'; -$lang->issue = '问题'; -$lang->risk = '风险'; -$lang->measure = '度量'; -$lang->treeView = '树状图'; -$lang->groupView = '分组视图'; -$lang->kanban = '看板'; -$lang->burn = '燃尽图'; -$lang->view = '视图'; -$lang->intro = '介绍'; -$lang->indexPage = '首页'; -$lang->model = '模型'; -$lang->redev = '二次开发'; -$lang->browser = '浏览器'; -$lang->db = '数据库'; -$lang->editor = '编辑器'; -$lang->timezone = '时区'; -$lang->security = '安全'; -$lang->calendar = '日程'; +$lang->dashboard = '仪表盘'; +$lang->contribute = '贡献'; +$lang->dynamic = '动态'; +$lang->contact = '联系人'; +$lang->whitelist = '白名单'; +$lang->roadmap = '路线图'; +$lang->track = '矩阵'; +$lang->settings = '设置'; +$lang->overview = '概况'; +$lang->module = '模块'; +$lang->priv = '权限'; +$lang->design = '设计'; +$lang->other = '其他'; +$lang->estimation = '估算'; +$lang->issue = '问题'; +$lang->risk = '风险'; +$lang->measure = '度量'; +$lang->treeView = '树状图'; +$lang->groupView = '分组视图'; +$lang->executionKanban = '看板'; +$lang->burn = '燃尽图'; +$lang->view = '视图'; +$lang->intro = '介绍'; +$lang->indexPage = '首页'; +$lang->model = '模型'; +$lang->redev = '二次开发'; +$lang->browser = '浏览器'; +$lang->db = '数据库'; +$lang->editor = '编辑器'; +$lang->timezone = '时区'; +$lang->security = '安全'; +$lang->calendar = '日程'; $lang->my->work = '待处理'; diff --git a/module/common/lang/zh-tw.php b/module/common/lang/zh-tw.php index c155a317a0..ce6620311a 100644 --- a/module/common/lang/zh-tw.php +++ b/module/common/lang/zh-tw.php @@ -177,37 +177,37 @@ $lang->score->shortCommon = '積分'; $lang->testreport->shortCommon = '報告'; $lang->qa->shortCommon = 'QA'; -$lang->dashboard = '儀表盤'; -$lang->contribute = '貢獻'; -$lang->dynamic = '動態'; -$lang->contact = '聯繫人'; -$lang->whitelist = '白名單'; -$lang->roadmap = '路線圖'; -$lang->track = '矩陣'; -$lang->settings = '設置'; -$lang->overview = '概況'; -$lang->module = '模組'; -$lang->priv = '權限'; -$lang->design = '設計'; -$lang->other = '其他'; -$lang->estimation = '估算'; -$lang->issue = '問題'; -$lang->risk = '風險'; -$lang->measure = '度量'; -$lang->treeView = '樹狀圖'; -$lang->groupView = '分組視圖'; -$lang->kanban = '看板'; -$lang->burn = '燃盡圖'; -$lang->view = '視圖'; -$lang->intro = '介紹'; -$lang->indexPage = '首頁'; -$lang->model = '模型'; -$lang->redev = '二次開發'; -$lang->browser = '瀏覽器'; -$lang->db = '資料庫'; -$lang->editor = '編輯器'; -$lang->timezone = '時區'; -$lang->security = '安全'; +$lang->dashboard = '儀表盤'; +$lang->contribute = '貢獻'; +$lang->dynamic = '動態'; +$lang->contact = '聯繫人'; +$lang->whitelist = '白名單'; +$lang->roadmap = '路線圖'; +$lang->track = '矩陣'; +$lang->settings = '設置'; +$lang->overview = '概況'; +$lang->module = '模組'; +$lang->priv = '權限'; +$lang->design = '設計'; +$lang->other = '其他'; +$lang->estimation = '估算'; +$lang->issue = '問題'; +$lang->risk = '風險'; +$lang->measure = '度量'; +$lang->treeView = '樹狀圖'; +$lang->groupView = '分組視圖'; +$lang->executionKanban = '看板'; +$lang->burn = '燃盡圖'; +$lang->view = '視圖'; +$lang->intro = '介紹'; +$lang->indexPage = '首頁'; +$lang->model = '模型'; +$lang->redev = '二次開發'; +$lang->browser = '瀏覽器'; +$lang->db = '資料庫'; +$lang->editor = '編輯器'; +$lang->timezone = '時區'; +$lang->security = '安全'; $lang->calendar = '日程'; $lang->my->work = '待處理'; diff --git a/module/execution/js/kanban.js b/module/execution/js/kanban.js index 8a419e2bb5..b9ed2c827f 100644 --- a/module/execution/js/kanban.js +++ b/module/execution/js/kanban.js @@ -436,12 +436,11 @@ function createColumnMenu(options) var $col = options.$trigger.closest('.kanban-col'); var col = $col.data('col'); var kanbanID = options.kanban; - var items = - [ - {label: editName, url: $.createLink('kanban', 'setColumn', 'col=' + col.columnID + '&executionID=' + executionID), className: 'iframe'}, - {label: setWIP, url: $.createLink('kanban', 'setWIP', 'col=' + col.columnID + '&executionID=' + executionID), className: 'iframe'}, - {label: sortColumn, items: ['按ID倒序', '按ID顺序'], className: 'iframe', onClick: handleSortColCards}, - ]; + + var items = []; + if(priv.hasEditName) items.push({label: execution.editName, url: $.createLink('kanban', 'setColumn', 'col=' + col.columnID + '&executionID=' + executionID), className: 'iframe'}) + if(priv.hasSetWIP) items.push({label: execution.setWIP, url: $.createLink('kanban', 'setWIP', 'col=' + col.columnID + '&executionID=' + executionID), className: 'iframe'}) + items.push({label: execution.sortColumn, items: ['按ID倒序', '按ID顺序'], className: 'iframe', onClick: handleSortColCards}) return items; } diff --git a/module/execution/view/kanban.html.php b/module/execution/view/kanban.html.php index 7420b67659..a1c6abe20d 100644 --- a/module/execution/view/kanban.html.php +++ b/module/execution/view/kanban.html.php @@ -107,6 +107,15 @@ + common::hasPriv('kanban', 'setColumn'), + 'hasSetWIP' => common::hasPriv('kanban', 'setWIP'), + ) +); +?> +execution);?> execution->editName);?> execution->setWIP);?> execution->sortColumn);?> diff --git a/module/group/lang/resource.php b/module/group/lang/resource.php index 28f1996d28..7bea902b36 100644 --- a/module/group/lang/resource.php +++ b/module/group/lang/resource.php @@ -25,6 +25,7 @@ $lang->moduleOrder[40] = 'release'; $lang->moduleOrder[45] = 'project'; $lang->moduleOrder[50] = 'projectstory'; $lang->moduleOrder[55] = 'execution'; +$lang->moduleOrder[56] = 'kanban'; $lang->moduleOrder[60] = 'task'; $lang->moduleOrder[65] = 'build'; @@ -547,6 +548,16 @@ $lang->release->methodOrder[60] = 'unlinkBug'; $lang->release->methodOrder[65] = 'batchUnlinkBug'; $lang->release->methodOrder[70] = 'changeStatus'; +/* Kanban */ +$lang->resource->kanban = new stdclass(); +$lang->resource->kanban->setLane = 'setLane'; +$lang->resource->kanban->setColumn = 'setColumn'; +$lang->resource->kanban->setWIP = 'setWIP'; + +$lang->kanban->methodOrder[5] = 'setLane'; +$lang->kanban->methodOrder[10] = 'setColumn'; +$lang->kanban->methodOrder[15] = 'setWIP'; + /* Execution. */ $lang->resource->execution = new stdclass(); $lang->resource->execution->view = 'view'; diff --git a/module/kanban/control.php b/module/kanban/control.php index d176485573..a50062cd40 100644 --- a/module/kanban/control.php +++ b/module/kanban/control.php @@ -83,7 +83,7 @@ class kanban extends control public function setColumn($columnID) { $column = $this->kanban->getColumnById($columnID); - + if($_POST) { /* Check lane column name is unique. */ @@ -105,7 +105,7 @@ class kanban extends control } $this->view->column = $column; - $this->view->title = $column->name . $this->lang->colon . $this->lang->kanban->setLaneColumn; + $this->view->title = $column->name . $this->lang->colon . $this->lang->kanban->setColumn; $this->display(); } diff --git a/module/kanban/lang/zh-cn.php b/module/kanban/lang/zh-cn.php index ce82e7a971..b23776f281 100644 --- a/module/kanban/lang/zh-cn.php +++ b/module/kanban/lang/zh-cn.php @@ -1,6 +1,7 @@ kanban = new stdClass(); +$lang->kanban->commom = '看板'; $lang->kanban->WIP = 'WIP'; $lang->kanban->setWIP = '在制品设置'; $lang->kanban->WIPStatus = '在制品状态'; @@ -11,7 +12,7 @@ $lang->kanban->noLimit = '不限制∞'; $lang->kanban->setLane = '泳道设置'; $lang->kanban->laneName = '泳道名称'; $lang->kanban->laneColor = '泳道颜色'; -$lang->kanban->setLaneColumn = '看板列设置'; +$lang->kanban->setColumn = '看板列设置'; $lang->kanban->columnName = '看板列名称'; $lang->kanban->columnColor = '看板列颜色'; $lang->kanban->noColumnUniqueName = '看板列名称已存在。';