Add locale translation for Records|Targets labels.
[mkws-moved-to-github.git] / experiments / spclient / mkws.js
index e2e3ccf..dfd1c19 100644 (file)
@@ -16,7 +16,8 @@ if (!mkws_config)
 if (typeof mkws_config.use_service_proxy === 'undefined')
     mkws_config.use_service_proxy = true;
 
-var mkws_debug = 1;
+// global debug flag
+var mkws_debug;
 
 var pazpar2_url = mkws_config.pazpar2_url ? mkws_config.pazpar2_url : "/pazpar2/search.pz2";
 var service_proxy_url = mkws_config.service_proxy_url ? mkws_config.service_proxy_url : "http://mkws.indexdata.com/service-proxy/";
@@ -75,6 +76,18 @@ var mkws_locale_lang = {
     }
 };
 
+
+for (var key in mkws_config) {
+    if (mkws_config.hasOwnProperty(key)) {
+       if (key.match(/^language_/)) {
+           var lang = key.replace(/^language_/, "");
+           // Copy custom languages into list
+           mkws_locale_lang[lang] = mkws_config[key];
+       }
+    }
+}
+
+
 // create a parameters array and pass it to the pz2's constructor
 // then register the form submit event with the pz2.search function
 // autoInit is set to true on default
@@ -160,12 +173,12 @@ function my_onstat(data) {
 function my_onterm(data) {
     // no facets
     if (!mkws_config.facets || mkws_config.facets.length == 0) {
-       $("#mkwsTermlists").parent().hide();
+       $("#mkwsTermlists").hide();
        return;
     }
 
     // display if we first got results
-    $("#mkwsTermlists").parent().show();
+    $("#mkwsTermlists").show();
 
     var acc = [];
     acc.push('<div class="title">' + M('Termlists') + '</div>');
@@ -397,27 +410,28 @@ function pagerPrev() {
 
 function switchView(view) {
     var targets = document.getElementById('mkwsTargets');
-    var records = document.getElementById('mkwsResults');
+    var results = document.getElementById('mkwsResults') ||
+                 document.getElementById('mkwsRecords');
     var blanket = document.getElementById('mkwsBlanket');
 
     switch(view) {
         case 'targets':
-            targets.style.display = "block";
-            if (records) records.style.display = "none";
-            if (blanket) { blanket.style.display = "none"; }
+            if (targets) targets.style.display = "block";
+            if (results) results.style.display = "none";
+            if (blanket) blanket.style.display = "none";
             break;
         case 'records':
-            targets.style.display = "none";
-            if (records) records.style.display = "block";
-            if (blanket) { blanket.style.display = "block"; }
+            if (targets) targets.style.display = "none";
+            if (results) results.style.display = "block";
+            if (blanket) blanket.style.display = "block";
             break;
        case 'none':
-            targets.style.display = "none";
-            if (records) records.style.display = "none";
-            if (blanket) { blanket.style.display = "none"; }
+            if (targets) targets.style.display = "none";
+            if (results) results.style.display = "none";
+            if (blanket) blanket.style.display = "none";
             break;
         default:
-            alert('Unknown view.');
+            alert("Unknown view '" + view + "'");
     }
 }
 
@@ -507,7 +521,7 @@ function mkws_html_all(config) {
        sort_default: "relevance",
        perpage_default: 20,
        query_width: 50,
-       switch_menu: true,      /* show/hide Records|Targets menu */
+       switch_menu: false,     /* show/hide Records|Targets menu */
        lang_menu: true,        /* show/hide language menu */
        sort_menu: true,        /* show/hide sort menu */
        perpage_menu: true,     /* show/hide perpage menu */
@@ -602,7 +616,7 @@ function mkws_html_all(config) {
     domReady();
 
     // on first page, hide the termlist
-    $(document).ready(function() { $("#mkwsTermlists").parent().hide(); } );
+    $(document).ready(function() { $("#mkwsTermlists").hide(); } );
 }
 
 /* Responsive web design - change layout on the fly depending on
@@ -639,13 +653,13 @@ function mkws_html_switch(config) {
     $("#mkwsSwitch").html($("<a/>", {
        href: '#',
        onclick: "switchView(\'records\')",
-       text: "Records"
+       text: M("Records")
     }));
     $("#mkwsSwitch").append($("<span/>", { text: " | " }));
     $("#mkwsSwitch").append($("<a/>", {
        href: '#',
        onclick: "switchView(\'targets\')",
-       text: "Targets"
+       text: M("Targets")
     }));
 
     debug("HTML targets");
@@ -778,14 +792,14 @@ function mkws_mobile_resize () {
            $("#" + list[i]).hide();
        }
 
-       $("#mkwsTermlists").parent().hide();
-       obj = $("#mkwsTermlists").parent().html();
+       $("#mkwsTermlists").hide();
+       obj = $("#mkwsTermlists").html();
         $("#mkwsShiftedTermlists").html(obj);
     } else {
        for(var i = 0; i < list.length; i++) {
            $("#" + list[i]).show();
        }
-       $("#mkwsTermlists").parent().show();
+       $("#mkwsTermlists").show();
        $("#mkwsShiftedTermlists").html("");
     }
 };