X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=api%2Fv3%2FOptionValue.php;h=6f83e2b564537dce44f8ec7ed9e3df9d059bdaa2;hb=85bb0909cffd925f4cd5c0022a68a1ff74d3ad8e;hp=772a0d54656eee966bfa662134d8c3b38ff0fc15;hpb=66c6206c9d19f2aa13ff0f7051c9952b6fbdad50;p=civicrm-core.git diff --git a/api/v3/OptionValue.php b/api/v3/OptionValue.php index 772a0d5465..6f83e2b564 100644 --- a/api/v3/OptionValue.php +++ b/api/v3/OptionValue.php @@ -3,7 +3,9 @@ /** * Retrieve one or more OptionValues * - * @param array $ params input parameters + * @param $params + * + * @internal param $array $ params input parameters * * {@example OptionValueGet.php 0} * @example OptionValueGet.php @@ -33,14 +35,25 @@ function civicrm_api3_option_value_get($params) { * * {@example OptionValueCreate.php} * + * @param $params + * + * @throws API_Exception * @return array of newly created option_value property values. * {@getfields OptionValue_create} * @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'])); + 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; }