function use_language_of_visitor() { if (!lcm_set_language_from_browser()) { use_language_of_site(); } if (isset($GLOBALS['author_session']['lang'])) { lcm_set_language($GLOBALS['author_session']['lang']); } if (isset($_COOKIE['lcm_lang'])) { lcm_set_language($_COOKIE['lcm_lang']); } }
} $prefs = $row_author['prefs'] ? unserialize($row_author['prefs']) : array(); $prefs['cnx'] = $session_remember == 'yes' ? 'perma' : ''; lcm_query("UPDATE lcm_author \n\t\t\t\tSET prefs = '" . addslashes(serialize($prefs)) . "' \n\t\t\t\tWHERE id_author = " . $row_author['id_author']); } // Change the language of the private area (or login) // [ML] I once wanted to put this in a function, and it did a hell // of a mess because of the session handling stuff.. if (isset($_REQUEST['var_lang_lcm'])) { // ex: bg, fr, en, en_uk, etc. nothing else is accepted if (preg_match("/^[_A-Za-z]+[0-9]*\$/", $_REQUEST['var_lang_lcm'])) { include_lcm('inc_lang'); include_lcm('inc_session'); $new_lang = clean_input($_REQUEST['var_lang_lcm']); $valid_author = verifier_visiteur(); if (lcm_set_language($new_lang)) { lcm_setcookie('lcm_lang', $new_lang, time() + 365 * 24 * 3600); // Save language preference only if we are installed and if author connected if ($valid_author && include_config_exists('inc_connect')) { include_lcm('inc_admin'); lcm_query("UPDATE lcm_author \n\t\t\t\t\t\tSET lang = '" . $new_lang . "' \n\t\t\t\t\t\tWHERE id_author = " . $GLOBALS['author_session']['id_author']); $author_session['lang'] = $new_lang; lcm_add_session($author_session, $_COOKIE['lcm_session']); } else { lcm_log("Not valid_author ({$valid_author}) or not yet installed"); } $cible->delvar('lang'); $cible->addvar('lang', $new_lang); } else { lcm_log("lcm_set_language() is not happy, wrong lang code?"); }