// (See above in formRule()). When adding more than one contact, the duplicates are
// removed automatically and the user receives one notification.
if ($this->_action & CRM_Core_Action::ADD) {
- if(!$this->_single && !empty($this->_eventId)) {
+ $event_id = $this->_eventId;
+ if(empty($event_id) && !empty($params['event_id'])) {
+ $event_id = $params['event_id'];
+ }
+ if(!$this->_single && !empty($event_id)) {
$duplicateContacts = 0;
while(list($k,$dupeCheckContactId) = each($this->_contactIds)) {
// Eliminate contacts that have already been assigned to this event.
$dupeCheck = new CRM_Event_BAO_Participant;
$dupeCheck->contact_id = $dupeCheckContactId;
- $dupeCheck->event_id = $this->_eventId;
+ $dupeCheck->event_id = $event_id;
$dupeCheck->find(TRUE);
if(!empty($dupeCheck->id)) {
$duplicateContacts++;
$this->_params['role_id']
);
}
+
+ //CRM-15372 patch to fix fee amount replacing amount
+ $this->_params['fee_amount'] = $this->_params['amount'];
+
$participants[] = CRM_Event_Form_Registration::addParticipant($this, $contactID);
//add custom data for participant
if ($contributionParams['contribution_status_id'] == CRM_Core_OptionGroup::getValue('contribution_status', 'Pending', 'name')) {
$contributionParams['is_pay_later'] = 1;
}
+ elseif ($contributionParams['contribution_status_id'] == CRM_Core_OptionGroup::getValue('contribution_status', 'Completed', 'name')) {
+ $contributionParams['is_pay_later'] = 0;
+ }
if ($params['status_id'] == array_search('Partially paid', $participantStatus)) {
if (!$amountOwed && $this->_action & CRM_Core_Action::UPDATE) {