/** * Function to retrieve contact mailings */ public static function getContactMailings() { $contactID = CRM_Utils_Type::escape($_GET['contact_id'], 'Integer'); $sortMapper = array(0 => 'subject', 1 => 'creator_name', 2 => '', 3 => 'start_date', 4 => '', 5 => 'links'); $sEcho = CRM_Utils_Type::escape($_REQUEST['sEcho'], 'Integer'); $offset = isset($_REQUEST['iDisplayStart']) ? CRM_Utils_Type::escape($_REQUEST['iDisplayStart'], 'Integer') : 0; $rowCount = isset($_REQUEST['iDisplayLength']) ? CRM_Utils_Type::escape($_REQUEST['iDisplayLength'], 'Integer') : 25; $sort = isset($_REQUEST['iSortCol_0']) ? CRM_Utils_Array::value(CRM_Utils_Type::escape($_REQUEST['iSortCol_0'], 'Integer'), $sortMapper) : NULL; $sortOrder = isset($_REQUEST['sSortDir_0']) ? CRM_Utils_Type::escape($_REQUEST['sSortDir_0'], 'String') : 'asc'; $params = $_POST; if ($sort && $sortOrder) { $params['sortBy'] = $sort . ' ' . $sortOrder; } $params['page'] = $offset / $rowCount + 1; $params['rp'] = $rowCount; $params['contact_id'] = $contactID; $params['context'] = $context; // get the contact mailings $mailings = CRM_Mailing_BAO_Mailing::getContactMailingSelector($params); $iFilteredTotal = $iTotal = $params['total']; $selectorElements = array('subject', 'mailing_creator', 'recipients', 'start_date', 'openstats', 'links'); header('Content-Type: application/json'); echo CRM_Utils_JSON::encodeDataTableSelector($mailings, $sEcho, $iTotal, $iFilteredTotal, $selectorElements); CRM_Utils_System::civiExit(); }
/** * Retrieve contact mailings. */ public static function getContactMailings() { $params = CRM_Core_Page_AJAX::defaultSortAndPagerParams(); $params += CRM_Core_Page_AJAX::validateParams(array('contact_id' => 'Integer')); // get the contact mailings $mailings = CRM_Mailing_BAO_Mailing::getContactMailingSelector($params); CRM_Utils_JSON::output($mailings); }
/** * Retrieve contact mailings. */ public static function getContactMailings() { $contactID = CRM_Utils_Type::escape($_GET['contact_id'], 'Integer'); $sortMapper = array(); foreach ($_GET['columns'] as $key => $value) { $sortMapper[$key] = $value['data']; } $offset = isset($_GET['start']) ? CRM_Utils_Type::escape($_GET['start'], 'Integer') : 0; $rowCount = isset($_GET['length']) ? CRM_Utils_Type::escape($_GET['length'], 'Integer') : 25; $sort = isset($_GET['order'][0]['column']) ? CRM_Utils_Array::value(CRM_Utils_Type::escape($_GET['order'][0]['column'], 'Integer'), $sortMapper) : NULL; $sortOrder = isset($_GET['order'][0]['dir']) ? CRM_Utils_Type::escape($_GET['order'][0]['dir'], 'String') : 'asc'; $params = $_GET; if ($sort && $sortOrder) { $params['sortBy'] = $sort . ' ' . $sortOrder; } $params['page'] = $offset / $rowCount + 1; $params['rp'] = $rowCount; $params['contact_id'] = $contactID; $params['context'] = $context; // get the contact mailings $mailings = CRM_Mailing_BAO_Mailing::getContactMailingSelector($params); CRM_Utils_JSON::output($mailings); }