language settings. This should fix documentation display, but also will
be how setting registration languages and login languages works
optional_variable($lang, ""); // override current language
if (!empty($lang)) {
- $SESSION->doclang = $lang;
+ $SESSION->lang = $lang;
save_session("SESSION");
}
require("../config.php");
- if (!empty($SESSION->doclang)) {
- $currlang = $SESSION->doclang;
- } else {
- $currlang = current_language();
- }
+ $currlang = current_language();
$langs = get_list_of_languages();
$langmenu = popup_form ("$CFG->wwwroot/doc/?lang=", $langs, "chooselang", $currlang, "", "", "", true);
function current_language() {
/// Returns the code for the current language
- global $CFG, $USER;
+ global $CFG, $USER, $SESSION;
- if (isset($USER->lang)) { // User language can override site language
+ if (isset($SESSION->lang)) { // Session language can override other settings
+ return $SESSION->lang;
+
+ } else if (isset($USER->lang)) { // User language can override site language
return $USER->lang;
+
} else {
return $CFG->lang;
}