Layout improvements
[fa-stable.git] / install / isession.inc
index bf04551bfa7f3209947c9f0ae52761b5603b8675..e4d915388aeabd4414b8520b681d1bdad0f8c1f3 100644 (file)
@@ -65,24 +65,44 @@ session_start();
 header("Cache-control: private");
 
 include_once($path_to_root . "/config.default.php");
+
+$inst_langs = array(
+  'C' => array ( 'name' => 'English',  'code' => 'C',          'encoding' => 'iso-8859-1'),
+  'ar_EG' => array ( 'name' => 'Arabic',       'code' => 'ar_EG',      'encoding' => 'utf-8', 'rtl' => true),
+  'da_DK' => array ( 'name' => 'Dansk',        'code' => 'da_DK',      'encoding' => 'iso-8859-1'),
+  'de_DE' => array ( 'name' => 'Deutsch',      'code' => 'de_DE',      'encoding' => 'iso-8859-1'),
+  'el_GR' => array ( 'name' => 'Greek',        'code' => 'el_GR',      'encoding' => 'utf-8'),
+  'fr_FR' => array ( 'name' => 'Français',     'code' => 'fr_FR',      'encoding' => 'iso-8859-1'),
+  'id_ID' => array ( 'name' => 'Indonesian','code' => 'id_ID', 'encoding' => 'iso-8859-1'),
+  'nl_BE' => array ( 'name' => 'Nederlands','code' => 'nl_BE', 'encoding' => 'iso-8859-1'),
+  'pl_PL' => array ( 'name' => 'Polski',       'code' => 'pl_PL',      'encoding' => 'iso-8859-2'),
+  'pt_BR' => array ( 'name' => 'Português','code' => 'pt_BR',  'encoding' => 'iso-8859-1'),
+  'sv_SE' => array ( 'name' => 'Svenska',      'code' => 'sv_SE',      'encoding' => 'iso-8859-1'),
+  'zh_CN' => array ( 'name' => 'Chinese Simplifed',    'code' => 'zh_CN',      'encoding' => 'utf-8'),
+);
+
+$Ajax = new Ajax();
+
 get_text_init();
 
+$i_lang = isset($_POST['inst_lang']) ? $_POST['inst_lang'] : 
+       (isset($_SESSION['inst_set']['inst_lang']) ? $_SESSION['inst_set']['inst_lang'] : 'C');
+
 // Page Initialisation
-if (!isset($_SESSION['language']) || !method_exists($_SESSION['language'], 'set_language')) 
+if (!isset($_SESSION['language']) || !method_exists($_SESSION['language'], 'set_language')
+       || $_SESSION['language']->code != $i_lang) 
 {
-       $l = array_search_value($dflt_lang, $installed_languages,  'code');
+       $l = array_search_value($i_lang, $inst_langs,  'code');
        $_SESSION['language'] = new language($l['name'], $l['code'], $l['encoding'],
         isset($l['rtl']) ? 'rtl' : 'ltr');
 }
 
 $_SESSION['language']->set_language($_SESSION['language']->code);
+$_SESSION['get_text']->add_domain( $_SESSION['language']->code, $path_to_root."/install/lang");
 
 include_once($path_to_root . "/version.php");
 include_once($path_to_root . "/includes/main.inc");
 
-// Ajax communication object
-$Ajax = new Ajax();
-
 // js/php validation rules container
 $Validate = array();
 // bindings for editors
@@ -90,6 +110,8 @@ $Editors = array();
 // page help. Currently help for function keys.
 $Pagehelp = array();
 
+//$Ajax = new Ajax();
+
 // intercept all output to destroy it in case of ajax call
 register_shutdown_function('end_flush');
 ob_start('output_html',0);
@@ -106,4 +128,4 @@ $SysPrefs = &$_SESSION['SysPrefs'];
 // We quote all values later with db_escape() before db update.
        $_POST = strip_quotes($_POST);
 
-?>
\ No newline at end of file
+?>