JS-Übersetzung immer in HEAD laden
authorThomas Heck <theck@linet-services.de>
Thu, 7 Mar 2013 15:42:49 +0000 (16:42 +0100)
committerThomas Heck <theck@linet-services.de>
Thu, 7 Mar 2013 15:42:49 +0000 (16:42 +0100)
SL/Layout/None.pm
js/kivi.js
js/locale/de.js
scripts/locales.pl
templates/webpages/layout/javascript_setup.js

index 0a2f6ca..971ef85 100644 (file)
@@ -29,7 +29,9 @@ sub use_javascript {
     js/jquery.js
     js/common.js
     js/namespace.js
+    js/kivi.js
   ),
+  'js/locale/'. $::myconfig{countrycode} .'.js',
   $self->SUPER::use_javascript(@_);
 }
 
index 77c78a2..bd169b2 100644 (file)
@@ -1,25 +1,8 @@
 namespace("kivi", function(ns) {
-
-  ns._localeLang = false;
-  ns._locales = {};
+  ns._locale = {};
 
   ns.t8 = function(text, params) {
-    if( ns._localeLang ) {
-      if( !ns._locales[ns._localeLang] ) {
-        ns._locales[ns._localeLang] = {};
-
-        jQuery.ajax({
-          url: "js/locale/"+ ns._localeLang +".js",
-          async: false,
-          dataType: "json",
-          success: function(res) {
-            ns._locales[ns._localeLang] = res;
-          },
-        });
-      }
-
-      text = ns._locales[ns._localeLang][text] || text;
-    }
+    var text = ns._locale[text] || text;
 
     if( Object.prototype.toString.call( params ) === '[object Array]' ) {
       var len = params.length;
@@ -40,8 +23,9 @@ namespace("kivi", function(ns) {
     return text;
   };
 
-  ns.initLocale = function(localeLang) {
-    ns._localeLang = localeLang;
+  ns.setupLocale = function(locale) {
+    ns._locale = locale;
   };
-
 });
+
+kivi = namespace('kivi');
index 2c63c08..ccba6a3 100644 (file)
@@ -1,2 +1,2 @@
-{
-}
+namespace("kivi").setupLocale({
+});
index d7b28a3..b666558 100755 (executable)
@@ -143,13 +143,14 @@ generate_file(
 );
 
 open(my $js_file, '>:encoding(utf8)', $javascript_output_dir .'/locale/'. $locale .'.js') || die;
-print $js_file '{';
+print $js_file 'namespace("kivi").setupLocale({';
 my $first_entry = 1;
 for my $key (sort(keys(%jslocale))) {
   print $js_file ((!$first_entry ? ',' : '') ."\n". _double_quote($key) .':'. _double_quote($self->{texts}{$key}));
   $first_entry = 0;
 }
-print $js_file ("\n".'}'."\n");
+print $js_file ("\n");
+print $js_file ('});'."\n");
 close($js_file);
 
   foreach my $text (keys %$missing) {
index bc4c5ef..dc51634 100644 (file)
@@ -1,7 +1,6 @@
 [%- USE T8 %]
 $(function() {
 [% IF datefmt %]
-  namespace("kivi").initLocale("[% MYCONFIG.countrycode | html %]");
   setupPoints('[% MYCONFIG.numberformat %]', '[% 'wrongformat' | $T8 %]');
   setupDateFormat('[% MYCONFIG.dateformat %]', '[% 'Falsches Datumsformat!' | $T8 %]');