make language setting permanent
[mkws-moved-to-github.git] / experiments / spclient / mkws.js
index 950df8a..80b5b7a 100644 (file)
@@ -46,7 +46,7 @@ var mkws_locale_lang = {
        "Displaying": "Viser",
        "to": "til",
        "of": "ud af",
-       "found": "fundet",
+       "found": "fandt",
 
        "dummy": "dummy"
     }
@@ -444,6 +444,8 @@ function mkws_html_all(data) {
     for (var k in data) {
        config[k] = data[k];
     }
+   
+    mkws_set_lang(mkws_config); 
 
     // For some reason, doing this programmatically results in
     // document.search.query being undefined, hence the raw HTML.
@@ -482,6 +484,17 @@ function mkws_html_all(data) {
     domReady();
 }
 
+function mkws_set_lang(mkws_config)  {
+    var lang = jQuery.parseQuerystring().lang || mkws_config.lang || "";
+    if (!lang || !mkws_locale_lang[lang]) {
+       mkws_config.lang = ""
+    } else {
+       mkws_config.lang = lang;
+    }
+    
+    return mkws_config.lang;
+}
+
 function mkws_html_switch(config) {
     $("#mkwsSwitch").html($("<a/>", {
        href: '#',
@@ -569,7 +582,7 @@ function mkws_service_proxy_auth(auth_url) {
 
 /* locale */
 function M(word) {
-    var lang = mkws_config.lang;
+    var lang = jQuery.parseQuerystring().lang || mkws_config.lang;
 
     if (!lang || !mkws_locale_lang[lang])
        return word;
@@ -577,5 +590,18 @@ function M(word) {
     return mkws_locale_lang[lang][word] ? mkws_locale_lang[lang][word] : word;
 }
 
+/* implement jQuery.parseQuerystring() for parsing URL parameters */
+jQuery.extend({
+    parseQuerystring: function() {
+    var nvpair = {};
+    var qs = window.location.search.replace('?', '');
+    var pairs = qs.split('&');
+    $.each(pairs, function(i, v){
+       var pair = v.split('=');
+       nvpair[pair[0]] = pair[1];
+    });
+    return nvpair;
+} });
+
 /* magic */
 $(document).ready(function() { mkws_html_all(mkws_config) });