$whereClause = ' AND ( activity.status_id IN ( ' . implode(',', array_values($statusIds)) . ' ) )';
}
- if (!$interviewerId) {
- $session = CRM_Core_Session::singleton();
- $interviewerId = $session->get('userID');
- }
-
$targetContactIds = ' ( ' . implode(',', $voterIds) . ' ) ';
$activityContacts = CRM_Core_OptionGroup::values('activity_contacts', FALSE, FALSE, FALSE, NULL, 'name');
$assigneeID = CRM_Utils_Array::key('Activity Assignees', $activityContacts);
$targetID = CRM_Utils_Array::key('Activity Targets', $activityContacts);
+ $params[1] = array($surveyId, 'Integer');
$query = "
SELECT activity.id, activity.status_id,
activityTarget.contact_id as voter_id,
INNER JOIN civicrm_activity_contact activityAssignment
ON ( activityAssignment.activity_id = activity.id AND activityAssignment.record_type_id = $assigneeID )
WHERE activity.source_record_id = %1
- AND ( activity.is_deleted IS NULL OR activity.is_deleted = 0 )
- AND activityAssignment.contact_id = %2
- AND activityTarget.contact_id IN {$targetContactIds}
+ AND ( activity.is_deleted IS NULL OR activity.is_deleted = 0 ) ";
+ if(!empty($interviewerId)) {
+ $query .= "AND activityAssignment.contact_id = %2 ";
+ $params[2] = array($interviewerId, 'Integer');
+ }
+ $query .= "AND activityTarget.contact_id IN {$targetContactIds}
$whereClause";
-
- $activity = CRM_Core_DAO::executeQuery($query, array(1 => array($surveyId, 'Integer'),
- 2 => array($interviewerId, 'Integer'),
- ));
+ $activity = CRM_Core_DAO::executeQuery($query, $params);
while ($activity->fetch()) {
$activityDetails[$activity->voter_id] = array(
'voter_id' => $activity->voter_id,
function formatParams() {
$interviewerId = CRM_Utils_Array::value('survey_interviewer_id', $this->_formValues);
- if (!$interviewerId) {
- $session = CRM_Core_Session::singleton();
- $this->_formValues['survey_interviewer_id'] = $interviewerId = $session->get('userID');
- }
- $this->set('interviewerId', $interviewerId);
- if (!CRM_Utils_Array::value('survey_interviewer_name', $this->_formValues)) {
- $this->_formValues['survey_interviewer_name'] = CRM_Core_DAO::getFieldValue('CRM_Contact_DAO_Contact',
- $interviewerId,
- 'sort_name',
- 'id'
- );
+ if ($interviewerId) {
+ $this->set('interviewerId', $interviewerId);
+ if (!CRM_Utils_Array::value('survey_interviewer_name', $this->_formValues)) {
+ $this->_formValues['survey_interviewer_name'] = CRM_Core_DAO::getFieldValue('CRM_Contact_DAO_Contact',
+ $interviewerId,
+ 'sort_name',
+ 'id'
+ );
+ }
}
//format multi-select group and contact types.