hmm...
der ablauf ist in der front_content.php sowieso etwas seltsam...
client und lang werden erst dann registriert wenn die werte client und lang nicht gesetzt sind...
ganz korrekt wäre es die werte zu registrieren wenn sie in der session nicht registriert sind !
und registriert werden müssen beide werte !
da ist ja noch ein netter bug vorhanden im sql statement... -> wenn load_lang nicht gesetzt ist, liefert das sql statement kein ergebnis -> auch nicht schlecht...
ich würd den teil in der front_content.php wie folgt definieren... (ist jetzt nicht von mir getestet)
Code: Alles auswählen
// Change language
if (isset($changelang)) $lang = $changelang;
// Change client
if (isset($changeclient)){
$client = $changeclient;
unset($lang);
}
// Initialize client
if (!isset($client)) {
//load_client defined in frontend/config.php
$client = $load_client;
}
// Initialize language
if (!isset($lang)) {
//if there is an entry load_lang in frontend/config.php use it, else use the first language of this client
if(isset($load_lang)){
//load_client is set in frontend/config.php
$lang = $load_lang;
}else{
$sql = "SELECT
B.idlang
FROM
".$cfg["tab"]["clients_lang"]." AS A,
".$cfg["tab"]["lang"]." AS B
WHERE
A.idclient='$client' AND
A.idlang = B.idlang AND
B.active='1'
LIMIT
0,1";
$db->query($sql);
$db->next_record();
$lang = $db->f("idlang");
}
}
if (!$sess->is_registered("lang") ) $sess->register("lang");
if (!$sess->is_registered("client") ) $sess->register("client");