/**
  * Method to get contribution status lists from option group
  *
  * @return array
  * @throws Exception when no getOptionGroup function
  * @access private
  *
  */
 private function getContributionStatusList()
 {
     $contributionStatusList = array();
     if (method_exists('CRM_Costinvoicelink_Utils', 'getOptionGroup')) {
         $earmarkingOptionGroup = CRM_Costinvoicelink_Utils::getOptionGroup('contribution_status');
         $params = array('option_group_id' => $earmarkingOptionGroup['id']);
         try {
             $optionValues = civicrm_api3('OptionValue', 'Get', $params);
             foreach ($optionValues['values'] as $optionValue) {
                 $contributionStatusList[$optionValue['value']] = $optionValue['label'];
             }
             $contributionStatusList[0] = '- select -';
             asort($contributionStatusList);
             return $contributionStatusList;
         } catch (CiviCRM_API3_Exception $ex) {
             $contributionStatusList[0] = '- select -';
             return $contributionStatusList;
         }
     } else {
         throw new Exception('Could not find extension Costinvoicelink, check your CiviCRM support team (not found method getOptionGroup)');
     }
 }
Example #2
0
 /**
  * Function to get option groups
  *
  * @param $optionGroupName
  * @return array|bool
  * @throws Exception
  */
 protected function setOptionGroup($optionGroupName)
 {
     if (method_exists('CRM_Costinvoicelink_Utils', 'getOptionGroup')) {
         return CRM_Costinvoicelink_Utils::getOptionGroup($optionGroupName);
     } else {
         try {
             return civicrm_api3('OptionGroup', 'Getsingle', array('name' => $optionGroupName));
         } catch (CiviCRM_API3_Exception $ex) {
             throw new Exception("Could not find a single option group with name " . $optionGroupName . ", meaning there might be none or more.\n        Error from API OptionGroup Getsingle: " . $ex->getMessage());
         }
     }
 }