From f91dd89bded1270d6042a4bfef05797f5d11a83c Mon Sep 17 00:00:00 2001 From: tianshujie Date: Fri, 19 Jan 2024 15:20:47 +0800 Subject: [PATCH] * Fix can't save custom fields. --- module/custom/control.php | 2 +- module/product/config.php | 3 ++- module/task/config.php | 2 +- module/task/ui/common.field.php | 2 +- module/task/ui/create.field.php | 2 +- module/task/ui/create.html.php | 10 +++++----- 6 files changed, 11 insertions(+), 10 deletions(-) diff --git a/module/custom/control.php b/module/custom/control.php index eaf8bf5989..ace5f28a38 100644 --- a/module/custom/control.php +++ b/module/custom/control.php @@ -399,7 +399,7 @@ class custom extends control $fields = $this->post->fields; if(is_array($fields)) $fields = implode(',', $fields); $this->loadModel('setting')->setItem("{$account}.{$module}.{$section}.{$key}", $fields); - if(in_array($module, array('story', 'task', 'testcase')) && $section == 'custom' && in_array($key, array('createFields', 'batchCreateFields'))) return; + if(in_array($module, array('story', 'task', 'testcase')) && $section == 'custom' && $key == 'batchCreateFields') return; if($module == 'bug' && $section == 'custom' && $key == 'batchCreateFields') return; } else diff --git a/module/product/config.php b/module/product/config.php index b35e200a81..e06d3e028e 100644 --- a/module/product/config.php +++ b/module/product/config.php @@ -16,7 +16,8 @@ if($config->systemMode == 'ALM') $config->product->custom->batchEditFields .= ', /* Export fields of product list page. */ $config->product->list = new stdclass(); -$config->product->list->exportFields = 'id,program,line,name,manager,draftStories,activeStories,changedStories,reviewingStories,closedStories,storyCompleteRate,unResolvedBugs,bugFixedRate,plans,releases'; +$config->product->list->exportFields = 'id,program,line,name,manager,draftStories,activeStories,changedStories,reviewingStories,closedStories,storyCompleteRate,unResolvedBugs,bugFixedRate,plans,releases'; +$config->product->list->customCreateFields = 'PO,RD,acl'; $config->product->actionsMap['normal'] = array('edit'); diff --git a/module/task/config.php b/module/task/config.php index 0512792fdb..43069d3448 100644 --- a/module/task/config.php +++ b/module/task/config.php @@ -53,7 +53,7 @@ $config->task->exportFields = ' '; $config->task->list = new stdclass(); -$config->task->list->customCreateFields = 'story,estStarted,deadline,mailto,pri,estimate'; +$config->task->list->customCreateFields = 'module,story,keywords,mailto,files'; $config->task->list->customBatchCreateFields = 'module,story,assignedTo,estimate,estStarted,deadline,desc,pri'; $config->task->list->customBatchEditFields = 'module,assignedTo,status,pri,estimate,record,left,estStarted,deadline,finishedBy,canceledBy,closedBy,closedReason'; diff --git a/module/task/ui/common.field.php b/module/task/ui/common.field.php index 181314623b..a87f3bcf08 100644 --- a/module/task/ui/common.field.php +++ b/module/task/ui/common.field.php @@ -48,7 +48,7 @@ $fields->field('desc') ->width('full') ->control('editor'); -$fields->field('file') +$fields->field('files') ->width('full') ->control('upload'); diff --git a/module/task/ui/create.field.php b/module/task/ui/create.field.php index 3d57a45384..c30a07e342 100644 --- a/module/task/ui/create.field.php +++ b/module/task/ui/create.field.php @@ -6,7 +6,7 @@ $fields = defineFieldList('task.create', 'task'); /* Set foldable attribute. */ $fields->field('module')->foldable(strpos($config->task->create->requiredFields, 'module') === false); -$fields->field('file')->foldable(); +$fields->field('files')->foldable(); $fields->field('mailto')->foldable(); $fields->field('keywords')->foldable(); diff --git a/module/task/ui/create.html.php b/module/task/ui/create.html.php index f5ff8d9df7..8696e497ae 100644 --- a/module/task/ui/create.html.php +++ b/module/task/ui/create.html.php @@ -24,20 +24,20 @@ jsVar('estimateNotEmpty', sprintf($lang->error->gt, $lang->task->estimate, '0')) jsVar('taskID', $taskID ?? 0); $fields = useFields('task.create'); -$fields->autoLoad('execution', 'execution,type,name,assignedToBox,region,lane,module,storyBox,datePlan,pri,estimate,desc,file,mailto,keywords,after,testStoryBox'); +$fields->autoLoad('execution', 'execution,type,name,assignedToBox,region,lane,module,storyBox,datePlan,pri,estimate,desc,files,mailto,keywords,after,testStoryBox'); $fields->orders('name,assignedToBox', 'module,testStoryBox', 'desc,module,storyBox'); -$fields->fullModeOrders('type,module,storyBox', 'desc,file,mailto,keywords'); +$fields->fullModeOrders('type,module,storyBox', 'desc,files,mailto,keywords'); if($execution->type == 'kanban') { $fields->orders('desc,module,storyBox', 'type,assignedToBox,region,lane'); - $fields->fullModeOrders('name,assignedToBox', 'type,module,storyBox', 'desc,file,mailto,keywords'); - if(empty($features['story'])) $fields->fullModeOrders('type,module,storyBox', 'name,assignedToBox', 'desc,file,mailto,keywords'); + $fields->fullModeOrders('name,assignedToBox', 'type,module,storyBox', 'desc,files,mailto,keywords'); + if(empty($features['story'])) $fields->fullModeOrders('type,module,storyBox', 'name,assignedToBox', 'desc,files,mailto,keywords'); } if(empty($features['story']) && $execution->type != 'kanban') { - $fields->fullModeOrders('type,module,storyBox,assignedToBox', 'desc,file,mailto,keywords'); + $fields->fullModeOrders('type,module,storyBox,assignedToBox', 'desc,files,mailto,keywords'); } $teamForm = array();