/** * Export in CSV the datas builded from SQL queries * @return String $content the CSV content */ public function exportCSV() { $this->stats_formatter->clearContent(); $this->stats_formatter->addLine(array_values($this->title)); foreach ($this->datas as $value) { $this->stats_formatter->addLine(array_values($value)); } return $this->stats_formatter->getCsvContent(); }
public function itExportsMultipleTimes() { $data_line = array('Data', 'Data', 'Data'); $statistics_formatter = new Statistics_Formatter('', '', ','); $statistics_formatter->addLine($data_line); $this->assertEqual($statistics_formatter->getCsvContent(), PHP_EOL . 'Data,Data,Data' . PHP_EOL); $this->assertEqual($statistics_formatter->getCsvContent(), PHP_EOL . 'Data,Data,Data' . PHP_EOL); $statistics_formatter->addLine($data_line); $this->assertEqual($statistics_formatter->getCsvContent(), PHP_EOL . 'Data,Data,Data' . PHP_EOL . 'Data,Data,Data' . PHP_EOL); }
/** * Retrieve logged pushes statistics for CSV export * * @param Statistics_Formatter $formatter instance of statistics formatter class * * @return Void */ private function retrieveLoggedPushesStatistics(Statistics_Formatter $formatter) { $gitIndex[] = $GLOBALS['Language']->getText('plugin_statistics', 'scm_month'); $gitPushes[] = $GLOBALS['Language']->getText('plugin_statistics', 'scm_git_total_pushes'); $gitCommits[] = $GLOBALS['Language']->getText('plugin_statistics', 'scm_git_total_commits'); $gitUsers[] = $GLOBALS['Language']->getText('plugin_statistics', 'scm_git_users'); $gitRepo[] = $GLOBALS['Language']->getText('plugin_statistics', 'scm_git_repositories'); $gitLogDao = new Git_LogDao(); $dar = $gitLogDao->totalPushes($formatter->startDate, $formatter->endDate, $formatter->groupId); if ($dar && !$dar->isError() && $dar->rowCount() > 0) { foreach ($dar as $row) { $gitIndex[] = $row['month'] . " " . $row['year']; $gitPushes[] = intval($row['pushes_count']); $gitCommits[] = intval($row['commits_count']); $gitUsers[] = intval($row['users']); $gitRepo[] = intval($row['repositories']); } $formatter->addLine($gitIndex); $formatter->addLine($gitPushes); $formatter->addLine($gitCommits); $formatter->addLine($gitUsers); $formatter->addLine($gitRepo); } }
/** * Constructor of the class * * @param String $scm 'svn' or 'cvs' * @param String $startDate Period start date * @param String $endDate Period end date * @param Integer $groupId Project Id * * @return void */ function __construct($scm, $startDate, $endDate, $groupId = null) { $this->scm = $scm; parent::__construct($startDate, $endDate, get_csv_separator(), $groupId); }