function buildChart(&$rows) { $this->_interval = 'events'; $countEvent = NULL; if (CRM_Utils_Array::value('charts', $this->_params)) { foreach ($rows as $key => $value) { if ($value['civicrm_event_id']) { $graphRows['totalParticipants'][] = $rows[$key]['civicrm_line_item_participant_count_count']; $graphRows[$this->_interval][] = substr($rows[$key]['civicrm_event_title'], 0, 12) . "..(" . $rows[$key]['civicrm_event_id'] . ") "; $graphRows['value'][] = $rows[$key]['civicrm_line_item_participant_count_count']; } } if ($rows[$key]['civicrm_line_item_participant_count_count'] == 0) { $countEvent = count($rows); } if (!empty($rows) && $countEvent != 1) { $chartInfo = array('legend' => 'Participants Summary', 'xname' => 'Event', 'yname' => 'Total Participants'); if (!empty($graphRows)) { foreach ($graphRows[$this->_interval] as $key => $val) { $graph[$val] = $graphRows['value'][$key]; } $chartInfo['values'] = $graph; $chartInfo['tip'] = 'Participants : #val#'; $chartInfo['xLabelAngle'] = 20; // build the chart. CRM_Utils_OpenFlashChart::buildChart($chartInfo, $this->_params['charts']); } } } }
/** * @param $rows */ public function buildChart(&$rows) { if (empty($rows)) { return; } $chartInfo = array('legend' => ts('Mail Bounce Report'), 'xname' => ts('Mailing'), 'yname' => ts('Bounce'), 'xLabelAngle' => 20, 'tip' => ts('Mail Bounce: %1', array(1 => '#val#'))); foreach ($rows as $row) { $chartInfo['values'][$row['civicrm_mailing_mailing_name_alias']] = $row['civicrm_mailing_bounce_count']; } // build the chart. CRM_Utils_OpenFlashChart::buildChart($chartInfo, $this->_params['charts']); $this->assign('chartType', $this->_params['charts']); }
/** * @param $rows */ public function buildChart(&$rows) { $this->_interval = 'events'; $countEvent = NULL; if (!empty($this->_params['charts'])) { foreach ($rows as $key => $value) { $graphRows['totalAmount'][] = $graphRows['value'][] = CRM_Utils_Array::value('totalAmount', $rows[$key]); $graphRows[$this->_interval][] = substr($rows[$key]['civicrm_event_title'], 0, 12) . "..(" . $rows[$key]['civicrm_event_id'] . ") "; } if (CRM_Utils_Array::value('totalAmount', $rows[$key]) == 0) { $countEvent = count($rows); } if (!empty($rows) && $countEvent != 1) { $config = CRM_Core_Config::Singleton(); $chartInfo = array('legend' => 'Event Summary', 'xname' => 'Event', 'yname' => "Total Amount ({$config->defaultCurrency})"); if (!empty($graphRows)) { foreach ($graphRows[$this->_interval] as $key => $val) { $graph[$val] = $graphRows['value'][$key]; } $chartInfo['values'] = $graph; $chartInfo['xLabelAngle'] = 20; // build the chart. CRM_Utils_OpenFlashChart::buildChart($chartInfo, $this->_params['charts']); $this->assign('chartType', $this->_params['charts']); } } } }
/** * @param $rows */ public function buildChart(&$rows) { if (empty($rows)) { return; } $criteria = self::getChartCriteria(); $chartInfo = array('legend' => ts('Mail Summary'), 'xname' => ts('Mailing'), 'yname' => ts('Statistics'), 'xLabelAngle' => 20, 'tip' => array()); $plotRate = $plotCount = TRUE; foreach ($rows as $row) { $chartInfo['values'][$row['civicrm_mailing_name']] = array(); if ($plotCount) { foreach ($criteria['count'] as $criteria => $label) { if (isset($row[$criteria])) { $chartInfo['values'][$row['civicrm_mailing_name']][$label] = $row[$criteria]; $chartInfo['tip'][$label] = "{$label} #val#"; $plotRate = FALSE; } elseif (isset($criteria['count'][$criteria])) { unset($criteria['count'][$criteria]); } } } if ($plotRate) { foreach ($criteria['rate'] as $criteria => $label) { if (isset($row[$criteria])) { $chartInfo['values'][$row['civicrm_mailing_name']][$label] = $row[$criteria]; $chartInfo['tip'][$label] = "{$label} #val#"; $plotCount = FALSE; } elseif (isset($criteria['rate'][$criteria])) { unset($criteria['rate'][$criteria]); } } } } if ($plotCount) { $criteria = $criteria['count']; } else { $criteria = $criteria['rate']; } $chartInfo['criteria'] = array_values($criteria); // dynamically set the graph size $chartInfo['xSize'] = count($rows) * 125 + count($rows) * count($criteria) * 40; // build the chart. CRM_Utils_OpenFlashChart::buildChart($chartInfo, $this->_params['charts']); $this->assign('chartType', $this->_params['charts']); }
function buildChart(&$rows) { if (empty($rows)) { return; } $chartInfo = array('legend' => ts('Mail Opened Report'), 'xname' => ts('Mailing'), 'yname' => ts('Opened'), 'xLabelAngle' => 20, 'tip' => ts('Mail Opened: %1', array(1 => '#val#'))); foreach ($rows as $row) { $chartInfo['values'][$row['civicrm_mailing_name']] = $row['civicrm_mailing_opened_count']; } // build the chart. require_once 'CRM/Utils/OpenFlashChart.php'; CRM_Utils_OpenFlashChart::buildChart($chartInfo, $this->_params['charts']); $this->assign('chartType', $this->_params['charts']); }