* @return object
*/
public static function add(&$params, $ids = array()) {
- if (empty($params['id'])) {
- $params['id'] = CRM_Utils_Array::value('optionGroup', $ids);
+ if (empty($params['id']) && !empty($ids['optionGroup'])) {
+ CRM_Core_Error::deprecatedFunctionWarning('no $ids array');
+ $params['id'] = $ids['optionGroup'];
}
-
- $params['is_active'] = CRM_Utils_Array::value('is_active', $params, FALSE);
-
- // action is taken depending upon the mode
$optionGroup = new CRM_Core_DAO_OptionGroup();
$optionGroup->copyValues($params);;
-
$optionGroup->save();
return $optionGroup;
}
{* file to handle db changes in 5.5.alpha1 during upgrade *}
+#https://lab.civicrm.org/dev/core/issues/228
+UPDATE civicrm_option_group SET is_active = 0 WHERE is_active IS NULL;
+ALTER TABLE civicrm_option_group MODIFY COLUMN is_active TINYINT(4) NOT NULL DEFAULT 1 COMMENT 'Is this option group active?';
+UPDATE civicrm_option_group SET is_locked = 0 WHERE is_locked IS NULL;
+ALTER TABLE civicrm_option_group MODIFY COLUMN is_locked TINYINT(4) NOT NULL DEFAULT 1 COMMENT 'A lock to remove the ability to add new options via the UI.';
+#is_reserved already has a default so is effectively required but let's be explicit.
+UPDATE civicrm_option_group SET `is_reserved` = 0 WHERE `is_reserved` IS NULL;
+ALTER TABLE civicrm_option_group MODIFY COLUMN `is_reserved` tinyint(4) NOT NULL DEFAULT 1 COMMENT 'Is this a predefined system option group (i.e. it can not be deleted)?';
<title>Option Group Is Reserved?</title>
<type>boolean</type>
<default>1</default>
+ <required>true</required>
<comment>Is this a predefined system option group (i.e. it can not be deleted)?</comment>
<add>1.5</add>
</field>
<name>is_active</name>
<title>Option Group Is Active?</title>
<type>boolean</type>
+ <default>1</default>
+ <required>true</required>
<comment>Is this option group active?</comment>
<add>1.5</add>
</field>
<field>
<name>is_locked</name>
<title>Option Group Is Locked</title>
+ <default>0</default>
+ <required>true</required>
<type>boolean</type>
<comment>A lock to remove the ability to add new options via the UI.</comment>
<add>4.5</add>