Merge pull request #2793 from monishdeb/HR-322
[civicrm-core.git] / api / v3 / OptionValue.php
index de9c61394998603a33be2554c658ddd3652753ad..ad2bd40292dc76ec0968afe3e888ab2ef0362e5d 100644 (file)
@@ -1,5 +1,4 @@
 <?php
-// $Id$
 
 /**
  * Retrieve one or more OptionValues
@@ -39,9 +38,20 @@ function civicrm_api3_option_value_get($params) {
  * @access public
  */
 function civicrm_api3_option_value_create($params) {
-
   $result = _civicrm_api3_basic_create(_civicrm_api3_get_BAO(__FUNCTION__), $params);
-  civicrm_api('option_value', 'getfields', array('version' => 3, 'cache_clear' => 1, 'option_group_id' => $params['option_group_id']));
+
+  // CRM-13814 : evalute option group id
+  // option group id would be passed in case of adding a new option value record
+  if (!empty($params['id']) && !array_key_exists('option_group_id', $params)) {
+    $groupId = CRM_Core_DAO::getFieldValue('CRM_Core_DAO_OptionValue',
+      $params['id'], 'option_group_id', 'id'
+    );
+  }
+  else {
+    $groupId = $params['option_group_id'];
+  }
+
+  civicrm_api('option_value', 'getfields', array('version' => 3, 'cache_clear' => 1, 'option_group_id' => $groupId));
   return $result;
 }