From b7dd923b64032b68737be672410585aeb0a4202e Mon Sep 17 00:00:00 2001 From: s_a_hasegawa Date: Fri, 14 Jun 2024 17:50:54 +0900 Subject: [PATCH] =?UTF-8?q?#1038=20=E9=A0=85=E7=9B=AE=E8=A8=AD=E5=AE=9A?= =?UTF-8?q?=E7=94=BB=E9=9D=A2=E3=81=AB=E3=81=8A=E3=81=84=E3=81=A6=E3=80=8C?= =?UTF-8?q?=E5=BF=85=E9=A0=88=E3=80=8D=E3=81=AA=E3=81=A9=E3=82=92=E3=82=AF?= =?UTF-8?q?=E3=82=A4=E3=83=83=E3=82=AF=E5=A4=89=E6=9B=B4=E3=81=97=E3=81=9F?= =?UTF-8?q?=E5=A0=B4=E5=90=88=E3=81=AB=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB?= =?UTF-8?q?=E3=83=88=E5=80=A4=E3=81=8C=E6=B6=88=E3=81=88=E3=82=8B=E5=95=8F?= =?UTF-8?q?=E9=A1=8C=E3=81=AA=E3=81=A9=E3=81=AE=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LayoutEditor/resources/LayoutEditor.js | 4 ---- modules/Settings/LayoutEditor/actions/Field.php | 15 ++++++++++----- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/layouts/v7/modules/Settings/LayoutEditor/resources/LayoutEditor.js b/layouts/v7/modules/Settings/LayoutEditor/resources/LayoutEditor.js index 486906491..2d809045a 100644 --- a/layouts/v7/modules/Settings/LayoutEditor/resources/LayoutEditor.js +++ b/layouts/v7/modules/Settings/LayoutEditor/resources/LayoutEditor.js @@ -952,10 +952,6 @@ Vtiger.Class('Settings_LayoutEditor_Js', { data.name = nameAttr; data.value = defaultValueUi.val(); - //チェックボックス項目から、または選択肢(複数)からの変更の場合、デフォルト値に何も表示されないようにする - if(nameAttr == 'fieldDefaultValue' && (typeBeforeChange == 'Boolean' || typeBeforeChange == 'Multipicklist')){ - data.value = ""; - } if (currentTarget.val() == "MultiSelectCombo") { if (data.value != null && data.value.length > 0) { data.value = data.value.join('|##|'); diff --git a/modules/Settings/LayoutEditor/actions/Field.php b/modules/Settings/LayoutEditor/actions/Field.php index f0f070624..2c63f9100 100644 --- a/modules/Settings/LayoutEditor/actions/Field.php +++ b/modules/Settings/LayoutEditor/actions/Field.php @@ -81,6 +81,7 @@ public function save(Vtiger_Request $request) { $summaryField = $request->get('summaryfield',null); $massEditable = $request->get('masseditable',null); $headerField = $request->get('headerfield',null); + $fieldDefaultValue = $request->get('fieldDefaultValue', null); if (!$fieldLabel) { $fieldInstance->set('label', $fieldLabel); @@ -108,12 +109,15 @@ public function save(Vtiger_Request $request) { $fieldInstance->set('masseditable', $massEditable); } - if($uitype == 33){ - $defaultValue = decode_html(implode(' |##| ', $request->get('fieldDefaultValue'))); - }else{ - $defaultValue = decode_html($request->get('fieldDefaultValue')); + if(isset($fieldDefaultValue) && $fieldDefaultValue !== null) { + $fieldDataType = $fieldInstance->getFieldDataType(); + if($fieldDataType == 'multipicklist'){ + $defaultValue = decode_html(implode(' |##| ', $request->get('fieldDefaultValue'))); + }else{ + $defaultValue = decode_html($request->get('fieldDefaultValue')); + } + $fieldInstance->set('defaultvalue', $defaultValue); } - $fieldInstance->set('defaultvalue', $defaultValue); $response = new Vtiger_Response(); try{ $fieldInstance->save(); @@ -122,6 +126,7 @@ public function save(Vtiger_Request $request) { $fieldInfo = $fieldInstance->getFieldInfo(); $fieldInfo['id'] = $fieldInstance->getId(); + $defaultValue = $fieldInstance->getDefaultFieldValue(); $fieldInfo['fieldDefaultValueRaw'] = $defaultValue; if (isset($defaultValue)) { if ($defaultValue && $fieldInfo['type'] == 'date') {