MDL-52354 select_time: Make select_time respect the set calendar type

The select_time method updated to display form elements in accordance
to the calendar type plugin that is in use.
This commit is contained in:
Shamim Rezaie
2015-12-23 09:53:11 +08:00
committed by Jun Pataleta
parent ea3ebbf20e
commit 2c4bac4cd9
2 changed files with 6 additions and 11 deletions
+1 -1
View File
@@ -2208,7 +2208,7 @@ function date_format_string($date, $format, $tz = 99) {
/**
* Given a $time timestamp in GMT (seconds since epoch),
* returns an array that represents the date in user time
* returns an array that represents the Gregorian date in user time
*
* @package core
* @category time
+5 -10
View File
@@ -1386,28 +1386,23 @@ class html_writer {
if (!$currenttime) {
$currenttime = time();
}
$currentdate = usergetdate($currenttime);
$calendartype = \core_calendar\type_factory::get_calendar_instance();
$currentdate = $calendartype->timestamp_to_date_array($currenttime);
$userdatetype = $type;
$timeunits = array();
switch ($type) {
case 'years':
for ($i=1970; $i<=2020; $i++) {
$timeunits[$i] = $i;
}
$timeunits = $calendartype->get_years();
$userdatetype = 'year';
break;
case 'months':
for ($i=1; $i<=12; $i++) {
$timeunits[$i] = userdate(gmmktime(12,0,0,$i,15,2000), "%B");
}
$timeunits = $calendartype->get_months();
$userdatetype = 'month';
$currentdate['month'] = (int)$currentdate['mon'];
break;
case 'days':
for ($i=1; $i<=31; $i++) {
$timeunits[$i] = $i;
}
$timeunits = $calendartype->get_days();
$userdatetype = 'mday';
break;
case 'hours':