From 665266697dd7a5e031a5b6d78a12d5a5fca98d9b Mon Sep 17 00:00:00 2001 From: Pratik Joshi Date: Wed, 5 Mar 2014 14:14:01 +0530 Subject: [PATCH] CRM-13965-qa-fixes : activity selector links for Payment, Refund, Change Registration types --- CRM/Activity/Selector/Activity.php | 10 ++++++++++ CRM/Contribute/BAO/Contribution.php | 16 ++++------------ CRM/Contribute/Form/AdditionalPayment.php | 1 + 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/CRM/Activity/Selector/Activity.php b/CRM/Activity/Selector/Activity.php index e23498a8fd..a3134346d6 100644 --- a/CRM/Activity/Selector/Activity.php +++ b/CRM/Activity/Selector/Activity.php @@ -128,6 +128,7 @@ class CRM_Activity_Selector_Activity extends CRM_Core_Selector_Base implements C //when activity type is disabled or no more exists give only delete. switch ($activityTypeName) { case 'Event Registration': + case 'Change Registration': $url = 'civicrm/contact/view/participant'; $qsView = "action=view&reset=1&id={$sourceRecordId}&cid=%%cid%%&context=%%cxt%%{$extraParams}"; break; @@ -137,6 +138,15 @@ class CRM_Activity_Selector_Activity extends CRM_Core_Selector_Base implements C $qsView = "action=view&reset=1&id={$sourceRecordId}&cid=%%cid%%&context=%%cxt%%{$extraParams}"; break; + case 'Payment': + case 'Refund': + $participantId = CRM_Core_DAO::getFieldValue('CRM_Event_BAO_ParticipantPayment', $sourceRecordId, 'participant_id', 'contribution_id'); + if (!empty($participantId)) { + $url = 'civicrm/contact/view/participant'; + $qsView = "action=view&reset=1&id={$participantId}&cid=%%cid%%&context=%%cxt%%{$extraParams}"; + } + break; + case 'Membership Signup': case 'Membership Renewal': case 'Change Membership Status': diff --git a/CRM/Contribute/BAO/Contribution.php b/CRM/Contribute/BAO/Contribution.php index 9cf0594ef3..83b8a79f41 100644 --- a/CRM/Contribute/BAO/Contribution.php +++ b/CRM/Contribute/BAO/Contribution.php @@ -3081,28 +3081,20 @@ WHERE eft.financial_trxn_id = {$trxnId} } $activityType = ($paymentType == 'refund') ? 'Refund' : 'Payment'; - // creation of activity - $activity = new CRM_Activity_DAO_Activity(); - $activity->source_record_id = $financialTrxn->id; - $activity->activity_type_id = CRM_Core_OptionGroup::getValue('activity_type', - $activityType, - 'name' - ); - if (!$activity->find(TRUE)) { - self::addActivityForPayment($entityObj, $financialTrxn, $activityType, $component); - } + self::addActivityForPayment($entityObj, $financialTrxn, $activityType, $component, $contributionId); } return $financialTrxn; } - static function addActivityForPayment($entityObj, $trxnObj, $activityType, $component) { + static function addActivityForPayment($entityObj, $trxnObj, $activityType, $component, $contributionId) { if ($component == 'event') { $date = CRM_Utils_Date::isoToMysql($trxnObj->trxn_date); $paymentAmount = CRM_Utils_Money::format($trxnObj->total_amount, $trxnObj->currency); $eventTitle = CRM_Core_DAO::getFieldValue('CRM_Event_BAO_Event', $entityObj->event_id, 'title'); $subject = "{$paymentAmount} - Offline {$activityType} for {$eventTitle}"; $targetCid = $entityObj->contact_id; - $srcRecId = $trxnObj->id; + // source record id would be the contribution id + $srcRecId = $contributionId; } // activity params diff --git a/CRM/Contribute/Form/AdditionalPayment.php b/CRM/Contribute/Form/AdditionalPayment.php index f8a2bf950b..b368ab2708 100644 --- a/CRM/Contribute/Form/AdditionalPayment.php +++ b/CRM/Contribute/Form/AdditionalPayment.php @@ -162,6 +162,7 @@ class CRM_Contribute_Form_AdditionalPayment extends CRM_Contribute_Form_Abstract if ($this->_view == 'transaction' && ($this->_action & CRM_Core_Action::BROWSE)) { return; } + $defaults = array( ); if ($this->_mode) { $defaults = $this->_values; -- 2.25.1