CRM-14197 pass line items & isTest into renewMembership (derive at form level
authorEileen McNaughton <eileen@fuzion.co.nz>
Tue, 20 May 2014 23:48:43 +0000 (11:48 +1200)
committerEileen McNaughton <eileen@fuzion.co.nz>
Wed, 21 May 2014 01:54:36 +0000 (13:54 +1200)
towards CRM-14197 pass lineitems & isTest into renewMembership

remove minor code duplication, ensure  set to form value

minor cleanups

CRM/Contribute/BAO/Contribution/Utils.php
CRM/Contribute/Form/Contribution.php
CRM/Contribute/Form/Contribution/Confirm.php
CRM/Member/BAO/Membership.php
CRM/Member/Form/Membership.php

index 2193832c6e88a67e9fd9087eb98747f7077a6434..b1a42a787a8c21463e5c69a36832c88427dbc3b1 100644 (file)
@@ -62,6 +62,8 @@ class CRM_Contribute_BAO_Contribution_Utils {
     $fieldTypes = NULL
   ) {
     CRM_Core_Payment_Form::mapParams($form->_bltID, $form->_params, $paymentParams, TRUE);
+    $isTest = ($form->_mode == 'test') ? 1 : 0;
+    $lineItems = $form->_lineItem;
 
     $contributionType = new CRM_Financial_DAO_FinancialType();
     if (isset($paymentParams['financial_type'])) {
@@ -111,7 +113,9 @@ class CRM_Contribute_BAO_Contribution_Utils {
         NULL,
         $contactID,
         $contributionType,
-        TRUE, TRUE
+        TRUE, TRUE,
+        $isTest,
+        $lineItems
       );
 
       if ($contribution) {
@@ -230,7 +234,9 @@ class CRM_Contribute_BAO_Contribution_Utils {
           NULL,
           $contactID,
           $contributionType,
-          TRUE, TRUE
+          TRUE, TRUE,
+          $isTest,
+          $lineItems
         );
 
         // restore cached values (part of fix for CRM-14354)
@@ -307,7 +313,9 @@ class CRM_Contribute_BAO_Contribution_Utils {
         $contribution = CRM_Contribute_Form_Contribution_Confirm::processContribution($form,
           $form->_params, $result,
           $contactID, $contributionType,
-          $pending, TRUE
+          $pending, TRUE,
+          $isTest,
+          $lineItems
         );
       }
       $form->postProcessPremium($premiumParams, $contribution);
index c41c6aa3d7b58d32240e1c954ea701355335b35b..e2623bfc340229fc5c8cfd3089f1d4b267043371 100644 (file)
@@ -1419,7 +1419,7 @@ class CRM_Contribute_Form_Contribution extends CRM_Contribute_Form_AbstractEditP
         unset($submittedValues[$key]);
       }
     }
-
+    $isTest = ($this->_mode == 'test') ? 1 : 0;
     // CRM-12680 set $_lineItem if its not set
     if (empty($this->_lineItem) && !empty($lineItem)) {
       $this->_lineItem = $lineItem;
@@ -1562,7 +1562,9 @@ class CRM_Contribute_Form_Contribution extends CRM_Contribute_Form_AbstractEditP
         $this->_contactID,
         $contributionType,
         TRUE,
-        FALSE
+        FALSE,
+        $isTest,
+        $this->_lineItem
       );
       $paymentParams['contributionID'] = $contribution->id;
       $paymentParams['contributionTypeID'] = $contribution->financial_type_id;
@@ -1654,7 +1656,9 @@ class CRM_Contribute_Form_Contribution extends CRM_Contribute_Form_AbstractEditP
         $result,
         $this->_contactID,
         $contributionType,
-        FALSE, FALSE
+        FALSE, FALSE,
+        $isTest,
+        $this->_lineItem
       );
     }
 
index 67287c1d4db414fa697a78f6b7ca29c95e4c5e18..771c0275d807fdd39b229e31b4c1ecb2dacde368 100644 (file)
@@ -1199,7 +1199,9 @@ class CRM_Contribute_Form_Contribution_Confirm extends CRM_Contribute_Form_Contr
     $contactID,
     $financialType,
     $pending,
-    $online
+    $online,
+    $isTest,
+    $lineItems
   ) {
     $transaction = new CRM_Core_Transaction();
     $recurringContributionID =  $contribSoftContactId = $addressID = NULL;
index de4711a1ec494b9f3bf0ccfd61fa6f12e273c405..b8039c242223dd6e7620e8b19566fd5a1f3dbbca 100644 (file)
@@ -1300,7 +1300,7 @@ AND civicrm_membership.is_test = %2";
 
     $memBlockDetails = CRM_Member_BAO_Membership::getMembershipBlock($form->_id);
     if ($isProcessSeparateMembershipTransaction) {
-      $form->_lineItem = $form->_memLineItem;
+      $lineItems = $form->_lineItem = $form->_memLineItem;
       $contributionType = new CRM_Financial_DAO_FinancialType( );
       $contributionType->id = CRM_Utils_Array::value('financial_type_id', $membershipDetails);
       if (!$contributionType->find(TRUE)) {
@@ -1358,7 +1358,9 @@ AND civicrm_membership.is_test = %2";
           $contactID,
           $contributionType,
           $pending,
-          TRUE
+          TRUE,
+          $isTest,
+          $lineItems
         );
       }
     }
index 8969f4cf3d14e9dbd740c92ee3e2aeaf398ad502..81dc6d4e4578b21e91e8a0a71d8cb667cd208655 100644 (file)
@@ -1091,6 +1091,9 @@ WHERE   id IN ( ' . implode(' , ', array_keys($membershipType)) . ' )';
       return;
     }
 
+    $isTest = ($this->_mode == 'test') ? 1 : 0;
+    $lineItems = $this->_lineItem;
+
     $config = CRM_Core_Config::singleton();
     // get the submitted form values.
     $this->_params = $formValues = $this->controller->exportValues($this->_name);
@@ -1447,7 +1450,9 @@ WHERE   id IN ( ' . implode(' , ', array_keys($membershipType)) . ' )';
           $this->_contributorContactID,
           $contributionType,
           TRUE,
-          FALSE
+          FALSE,
+          $isTest,
+          $lineItems
         );
 
         //create new soft-credit record, CRM-13981