Type: New Feature
Affects Version/s: None
Fix Version/s: Quest-PA
- PLEASE DO THIS WORK ON THE QUEST SVN BRANCH ***
New core tables have been implemented to allow us to store configurable "DB Enums" (option lookups) for any number of fields.
Core/OptionGroup.xml - stores meta information for each group of options. For example, if we have a set of option values for "Ethnicity" - there will be one row in OptionGroup for this set.
Core/OptionValue.xml - stores the actual options for each set (with FK to OptionGroup). As with civicrm_custom_option - most class properties that use these option values will store an FKey to civicrm_option_value.id.
We need an Administrator interface to Add/Edit/Disable/Enable/Delete Option Groups and Option Values.
1. Create new admin menu item in Configure section: "Options"
2. This links to OptionGroup page w/ selector listing existing OptionGroup rows, plus a » New Option Group action link.
2.1 Selector actions are: Multiple Choice Options, Edit Group, Disable/Enable and Delete (if is_reserved = false)
2.2 Edit Group (and New Group) go to Form w/ all properties defined for this class.
3. Multiple Choice Options action drills down to page w/ selector listing all OptionValue rows keyed to the selected OptionGroup, plus a » New Option action link.
3.1 Selector actions are: Edit, Disable/Enable and Delete (if is_reserved = false)
3.2 Edit (and New Group) go to Form w/ all properties defined for this class.
There is a new sql file which you can load to your DB which contains 2 sample OptionGroup records and 4 related OptionValue records: