$id = CRM_Core_Session::getLoggedInContactID();
if ($id) {
$activityParams['source_contact_id'] = $id;
+ $activityParams['target_contact_id'][] = $activity->contact_id;
}
// CRM-14945
}
//CRM-4027
if ($targetContactID) {
- $activityParams['target_contact_id'] = $targetContactID;
+ $activityParams['target_contact_id'][] = $targetContactID;
}
// @todo - use api - remove lots of wrangling above. Remove deprecated fatal & let form layer
// deal with any exceptions.
public function testCompleteTransactionWithParticipantRecord() {
$mut = new CiviMailUtils($this, TRUE);
$mut->clearMessages();
- $this->createLoggedInUser();
+ $this->_individualId = $this->createLoggedInUser();
$contributionID = $this->createPendingParticipantContribution();
$this->callAPISuccess('contribution', 'completetransaction', array(
'id' => $contributionID,
'return' => 'participant_status_id',
));
$this->assertEquals(1, $participantStatus);
+
+ //Assert only three activities are created.
+ $activities = CRM_Activity_BAO_Activity::getContactActivity($this->_individualId);
+ $this->assertEquals(3, count($activities));
+ $activityNames = array_count_values(CRM_Utils_Array::collect('activity_name', $activities));
+ $this->assertEquals(2, $activityNames['Event Registration']);
+ $this->assertEquals(1, $activityNames['Contribution']);
+
$mut->checkMailLog(array(
'Annual CiviCRM meet',
'Event',
*/
public function createPendingParticipantContribution() {
$event = $this->eventCreate(array('is_email_confirm' => 1, 'confirm_from_email' => 'test@civicrm.org'));
- $participantID = $this->participantCreate(array('event_id' => $event['id'], 'status_id' => 6));
+ $participantID = $this->participantCreate(array('event_id' => $event['id'], 'status_id' => 6, 'contact_id' => $this->_individualId));
$this->_ids['participant'] = $participantID;
- $params = array_merge($this->_params, array('contribution_status_id' => 2, 'financial_type_id' => 'Event Fee'));
+ $params = array_merge($this->_params, array('contact_id' => $this->_individualId, 'contribution_status_id' => 2, 'financial_type_id' => 'Event Fee'));
$contribution = $this->callAPISuccess('contribution', 'create', $params);
$this->callAPISuccess('participant_payment', 'create', array(
'contribution_id' => $contribution['id'],