improved language detection using browser information; set the language directly...
[e-DoKo.git] / index.php
index bbdfeb2654e8c09df856b60cbb00084fefafe876..2a55ed833adbe0faf7ce11b28b1c5681e2949cd0 100644 (file)
--- a/index.php
+++ b/index.php
@@ -51,33 +51,28 @@ if($DBopen<0)
     exit();
   }
 
-/* localization */
+/**** localization ****/
 /* needs to be in front of output_header, but we don't know the users preferences at this time,
  * so we go by the session variable or if language is set
  */
-if(myisset('language') || isset($_SESSION['language']))
-  {
-    $language = 'en';
-
-    if(myisset('language'))
-      $language = $_REQUEST['language'];
-    else if(isset($_SESSION['language']))
-      $language = $_SESSION['language'];
-
-    switch($language)
-      {
-      case 'de':
-       putenv("LC_ALL=de_DE");
-       setlocale(LC_ALL, "de_DE");
-       // Specify location of translation tables
-       bindtextdomain("edoko", "./locale");
-       // Choose domain
-       textdomain("edoko");
-       break;
-      default:
-       /* do nothing */
-      }
-  }
+/* set default */
+$language =  detectlanguage();
+
+/* check if default in array of supported languages, else default to english */
+$supported_languages = array ('en','de');
+
+if ( !in_array($language, $supported_languages) )
+   $language = 'en';
+
+/* override with explicit request from user */
+if(myisset('language'))
+  $language = $_REQUEST['language'];
+else if(isset($_SESSION['language']))
+  $language = $_SESSION['language'];
+
+/* set it */
+set_language($language);
+/**** end language ****/
 
 /* done major error checking, output header of HTML page */
 output_header();