[ 'description', 'group_type', ], 'params' => [ 'is_active' => 1, ], ]; } /** * Format getlist output * * @see _civicrm_api3_generic_getlist_output * * @param array $result * @param array $request * @param string $entity * @param array $fields * * @return array */ function _civicrm_api3_uf_group_getlist_output($result, $request, $entity, $fields) { $output = []; if (!empty($result['values'])) { foreach ($result['values'] as $row) { $data = [ 'id' => $row[$request['id_field']], 'label' => $row[$request['label_field']], ]; if (!empty($request['description_field'])) { $data['description'] = []; foreach ((array) $request['description_field'] as $field) { if (!empty($row[$field])) { // Special formatting for group_type field if ($field == 'group_type') { $groupTypes = CRM_UF_Page_Group::extractGroupTypes($row[$field]); $data['description'][] = CRM_UF_Page_Group::formatGroupTypes($groupTypes); continue; } if (!isset($fields[$field]['pseudoconstant'])) { $data['description'][] = $row[$field]; } else { $data['description'][] = CRM_Core_PseudoConstant::getLabel( _civicrm_api3_get_BAO($entity), $field, $row[$field] ); } } } }; if (!empty($request['image_field'])) { $data['image'] = $row[$request['image_field']] ?? ''; } $output[] = $data; } } return $output; }