function qtranxf_loadConfig() { global $qtranslate_options, $q_config; qtranxf_set_default_options($qtranslate_options); $q_config = array(); qtranxf_load_option_func('default_language'); qtranxf_load_option_array('enabled_languages'); qtranxf_load_option_flag_location('flag_location'); foreach ($qtranslate_options['front']['int'] as $nm => $def) { qtranxf_load_option($nm, $def); } //qtranxf_dbg_log('qtranxf_loadConfig: $q_config[use_strftime]: ',$q_config['use_strftime']); if ($q_config['use_strftime'] != QTX_DATE_WP && qtranxf_windows_os()) { $q_config['use_strftime'] = QTX_DATE_WP; } qtranxf_load_languages_enabled(); foreach ($qtranslate_options['front']['bool'] as $nm => $def) { qtranxf_load_option_bool($nm, $def); } foreach ($qtranslate_options['front']['str'] as $nm => $def) { qtranxf_load_option($nm, $def); } foreach ($qtranslate_options['front']['text'] as $nm => $def) { qtranxf_load_option($nm, $def); } foreach ($qtranslate_options['front']['array'] as $nm => $def) { qtranxf_load_option_array($nm, $def); } qtranxf_load_option_array('term_name', array()); if ($q_config['filter_options_mode'] == QTX_FILTER_OPTIONS_LIST) { qtranxf_load_option_array('filter_options', QTX_FILTER_OPTIONS_DEFAULT); } $url_mode = $q_config['url_mode']; // check for invalid permalink/url mode combinations if (qtranxf_is_permalink_structure_query()) { switch ($url_mode) { case QTX_URL_QUERY: case QTX_URL_DOMAIN: case QTX_URL_DOMAINS: break; default: $q_config['url_mode'] = $url_mode = QTX_URL_QUERY; break; } } switch ($url_mode) { case QTX_URL_DOMAINS: $q_config['domains'] = array(); qtranxf_load_option_array('domains'); //qtranxf_dbg_echo('domains loaded: ',$q_config['domains']); foreach ($q_config['enabled_languages'] as $lang) { if (isset($q_config['domains'][$lang])) { continue; } $homeinfo = qtranxf_get_home_info(); $q_config['domains'][$lang] = $lang . '.' . $homeinfo['host']; } $q_config['disable_client_cookies'] = true; $q_config['hide_default_language'] = false; break; case QTX_URL_QUERY: case QTX_URL_PATH: $q_config['disable_client_cookies'] = false; qtranxf_load_option_bool('disable_client_cookies'); break; case QTX_URL_DOMAIN: default: $q_config['disable_client_cookies'] = true; break; } $ignore_file_types = get_option('qtranslate_ignore_file_types'); $val = explode(',', QTX_IGNORE_FILE_TYPES); if (!empty($ignore_file_types)) { $vals = preg_split('/[\\s,]+/', strtolower($ignore_file_types), null, PREG_SPLIT_NO_EMPTY); foreach ($vals as $v) { if (empty($v)) { continue; } if (in_array($v, $val)) { continue; } $val[] = $v; } } $q_config['ignore_file_types'] = $val; if (empty($q_config['front_config'])) { //todo this should be granulated to load only what is needed require_once QTRANSLATE_DIR . '/admin/qtx_activation_hook.php'; require_once QTRANSLATE_DIR . '/admin/qtx_admin_options_update.php'; qtranxf_update_i18n_config(); } /** * Opportunity to load additional front-end features. */ do_action('qtranslate_loadConfig'); }
function qtranxf_loadConfig() { global $qtranslate_options, $q_config; qtranxf_set_default_options($qtranslate_options); $q_config = array(); qtranxf_load_option_func('default_language'); qtranxf_load_option_array('enabled_languages'); qtranxf_load_option_flag_location('flag_location'); qtranxf_load_languages_enabled(); foreach ($qtranslate_options['front']['int'] as $nm => $def) { qtranxf_load_option($nm, $def); } foreach ($qtranslate_options['front']['bool'] as $nm => $def) { qtranxf_load_option_bool($nm, $def); } foreach ($qtranslate_options['front']['str'] as $nm => $def) { qtranxf_load_option($nm, $def); } foreach ($qtranslate_options['front']['text'] as $nm => $def) { qtranxf_load_option($nm, $def); } foreach ($qtranslate_options['front']['array'] as $nm => $def) { qtranxf_load_option_array($nm, $def); } qtranxf_load_option_array('term_name', array()); if ($q_config['filter_options_mode'] == QTX_FILTER_OPTIONS_LIST) { qtranxf_load_option_array('filter_options', QTX_FILTER_OPTIONS_DEFAULT); } $url_mode = $q_config['url_mode']; // check for invalid permalink/url mode combinations if (qtranxf_is_permalink_structure_query()) { switch ($url_mode) { case QTX_URL_QUERY: case QTX_URL_DOMAIN: case QTX_URL_DOMAINS: break; default: $q_config['url_mode'] = $url_mode = QTX_URL_QUERY; break; } } switch ($url_mode) { case QTX_URL_DOMAINS: $q_config['domains'] = array(); qtranxf_load_option_array('domains'); //qtranxf_dbg_echo('domains loaded: ',$q_config['domains']); foreach ($q_config['enabled_languages'] as $lang) { if (isset($q_config['domains'][$lang])) { continue; } $homeinfo = qtranxf_get_home_info(); $q_config['domains'][$lang] = $lang . '.' . $homeinfo['host']; } $q_config['disable_client_cookies'] = true; $q_config['hide_default_language'] = false; break; case QTX_URL_QUERY: case QTX_URL_PATH: $q_config['disable_client_cookies'] = false; qtranxf_load_option_bool('disable_client_cookies'); break; case QTX_URL_DOMAIN: default: $q_config['disable_client_cookies'] = true; break; } $ignore_file_types = get_option('qtranslate_ignore_file_types'); $val = explode(',', QTX_IGNORE_FILE_TYPES); if (!empty($ignore_file_types)) { $vals = preg_split('/[\\s,]+/', strtolower($ignore_file_types), null, PREG_SPLIT_NO_EMPTY); foreach ($vals as $v) { if (empty($v)) { continue; } if (in_array($v, $val)) { continue; } $val[] = $v; } } $q_config['ignore_file_types'] = $val; do_action('qtranslate_loadConfig'); }