From 0743661ea5832bf115dbf6b723904de28ae0f83f Mon Sep 17 00:00:00 2001 From: martinlanghoff Date: Fri, 19 Jan 2007 08:36:02 +0000 Subject: [PATCH] mnet: it is $USER->mnet_foreign_host_array instead of $SESSION->mnet_foreign_host_array. $SESSION is fraught with peril as it persists acros logins/logouts --- auth/mnet/auth.php | 6 ++++-- auth/mnet/land.php | 4 ++++ blocks/course_list/block_course_list.php | 6 +++--- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/auth/mnet/auth.php b/auth/mnet/auth.php index a862cda2f7a..9bb79b6727d 100644 --- a/auth/mnet/auth.php +++ b/auth/mnet/auth.php @@ -343,14 +343,16 @@ class auth_plugin_mnet } if($key == 'myhosts') { - $SESSION->mnet_foreign_host_array = array(); + $localuser->mnet_foreign_host_array = array(); foreach($val as $somecourse) { $name = clean_param($somecourse['name'], PARAM_ALPHANUM); $url = clean_param($somecourse['url'], PARAM_URL); $count = clean_param($somecourse['count'], PARAM_INT); $url_is_local = stristr($url , $CFG->wwwroot); if (!empty($name) && !empty($count) && empty($url_is_local)) { - $SESSION->mnet_foreign_host_array[] = array('name' => $name, 'url' => $url, 'count' => $count); + $localuser->mnet_foreign_host_array[] = array('name' => $name, + 'url' => $url, + 'count' => $count); } } } diff --git a/auth/mnet/land.php b/auth/mnet/land.php index 4c58f2e3300..e03f4a96c9d 100644 --- a/auth/mnet/land.php +++ b/auth/mnet/land.php @@ -33,6 +33,10 @@ $CFG->auth = 'mnet'; $USER = get_complete_user_data('id', $localuser->id, $localuser->mnethostid); load_all_capabilities(); +if (!empty($localuser->mnet_foreign_host_array)) { + $USER->mnet_foreign_host_array = $localuser->mnet_foreign_host_array; +} + // redirect redirect($CFG->wwwroot . $wantsurl); diff --git a/blocks/course_list/block_course_list.php b/blocks/course_list/block_course_list.php index 4e802e0deb5..3b71c692a81 100644 --- a/blocks/course_list/block_course_list.php +++ b/blocks/course_list/block_course_list.php @@ -102,7 +102,7 @@ class block_course_list extends block_list { } function get_remote_courses() { - global $THEME, $CFG, $USER, $SESSION; + global $THEME, $CFG, $USER; $icon = ''.get_string('course').''; // only for logged in users! @@ -111,10 +111,10 @@ class block_course_list extends block_list { } if ($USER->mnethostid != $CFG->mnet_localhost_id) { - if (!empty($SESSION->mnet_foreign_host_array) && is_array($SESSION->mnet_foreign_host_array)) { + if (!empty($USER->mnet_foreign_host_array) && is_array($USER->mnet_foreign_host_array)) { $this->content->items[] = get_string('remotemoodles','mnet'); $this->content->icons[] = ''; - foreach($SESSION->mnet_foreign_host_array as $somehost) { + foreach($USER->mnet_foreign_host_array as $somehost) { $this->content->items[] = $somehost['count'].get_string('courseson','mnet').''.$somehost['name'].''; $this->content->icons[] = $icon; }