From 1673e13423460a1e04c31707c3dfa338d44fb42b Mon Sep 17 00:00:00 2001 From: donal72 Date: Tue, 2 Oct 2007 16:14:39 +0000 Subject: [PATCH] Choose the correct theme for SSO-authenticated users. Roaming themes --- lib/weblib.php | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/lib/weblib.php b/lib/weblib.php index 46dc072553..1cec341490 100644 --- a/lib/weblib.php +++ b/lib/weblib.php @@ -2707,6 +2707,12 @@ function current_theme() { $themeorder = $CFG->themeorder; } + if ($USER->mnethostid != $CFG->mnet_localhost_id) { + require_once($CFG->dirroot.'/mnet/peer.php'); + $mnet_peer = new mnet_peer(); + $mnet_peer->set_id($USER->mnethostid); + } + $theme = ''; foreach ($themeorder as $themetype) { @@ -2744,11 +2750,19 @@ function current_theme() { break; case 'user': if (!empty($CFG->allowuserthemes) and !empty($USER->theme)) { - $theme = $USER->theme; + if ($USER->mnethostid != $CFG->mnet_localhost_id && $mnet_peer->force_theme == 1 && $mnet_peer->theme != '') { + $theme = $mnet_peer->theme; + } else { + $theme = $USER->theme; + } } break; case 'site': - $theme = $CFG->theme; + if ($USER->mnethostid != $CFG->mnet_localhost_id && $mnet_peer->force_theme == 1 && $mnet_peer->theme != '') { + $theme = $mnet_peer->theme; + } else { + $theme = $CFG->theme; + } break; default: /// do nothing -- 2.39.5