From 4f1126ada786f5bda13b40e7b003dd4459ad13a5 Mon Sep 17 00:00:00 2001 From: zhouxin Date: Fri, 29 Oct 2021 11:28:41 +0800 Subject: [PATCH] Finish task #43617. --- module/productplan/control.php | 2 +- module/productplan/js/create.js | 5 ++--- module/productplan/lang/de.php | 10 ++++++---- module/productplan/lang/en.php | 10 ++++++---- module/productplan/lang/fr.php | 10 ++++++---- module/productplan/lang/vi.php | 10 ++++++---- module/productplan/lang/zh-cn.php | 11 +++++++---- module/productplan/lang/zh-tw.php | 10 ++++++---- module/productplan/model.php | 12 ++++++++++++ module/productplan/view/create.html.php | 9 ++++++--- 10 files changed, 58 insertions(+), 31 deletions(-) diff --git a/module/productplan/control.php b/module/productplan/control.php index 56b6ab3845..1344fa2b5b 100644 --- a/module/productplan/control.php +++ b/module/productplan/control.php @@ -313,7 +313,7 @@ class productplan extends control $this->view->canBeChanged = $canBeChanged; if($this->app->getViewType() == 'json') - { + { unset($this->view->storyPager); unset($this->view->bugPager); } diff --git a/module/productplan/js/create.js b/module/productplan/js/create.js index 080a8d0581..bc8e174472 100644 --- a/module/productplan/js/create.js +++ b/module/productplan/js/create.js @@ -41,7 +41,6 @@ function computeEndDate(delta) $('#begin').on('change', function() { - $("#end").val(''); $("input:radio[name='delta']").attr("checked",false); }); @@ -55,11 +54,11 @@ $('#future').on('change', function() if($(this).prop('checked')) { $('#begin').attr('disabled', 'disabled'); - $('#end').val('').parents('tr').hide(); + $('#end').attr('disabled', 'disabled').parents('tr').hide(); } else { $('#begin').removeAttr('disabled'); - $('#end').val('').parents('tr').show(); + $('#end').removeAttr('disabled').parents('tr').show(); } }); diff --git a/module/productplan/lang/de.php b/module/productplan/lang/de.php index f2cc6ab8b5..3dfc4091f2 100644 --- a/module/productplan/lang/de.php +++ b/module/productplan/lang/de.php @@ -76,10 +76,12 @@ $lang->productplan->endList[93] = '3 Monate'; $lang->productplan->endList[186] = '6 Monate'; $lang->productplan->endList[365] = '1 Jahr'; -$lang->productplan->errorNoTitle = 'ID %s Titel darf nicht leer sein.'; -$lang->productplan->errorNoBegin = 'ID %s Start darf nicht leer sein.'; -$lang->productplan->errorNoEnd = 'ID %s Ende darf nicht leer sein.'; -$lang->productplan->beginGeEnd = 'ID %s Start darf nicht größer als Ende sein.'; +$lang->productplan->errorNoTitle = 'ID %s Titel darf nicht leer sein.'; +$lang->productplan->errorNoBegin = 'ID %s Start darf nicht leer sein.'; +$lang->productplan->errorNoEnd = 'ID %s Ende darf nicht leer sein.'; +$lang->productplan->beginGeEnd = 'ID %s Start darf nicht größer als Ende sein.'; +$lang->productplan->beginLetterParent = "Parent begin date: %s, begin date should be >= parent begin date."; +$lang->productplan->endGreaterParent = "Parent end date: %s, end date should be <= parent end date."; $lang->productplan->featureBar['browse']['all'] = 'Alle'; $lang->productplan->featureBar['browse']['unexpired'] = 'Nicht abgelaufen'; diff --git a/module/productplan/lang/en.php b/module/productplan/lang/en.php index 80e832cd21..56f1f0a728 100644 --- a/module/productplan/lang/en.php +++ b/module/productplan/lang/en.php @@ -77,10 +77,12 @@ $lang->productplan->endList[93] = '3 Months'; $lang->productplan->endList[186] = '6 Months'; $lang->productplan->endList[365] = '1 Year'; -$lang->productplan->errorNoTitle = 'ID %s title should not be empty.'; -$lang->productplan->errorNoBegin = 'ID %s begin time should not be empty.'; -$lang->productplan->errorNoEnd = 'ID %s end time should not be empty.'; -$lang->productplan->beginGeEnd = 'ID %s begin time should not be >= end time.'; +$lang->productplan->errorNoTitle = 'ID %s title should not be empty.'; +$lang->productplan->errorNoBegin = 'ID %s begin time should not be empty.'; +$lang->productplan->errorNoEnd = 'ID %s end time should not be empty.'; +$lang->productplan->beginGeEnd = 'ID %s begin time should not be >= end time.'; +$lang->productplan->beginLetterParent = "Parent begin date: %s, begin date should be >= parent begin date."; +$lang->productplan->endGreaterParent = "Parent end date: %s, end date should be <= parent end date."; $lang->productplan->featureBar['browse']['all'] = 'All'; $lang->productplan->featureBar['browse']['unexpired'] = 'Unexpired'; diff --git a/module/productplan/lang/fr.php b/module/productplan/lang/fr.php index c2ce442c2a..5e5d5b4185 100644 --- a/module/productplan/lang/fr.php +++ b/module/productplan/lang/fr.php @@ -76,10 +76,12 @@ $lang->productplan->endList[93] = '3 Mois'; $lang->productplan->endList[186] = '6 Mois'; $lang->productplan->endList[365] = '1 Année'; -$lang->productplan->errorNoTitle = 'ID %s titre ne doit pas être à blanc.'; -$lang->productplan->errorNoBegin = "ID %s l'heure de début devrait être renseignée."; -$lang->productplan->errorNoEnd = "ID %s l'heure de fin devrait être renseignée."; -$lang->productplan->beginGeEnd = "ID %s l'heure de début ne doit pas être >= à l'heure de fin."; +$lang->productplan->errorNoTitle = 'ID %s titre ne doit pas être à blanc.'; +$lang->productplan->errorNoBegin = "ID %s l'heure de début devrait être renseignée."; +$lang->productplan->errorNoEnd = "ID %s l'heure de fin devrait être renseignée."; +$lang->productplan->beginGeEnd = "ID %s l'heure de début ne doit pas être >= à l'heure de fin."; +$lang->productplan->beginLetterParent = "Parent begin date: %s, begin date should be >= parent begin date."; +$lang->productplan->endGreaterParent = "Parent end date: %s, end date should be <= parent end date."; $lang->productplan->featureBar['browse']['all'] = 'Tous'; $lang->productplan->featureBar['browse']['unexpired'] = 'Non échus'; diff --git a/module/productplan/lang/vi.php b/module/productplan/lang/vi.php index ec97bffbdf..ca5664f84b 100644 --- a/module/productplan/lang/vi.php +++ b/module/productplan/lang/vi.php @@ -76,10 +76,12 @@ $lang->productplan->endList[93] = '3 tháng'; $lang->productplan->endList[186] = '6 tháng'; $lang->productplan->endList[365] = '1 năm'; -$lang->productplan->errorNoTitle = 'Tiêu đề ID %s không nên trống.'; -$lang->productplan->errorNoBegin = 'Thời gian bắt đầu ID %s không nên trống.'; -$lang->productplan->errorNoEnd = 'Thời gian kết thúc ID %s không nên trống.'; -$lang->productplan->beginGeEnd = 'ID %s thời gian bắt đầu không nên >= thời gian kết thúc.'; +$lang->productplan->errorNoTitle = 'Tiêu đề ID %s không nên trống.'; +$lang->productplan->errorNoBegin = 'Thời gian bắt đầu ID %s không nên trống.'; +$lang->productplan->errorNoEnd = 'Thời gian kết thúc ID %s không nên trống.'; +$lang->productplan->beginGeEnd = 'ID %s thời gian bắt đầu không nên >= thời gian kết thúc.'; +$lang->productplan->beginLetterParent = "Parent begin date: %s, begin date should be >= parent begin date."; +$lang->productplan->endGreaterParent = "Parent end date: %s, end date should be <= parent end date."; $lang->productplan->featureBar['browse']['all'] = 'Tất cả'; $lang->productplan->featureBar['browse']['unexpired'] = 'Chưa quá hạn'; diff --git a/module/productplan/lang/zh-cn.php b/module/productplan/lang/zh-cn.php index 4ff355ac7a..54585421cd 100644 --- a/module/productplan/lang/zh-cn.php +++ b/module/productplan/lang/zh-cn.php @@ -77,10 +77,13 @@ $lang->productplan->endList[93] = '三个月'; $lang->productplan->endList[186] = '半年'; $lang->productplan->endList[365] = '一年'; -$lang->productplan->errorNoTitle = 'ID %s 标题不能为空'; -$lang->productplan->errorNoBegin = 'ID %s 开始时间不能为空'; -$lang->productplan->errorNoEnd = 'ID %s 结束时间不能为空'; -$lang->productplan->beginGeEnd = 'ID %s 开始时间不能大于结束时间'; +$lang->productplan->errorNoTitle = 'ID %s 标题不能为空'; +$lang->productplan->errorNoBegin = 'ID %s 开始时间不能为空'; +$lang->productplan->errorNoEnd = 'ID %s 结束时间不能为空'; +$lang->productplan->beginGeEnd = 'ID %s 开始时间不能大于结束时间'; +$lang->productplan->beginLetterParent = "父计划的开始日期:%s,开始日期不能小于父计划的开始日期"; +$lang->productplan->endGreaterParent = "父计划的完成日期:%s,完成日期不能大于父计划的完成日期"; + $lang->productplan->featureBar['browse']['all'] = '全部'; $lang->productplan->featureBar['browse']['unexpired'] = '未过期'; diff --git a/module/productplan/lang/zh-tw.php b/module/productplan/lang/zh-tw.php index e42e7db0af..c7f1d3729c 100644 --- a/module/productplan/lang/zh-tw.php +++ b/module/productplan/lang/zh-tw.php @@ -77,10 +77,12 @@ $lang->productplan->endList[93] = '三個月'; $lang->productplan->endList[186] = '半年'; $lang->productplan->endList[365] = '一年'; -$lang->productplan->errorNoTitle = 'ID %s 標題不能為空'; -$lang->productplan->errorNoBegin = 'ID %s 開始時間不能為空'; -$lang->productplan->errorNoEnd = 'ID %s 結束時間不能為空'; -$lang->productplan->beginGeEnd = 'ID %s 開始時間不能大於結束時間'; +$lang->productplan->errorNoTitle = 'ID %s 標題不能為空'; +$lang->productplan->errorNoBegin = 'ID %s 開始時間不能為空'; +$lang->productplan->errorNoEnd = 'ID %s 結束時間不能為空'; +$lang->productplan->beginGeEnd = 'ID %s 開始時間不能大於結束時間'; +$lang->productplan->beginLetterParent = "父計畫的開始日期:%s,開始日期不能小於父計畫的開始日期"; +$lang->productplan->endGreaterParent = "父計畫的完成日期:%s,完成日期不能大於父計畫的完成日期"; $lang->productplan->featureBar['browse']['all'] = '全部'; $lang->productplan->featureBar['browse']['unexpired'] = '未過期'; diff --git a/module/productplan/model.php b/module/productplan/model.php index 7a026dcc0a..76cabb9a9f 100644 --- a/module/productplan/model.php +++ b/module/productplan/model.php @@ -332,6 +332,18 @@ class productplanModel extends model ->setIF($this->post->future || empty($_POST['end']), 'end', '2030-01-01') ->remove('delta,uid,future') ->get(); + + if(!empty($plan->parentBegin)) + { + if($plan->begin < $plan->parentBegin) dao::$errors['begin'] = sprintf($this->lang->productplan->beginLetterParent, $plan->parentBegin); + } + if(!empty($plan->parentEnd)) + { + if($plan->end !=='2030-01-01' and $plan->end > $plan->parentEnd) dao::$errors['end'] = sprintf($this->lang->productplan->endGreaterParent, $plan->parentEnd); + } + unset($plan->parentBegin); + unset($plan->parentEnd); + if(!$this->post->future and strpos($this->config->productplan->create->requiredFields, 'begin') !== false and empty($_POST['begin'])) { dao::$errors['begin'] = sprintf($this->lang->error->notempty, $this->lang->productplan->begin); diff --git a/module/productplan/view/create.html.php b/module/productplan/view/create.html.php index e5d12a7a27..e973129590 100644 --- a/module/productplan/view/create.html.php +++ b/module/productplan/view/create.html.php @@ -20,12 +20,15 @@

productplan->createChildren : $lang->productplan->create;?>

- +
- + @@ -48,7 +51,7 @@
productplan->parent;?>title;?>title;?> + begin);?> + end);?> +
productplan->begin;?> -
+