diff --git a/CRM/Custom/Form/Field.php b/CRM/Custom/Form/Field.php index a01e87ec5d25..014ae6ad6e0e 100644 --- a/CRM/Custom/Form/Field.php +++ b/CRM/Custom/Form/Field.php @@ -319,24 +319,24 @@ public function buildQuickForm() { $this->freeze('data_type'); } - $optionGroupParams = array( + $optionGroupParams = [ 'is_reserved' => 0, 'is_active' => 1, - 'options' => array('limit' => 0, 'sort' => "title ASC"), - ); + 'options' => ['limit' => 0, 'sort' => "title ASC"], + 'return' => ['title'], + ]; if ($this->_action == CRM_Core_Action::UPDATE) { $optionGroupParams['id'] = $this->_values['id']; } + // Get all custom (is_reserved=0) option groups + $optionGroupMetadata = civicrm_api3('OptionGroup', 'get', $optionGroupParams); // OptionGroup selection $optionTypes = array('1' => ts('Create a new set of options')); - // Get all custom (is_reserved=0) option groups - $optionGroupMetadata = civicrm_api3('OptionGroup', 'get', $optionGroupParams); + if (!empty($optionGroupMetadata['values'])) { $emptyOptGroup = FALSE; - foreach ($optionGroupMetadata['values'] as $id => $metadata) { - $optionGroups[$id] = $metadata['title']; - } + $optionGroups = CRM_Utils_Array::collect('title', $optionGroupMetadata['values']); $optionTypes['2'] = ts('Reuse an existing set'); $this->add('select', diff --git a/xml/templates/civicrm_data.tpl b/xml/templates/civicrm_data.tpl index d101300576df..d20de95e1c7a 100644 --- a/xml/templates/civicrm_data.tpl +++ b/xml/templates/civicrm_data.tpl @@ -212,7 +212,7 @@ VALUES ('wysiwyg_presets' , '{ts escape="sql"}WYSIWYG Editor Presets{/ts}' , NULL, 1, 1, 0), ('relative_date_filters' , '{ts escape="sql"}Relative Date Filters{/ts}' , NULL, 1, 1, 0), ('pledge_status' , '{ts escape="sql"}Pledge Status{/ts}' , NULL, 1, 1, 1), - ('environment' , '{ts escape="sql"}Environment{/ts}' , NULL, 0, 1, 0); + ('environment' , '{ts escape="sql"}Environment{/ts}' , NULL, 1, 1, 0); SELECT @option_group_id_pcm := max(id) from civicrm_option_group where name = 'preferred_communication_method'; SELECT @option_group_id_act := max(id) from civicrm_option_group where name = 'activity_type';