From fb546d742b697fef85c2672564719177a47b288d Mon Sep 17 00:00:00 2001 From: areyou123456 Date: Sun, 27 May 2012 08:25:09 +0000 Subject: [PATCH] * finish task#821 --- module/build/lang/en.php | 2 +- module/project/js/common.js | 49 ++++++++++++++++++++++++++++- module/project/lang/en.php | 8 +++++ module/project/lang/zh-cn.php | 7 +++++ module/project/model.php | 2 +- module/project/view/create.html.php | 9 +++--- 6 files changed, 70 insertions(+), 7 deletions(-) diff --git a/module/build/lang/en.php b/module/build/lang/en.php index 2adb6622b8..ed9992a38a 100644 --- a/module/build/lang/en.php +++ b/module/build/lang/en.php @@ -19,7 +19,7 @@ $lang->build->ajaxGetProjectBuilds = 'API:Project builds'; $lang->build->confirmDelete = "Are sure to delete this build?"; -$lang->build->basic Info='Basic Info'; +$lang->build->basicInfo='Basic Info'; $lang->build->id = 'ID'; $lang->build->product = 'Product'; diff --git a/module/project/js/common.js b/module/project/js/common.js index 0347ddc4a4..a83b0c4d97 100644 --- a/module/project/js/common.js +++ b/module/project/js/common.js @@ -47,7 +47,54 @@ function computeWorkDays() { beginDate = $('#begin').val(); endDate = $('#end').val(); - if(beginDate && endDate) $('#days').val(computeDaysDelta(beginDate, endDate)); + if(beginDate && endDate) + { + $('#days').val(computeDaysDelta(beginDate, endDate)); + } + else if($('input[checked="true"]').val()) + { + computeEndDate(); + } +} + +function computeEndDate() +{ + beginDate = $('#begin').val(); + workDays = $('input:checked').val(); + beginDate = convertStringToDate(beginDate); + if(workDays == '2weeks') + { + begin = beginDate.valueOf(); + endDate = begin + 14 * 24 * 60 * 60 * 1000; + endDate = new Date(endDate); + year = endDate.getFullYear(); + month = endDate.getMonth(); + day = endDate.getDate() - 1; + } + else if(workDays == '12') + { + year = beginDate.getFullYear() + 1; + month = beginDate.getMonth(); + day = beginDate.getDate() - 1; + } + else + { + year = beginDate.getFullYear(); + month = beginDate.getMonth() + Number(workDays); + if(month > 12) + { + year = year + 1; + month = month - 12; + } + day = beginDate.getDate() - 1; + } + endDate = year + '-' + month + '-' + day; + if( month < 10) month = '0' + month; + if( day < 10) day = '0' + day; + end = year + '-' + month + '-' + day; + $('#end').val(end); + endDate = convertStringToDate(endDate); + $('#days').val((endDate - beginDate) / (1000 * 60 * 60 * 24) + 1); } /* Auto compute the work days. */ diff --git a/module/project/lang/en.php b/module/project/lang/en.php index e4751c72b2..a3fb9ff536 100644 --- a/module/project/lang/en.php +++ b/module/project/lang/en.php @@ -52,6 +52,14 @@ $lang->project->createTesttask= 'Create testtask'; $lang->project->noProduct = 'No product'; $lang->project->select = '--select project--'; +$lang->project->endList['2weeks'] = 'Two Weeks'; +$lang->project->endList['1'] = 'One Month'; +$lang->project->endList['2'] = 'Two Months'; +$lang->project->endList['3'] = 'Three Months'; +$lang->project->endList['6'] = 'Half Of Year'; +$lang->project->endList['12'] = 'One Year'; + + $lang->team->account = 'Account'; $lang->team->role = 'Role'; $lang->team->join = 'Join date'; diff --git a/module/project/lang/zh-cn.php b/module/project/lang/zh-cn.php index 2da0888d18..9ae8cfe3ae 100644 --- a/module/project/lang/zh-cn.php +++ b/module/project/lang/zh-cn.php @@ -52,6 +52,13 @@ $lang->project->createTesttask= '提交测试'; $lang->project->noProduct = '无产品项目'; $lang->project->select = '--请选择项目--'; +$lang->project->endList['2weeks'] = '两星期'; +$lang->project->endList['1'] = '一个月'; +$lang->project->endList['2'] = '两个月'; +$lang->project->endList['3'] = '三个月'; +$lang->project->endList['6'] = '半年'; +$lang->project->endList['12'] = '一年'; + $lang->team->account = '用户'; $lang->team->role = '角色'; $lang->team->join = '加盟日'; diff --git a/module/project/model.php b/module/project/model.php index 8163ea60a8..96865bcbdc 100644 --- a/module/project/model.php +++ b/module/project/model.php @@ -148,7 +148,7 @@ class projectModel extends model ->stripTags('name, code, team') ->setIF($this->post->acl != 'custom', 'whitelist', '') ->join('whitelist', ',') - ->remove('products') + ->remove('products, workDays') ->get(); $this->dao->insert(TABLE_PROJECT)->data($project) ->autoCheck($skipFields = 'begin,end') diff --git a/module/project/view/create.html.php b/module/project/view/create.html.php index cc51591c8f..2972cff73b 100644 --- a/module/project/view/create.html.php +++ b/module/project/view/create.html.php @@ -44,15 +44,16 @@ $(document).ready(function() project->begin;?> - + project->end;?> - - + + project->endList , '', "onclick='computeEndDate()'");?> + project->days;?> - project->day;?> + project->day;?> project->teamname;?>