From a10cdaba742655b4ab17066a5f6dc7fee044a926 Mon Sep 17 00:00:00 2001 From: Romain Quetiez Date: Wed, 22 Mar 2017 13:39:48 +0000 Subject: [PATCH] N.779 PARTIAL FIX - Date fields in link sets cannot be edited if the date format differs from the native format (Y-m-d). Homogeneous way to call the API GetFormElementForField, with GetEditValue as the "display value". Still, submitting the form does not work. SVN:trunk[4609] --- application/ui.linkswidget.class.inc.php | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/application/ui.linkswidget.class.inc.php b/application/ui.linkswidget.class.inc.php index cbb053c09..bc01fd753 100644 --- a/application/ui.linkswidget.class.inc.php +++ b/application/ui.linkswidget.class.inc.php @@ -1,5 +1,5 @@ m_iInputId.'_'.$sFieldCode.'['.$linkObjOrId->GetKey().']'; $sSafeId = utils::GetSafeId($sFieldId); + $sValue = $linkObjOrId->Get($sFieldCode); + $sDisplayValue = $linkObjOrId->GetEditValue($sFieldCode); $oAttDef = MetaModel::GetAttributeDef($this->m_sLinkedClass, $sFieldCode); - $aRow[$sFieldCode] = cmdbAbstractObject::GetFormElementForField($oP, $this->m_sLinkedClass, $sFieldCode, $oAttDef, $linkObjOrId->Get($sFieldCode), '' /* DisplayValue */, $sSafeId, $sNameSuffix, 0, $aArgs); + $aRow[$sFieldCode] = cmdbAbstractObject::GetFormElementForField($oP, $this->m_sLinkedClass, $sFieldCode, $oAttDef, $sValue, $sDisplayValue, $sSafeId, $sNameSuffix, 0, $aArgs); $aFieldsMap[$sFieldCode] = $sSafeId; } $sState = $linkObjOrId->GetState(); @@ -158,8 +160,10 @@ class UILinksWidget { $sFieldId = $this->m_iInputId.'_'.$sFieldCode.'['.$linkObjOrId.']'; $sSafeId = utils::GetSafeId($sFieldId); + $sValue = $oNewLinkObj->Get($sFieldCode); + $sDisplayValue = $oNewLinkObj->GetEditValue($sFieldCode); $oAttDef = MetaModel::GetAttributeDef($this->m_sLinkedClass, $sFieldCode); - $aRow[$sFieldCode] = cmdbAbstractObject::GetFormElementForField($oP, $this->m_sLinkedClass, $sFieldCode, $oAttDef, $oNewLinkObj->Get($sFieldCode) /* TO DO/ call GetDefaultValue($oObject->ToArgs()) */, '' /* DisplayValue */, $sSafeId /* id */, $sNameSuffix, 0, $aArgs); + $aRow[$sFieldCode] = cmdbAbstractObject::GetFormElementForField($oP, $this->m_sLinkedClass, $sFieldCode, $oAttDef, $sValue, $sDisplayValue, $sSafeId /* id */, $sNameSuffix, 0, $aArgs); $aFieldsMap[$sFieldCode] = $sSafeId; } $sState = '';