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'])); } } } static public function _flags() { global $user, $template, $conf; $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')); foreach ($available_lang as $code => $displayname) { $qlc = array ( 'url' => add_url_params(duplicate_index_url(), array('lang'=> $code)), 'alt' => ucwords($displayname), 'title' => substr($displayname, 0, -4), // remove [FR] or [RU] 'img' => get_root_url().'language/'.$code.'/'.$code.'.jpg', ); $lsw['flags'][$code] = $qlc ; if ($code == $user['language']) { $lsw['Active'] = $qlc; } } $template->set_filename('language_flags', dirname(__FILE__) . '/flags.tpl'); $lsw['side'] = ceil(sqrt(count($available_lang))); $template->assign( array( 'lang_switch'=> $lsw, 'LANGUAGE_SWITCH_PATH' => LANGUAGE_SWITCH_PATH, ) ); $flags = $template->parse('language_flags',true); $template->clear_assign('lang_switch'); $template->concat( 'PLUGIN_INDEX_ACTIONS', $flags); } } /* {html_head} usage function */ /* See flags.tpl for example (due no catenation available) */ if (!function_exists('Componant_exists')) { function Componant_exists($path, $file) { return file_exists( $path . $file); } } ?>