MDL-56046 core: convert download_as_dataformat to use new API

This commit is contained in:
Mark Nelson
2017-06-26 13:28:02 +08:00
parent b15859b879
commit f72bc10fe3
+14 -2
View File
@@ -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();
}
}