X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=api%2Fv3%2FCustomField.php;h=6a41b74be23d1db2208a886d6d95a12fec7a5b21;hb=9ed4c3c05a8b3d0932a18eabe3be878121cb8d19;hp=dad64832a9d482e1c365c14e0da8e92014c14352;hpb=9c2e4fb9824d9913d19a7f7e24ada6093a409461;p=civicrm-core.git diff --git a/api/v3/CustomField.php b/api/v3/CustomField.php index dad64832a9..6a41b74be2 100644 --- a/api/v3/CustomField.php +++ b/api/v3/CustomField.php @@ -74,12 +74,20 @@ function civicrm_api3_custom_field_create($params) { $params['option_weight'][$key] = $value['weight']; } } + $values = array(); $customField = CRM_Core_BAO_CustomField::create($params); - civicrm_api('custom_field', 'getfields', array('version' => 3, 'cache_clear' => 1)); _civicrm_api3_object_to_array_unique_fields($customField, $values[$customField->id]); + _civicrm_api3_custom_field_flush_static_caches(); return civicrm_api3_create_success($values, $params, 'custom_field', $customField); } +/** + * Flush static caches in functions that might have stored available custom fields + */ +function _civicrm_api3_custom_field_flush_static_caches(){ + civicrm_api('custom_field', 'getfields', array('version' => 3, 'cache_clear' => 1)); + CRM_Core_BAO_UFField::getAvailableFieldsFlat(TRUE); +} /** * Adjust Metadata for Create action *