fs_languages)) ) { $_GET['lang'] = PHPWG_DEFAULT_LANGUAGE; } if ( !empty($_GET['lang']) and file_exists(PHPWG_ROOT_PATH.'language/'.$_GET['lang'].'/common.lang.php') ) { if ( is_a_guest() or is_generic() ) { pwg_set_session_var('lang_switch', $_GET['lang']); } else { $query = ' UPDATE '.USER_INFOS_TABLE.' SET language = \''.$_GET['lang'].'\' WHERE user_id = '.$user['id'].' ;'; pwg_query($query); } $user['language'] = $_GET['lang']; } } elseif ( (is_a_guest() or is_generic()) ) { $user['language'] = pwg_get_session_var('lang_switch', $user['language']); } // Reload language only if it isn't the same one if ( $same !== $user['language'] ) { load_language('common.lang', '', array('language'=>$user['language'])); load_language( 'lang', PHPWG_ROOT_PATH.PWG_LOCAL_DIR, array( 'language' => $user['language'], 'no_fallback' => true, 'local' => true ) ); if ( defined('IN_ADMIN') and IN_ADMIN ) { // Never currently load_language('admin.lang', '', array('language'=>$user['language'])); } } } function language_controler_flags() { global $user, $template, $conf, $page; $available_lang = get_languages(); if (isset($conf['no_flag_languages'])) { $available_lang = array_diff_key($available_lang, array_flip($conf['no_flag_languages'])); } $url_starting = get_query_string_diff(array('lang')); if (isset($page['section']) and $page['section'] == 'additional_page' and isset($page['additional_page'])) { $base_url = make_index_url(array('section'=>'page')).'/'.(isset($page['additional_page']['permalink']) ? $page['additional_page']['permalink'] : $page['additional_page']['id']); } else { $base_url = duplicate_index_url(); } foreach ($available_lang as $code => $displayname) { $qlc = array ( 'url' => add_url_params($base_url, array('lang'=> $code)), 'alt' => ucwords($displayname), 'title' => substr($displayname, 0, -4), // remove [FR] or [RU] 'code' => $code, ); $lsw['flags'][$code] = $qlc; if ($code == $user['language']) { $lsw['Active'] = $qlc; } } $template->set_filename('language_flags', dirname(__FILE__) . '/flags.tpl'); $template->assign( array( 'lang_switch'=> $lsw, 'LANGUAGE_SWITCH_PATH' => LANGUAGE_SWITCH_PATH, ) ); $template->concat('PLUGIN_INDEX_ACTIONS', $template->parse('language_flags', true) ); $template->clear_assign('lang_switch'); } ?>