From 627bdaf170a90fadbcf4449b78bf0316d9086f7a Mon Sep 17 00:00:00 2001 From: Edsel Date: Thu, 1 Sep 2016 17:42:37 +0530 Subject: [PATCH] CRM-19153 Bug fixes ---------------------------------------- * CRM-19153: Future pledge start date causes improper future pledge payment dates https://issues.civicrm.org/jira/browse/CRM-19153 --- CRM/Contribute/BAO/Contribution/Utils.php | 2 +- CRM/Contribute/Form/Contribution/Confirm.php | 6 +++++- CRM/Pledge/BAO/PledgeBlock.php | 1 - 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CRM/Contribute/BAO/Contribution/Utils.php b/CRM/Contribute/BAO/Contribution/Utils.php index 1e2ae8207f58..738113db6d49 100644 --- a/CRM/Contribute/BAO/Contribution/Utils.php +++ b/CRM/Contribute/BAO/Contribution/Utils.php @@ -138,7 +138,7 @@ public static function processConfirm( $paymentParams['source'] = $paymentParams['contribution_source']; } - if ($form->_params['is_recur'] && $contribution->contribution_recur_id) { + if (CRM_Utils_Array::value('is_recur', $form->_params) && $contribution->contribution_recur_id) { $paymentParams['contributionRecurID'] = $contribution->contribution_recur_id; } if (isset($paymentParams['contribution_source'])) { diff --git a/CRM/Contribute/Form/Contribution/Confirm.php b/CRM/Contribute/Form/Contribution/Confirm.php index 42ed6a9b0082..66d7bdc5a3b9 100644 --- a/CRM/Contribute/Form/Contribution/Confirm.php +++ b/CRM/Contribute/Form/Contribution/Confirm.php @@ -1854,7 +1854,7 @@ public static function submit($params) { $form->_fields['billing_first_name'] = 1; $form->_fields['billing_last_name'] = 1; // CRM-18854 - Set form values to allow pledge to be created for api test. - if (CRM_Utils_Array::value('pledge_block_id', $params)) { + if (CRM_Utils_Array::value('pledge_block_id', $params) && !CRM_Utils_Array::value('pledge_id', $params)) { $form->_values['pledge_block_id'] = $params['pledge_block_id']; $pledgeBlock = CRM_Pledge_BAO_PledgeBlock::getPledgeBlock($params['id']); $form->_values['max_reminders'] = $pledgeBlock['max_reminders']; @@ -1862,6 +1862,10 @@ public static function submit($params) { $form->_values['additional_reminder_day'] = $pledgeBlock['additional_reminder_day']; $form->_values['is_email_receipt'] = FALSE; } + if (CRM_Utils_Array::value('pledge_id', $params) && CRM_Utils_Array::value('pledge_block_id', $params)) { + $form->_values['pledge_id'] = $params['pledge_id']; + $form->_values['pledge_block_id'] = $params['pledge_block_id']; + } $priceSetID = $form->_params['priceSetId'] = $paramsProcessedForForm['price_set_id']; $priceFields = CRM_Price_BAO_PriceSet::getSetDetail($priceSetID); $priceSetFields = reset($priceFields); diff --git a/CRM/Pledge/BAO/PledgeBlock.php b/CRM/Pledge/BAO/PledgeBlock.php index 1419c4734173..85cc23a44853 100644 --- a/CRM/Pledge/BAO/PledgeBlock.php +++ b/CRM/Pledge/BAO/PledgeBlock.php @@ -202,7 +202,6 @@ public static function buildPledgeBlock($form) { 'scheduled_date', 'scheduled_amount', 'currency', - 'pledge_start_date', ); CRM_Core_DAO::commonRetrieveAll('CRM_Pledge_DAO_PledgePayment', 'pledge_id', $form->_values['pledge_id'], $allPayments, $returnProperties