Mit dem Select Default Language MOD können Gäste via Link recht einfach die Sprache ändern. Dies funktioniert auch einwandfrei und sieht ungefähr so aus:
z.B.:
http://www.website.de/phpbb2/index.php?language=german
http://www.website.de/phpbb2/index.php?language=english
Was muss ich an dem Code von dem MOD ändern, damit auch registrierte Mitglieder die Links nutzen können. Dazu müsste wahrscheinlich die Sprache in der MySQL Datenbank umgeschreiben werden. Wie muss ich das machen?
Viele Grüße
pmw
Quellcode des Select Default Language MODs. (befindet sich in der Datei common.php)
Code: Alles auswählen
// Start add - Select default language MOD
if( !isset($board_config['real_default_lang']) )
{
$board_config['real_default_lang'] = $board_config['default_lang'];
}
$language = ( isset($HTTP_POST_VARS['language']) ) ? $HTTP_POST_VARS['language'] : $HTTP_GET_VARS['language'];
if ($language)
{
$language=trim(strip_tags($language));
$board_config['default_lang'] = $language;
setcookie($board_config['cookie_name'].'_default_lang',$language , (time()+21600), $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
} else
{
if (isset($HTTP_COOKIE_VARS[$board_config['cookie_name'].'_default_lang']) )
{
$board_config['default_lang']=$HTTP_COOKIE_VARS[$board_config['cookie_name'].'_default_lang'];
} else
{
$dir = opendir($phpbb_root_path.'language');
$lang_d = array();
while (false !== ($file = readdir($dir)))
{
if ( ereg("^lang_", $file) && !is_file($dirname . "/" . $file) && !is_link($dirname . "/" . $file) )
{
$filename = trim(str_replace("lang_", "", $file));
$displayname = preg_replace("/^(.*?)_(.*)$/", "\\1 [ \\2 ]", $filename);
$displayname = preg_replace("/\[(.*?)_(.*)\]/", "[ \\1 - \\2 ]", $displayname);
$lang_d[$displayname] = '1';
}
}
closedir($dir);
@asort($lang_d);
@reset($lang_d);
while ( list($displayname, $filename) = @each($lang_d) )
{
if (strpos($displayname,$_SERVER['HTTP_ACCEPT_LANGUAGE'])===0)
{
$language = $displayname;
$board_config['default_lang'] = $language;
break;
}
}
}
}
// End add - Select default language MOD