*/
public static function fieldSerialization() {
return [
+ CRM_Core_DAO::SERIALIZE_NONE => 'none',
CRM_Core_DAO::SERIALIZE_SEPARATOR_BOOKEND => 'separator_bookend',
CRM_Core_DAO::SERIALIZE_SEPARATOR_TRIMMED => 'separator_trimmed',
CRM_Core_DAO::SERIALIZE_JSON => 'json',
];
}
- public static function timezone() {
- $tzlist = &Civi::$statics[__CLASS__]['tzlist'];
-
- if (is_null($tzlist)) {
- $tzlist = [];
- foreach (timezone_identifiers_list() as $tz) {
- // Actual timezone keys for PHP are mapped to human parts.
- $tzlist[$tz] = str_replace('_', ' ', $tz);
- }
-
- // Add 'Etc/UTC' specially, as timezone_identifiers_list() does
- // not include it, but it is the IANA long name for 'UTC'
- $tzlist['Etc/UTC'] = ts('Etc/UTC');
- }
-
- return $tzlist;
+ /**
+ * Columns from the option_value table which may or may not be used by each option_group.
+ *
+ * Note: Value is not listed here as it is not optional.
+ *
+ * @return string[]
+ */
+ public static function optionValueFields() {
+ return [
+ 'name' => 'name',
+ 'label' => 'label',
+ 'description' => 'description',
+ 'icon' => 'icon',
+ 'color' => 'color',
+ ];
}
}