/** * returns the column headers as an array of tuples: * (name, sortName (key to the sort array)) * * @param string $action the action being performed * @param enum $output what should the result set include (web/email/csv) * * @return array the column headers that need to be displayed * @access public */ function &getColumnHeaders($action = null, $output = null) { require_once 'CRM/Mailing/BAO/Mailing.php'; require_once 'CRM/Mailing/BAO/Job.php'; $mailing = CRM_Mailing_BAO_Mailing::getTableName(); $job = CRM_Mailing_BAO_Job::getTableName(); if (!isset(self::$_columnHeaders)) { self::$_columnHeaders = array(array('name' => ts('Mailing Name'), 'sort' => 'name', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Status'), 'sort' => 'status', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Created By'), 'sort' => 'created_by', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Sent By'), 'sort' => 'scheduled_by', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Scheduled'), 'sort' => 'scheduled_date', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Started'), 'sort' => 'start_date', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Completed'), 'sort' => 'end_date', 'direction' => CRM_Utils_Sort::DESCENDING)); if ($output != CRM_Core_Selector_Controller::EXPORT) { self::$_columnHeaders[] = array('name' => ts('Action')); } } return self::$_columnHeaders; }
/** * Returns the column headers as an array of tuples: * (name, sortName (key to the sort array)) * * @param string $action * The action being performed. * @param string $output * What should the result set include (web/email/csv). * * @return array * the column headers that need to be displayed */ public function &getColumnHeaders($action = NULL, $output = NULL) { $mailing = CRM_Mailing_BAO_Mailing::getTableName(); $job = CRM_Mailing_BAO_MailingJob::getTableName(); if (!isset(self::$_columnHeaders)) { $completedOrder = NULL; // Set different default sort depending on type of mailings (CRM-7652) $unscheduledOrder = $scheduledOrder = $archivedOrder = CRM_Utils_Sort::DONTCARE; if ($this->_parent->get('unscheduled')) { $unscheduledOrder = CRM_Utils_Sort::DESCENDING; } elseif ($this->_parent->get('scheduled')) { $scheduledOrder = CRM_Utils_Sort::DESCENDING; } else { // sort by completed date for archived and undefined get $completedOrder = CRM_Utils_Sort::DESCENDING; } $nameHeaderLabel = $this->_parent->get('sms') ? ts('SMS Name') : ts('Mailing Name'); self::$_columnHeaders = array(array('name' => $nameHeaderLabel, 'sort' => 'name', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Status'), 'sort' => 'status', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Created By'), 'sort' => 'created_by', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Created Date'), 'sort' => 'created_date', 'direction' => $unscheduledOrder), array('name' => ts('Sent By'), 'sort' => 'scheduled_by', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Scheduled'), 'sort' => 'scheduled_date', 'direction' => $scheduledOrder), array('name' => ts('Started'), 'sort' => 'start_date', 'direction' => CRM_Utils_Sort::DONTCARE), array('name' => ts('Completed'), 'sort' => 'end_date', 'direction' => $completedOrder)); if (CRM_Campaign_BAO_Campaign::isCampaignEnable()) { self::$_columnHeaders[] = array('name' => ts('Campaign'), 'sort' => 'campaign_id', 'direction' => CRM_Utils_Sort::DONTCARE); } if ($output != CRM_Core_Selector_Controller::EXPORT) { self::$_columnHeaders[] = array('name' => ts('Action')); } } return self::$_columnHeaders; }