$code) { if (in_array($code, $available_langs)) { return $code; } } return null; } /** * Get a language variable in a specific language */ function custompages_get_lang($variable) { return get_lang($variable, null, $_SESSION['user_language_choice']); } $available_langs = array('en', 'fr', 'es', 'gl', 'eu'); $chamilo_langs = array( null => 'english', 'en' => 'english', 'fr' => 'french', 'nl' => 'dutch', 'de' => 'german', 'es' => 'spanish', 'gl' => 'galician', 'eu' => 'basque' ); $lang_match = $chamilo_langs[get_preferred_language($available_langs)]; // recover previous value ... if (isset($_SESSION['user_language_choice'])) $lang_match = $_SESSION['user_language_choice']; // Chamilo parameter, on logout if (isset($_REQUEST['language']) && !empty($_REQUEST['language']) && in_array($_REQUEST['language'], $chamilo_langs)) { $lang_match = $_REQUEST['language']; } // Incoming link parameter if (isset($_REQUEST['lang']) && !empty($_REQUEST['lang']) && in_array($_REQUEST['lang'], $available_langs)) { $lang_match = $chamilo_langs[$_REQUEST['lang']]; } $detect = api_get_setting('auto_detect_language_custom_pages'); if ($detect === 'true') { // Auto detect $_user['language'] = $lang_match; $_SESSION['user_language_choice'] = $lang_match; } else { // Chamilo default platform. $defaultLanguage = api_get_interface_language(); $_user['language'] = $defaultLanguage; $_SESSION['user_language_choice'] = $defaultLanguage; }