diff --git a/module/programplan/js/create.ui.js b/module/programplan/js/create.ui.js index f1d3515e15..6aa9b45536 100644 --- a/module/programplan/js/create.ui.js +++ b/module/programplan/js/create.ui.js @@ -2,7 +2,14 @@ window.onRenderRow = function(row, rowIdx, data) { if(!data || !data.planIDList) return; - row.children('.form-batch-row-actions').children('[data-type=delete]').remove(); + row.children('.form-batch-row-actions').children('[data-type=delete]').addClass('hidden'); + row.children('[data-name=type]').children('select').attr('disabled', 'disabled'); + + /* Use the flag variable 'setMilestone' to toggle the enable/disable status of the milestone field. */ + if(!data.setMilestone) + { + row.children('[data-name=milestone]').children('select').attr('disabled', 'disabled'); + } }; window.onChangeExecutionType = function(event) diff --git a/module/programplan/ui/create.html.php b/module/programplan/ui/create.html.php index 887ef0fb0a..27c6d7952f 100644 --- a/module/programplan/ui/create.html.php +++ b/module/programplan/ui/create.html.php @@ -167,13 +167,10 @@ $fnGenerateFields = function() use ($lang, $requiredFields, $showFields, $fields /* Generate default rendering data. */ $fnGenerateDefaultData = function() use ($config, $plans, $planID, $stages, $executionType) { - /* If the $planID variable is not empty, then the user is on the sub-stages creation page and no default values should be used. */ - if(!empty($planID)) return array(); - $items = array(); /* Created a new project witho no stages. */ - if(empty($plans)) + if(empty($plans) && $planID == 0) { foreach($stages as $stage) { @@ -208,16 +205,17 @@ $fnGenerateDefaultData = function() use ($config, $plans, $planID, $stages, $exe { $item->code = $plan->code; } - $item->PM = $plan->PM; - $item->percent = $plan->percent; - $item->attribute = $plan->attribute; - $item->acl = $plan->acl; - $item->milestone = $plan->milestone; - $item->begin = $plan->begin; - $item->end = $plan->end; - $item->realBegan = $plan->realBegan; - $item->realEnd = $plan->realEnd; - $item->desc = $plan->desc; + $item->PM = $plan->PM; + $item->percent = $plan->percent; + $item->attribute = $plan->attribute; + $item->acl = $plan->acl; + $item->milestone = $plan->milestone; + $item->begin = $plan->begin; + $item->end = $plan->end; + $item->realBegan = $plan->realBegan; + $item->realEnd = $plan->realEnd; + $item->desc = $plan->desc; + $item->setMilestone = $plan->setMilestone; if($config->edition == 'max' && $executionType == 'stage') { $item->output = empty($plan->output) ? 0 : explode(',', $plan->output);