CRM-21190 - Warning error on Thankyou page on pay later membership priceset
authorJitendra Purohit <jitendra@fuzion.co.nz>
Fri, 15 Sep 2017 14:14:02 +0000 (19:44 +0530)
committerJitendra Purohit <jitendra@fuzion.co.nz>
Thu, 23 Nov 2017 07:58:04 +0000 (13:28 +0530)
CRM/Contribute/Form/Contribution/ThankYou.php
CRM/Contribute/Form/ContributionBase.php

index ab41d6d2031d50495a16b3ad38c1e6cb7e8ad71d..1a696dc25713629085785ddfc869aa2f5b09b01f 100644 (file)
@@ -54,6 +54,7 @@ class CRM_Contribute_Form_Contribution_ThankYou extends CRM_Contribute_Form_Cont
 
     $this->_params = $this->get('params');
     $this->_lineItem = $this->get('lineItem');
+    $this->_useForMember = $this->get('useForMember');
     $is_deductible = $this->get('is_deductible');
     $this->assign('is_deductible', $is_deductible);
     $this->assign('thankyou_title', CRM_Utils_Array::value('thankyou_title', $this->_values));
index 216c8149e25292794bb5b1ec5d836c92669a4506..3328b284f456191dd67a34b1664e06f983892ae9 100644 (file)
@@ -1084,7 +1084,7 @@ class CRM_Contribute_Form_ContributionBase extends CRM_Core_Form {
    * @param bool $isContributionMainPage
    *   Is this the main page? If so add form input fields.
    *   (or better yet don't have this functionality in a function shared with forms that don't share it).
-   * @param int $selectedMembershipTypeID
+   * @param int|array $selectedMembershipTypeID
    *   Selected membership id.
    * @param bool $thankPage
    *   Thank you page.
@@ -1240,7 +1240,9 @@ class CRM_Contribute_Form_ContributionBase extends CRM_Core_Form {
 
       // Assign autorenew option (0:hide,1:optional,2:required) so we can use it in confirmation etc.
       $autoRenewOption = CRM_Price_BAO_PriceSet::checkAutoRenewForPriceSet($this->_priceSetId);
-      if (isset($membershipTypeValues[$selectedMembershipTypeID]['auto_renew'])) {
+      //$selectedMembershipTypeID is retrieved as an array for membership priceset if multiple
+      //options for different organisation is selected on the contribution page.
+      if (is_numeric($selectedMembershipTypeID) && isset($membershipTypeValues[$selectedMembershipTypeID]['auto_renew'])) {
         $this->assign('autoRenewOption', $membershipTypeValues[$selectedMembershipTypeID]['auto_renew']);
       }
       else {