From f72bc10fe3f7c8ac67e577f09c22c8514cee3dae Mon Sep 17 00:00:00 2001 From: Mark Nelson Date: Wed, 24 May 2017 23:12:31 +0800 Subject: [PATCH] MDL-56046 core: convert download_as_dataformat to use new API --- lib/dataformatlib.php | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/lib/dataformatlib.php b/lib/dataformatlib.php index 36b51731002..52fff60139e 100644 --- a/lib/dataformatlib.php +++ b/lib/dataformatlib.php @@ -56,7 +56,13 @@ function download_as_dataformat($filename, $dataformat, $columns, $iterator, $ca $format->set_filename($filename); $format->send_http_headers(); - $format->write_header($columns); + // This exists to support all dataformats - see MDL-56046. + if (method_exists($format, 'write_header')) { + $format->write_header($columns); + } else { + $format->start_output(); + $format->start_sheet($columns); + } $c = 0; foreach ($iterator as $row) { if ($callback) { @@ -67,6 +73,12 @@ function download_as_dataformat($filename, $dataformat, $columns, $iterator, $ca } $format->write_record($row, $c++); } - $format->write_footer($columns); + // This exists to support all dataformats - see MDL-56046. + if (method_exists($format, 'write_footer')) { + $format->write_footer($columns); + } else { + $format->close_sheet($columns); + $format->close_output(); + } }