$campaignEnabled = in_array("CiviCampaign", $config->enableComponents);
$caseEnabled = in_array("CiviCase", $config->enableComponents);
if ($campaignEnabled) {
- $getCampaigns = CRM_Campaign_BAO_Campaign::getPermissionedCampaigns(NULL, NULL, TRUE, FALSE, TRUE);
- $this->activeCampaigns = $getCampaigns['campaigns'];
- asort($this->activeCampaigns);
$this->engagementLevels = CRM_Campaign_PseudoConstant::engagementLevel();
}
'operator' => 'like',
'type' => CRM_Utils_Type::T_STRING,
);
- if (!empty($this->activeCampaigns)) {
- $this->_columns['civicrm_activity']['fields']['campaign_id'] = array(
- 'title' => ts('Campaign'),
- 'default' => 'false',
- );
- $this->_columns['civicrm_activity']['filters']['campaign_id'] = array(
- 'title' => ts('Campaign'),
- 'type' => CRM_Utils_Type::T_INT,
- 'operatorType' => CRM_Report_Form::OP_MULTISELECT,
- 'options' => $this->activeCampaigns,
- );
- }
+ // If we have campaigns enabled, add those elements to both the fields, filters.
+ $this->addCampaignFields('civicrm_activity');
+
if (!empty($this->engagementLevels)) {
$this->_columns['civicrm_activity']['fields']['engagement_level'] = array(
'title' => ts('Engagement Index'),
if (array_key_exists('civicrm_activity_campaign_id', $row)) {
if ($value = $row['civicrm_activity_campaign_id']) {
- $rows[$rowNum]['civicrm_activity_campaign_id'] = $this->activeCampaigns[$value];
+ $rows[$rowNum]['civicrm_activity_campaign_id'] = $this->campaigns[$value];
$entryFound = TRUE;
}
}
* Class constructor.
*/
public function __construct() {
- $config = CRM_Core_Config::singleton();
- $campaignEnabled = in_array('CiviCampaign', $config->enableComponents);
- if ($campaignEnabled) {
- $getCampaigns = CRM_Campaign_BAO_Campaign::getPermissionedCampaigns(NULL, NULL, TRUE, FALSE, TRUE);
- $this->activeCampaigns = $getCampaigns['campaigns'];
- asort($this->activeCampaigns);
- }
$this->_columns = array(
'civicrm_contact' => array(
'dao' => 'CRM_Contact_DAO_Contact',
$this->_groupFilter = TRUE;
$this->_tagFilter = TRUE;
- if ($campaignEnabled && !empty($this->activeCampaigns)) {
- $this->_columns['civicrm_contribution']['fields']['campaign_id'] = array(
- 'title' => ts('Campaign'),
- 'default' => 'false',
- );
- $this->_columns['civicrm_contribution']['filters']['campaign_id'] = array(
- 'title' => ts('Campaign'),
- 'operatorType' => CRM_Report_Form::OP_MULTISELECT,
- 'options' => $this->activeCampaigns,
- 'type' => CRM_Utils_Type::T_INT,
- );
- $this->_columns['civicrm_contribution']['order_bys']['campaign_id'] = array('title' => ts('Campaign'));
- }
+ // If we have campaigns enabled, add those elements to both the fields, filters and sorting
+ $this->addCampaignFields('civicrm_contribution', FALSE, TRUE);
$this->_currencyColumn = 'civicrm_contribution_currency';
parent::__construct();
// convert campaign_id to campaign title
if (array_key_exists('civicrm_contribution_campaign_id', $row)) {
if ($value = $row['civicrm_contribution_campaign_id']) {
- $rows[$rowNum]['civicrm_contribution_campaign_id'] = $this->activeCampaigns[$value];
+ $rows[$rowNum]['civicrm_contribution_campaign_id'] = $this->campaigns[$value];
$entryFound = TRUE;
}
}
* Class constructor.
*/
public function __construct() {
-
- // Check if CiviCampaign is a) enabled and b) has active campaigns
- $config = CRM_Core_Config::singleton();
- $campaignEnabled = in_array("CiviCampaign", $config->enableComponents);
- if ($campaignEnabled) {
- $getCampaigns = CRM_Campaign_BAO_Campaign::getPermissionedCampaigns(NULL, NULL, TRUE, FALSE, TRUE);
- $this->activeCampaigns = $getCampaigns['campaigns'];
- asort($this->activeCampaigns);
- }
-
// UI for selecting columns to appear in the report list
// array containing the columns, group_bys and filters build and provided to Form
$this->_columns = array(
),
);
- // If we have a campaign, build out the relevant elements
- if ($campaignEnabled && !empty($this->activeCampaigns)) {
- $this->_columns['civicrm_membership']['fields']['campaign_id'] = array(
- 'title' => ts('Campaign'),
- 'default' => 'false',
- );
- $this->_columns['civicrm_membership']['filters']['campaign_id'] = array(
- 'title' => ts('Campaign'),
- 'operatorType' => CRM_Report_Form::OP_MULTISELECT,
- 'options' => $this->activeCampaigns,
- 'type' => CRM_Utils_Type::T_INT,
- );
- }
+ // If we have campaigns enabled, add those elements to both the fields, filters.
+ $this->addCampaignFields('civicrm_membership');
$this->_groupFilter = TRUE;
$this->_tagFilter = TRUE;
// If using campaigns, convert campaign_id to campaign title
if (array_key_exists('civicrm_membership_campaign_id', $row)) {
if ($value = $row['civicrm_membership_campaign_id']) {
- $rows[$rowNum]['civicrm_membership_campaign_id'] = $this->activeCampaigns[$value];
+ $rows[$rowNum]['civicrm_membership_campaign_id'] = $this->campaigns[$value];
}
$entryFound = TRUE;
}