From 5013100c5b76f331d43710799bbbfc9c46c98a72 Mon Sep 17 00:00:00 2001 From: "deb.monish" Date: Wed, 1 Aug 2018 01:17:10 +0530 Subject: [PATCH] Customvalue ID is ignored --- CRM/Core/BAO/CustomValueTable.php | 4 ++++ .../CRM/Core/BAO/CustomValueTableMultipleTest.php | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/CRM/Core/BAO/CustomValueTable.php b/CRM/Core/BAO/CustomValueTable.php index 9455b06a4f..73a431065a 100644 --- a/CRM/Core/BAO/CustomValueTable.php +++ b/CRM/Core/BAO/CustomValueTable.php @@ -637,6 +637,10 @@ AND cf.id IN ( $fieldIDList ) 'extends' => $dao->extends, ); + if (!empty($params['id'])) { + $cvParam['id'] = $params['id']; + } + if ($cvParam['type'] == 'File') { $cvParam['file_id'] = $fieldValue['value']; } diff --git a/tests/phpunit/CRM/Core/BAO/CustomValueTableMultipleTest.php b/tests/phpunit/CRM/Core/BAO/CustomValueTableMultipleTest.php index 8d7255a5bd..ad6e0d86bd 100644 --- a/tests/phpunit/CRM/Core/BAO/CustomValueTableMultipleTest.php +++ b/tests/phpunit/CRM/Core/BAO/CustomValueTableMultipleTest.php @@ -35,6 +35,20 @@ class CRM_Core_BAO_CustomValueTableMultipleTest extends CiviUnitTestCase { $this->assertEquals($params["custom_{$customField['id']}_-1"], $result["custom_{$customField['id']}_1"]); $this->assertEquals($params['entityID'], $result['entityID']); + $updateParams = array( + 'id' => 1, + 'entityID' => $contactID, + "custom_{$customField['id']}" => 2, + ); + CRM_Core_BAO_CustomValueTable::setValues($updateParams); + + $criteria = array( + 'id' => 1, + 'entityID' => $contactID, + ); + $result = CRM_Core_BAO_CustomValueTable::getValues($criteria); + $this->assertEquals(2, $result["custom_{$customField['id']}_1"]); + $this->customFieldDelete($customField['id']); $this->customGroupDelete($customGroup['id']); $this->contactDelete($contactID); -- 2.25.1