From 5a2bca2113255afccab306786c4e7c2353cd4de0 Mon Sep 17 00:00:00 2001 From: Jaap Jansma <jaap.jansma@civicoop.org> Date: Mon, 8 Apr 2019 12:02:21 +0200 Subject: [PATCH] added mimetype --- CRM/DataprocessorOutputExport/CSV.php | 9 +++++++++ CRM/DataprocessorOutputExport/Page/Download.php | 2 +- Civi/DataProcessor/Output/ExportOutputInterface.php | 7 +++++++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/CRM/DataprocessorOutputExport/CSV.php b/CRM/DataprocessorOutputExport/CSV.php index 0f80a188..e6c02662 100644 --- a/CRM/DataprocessorOutputExport/CSV.php +++ b/CRM/DataprocessorOutputExport/CSV.php @@ -24,6 +24,15 @@ class CRM_DataprocessorOutputExport_CSV implements ExportOutputInterface { return false; } + /** + * Returns the mime type of the export file. + * + * @return string + */ + public function mimeType() { + return 'text/csv'; + } + /** * Returns the url for the page/form this output will show to the user * diff --git a/CRM/DataprocessorOutputExport/Page/Download.php b/CRM/DataprocessorOutputExport/Page/Download.php index f8948138..e08f91bb 100644 --- a/CRM/DataprocessorOutputExport/Page/Download.php +++ b/CRM/DataprocessorOutputExport/Page/Download.php @@ -42,7 +42,7 @@ class CRM_DataprocessorOutputExport_Page_Download extends CRM_Core_Page { $path = CRM_Core_Config::singleton()->templateCompileDir . $directory. $fileName; - $mimeType = CRM_Utils_Request::retrieveValue('mime-type', 'String', '', FALSE); + $mimeType = $outputClass->mimeType(); if (!$path) { CRM_Core_Error::statusBounce('Could not retrieve the file'); diff --git a/Civi/DataProcessor/Output/ExportOutputInterface.php b/Civi/DataProcessor/Output/ExportOutputInterface.php index 17f3dbfd..6f7dac9e 100644 --- a/Civi/DataProcessor/Output/ExportOutputInterface.php +++ b/Civi/DataProcessor/Output/ExportOutputInterface.php @@ -26,6 +26,13 @@ interface ExportOutputInterface extends OutputInterface { */ public function downloadExport(\Civi\DataProcessor\ProcessorType\AbstractProcessorType $dataProcessor, $dataProcessorBAO, $outputBAO, $formValues); + /** + * Returns the mime type of the export file. + * + * @return string + */ + public function mimeType(); + /** * Returns the url for the page/form this output will show to the user * -- GitLab