$limit, 'case_type' => trim(CRM_Utils_Array::value(1, $criteria)), 'sort_name' => trim(CRM_Utils_Array::value(0, $criteria)), ); $excludeCaseIds = array(); if ($caseIdStr = CRM_Utils_Array::value('excludeCaseIds', $_GET)) { $excludeIdStr = CRM_Utils_Type::escape($caseIdStr, 'String'); $excludeCaseIds = explode(',', $excludeIdStr); } $unclosedCases = CRM_Case_BAO_Case::getUnclosedCases($params, $excludeCaseIds); foreach ($unclosedCases as $caseId => $details) { echo $details['sort_name'] . ' (' . $details['case_type'] . ': ' . $details['case_subject'] . ') ' . "|$caseId|" . $details['contact_id'] . '|' . $details['case_type'] . '|' . $details['sort_name'] . "\n"; } CRM_Utils_System::civiExit(); } function processCaseTags() { $caseId = CRM_Utils_Type::escape($_POST['case_id'], 'Integer'); $tags = CRM_Utils_Type::escape($_POST['tag'], 'String'); if (empty($caseId)) { echo 'false'; CRM_Utils_System::civiExit(); } $tagIds = array(); if ($tags) { $tagIds = explode(',', $tags); } $params = array( 'entity_id' => $caseId, 'entity_table' => 'civicrm_case', ); CRM_Core_BAO_EntityTag::del($params); foreach ($tagIds as $tagid) { if (is_numeric($tagid)) { $params['tag_id'] = $tagid; CRM_Core_BAO_EntityTag::add($params); } } $session = CRM_Core_Session::singleton(); $activityParams = array(); $activityParams['source_contact_id'] = $session->get('userID'); $activityParams['activity_type_id'] = CRM_Core_OptionGroup::getValue('activity_type', 'Change Case Tags', 'name'); $activityParams['activity_date_time'] = date('YmdHis'); $activityParams['status_id'] = CRM_Core_OptionGroup::getValue('activity_status', 'Completed', 'name'); $activityParams['case_id'] = $caseId; $activityParams['is_auto'] = 0; $activityParams['subject'] = 'Change Case Tags'; $activity = CRM_Activity_BAO_Activity::create($activityParams); $caseParams = array( 'activity_id' => $activity->id, 'case_id' => $caseId, ); CRM_Case_BAO_Case::processCaseActivity($caseParams); echo 'true'; CRM_Utils_System::civiExit(); } function caseDetails() { $caseId = CRM_Utils_Type::escape($_GET['caseId'], 'Integer'); $sql = "SELECT * FROM civicrm_case where id = %1"; $dao = CRM_Core_DAO::executeQuery($sql, array(1 => array($caseId, 'Integer'))); if ($dao->fetch()) { $caseType = CRM_Case_BAO_Case::getCaseType((str_replace(CRM_Core_DAO::VALUE_SEPARATOR, "", $dao->case_type_id ))); $caseStatuses = CRM_Case_PseudoConstant::caseStatus(); $cs = $caseStatuses[$dao->status_id]; $caseDetails = "" . CRM_Utils_Date::customFormat($dao->end_date) . "
" . ts('Case Subject') . "{$dao->subject}
" . ts('Case Type') . "{$caseType}
" . ts('Case Status') . "{$cs}
" . ts('Case Start Date') . "" . CRM_Utils_Date::customFormat($dao->start_date) . "
" . ts('Case End Date') . "
"; echo $caseDetails; } else { echo ts('Could not find valid Case!'); } CRM_Utils_System::civiExit(); } function addClient() { $caseId = CRM_Utils_Type::escape($_POST['caseID'], 'Integer'); $contactId = CRM_Utils_Type::escape($_POST['contactID'], 'Integer'); $params = array( 'case_id' => $caseId, 'contact_id' => $contactId, ); CRM_Case_BAO_Case::addCaseToContact($params); // add case relationships CRM_Case_BAO_Case::addCaseRelationships($caseId, $contactId); $session = CRM_Core_Session::singleton(); $activityParams = array(); $activityParams['source_contact_id'] = $session->get('userID'); $activityParams['activity_type_id'] = CRM_Core_OptionGroup::getValue('activity_type', 'Add Client To Case', 'name'); $activityParams['activity_date_time'] = date('YmdHis'); $activityParams['status_id'] = CRM_Core_OptionGroup::getValue('activity_status', 'Completed', 'name'); $activityParams['case_id'] = $caseId; $activityParams['is_auto'] = 0; $activityParams['subject'] = 'Client Added To Case'; $activity = CRM_Activity_BAO_Activity::create($activityParams); $caseParams = array( 'activity_id' => $activity->id, 'case_id' => $caseId, ); CRM_Case_BAO_Case::processCaseActivity($caseParams); echo json_encode(TRUE); CRM_Utils_System::civiExit(); } }