From 93c29fb5e293842f779faa9b2d9fcff3eac5720b Mon Sep 17 00:00:00 2001 From: Coleman Watts Date: Fri, 3 Jan 2014 09:39:34 -0800 Subject: [PATCH] CRM-13810 - Cleanup campaign export --- CRM/Activity/BAO/Activity.php | 3 --- CRM/Contact/Form/Search/Builder.php | 2 -- CRM/Event/BAO/Participant.php | 10 ------- CRM/Export/BAO/Export.php | 42 +++++++++++++---------------- CRM/Member/BAO/Membership.php | 14 ---------- CRM/Pledge/BAO/Pledge.php | 5 ---- 6 files changed, 19 insertions(+), 57 deletions(-) diff --git a/CRM/Activity/BAO/Activity.php b/CRM/Activity/BAO/Activity.php index d1b0ee3ede..8ab5ad2e29 100644 --- a/CRM/Activity/BAO/Activity.php +++ b/CRM/Activity/BAO/Activity.php @@ -2102,9 +2102,6 @@ AND cl.modified_id = c.id // my case hence we have defined fields as case_* if ($name == 'Activity') { $exportableFields = CRM_Activity_DAO_Activity::export(); - if (isset($exportableFields['activity_campaign_id'])) { - $exportableFields['activity_campaign'] = array('title' => ts('Campaign Title')); - } $exportableFields['source_contact_id']['title'] = ts('Source Contact ID'); $exportableFields['source_contact'] = array( 'title' => ts('Source Contact'), diff --git a/CRM/Contact/Form/Search/Builder.php b/CRM/Contact/Form/Search/Builder.php index f34bb155ae..1292f1c0d1 100644 --- a/CRM/Contact/Form/Search/Builder.php +++ b/CRM/Contact/Form/Search/Builder.php @@ -399,8 +399,6 @@ class CRM_Contact_Form_Search_Builder extends CRM_Contact_Form_Search { CRM_Contact_BAO_Query_Hook::singleton()->getFields(), CRM_Activity_BAO_Activity::exportableFields() ); - // CRM-13810 Remove 'Campaign Title' pseudofield - CRM_Utils_Array::remove($fields, 'activity_campaign', 'participant_campaign', 'member_campaign', 'pledge_campaign'); return $fields; } diff --git a/CRM/Event/BAO/Participant.php b/CRM/Event/BAO/Participant.php index bcb8478412..407c15c30c 100644 --- a/CRM/Event/BAO/Participant.php +++ b/CRM/Event/BAO/Participant.php @@ -698,11 +698,6 @@ GROUP BY participant.event_id $tmpFields['participant_contact_id']['title'] = $tmpFields['participant_contact_id']['title'] . ' (match to contact)'; - //campaign fields. - if (isset($tmpFields['participant_campaign_id'])) { - $tmpFields['participant_campaign'] = array('title' => ts('Campaign Title')); - } - $fields = array_merge($fields, $tmpContactField); $fields = array_merge($fields, $tmpFields); $fields = array_merge($fields, $note, $participantStatus, $participantRole, $eventType); @@ -745,11 +740,6 @@ GROUP BY participant.event_id 'name' => 'participant_role', )); - //campaign fields. - if (isset($participantFields['participant_campaign_id'])) { - $participantFields['participant_campaign'] = array('title' => ts('Campaign Title')); - } - $discountFields = CRM_Core_DAO_Discount::export(); $fields = array_merge($participantFields, $participantStatus, $participantRole, $noteField, $discountFields); diff --git a/CRM/Export/BAO/Export.php b/CRM/Export/BAO/Export.php index cb7f04fcd6..3a5ab9c231 100644 --- a/CRM/Export/BAO/Export.php +++ b/CRM/Export/BAO/Export.php @@ -81,7 +81,6 @@ class CRM_Export_BAO_Export { $queryMode = $relationField = NULL; $allCampaigns = array(); - $exportCampaign = FALSE; $phoneTypes = CRM_Core_PseudoConstant::get('CRM_Core_DAO_Phone', 'phone_type_id'); $imProviders = CRM_Core_PseudoConstant::get('CRM_Core_DAO_IM', 'provider_id'); @@ -157,9 +156,6 @@ class CRM_Export_BAO_Export { elseif ($fieldName == 'im') { $imProviderId = CRM_Utils_Array::value(3, $value); } - elseif (substr($fieldName, -8) == 'campaign') { - $exportCampaign = TRUE; - } if (array_key_exists($relationshipTypes, $contactRelationshipTypes)) { if (CRM_Utils_Array::value(2, $value)) { @@ -236,12 +232,6 @@ class CRM_Export_BAO_Export { } else { $returnProperties[$fieldName] = 1; - - //campaign field export. - if (substr($fieldName, -8) == 'campaign') { - $fldNames = explode('_', $fieldName); - $returnProperties["{$fldNames[0]}_campaign_id"] = 1; - } } } } @@ -318,17 +308,6 @@ class CRM_Export_BAO_Export { if ($queryMode != CRM_Contact_BAO_Query::MODE_CONTACTS) { $componentReturnProperties = CRM_Contact_BAO_Query::defaultReturnProperties($queryMode); - - $campaignReturnProperties = array();; - foreach ($componentReturnProperties as $fld => $true) { - $campaignReturnProperties[$fld] = $true; - if (substr($fld, -11) == 'campaign_id') { - $exportCampaign = TRUE; - $campaignReturnProperties[substr($fld, 0, -3)] = 1; - } - } - $componentReturnProperties = $campaignReturnProperties; - $returnProperties = array_merge($returnProperties, $componentReturnProperties); if (!empty($extraReturnProperties)) { @@ -614,8 +593,18 @@ INSERT INTO {$componentTable} SELECT distinct gc.contact_id FROM civicrm_group_c $nullContributionDetails = array_fill_keys(array_keys($paymentHeaders), NULL); } + // Split campaign into 2 fields for id and title + $campaignReturnProperties = array(); + foreach ($returnProperties as $fld => $true) { + $campaignReturnProperties[$fld] = $true; + if (substr($fld, -11) == 'campaign_id') { + $exportCampaign = TRUE; + $campaignReturnProperties[substr($fld, 0, -3)] = 1; + } + } + $returnProperties = $campaignReturnProperties; //get all campaigns. - if ($exportCampaign) { + if (isset($exportCampaign)) { $allCampaigns = CRM_Campaign_BAO_Campaign::getCampaigns(NULL, NULL, FALSE, FALSE, FALSE, TRUE); } @@ -652,7 +641,14 @@ INSERT INTO {$componentTable} SELECT distinct gc.contact_id FROM civicrm_group_c //we should set header only once if ($setHeader) { $sqlDone = FALSE; - if (isset($query->_fields[$field]['title'])) { + // Split campaign into 2 fields for id and title + if (substr($field, -8) == 'campaign') { + $headerRows[] = ts('Campaign Title'); + } + elseif (substr($field, -11) == 'campaign_id') { + $headerRows[] = ts('Campaign ID'); + } + elseif (isset($query->_fields[$field]['title'])) { $headerRows[] = $query->_fields[$field]['title']; } elseif ($field == 'phone_type_id') { diff --git a/CRM/Member/BAO/Membership.php b/CRM/Member/BAO/Membership.php index 5ba8d740fc..7c1d362dbf 100644 --- a/CRM/Member/BAO/Membership.php +++ b/CRM/Member/BAO/Membership.php @@ -1082,10 +1082,6 @@ INNER JOIN civicrm_membership_type type ON ( type.id = membership.membership_ty */ static function &exportableFields() { $expFieldMembership = CRM_Member_DAO_Membership::export(); - //campaign fields. - if (isset($expFieldMembership['member_campaign_id'])) { - $expFieldMembership['member_campaign'] = array('title' => ts('Campaign Title')); - } $expFieldsMemType = CRM_Member_DAO_MembershipType::export(); $fields = array_merge($expFieldMembership, $expFieldsMemType); @@ -1950,16 +1946,6 @@ SELECT c.contribution_page_id as pageID static function getMembershipFields($mode = NULL) { $fields = CRM_Member_DAO_Membership::export(); - //campaign fields. - if (isset($fields['member_campaign_id'])) { - if ($mode == CRM_Export_Form_Select::MEMBER_EXPORT) { - $fields['member_campaign'] = array('title' => ts('Campaign Title')); - } - else { - $fields['member_campaign_id']['title'] = ts('Campaign'); - } - } - unset($fields['membership_contact_id']); $fields = array_merge($fields, CRM_Core_BAO_CustomField::getFieldsForImport('Membership')); diff --git a/CRM/Pledge/BAO/Pledge.php b/CRM/Pledge/BAO/Pledge.php index eb7bcfef45..1c6f6752ef 100644 --- a/CRM/Pledge/BAO/Pledge.php +++ b/CRM/Pledge/BAO/Pledge.php @@ -701,11 +701,6 @@ GROUP BY currency $fields = CRM_Pledge_DAO_Pledge::export(); - //export campaign title. - if (isset($fields['pledge_campaign_id'])) { - $fields['pledge_campaign'] = array('title' => ts('Campaign Title')); - } - $fields = array_merge($fields, CRM_Pledge_DAO_PledgePayment::export()); //set title to calculated fields -- 2.25.1