MDL-39876 update_course_record function to update global COURSE

This commit is contained in:
sam marshall
2013-08-15 11:31:21 +01:00
parent ab7632b74c
commit c290ac5510
9 changed files with 49 additions and 41 deletions
+10 -13
View File
@@ -3576,7 +3576,7 @@ class admin_setting_sitesetselect extends admin_setting_configselect {
* @return string empty or error message
*/
public function write_setting($data) {
global $DB, $SITE, $COURSE;
global $SITE, $COURSE;
if (!in_array($data, array_keys($this->choices))) {
return get_string('errorsetting', 'admin');
}
@@ -3587,17 +3587,16 @@ class admin_setting_sitesetselect extends admin_setting_configselect {
$record->timemodified = time();
course_get_format($SITE)->update_course_format_options($record);
$DB->update_record('course', $record);
update_course_record($record);
// Reset caches.
$SITE = $DB->get_record('course', array('id'=>$SITE->id), '*', MUST_EXIST);
$SITE = get_course($SITE->id);
if ($SITE->id == $COURSE->id) {
$COURSE = $SITE;
}
format_base::reset_course_cache($SITE->id);
return '';
}
}
@@ -3779,22 +3778,21 @@ class admin_setting_sitesetcheckbox extends admin_setting_configcheckbox {
* @return string empty string or error message
*/
public function write_setting($data) {
global $DB, $SITE, $COURSE;
global $SITE, $COURSE;
$record = new stdClass();
$record->id = $SITE->id;
$record->{$this->name} = ($data == '1' ? 1 : 0);
$record->timemodified = time();
course_get_format($SITE)->update_course_format_options($record);
$DB->update_record('course', $record);
update_course_record($record);
// Reset caches.
$SITE = $DB->get_record('course', array('id'=>$SITE->id), '*', MUST_EXIST);
$SITE = get_course($SITE->id);
if ($SITE->id == $COURSE->id) {
$COURSE = $SITE;
}
format_base::reset_course_cache($SITE->id);
return '';
}
}
@@ -3841,7 +3839,7 @@ class admin_setting_sitesettext extends admin_setting_configtext {
* @return string empty or error message
*/
public function write_setting($data) {
global $DB, $SITE, $COURSE;
global $SITE, $COURSE;
$data = trim($data);
$validated = $this->validate($data);
if ($validated !== true) {
@@ -3854,15 +3852,14 @@ class admin_setting_sitesettext extends admin_setting_configtext {
$record->timemodified = time();
course_get_format($SITE)->update_course_format_options($record);
$DB->update_record('course', $record);
update_course_record($record);
// Reset caches.
$SITE = $DB->get_record('course', array('id'=>$SITE->id), '*', MUST_EXIST);
$SITE = get_course($SITE->id);
if ($SITE->id == $COURSE->id) {
$COURSE = $SITE;
}
format_base::reset_course_cache($SITE->id);
return '';
}
}
@@ -3905,7 +3902,7 @@ class admin_setting_special_frontpagedesc extends admin_setting {
$record->timemodified = time();
course_get_format($SITE)->update_course_format_options($record);
$DB->update_record('course', $record);
update_course_record($record);
// Reset caches.
$SITE = $DB->get_record('course', array('id'=>$SITE->id), '*', MUST_EXIST);