diff --git a/module/execution/css/batchedit.css b/module/execution/css/batchedit.css index 6051595822..5fb6ae17e4 100644 --- a/module/execution/css/batchedit.css +++ b/module/execution/css/batchedit.css @@ -2,3 +2,5 @@ .c-team-name {width: 120px;} .c-project, .c-user, .c-code, .c-desc, .c-days {width: 150px;} .c-method {width: 45px;} +.c-type > .icon-help {vertical-align: text-top;} +.c-type > .popover .popover-content {font-weight: 400;} diff --git a/module/execution/css/batchedit.en.css b/module/execution/css/batchedit.en.css index 1bc7227968..d4858d89b7 100644 --- a/module/execution/css/batchedit.en.css +++ b/module/execution/css/batchedit.en.css @@ -1,3 +1,4 @@ .c-user {width: 150px !important;} .c-date {width: 125px;} .c-method {width: 60px;} +.c-type {width: 130px;} diff --git a/module/execution/css/create.css b/module/execution/css/create.css index 8a387053df..8ba2c65184 100644 --- a/module/execution/css/create.css +++ b/module/execution/css/create.css @@ -39,3 +39,4 @@ .productsBox .required + .text-danger.help-text {position: relative; left: 10px;} .productsBox > #productNameLabel {padding-top: 8px;} .productsBox div[id^='branch'].chosen-disabled {pointer-events: none;} +.methodTip icon:before {margin-bottom: 5px;} diff --git a/module/execution/js/batchedit.js b/module/execution/js/batchedit.js index db84c6b085..603122e2bd 100644 --- a/module/execution/js/batchedit.js +++ b/module/execution/js/batchedit.js @@ -27,3 +27,8 @@ $('#executionForm').on('change input mousedown', '.has-error', function() $(this).parent().find('.text-danger').remove(); $(this).removeClass('has-error'); }) + +$(function() +{ + $('[data-toggle="popover"]').popover(); +}) diff --git a/module/execution/js/create.js b/module/execution/js/create.js index 750bdae6b0..56ac637410 100644 --- a/module/execution/js/create.js +++ b/module/execution/js/create.js @@ -153,6 +153,8 @@ $(function() { $('.disabledBranch div[id^="branch"]').addClass('chosen-disabled'); } + + $('[data-toggle="popover"]').popover(); }); function showLifeTimeTips() diff --git a/module/execution/js/edit.js b/module/execution/js/edit.js index 5527fd5b0b..58f5d31712 100644 --- a/module/execution/js/edit.js +++ b/module/execution/js/edit.js @@ -112,6 +112,8 @@ $(function() { $('.disabledBranch div[id^="branch"]').addClass('chosen-disabled'); } + + $('[data-toggle="popover"]').popover(); }) var lastProjectID = $("#project").val(); diff --git a/module/execution/lang/de.php b/module/execution/lang/de.php index d6c506033d..aacc1a5dba 100644 --- a/module/execution/lang/de.php +++ b/module/execution/lang/de.php @@ -151,6 +151,8 @@ $lang->execution->left = 'Left'; $lang->execution->copyTeamTip = "copy Project/project team members"; $lang->execution->daysGreaterProject = 'Days cannot be greater than days of execution 『%s』'; $lang->execution->errorHours = 'Hours/Day cannot be greater than『24』'; +$lang->execution->agileplusMethodTip = 'When creating executions in an Agile Plus project, both Iteration and Kanban management methods are supported.'; +$lang->execution->typeTip = "The sub-stages of other types can be created under the parent stage of the 'mix' type, while the type of other parent-child levels is consistent."; $lang->execution->start = 'Start'; $lang->execution->activate = 'Aktivieren'; diff --git a/module/execution/lang/en.php b/module/execution/lang/en.php index 995e4f9d53..d8f522124d 100644 --- a/module/execution/lang/en.php +++ b/module/execution/lang/en.php @@ -151,6 +151,8 @@ $lang->execution->left = 'Left'; $lang->execution->copyTeamTip = "copy Project/project team members"; $lang->execution->daysGreaterProject = 'Days cannot be greater than days of execution 『%s』'; $lang->execution->errorHours = 'Hours/Day cannot be greater than『24』'; +$lang->execution->agileplusMethodTip = 'When creating executions in an Agile Plus project, both Iteration and Kanban management methods are supported.'; +$lang->execution->typeTip = "The sub-stages of other types can be created under the parent stage of the 'mix' type, while the type of other parent-child levels is consistent."; $lang->execution->start = 'Start'; $lang->execution->activate = 'Activate'; diff --git a/module/execution/lang/fr.php b/module/execution/lang/fr.php index ac5351d360..46f9661aa7 100644 --- a/module/execution/lang/fr.php +++ b/module/execution/lang/fr.php @@ -151,6 +151,8 @@ $lang->execution->left = 'Left'; $lang->execution->copyTeamTip = "copy Project/project team members"; $lang->execution->daysGreaterProject = 'Days cannot be greater than days of execution 『%s』'; $lang->execution->errorHours = 'Hours/Day cannot be greater than『24』'; +$lang->execution->agileplusMethodTip = 'When creating executions in an Agile Plus project, both Iteration and Kanban management methods are supported.'; +$lang->execution->typeTip = "The sub-stages of other types can be created under the parent stage of the 'mix' type, while the type of other parent-child levels is consistent."; $lang->execution->start = 'Démarrer'; $lang->execution->activate = 'Activer'; diff --git a/module/execution/lang/zh-cn.php b/module/execution/lang/zh-cn.php index a83b65dc25..211e47444a 100644 --- a/module/execution/lang/zh-cn.php +++ b/module/execution/lang/zh-cn.php @@ -151,6 +151,8 @@ $lang->execution->left = '剩余'; $lang->execution->copyTeamTip = "可以选择复制项目或{$lang->execution->common}团队的成员"; $lang->execution->daysGreaterProject = '可用工日不能大于执行的可用工日『%s』'; $lang->execution->errorHours = '可用工时/天不能大于『24』'; +$lang->execution->agileplusMethodTip = '融合敏捷项目创建执行时,支持迭代和看板两种管理方法。'; +$lang->execution->typeTip = '“综合”类型的父阶段可以创建其它类型的子级,其它父子层级的类型均一致。'; $lang->execution->start = "开始"; $lang->execution->activate = "激活"; diff --git a/module/execution/view/batchedit.html.php b/module/execution/view/batchedit.html.php index 5b95828e0f..d78ab1d11f 100755 --- a/module/execution/view/batchedit.html.php +++ b/module/execution/view/batchedit.html.php @@ -62,7 +62,10 @@ '>execution->PO;?> '>execution->QD;?> '>execution->RD;?> - '>execution->$type;?> + '> + execution->$type;?> + + execution->begin;?> execution->end;?> '>execution->$desc;?> diff --git a/module/execution/view/create.html.php b/module/execution/view/create.html.php index cb134dfd7e..f8e6f80772 100644 --- a/module/execution/view/create.html.php +++ b/module/execution/view/create.html.php @@ -66,7 +66,10 @@ execution->method;?> execution->typeList, $type, "class='form-control chosen' required onchange='setType(this.value)'");?> - + + + + diff --git a/module/execution/view/edit.html.php b/module/execution/view/edit.html.php index 6ade126e6e..d5d43fe019 100644 --- a/module/execution/view/edit.html.php +++ b/module/execution/view/edit.html.php @@ -98,6 +98,9 @@ } ?> + + + diff --git a/module/programplan/css/create.css b/module/programplan/css/create.css index eb0ae52c08..0dadb2e441 100644 --- a/module/programplan/css/create.css +++ b/module/programplan/css/create.css @@ -1 +1,2 @@ #planForm tr td {vertical-align: top;} +#mainContent .methodTitle, #mainContent .methodTip {display: inline-block; vertical-align: middle;} diff --git a/module/programplan/js/create.js b/module/programplan/js/create.js index 241610d959..13f91ece2d 100644 --- a/module/programplan/js/create.js +++ b/module/programplan/js/create.js @@ -5,6 +5,8 @@ $(function() $(this).removeClass('has-error'); $(this).closest('td').find('.text-danger.help-text').remove(); }); + + $('[data-toggle="popover"]').popover(); }); /** * Add item to create view of programplan. diff --git a/module/programplan/js/edit.js b/module/programplan/js/edit.js index c8854adfdc..e552fb8cc9 100644 --- a/module/programplan/js/edit.js +++ b/module/programplan/js/edit.js @@ -57,4 +57,6 @@ $(function() if(!result) return false; } }) + + $('[data-toggle="popover"]').popover(); }) diff --git a/module/programplan/lang/de.php b/module/programplan/lang/de.php index 5068fce91a..50fed29663 100644 --- a/module/programplan/lang/de.php +++ b/module/programplan/lang/de.php @@ -20,6 +20,7 @@ $lang->programplan->delete = 'Delete Stage'; $lang->programplan->close = 'Close Stage'; $lang->programplan->activate = 'Activate Stage'; $lang->programplan->createSubPlan = 'Create Sub Plan'; +$lang->programplan->subPlanManage = 'Sub-stages management'; $lang->programplan->parent = 'Parent Stage'; $lang->programplan->emptyParent = 'N/A'; @@ -72,6 +73,7 @@ $lang->programplan->emptyBegin = '『Begin』should not be blank'; $lang->programplan->emptyEnd = '『End』should not be blank'; $lang->programplan->checkBegin = '『Begin』should be valid date'; $lang->programplan->checkEnd = '『End』should be valid date'; +$lang->programplan->methodTip = 'When creating sub-stages in a Waterfall Plus project stage, you can choose to create them as stages or as Iterations/Kanban. If the sub-stage is created as an Iteration/Kanban, it does not support creating sub-levels further down.'; $lang->programplan->milestoneList[1] = 'Yes'; $lang->programplan->milestoneList[0] = 'No'; diff --git a/module/programplan/lang/en.php b/module/programplan/lang/en.php index 689cfeb296..63ff435c7d 100644 --- a/module/programplan/lang/en.php +++ b/module/programplan/lang/en.php @@ -20,6 +20,7 @@ $lang->programplan->delete = 'Delete Stage'; $lang->programplan->close = 'Close Stage'; $lang->programplan->activate = 'Activate Stage'; $lang->programplan->createSubPlan = 'Create Sub Stage'; +$lang->programplan->subPlanManage = 'Sub-stages management'; $lang->programplan->parent = 'Parent Stage'; $lang->programplan->emptyParent = 'N/A'; @@ -72,6 +73,7 @@ $lang->programplan->emptyBegin = '『Begin』should not be blank'; $lang->programplan->emptyEnd = '『End』should not be blank'; $lang->programplan->checkBegin = '『Begin』should be valid date'; $lang->programplan->checkEnd = '『End』should be valid date'; +$lang->programplan->methodTip = 'When creating sub-stages in a Waterfall Plus project stage, you can choose to create them as stages or as Iterations/Kanban. If the sub-stage is created as an Iteration/Kanban, it does not support creating sub-levels further down.'; $lang->programplan->milestoneList[1] = 'Yes'; $lang->programplan->milestoneList[0] = 'No'; diff --git a/module/programplan/lang/fr.php b/module/programplan/lang/fr.php index 5068fce91a..50fed29663 100644 --- a/module/programplan/lang/fr.php +++ b/module/programplan/lang/fr.php @@ -20,6 +20,7 @@ $lang->programplan->delete = 'Delete Stage'; $lang->programplan->close = 'Close Stage'; $lang->programplan->activate = 'Activate Stage'; $lang->programplan->createSubPlan = 'Create Sub Plan'; +$lang->programplan->subPlanManage = 'Sub-stages management'; $lang->programplan->parent = 'Parent Stage'; $lang->programplan->emptyParent = 'N/A'; @@ -72,6 +73,7 @@ $lang->programplan->emptyBegin = '『Begin』should not be blank'; $lang->programplan->emptyEnd = '『End』should not be blank'; $lang->programplan->checkBegin = '『Begin』should be valid date'; $lang->programplan->checkEnd = '『End』should be valid date'; +$lang->programplan->methodTip = 'When creating sub-stages in a Waterfall Plus project stage, you can choose to create them as stages or as Iterations/Kanban. If the sub-stage is created as an Iteration/Kanban, it does not support creating sub-levels further down.'; $lang->programplan->milestoneList[1] = 'Yes'; $lang->programplan->milestoneList[0] = 'No'; diff --git a/module/programplan/lang/zh-cn.php b/module/programplan/lang/zh-cn.php index fcf4a5d0d6..46ed1022d9 100644 --- a/module/programplan/lang/zh-cn.php +++ b/module/programplan/lang/zh-cn.php @@ -20,6 +20,7 @@ $lang->programplan->delete = '删除阶段'; $lang->programplan->close = '关闭阶段'; $lang->programplan->activate = '激活阶段'; $lang->programplan->createSubPlan = '创建子阶段'; +$lang->programplan->subPlanManage = '子阶段的管理方法'; $lang->programplan->parent = '父阶段'; $lang->programplan->emptyParent = '无'; @@ -72,6 +73,7 @@ $lang->programplan->emptyBegin = '『计划开始』日期不能为空'; $lang->programplan->emptyEnd = '『计划完成』日期不能为空'; $lang->programplan->checkBegin = '『计划开始』应当为合法的日期'; $lang->programplan->checkEnd = '『计划完成』应当为合法的日期'; +$lang->programplan->methodTip = '融合瀑布项目阶段子阶段创建时,可以选择创建为阶段或创建为迭代/看板。子阶段为迭代/看板,不支持继续向下创建子级。'; $lang->programplan->milestoneList[1] = '是'; $lang->programplan->milestoneList[0] = '否'; diff --git a/module/programplan/view/create.html.php b/module/programplan/view/create.html.php index ded8e02027..58082983e3 100644 --- a/module/programplan/view/create.html.php +++ b/module/programplan/view/create.html.php @@ -45,6 +45,7 @@
model == 'waterfallplus'):?>
+
programplan->subPlanManage . ':'?>
+
diff --git a/module/programplan/view/edit.html.php b/module/programplan/view/edit.html.php index ad7e3c569e..634d17b3d4 100644 --- a/module/programplan/view/edit.html.php +++ b/module/programplan/view/edit.html.php @@ -60,6 +60,9 @@ stage->typeList, $plan->attribute, "class='form-control'") : zget($lang->stage->typeList, $plan->attribute);?> + + + setMilestone):?>