From b95233e1e185c7dd3f4a732a7cdb7b2a34c9dade Mon Sep 17 00:00:00 2001 From: moodler Date: Wed, 11 Jul 2007 09:07:34 +0000 Subject: [PATCH] CHecked in a fix to make get_list_of_timezones calls more efficient MDL-8451 --- admin/settings/location.php | 1 - lib/moodlelib.php | 6 ++++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/admin/settings/location.php b/admin/settings/location.php index cc5607a87c2..2ec09bc2bc9 100644 --- a/admin/settings/location.php +++ b/admin/settings/location.php @@ -5,7 +5,6 @@ $temp = new admin_settingpage('locationsettings', get_string('locationsettings', $options = get_list_of_timezones(); $options[99] = get_string('serverlocaltime'); $temp->add(new admin_setting_configselect('timezone', get_string('timezone','admin'), get_string('configtimezone', 'admin'), 99, $options)); -$options = get_list_of_timezones(); $options[99] = get_string('timezonenotforced', 'admin'); $temp->add(new admin_setting_configselect('forcetimezone', get_string('forcetimezone', 'admin'), get_string('helpforcetimezone', 'admin'), 99, $options)); $options = get_list_of_countries(); diff --git a/lib/moodlelib.php b/lib/moodlelib.php index e37a6e0603b..ab77ea4a294 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -4809,6 +4809,12 @@ function get_list_of_pixnames($lang = '') { function get_list_of_timezones() { global $CFG; + static $timezones; + + if (!empty($timezones)) { // This function has been called recently + return $timezones; + } + $timezones = array(); if ($rawtimezones = get_records_sql('SELECT MAX(id), name FROM '.$CFG->prefix.'timezone GROUP BY name')) {