From 7127b69c9eefcd8230385a293836ebf1713737c8 Mon Sep 17 00:00:00 2001 From: Alok Patel Date: Thu, 30 Nov 2017 11:21:08 +0530 Subject: [PATCH] CRM-21457: Setting receipt date to current date when requesting a receipt to be emailed on Credit card contribution form. --- CRM/Contribute/Form/Contribution/Confirm.php | 5 +++++ tests/phpunit/CRM/Contribute/Form/ContributionTest.php | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/CRM/Contribute/Form/Contribution/Confirm.php b/CRM/Contribute/Form/Contribution/Confirm.php index a870b97f2d..4ce49709af 100644 --- a/CRM/Contribute/Form/Contribution/Confirm.php +++ b/CRM/Contribute/Form/Contribution/Confirm.php @@ -191,6 +191,11 @@ class CRM_Contribute_Form_Contribution_Confirm extends CRM_Contribute_Form_Contr if ($paymentProcessorOutcome) { $contributionParams['payment_processor'] = CRM_Utils_Array::value('payment_processor', $paymentProcessorOutcome); } + if (!empty($params["is_email_receipt"])) { + $contributionParams += array( + 'receipt_date' => $receiptDate, + ); + } if (!$pending && $paymentProcessorOutcome) { $contributionParams += array( 'fee_amount' => CRM_Utils_Array::value('fee_amount', $paymentProcessorOutcome), diff --git a/tests/phpunit/CRM/Contribute/Form/ContributionTest.php b/tests/phpunit/CRM/Contribute/Form/ContributionTest.php index 77547e14f5..97e0322391 100644 --- a/tests/phpunit/CRM/Contribute/Form/ContributionTest.php +++ b/tests/phpunit/CRM/Contribute/Form/ContributionTest.php @@ -232,14 +232,18 @@ class CRM_Contribute_Form_ContributionTest extends CiviUnitTestCase { $error = TRUE; } - $this->callAPISuccessGetCount('Contribution', array( + $contribution = $this->callAPISuccess('Contribution', 'get', array( 'contact_id' => $this->_individualId, 'contribution_status_id' => $error ? 'Failed' : 'Completed', 'payment_instrument_id' => $this->callAPISuccessGetValue('PaymentProcessor', array( 'return' => 'payment_instrument_id', 'id' => $paymentProcessorID, )), - ), 1); + )); + + $this->assertEquals(1, $contribution["count"], "Contribution count should be one."); + $this->assertTrue(!empty($contribution["values"][$contribution["id"]]["receipt_date"]), "Receipt date should not be blank."); + $contact = $this->callAPISuccessGetSingle('Contact', array('id' => $this->_individualId)); $this->assertTrue(empty($contact['source'])); if (!$error) { -- 2.25.1