Exemple #1
0
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']);
    }
}
Exemple #2
0
    }
    $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?");
        }