*/
static public function render()
{
+ global $prefs, $registry, $session;
+
$html = '';
- if (!$GLOBALS['prefs']->isLocked('language')) {
- $_SESSION['horde_language'] = $GLOBALS['registry']->preferredLang();
+ if (!$prefs->isLocked('language')) {
+ $session['horde:language'] = $registry->preferredLang();
$html = sprintf('<form name="language" action="%s">',
- Horde::url($GLOBALS['registry']->get('webroot', 'horde') . '/services/language.php', false, -1));
+ Horde::url($registry->get('webroot', 'horde') . '/services/language.php', false, -1));
$html .= '<input type="hidden" name="url" value="' . @htmlspecialchars(Horde::selfUrl(false, false, true)) . '" />';
$html .= '<select name="new_lang" onchange="document.language.submit()">';
- foreach ($GLOBALS['registry']->nlsconfig['languages'] as $key => $val) {
- $sel = ($key == $_SESSION['horde_language']) ? ' selected="selected"' : '';
+ foreach ($registry->nlsconfig['languages'] as $key => $val) {
+ $sel = ($key == $session['horde:language']) ? ' selected="selected"' : '';
$html .= "<option value=\"$key\"$sel>$val</option>";
}
$html .= '</select></form>';
} elseif (!empty($lang) && $this->isValidLang($lang)) {
$language = $lang;
/* Check if we have a language set in the session */
- } elseif (isset($_SESSION['horde_language'])) {
- $language = $_SESSION['horde_language'];
+ } elseif (isset($GLOBALS['session']['horde:language'])) {
+ $language = $GLOBALS['session']['horde:language'];
/* Use site-wide default, if one is defined */
} elseif (!empty($this->nlsconfig['defaults']['language'])) {
$language = $this->nlsconfig['defaults']['language'];
$lang = $this->preferredLang();
}
- $_SESSION['horde_language'] = $lang;
+ $GLOBALS['session']['horde:language'] = $lang;
if (isset($GLOBALS['language'])) {
if ($GLOBALS['language'] == $lang) {
/* Build the <select> widget containing the available languages. */
if (!$is_auth && !$prefs->isLocked('language')) {
- $_SESSION['horde_language'] = $registry->preferredLang($vars->new_lang);
+ $session['horde:language'] = $registry->preferredLang($vars->new_lang);
$langs = array();
foreach ($registry->nlsconfig['languages'] as $key => $val) {
$langs[] = array(
- 'sel' => ($key == $_SESSION['horde_language']),
+ 'sel' => ($key == $session['horde:language']),
'val' => $key,
// Language names are already encoded.
'name' => $val
Horde_Registry::appInit('horde');
/* Set the language. */
-$_SESSION['horde_language'] = $registry->preferredLanguage(Horde_Util::getForm('new_lang'));
-$prefs->setValue('language', $_SESSION['horde_language']);
+$session['horde:language'] = $registry->preferredLanguage(Horde_Util::getForm('new_lang'));
+$prefs->setValue('language', $sessoin['horde:language']);
/* Update apps language */
foreach ($registry->listApps() as $app) {