steffen: server/kolab-webadmin/kolab-webadmin/php/admin/include locale.php, 1.3, 1.4 mysmarty.php, 1.5, 1.6

cvs at intevation.de cvs at intevation.de
Fri Jun 10 14:17:50 CEST 2005


Author: steffen

Update of /kolabrepository/server/kolab-webadmin/kolab-webadmin/php/admin/include
In directory doto:/tmp/cvs-serv13791/kolab-webadmin/php/admin/include

Modified Files:
	locale.php mysmarty.php 
Log Message:
fix for Issue722 (webgui language switching)

Index: locale.php
===================================================================
RCS file: /kolabrepository/server/kolab-webadmin/kolab-webadmin/php/admin/include/locale.php,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- locale.php	27 May 2005 09:07:03 -0000	1.3
+++ locale.php	10 Jun 2005 12:17:47 -0000	1.4
@@ -27,16 +27,13 @@
 function supported_lang($lang) {
 
     // REMEMBER TO UPDATE THIS WHEN ADDING NEW LANGUAGES
-    $a = array("de"    => "de",
-	       "de_DE" => "de",
-	       "en"    => "en",
-	       "en_US" => "en");
+    $a = array("de"    => "de_DE",
+			   "de_de" => "de_DE",
+			   "en"    => "en_US",
+			   "en_us" => "en_US");
 
     // Locales must be in the format xx_YY to be recognized by xgettext
-    $lang = str_replace('-','_',$lang);
-    if(!strpos($lang, '_')) {
-        $lang = $lang . '_' . strtoupper($lang);
-    }
+    $lang = strtolower(str_replace('-','_',$lang));
     if( !array_key_exists( $lang, $a ) ) return false;
     else return $a[$lang];
 }
@@ -58,24 +55,22 @@
 {
     if(empty($_SESSION["lang"])) 
     {
-        $acceptList = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
+	    $acceptList = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
         if(empty($acceptList)) {
-            $lang = "en";
+			$lang = "en";
         } else {
-            // In case of multiple accept languages, keep the first one
-            $acceptList = explode(",", $acceptList);
-	    foreach($acceptList as $l) {
-		if( supported_lang($l) ) {
-		    $lang = $l;
-		    break;
-		}
-	    }
-        }
-        
+			// In case of multiple accept languages, keep the first one
+			$acceptList = explode(",", $acceptList);
+			foreach($acceptList as $l) {
+				if( $tmp = supported_lang($l) ) {
+					$lang = $tmp;
+					break;
+				}
+			}
+        }    
         setLanguage($lang);
-    }
-    
-    return $_SESSION["lang"];
+    }    
+    return supported_lang($_SESSION["lang"]);
 }
 
 # Allows languages to be set by users
@@ -100,4 +95,14 @@
 bindtextdomain($domain, $locale_dir); 
 bind_textdomain_codeset($domain, "UTF-8");
 textdomain($domain);
-?>
\ No newline at end of file
+
+/*
+  Local variables:
+  mode: php
+  indent-tabs-mode: t
+  tab-width: 4
+  buffer-file-coding-system: utf-8
+  End:
+  vim:encoding=utf-8:
+ */
+?>

Index: mysmarty.php
===================================================================
RCS file: /kolabrepository/server/kolab-webadmin/kolab-webadmin/php/admin/include/mysmarty.php,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- mysmarty.php	18 Mar 2005 11:50:00 -0000	1.5
+++ mysmarty.php	10 Jun 2005 12:17:47 -0000	1.6
@@ -53,13 +53,12 @@
 
 	// If you add a translation, 
 	// add the new language here
-	$langparts = explode('_', $language );
-	$this->assign( 'currentlang', $langparts[0] );
+	$this->assign( 'currentlang', $language );
 	$this->assign( 'languages', array( 
 									  array( 'name' => 'Deutsch',
-											 'code' => 'de' ),
+											 'code' => 'de_DE' ),
 									  array( 'name' => 'English',
-											 'code' => 'en' )
+											 'code' => 'en_US' )
 									  ));
   }
 };





More information about the commits mailing list