а я хотел даже новую тему делать, а тут уже народ интересуется. сделано на куках.
Цитата: И к тебе заходят из всего мира?
например у меня. поэтому и сделал. если для разработчиков покажется полезным, прошу оптимизировать код и выложить здесь же.
common.php - где нить в конце
CODE: if ((!$exbb['reged']) && ($_COOKIE['noreglang'] != '')) {include('./language/' . change_lang($_COOKIE['noreglang']) . '/lang.php');}
lib.php - тупо в лоб.
CODE:function change_lang($ll) {
global $exbb;
if ($ll)
{
$exbb['default_lang']='russian';
if ($ll == 'russian') {$exbb['default_lang']='russian';}
if ($ll == 'english') {$exbb['default_lang']='english';}
return $exbb['default_lang'];
}
}
например в logos.tpl
CODE:$langs_select_ = '';
if (!$exbb['reged'])
{
$temp_ar = array();
$dirtoopen = $exbb['home_path'].'language';
if ( !($temp_ar = get_dir($dirtoopen,'*',GLOB_ONLYDIR) ) ) {
$handle = opendir($dirtoopen);
while (($file = @readdir($handle))!==false) {
if (is_dir($exbb['home_path'].'language/'.$file) && $file != '.' && $file != '..') {
$temp_ar[] = $file;
}
}
closedir($handle);
}
$langs_select_ = <<<DATA
<script LANGUAGE="JavaScript">
<!--
function menu1(){
var URL = "index.php";
var today = new Date()
var expires = new Date()
expires.setTime(today.getTime() + 60*60*24*365)
document.cookie = "noreglang=" + escape(document.flangs.chlang.options[document.flangs.chlang.selectedIndex].value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString()))
top.location.href = URL; target = "_self";
}
// -->
</SCRIPT>
<form method="post" action="index.php" name="flangs">
<select name="chlang" onchange="menu1()">
<option value="" selected="selected">---</option>
DATA;
foreach ( $temp_ar as $ln ) {
$selected = ( $ln == $temp_def ) ? ' selected="selected"' : '';
$langs_select_ .= '<option value="' . trim($ln) . '"' . $selected . '>' . ucfirst ($ln) . '</option>';
}
$langs_select_ .= '</select></form>';
}
|