diff --git a/lib/excellib.class.php b/lib/excellib.class.php index 03c5cfdbf47..5140b943e92 100644 --- a/lib/excellib.class.php +++ b/lib/excellib.class.php @@ -197,6 +197,23 @@ class MoodleExcelWorksheet { $this->pear_excel_worksheet->writeUrl($row, $col, $url, $format); } + /** + * Write one date somewhere in the worksheet + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param string $date The date to write in UNIX timestamp format + * @param mixed $format The XF format for the cell + */ + function write_date($row, $col, $date, $format=null) { + /// Calculate the internal PEAR format + $format = $this->MoodleExcelFormat2PearExcelFormat($format); + /// Convert the date to Excel format + $timezone = get_user_timezone_offset(); + $value = ((usertime($date) + (int)($timezone * HOURSECS * 2)) / 86400) + 25569; + /// Add the date safely to the PEAR Worksheet + $this->pear_excel_worksheet->writeNumber($row, $col, $value, $format); + } + /** * Write one formula somewhere in the worksheet *