X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=experiments%2Fspclient%2Fmkws.js;h=12f8a2d6c9cb4a0596d56b13566d01459e80d6fc;hb=3ae9e3ba0a56b63a0ed0c0e5b5339279519c59c5;hp=6403442823a8ee46fd89718dfc1ccf3e650fadbd;hpb=ee3c5018c6a85762d5e09a2016e0f72f0480d936;p=mkws-moved-to-github.git
diff --git a/experiments/spclient/mkws.js b/experiments/spclient/mkws.js
index 6403442..12f8a2d 100644
--- a/experiments/spclient/mkws.js
+++ b/experiments/spclient/mkws.js
@@ -444,6 +444,9 @@ function mkws_html_all(data) {
for (var k in data) {
config[k] = data[k];
}
+
+ mkws_set_lang(mkws_config);
+ mkws_html_lang(mkws_config);
// For some reason, doing this programmatically results in
// document.search.query being undefined, hence the raw HTML.
@@ -482,6 +485,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($("", {
href: '#',
@@ -567,9 +581,36 @@ function mkws_service_proxy_auth(auth_url) {
});
}
+/* create locale language menu */
+function mkws_html_lang(mkws_config) {
+ var lang_default = "en";
+ var lang = mkws_config.lang || lang_default;
+ var list = [lang_default];
+
+ for (var k in mkws_locale_lang) {
+ list.push(k);
+ }
+
+ var data = "";
+ for(var i = 0; i < list.length; i++) {
+ var l = list[i];
+
+ if (data)
+ data += ' | ';
+
+ if (lang == l) {
+ data += l;
+ } else {
+ data += ' ' + l + ' '
+ }
+ }
+
+ $("#mkwsLang").html(data);
+}
+
/* 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 +618,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) });