VAT-578-source participant_source ,contribution_source and membership_source is added...
authorPratiksha Dubey <pratiksha.dubey@webaccessglobal.com>
Wed, 6 Aug 2014 13:46:56 +0000 (19:16 +0530)
committerPratiksha Dubey <pratiksha.dubey@webaccessglobal.com>
Wed, 6 Aug 2014 13:46:56 +0000 (19:16 +0530)
CRM/Event/Form/Participant.php
CRM/Event/Form/Registration/Confirm.php
CRM/Member/BAO/Membership.php
CRM/Member/Form/Membership.php

index 06a73a5b26941f889aebf846f667206832cbd69f..624d429d3dc4b0c5bff38916f5e1ede8278d219b 100644 (file)
@@ -1338,8 +1338,13 @@ class CRM_Event_Form_Participant extends CRM_Contact_Form_Task {
 
         //build contribution params
         if (!$this->_onlinePendingContributionId) {
-          $contributionParams['source'] = "{$eventTitle}: Offline registration (by {$userName})";
-        }
+          if (empty($params['source'])) { 
+            $contributionParams['source'] = "{$eventTitle}: Offline registration (by {$userName})";
+          }                                                           
+          else {                                                     
+              $contributionParams['source'] = $params['source'];                                                             
+          }                                                          
+        } 
 
         $contributionParams['currency'] = $config->defaultCurrency;
         $contributionParams['non_deductible_amount'] = 'null';
index e44af4112845f73086afe5b4b02efa27575f93a1..fd65d6f72722c6691da5b6c76e4f023f922d2aeb 100644 (file)
@@ -877,7 +877,7 @@ class CRM_Event_Form_Registration_Confirm extends CRM_Event_Form_Registration {
       'amount_level' => $params['amount_level'],
       'invoice_id' => $params['invoiceID'],
       'currency' => $params['currencyID'],
-      'source' => $params['description'],
+      'source' => !empty($params['participant_source']) ? CRM_Utils_Array::value('participant_source', $params) : CRM_Utils_Array::value('description', $params),
       'is_pay_later' => CRM_Utils_Array::value('is_pay_later', $params, 0),
       'campaign_id' => CRM_Utils_Array::value('campaign_id', $params),
     );
index 2b859c5c8f5b077954f878dd072ea50396de4068..8b83718c8ee30a11e44192fb760726d415be9e0e 100644 (file)
@@ -1270,7 +1270,11 @@ AND civicrm_membership.is_test = %2";
         $contributionTypeId = CRM_Utils_Array::value('financial_type_id' ,$membershipParams);
       }
     }
-
+    
+    if (CRM_Utils_Array::value('membership_source', $form->_params)) {
+      $membershipParams['contribution_source'] = $form->_params['membership_source'];
+    }
     //amount must be greater than zero for
     //adding contribution record  to contribution table.
     //this condition arises when separate membership payment is
index 14f6d4ba3916fc4807da755fe83d0f80099336a5..c21251630f00f948c3024c78849185009a4a2bf6 100644 (file)
@@ -1298,10 +1298,15 @@ WHERE   id IN ( ' . implode(' , ', array_keys($membershipType)) . ' )';
       }
 
       if (!$this->_onlinePendingContributionId) {
-        $params['contribution_source'] = ts('%1 Membership: Offline signup (by %2)',
-          array(1 => $membershipType, 2 => $userName)
-        );
-      }
+        if (empty($formValues['source'])) {
+          $params['contribution_source'] = ts('%1 Membership: Offline signup (by %2)',
+                                                  array(1 => $membershipType, 2 => $userName)
+                                                  );
+        }
+        else {
+            $params['contribution_source'] = $formValues['source'];    
+        }
+      }        
 
       if (empty($params['is_override']) &&
         CRM_Utils_Array::value('contribution_status_id', $params) == array_search('Pending', CRM_Contribute_PseudoConstant::contributionStatus(NULL, 'name'))