| <?php |
|
|
| |
| |
| |
| |
| |
| |
|
|
| namespace Piwik\ReportRenderer; |
|
|
| use Piwik\DataTable\DataTableInterface; |
| use Piwik\DataTable\Renderer\Csv as CsvDataTableRenderer; |
| use Piwik\Piwik; |
| use Piwik\ReportRenderer; |
|
|
| |
| |
| |
| class Csv extends ReportRenderer |
| { |
| |
| |
| |
| protected $rendered; |
|
|
| |
| |
| |
| |
| |
| |
| public function setLocale($locale) |
| { |
| return; |
| } |
|
|
| |
| |
| |
| |
| |
| |
| public function sendToDisk($filename) |
| { |
| return ReportRenderer::writeFile( |
| $filename, |
| ReportRenderer::CSV_FORMAT, |
| $this->getRenderedReport() |
| ); |
| } |
|
|
| |
| |
| |
| |
| |
| public function sendToBrowserDownload($filename) |
| { |
| ReportRenderer::sendToBrowser( |
| $filename, |
| ReportRenderer::CSV_FORMAT, |
| "text/" . ReportRenderer::CSV_FORMAT, |
| $this->getRenderedReport() |
| ); |
| } |
|
|
| |
| |
| |
| |
| |
| public function sendToBrowserInline($filename) |
| { |
| ReportRenderer::sendToBrowser( |
| $filename, |
| ReportRenderer::CSV_FORMAT, |
| "application/" . ReportRenderer::CSV_FORMAT, |
| $this->getRenderedReport() |
| ); |
| } |
|
|
| |
| |
| |
| public function getRenderedReport() |
| { |
| return $this->rendered; |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| public function renderFrontPage($reportTitle, $prettyDate, $description, $reportMetadata, $segment) |
| { |
| return; |
| } |
|
|
| |
| |
| |
| |
| |
| |
| public function renderReport($processedReport) |
| { |
| $csvRenderer = $this->getRenderer( |
| $processedReport['reportData'], |
| $processedReport['metadata']['uniqueId'] |
| ); |
|
|
| $reportData = $csvRenderer->render($processedReport); |
| if (empty($reportData)) { |
| $reportData = $csvRenderer->formatValue(Piwik::translate('CoreHome_ThereIsNoDataForThisReport')); |
| } |
|
|
| $reportName = $csvRenderer->formatValue($processedReport['metadata']['name']); |
| $this->rendered .= implode( |
| '', |
| array( |
| $reportName, |
| $csvRenderer->lineEnd, |
| $reportData, |
| $csvRenderer->lineEnd, |
| $csvRenderer->lineEnd, |
| ) |
| ); |
| } |
|
|
| |
| |
| |
| |
| protected function getRenderer(DataTableInterface $table, $uniqueId) |
| { |
| $csvRenderer = new CsvDataTableRenderer(); |
| $csvRenderer->setIdSite($this->idSite); |
| $csvRenderer->setTable($table); |
| $csvRenderer->setConvertToUnicode(false); |
| $csvRenderer->setApiMethod( |
| $this->getApiMethodNameFromUniqueId($uniqueId) |
| ); |
|
|
| return $csvRenderer; |
| } |
|
|
| |
| |
| |
| |
| protected function getApiMethodNameFromUniqueId($uniqueId) |
| { |
| return str_replace("_", ".", $uniqueId); |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| public function getAttachments($report, $processedReports, $prettyDate) |
| { |
| return array(); |
| } |
| } |
|
|