MDL-15894 - move data_export_* functions to mod/data/lib.php for re-use

This commit is contained in:
mjollnir_
2008-07-31 12:21:25 +00:00
parent 035fa24b6a
commit 209881523a
2 changed files with 76 additions and 78 deletions
+2 -78
View File
@@ -114,81 +114,5 @@ switch ($formdata['exporttype']) {
break;
}
function data_export_csv($export, $delimiter_name, $dataname, $count) {
$delimiter = csv_import_reader::get_delimiter($delimiter_name);
$filename = clean_filename("${dataname}-${count}_record");
if ($count > 1) {
$filename .= 's';
}
$filename .= clean_filename('-' . gmdate("Ymd_Hi"));
$filename .= clean_filename("-${delimiter_name}_separated");
$filename .= '.csv';
header("Content-Type: application/download\n");
header("Content-Disposition: attachment; filename=$filename");
header('Expires: 0');
header('Cache-Control: must-revalidate,post-check=0,pre-check=0');
header('Pragma: public');
$encdelim = '&#' . ord($delimiter) . ';';
foreach($export as $row) {
foreach($row as $key => $column) {
$row[$key] = str_replace($delimiter, $encdelim, $column);
}
echo implode($delimiter, $row) . "\n";
}
die;
}
function data_export_xls($export, $dataname, $count) {
global $CFG;
require_once("$CFG->libdir/excellib.class.php");
$filename = clean_filename("${dataname}-${count}_record");
if ($count > 1) {
$filename .= 's';
}
$filename .= clean_filename('-' . gmdate("Ymd_Hi"));
$filename .= '.xls';
$workbook = new MoodleExcelWorkbook('-');
$workbook->send($filename);
$worksheet = array();
$worksheet[0] =& $workbook->add_worksheet('');
$rowno = 0;
foreach ($export as $row) {
$colno = 0;
foreach($row as $col) {
$worksheet[0]->write($rowno, $colno, $col);
$colno++;
}
$rowno++;
}
$workbook->close();
die;
}
function data_export_ods($export, $dataname, $count) {
global $CFG;
require_once("$CFG->libdir/odslib.class.php");
$filename = clean_filename("${dataname}-${count}_record");
if ($count > 1) {
$filename .= 's';
}
$filename .= clean_filename('-' . gmdate("Ymd_Hi"));
$filename .= '.ods';
$workbook = new MoodleODSWorkbook('-');
$workbook->send($filename);
$worksheet = array();
$worksheet[0] =& $workbook->add_worksheet('');
$rowno = 0;
foreach ($export as $row) {
$colno = 0;
foreach($row as $col) {
$worksheet[0]->write($rowno, $colno, $col);
$colno++;
}
$rowno++;
}
$workbook->close();
die;
}
die();
?>