/** * Singleton method * * @param string $context to determine if triggered from install hook * @return CRM_Postnummer_Config * @access public * @static */ public static function singleton($context = null) { if (!self::$_singleton) { self::$_singleton = new CRM_Earmarking_Config($context); } return self::$_singleton; }
/** * Method to get earmarking lists from option group * * @return array * @throws Exception when no getOptionGroup function * @access private * */ private function getEarmarkingList() { $earmarkingList = array(); $config = CRM_Earmarking_Config::singleton(); $params = array('option_group_id' => $config->getEarmarkingOptionGroup()); try { $optionValues = civicrm_api3('OptionValue', 'Get', $params); foreach ($optionValues['values'] as $optionValue) { $earmarkingList[$optionValue['value']] = $optionValue['label']; } $earmarkingList[0] = '- select -'; asort($earmarkingList); return $earmarkingList; } catch (CiviCRM_API3_Exception $ex) { $earmarkingList[0] = '- select -'; return $earmarkingList; } }