function JB_cache_del_keys_for_codes($field_id) { if (JB_CACHE_ENABLED == 'NO') { return; } if (JB_CODE_ORDER_BY == 'BY_NAME') { $order_by = 'description'; } else { $order_by = 'code'; } $sql = "SELECT * FROM lang WHERE is_active='Y' "; $result = JB_mysql_query($sql); while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { // for listing the codes jb_cache_delete('codes_list_fid_' . $field_id . '_ord_' . $order_by . '_lang_' . $row['lang_code']); // code name lookup table jb_cache_delete('jb_code_table_fid_' . $field_id . '_lang_' . $row['lang_code']); } }
function JB_init_lang_vars() { //global $jb_mysql_link; global $label; global $AVAILABLE_LANGS; global $ACT_LANG_FILES; // active languages global $LANG_FILES; // all language files global $FCK_LANG_FILES; // FCK editor language global $JB_LANG_THEMES; $AVAILABLE_LANGS = array(); $ACT_LANG_FILES = array(); // active languages $LANG_FILES = array(); // all language files $FCK_LANG_FILES = array(); // FCK editor language $JB_LANG_THEMES = array(); if ($lang_vars = jb_cache_get('lang_vars')) { $AVAILABLE_LANGS = $lang_vars['AVAILABLE_LANGS']; $ACT_LANG_FILES = $lang_vars['ACT_LANG_FILES']; $LANG_FILES = $lang_vars['LANG_FILES']; $FCK_LANG_FILES = $lang_vars['FCK_LANG_FILES']; $JB_LANG_THEMES = $lang_vars['JB_LANG_THEMES']; $lang_vars = null; } else { $sql = "SELECT * FROM lang "; if ($result = jb_mysql_query($sql)) { // load languages into array.. map the language code to the filename // if mapping didn't work, default to english.. while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $lang_code = strtoupper($row['lang_code']); $AVAILABLE_LANGS[$lang_code] = $row['name']; $LANG_FILES[$lang_code] = $row['lang_filename']; $FCK_LANG_FILES[$lang_code] = $row['fckeditor_lang']; if ($row['is_active'] == 'Y') { $ACT_LANG_FILES[$lang_code] = $row['lang_filename']; } $JB_LANG_THEMES[$lang_code] = $row['theme']; } $lang_vars['AVAILABLE_LANGS'] = $AVAILABLE_LANGS; $lang_vars['ACT_LANG_FILES'] = $ACT_LANG_FILES; $lang_vars['LANG_FILES'] = $LANG_FILES; $lang_vars['FCK_LANG_FILES'] = $FCK_LANG_FILES; $lang_vars['JB_LANG_THEMES'] = $JB_LANG_THEMES; jb_cache_add('lang_vars', $lang_vars); } else { $DB_ERROR = mysql_error(); } } if (isset($_REQUEST['jb_theme']) && $_SESSION['ADMIN']) { // do this if the theme is being changed in Admin preg_match('#([a-z0-9_\\-]+)#i', stripslashes($_REQUEST['jb_theme']), $m); $lang = isset($_SESSION['LANG']) ? $_SESSION['LANG'] : 'EN'; $sql = "UPDATE `lang` SET `theme`='" . jb_escape_sql($m[1]) . "' WHERE lang_code='" . jb_escape_sql($lang) . "' "; jb_mysql_query($sql); jb_cache_delete('lang_vars'); } if (!$DB_ERROR) { // the $label array is used to store all the language strings loaded from // the language file. if (!isset($label)) { $label = array(); if (file_exists(dirname(__FILE__) . DIRECTORY_SEPARATOR . $LANG_FILES[$_SESSION["LANG"]])) { // load the currently selected language include dirname(__FILE__) . DIRECTORY_SEPARATOR . $LANG_FILES[$_SESSION["LANG"]]; } else { // default to eng include dirname(__FILE__) . DIRECTORY_SEPARATOR . "english.php"; } } } }