<?php require_once '../civicrm.config.php'; require_once 'CRM/Core/Config.php'; require_once 'CRM/Core/Error.php'; require_once 'CRM/Utils/Array.php'; $config =& CRM_Core_Config::singleton(); $queue_id = CRM_Utils_Array::value('q', $_GET); if (!$queue_id) { echo "Missing input parameters\n"; exit; } require_once 'CRM/Mailing/Event/BAO/Opened.php'; CRM_Mailing_Event_BAO_Opened::open($queue_id); $filename = "../i/tracker.gif"; header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Content-Description: File Transfer'); header('Content-type: image/gif'); header('Content-Length: ' . filesize($filename)); header('Content-Disposition: inline; filename=tracker.gif'); readfile($filename); exit;
/** * Handle an open event. * * @param array $params * * @return array */ function civicrm_api3_mailing_event_open($params) { civicrm_api3_verify_mandatory($params, 'CRM_Mailing_Event_DAO_Opened', array('event_queue_id'), FALSE); $queue = $params['event_queue_id']; $success = CRM_Mailing_Event_BAO_Opened::open($queue); if (!$success) { return civicrm_api3_create_error('mailing open event failed'); } return civicrm_api3_create_success($params); }
/** * Handle an open event * * @param array $params * * @return array */ function civicrm_mailer_event_open($params) { $errors = _civicrm_mailer_check_params($params, array('event_queue_id')); if (!empty($errors)) { return $errors; } $queue = $params['event_queue_id']; $success = CRM_Mailing_Event_BAO_Opened::open($queue); if (!$success) { return civicrm_create_error(ts('mailer open event failed')); } return civicrm_create_success(); }