new target pz2api-git-checkout for automated testing
[mkws-moved-to-github.git] / tools / htdocs / mkws.js
index bac4ccb..e90ff29 100644 (file)
@@ -201,9 +201,10 @@ function my_onterm(data) {
 }
 
 function add_single_facet(acc, caption, data, max, cclIndex) {
-    acc.push('<div class="facet">');
+    acc.push('<div class="facet" id="mkwsFacet' + caption + '">');
     acc.push('<div class="termtitle">' + M(caption) + '</div>');
     for (var i = 0; i < data.length && i < max; i++ ) {
+       acc.push('<div class="term">');
         acc.push('<a href="#" ');
        var action;
        if (!cclIndex) {
@@ -214,7 +215,8 @@ function add_single_facet(acc, caption, data, max, cclIndex) {
            action = 'limitQuery(\'' + cclIndex + '\', this.firstChild.nodeValue)';
        }
        acc.push('onclick="' + action + ';return false;">' + data[i].name + '</a>'
-                + '<span> (' + data[i].freq + ')</span><br/>');
+                + ' <span>' + data[i].freq + '</span>');
+       acc.push('</div>');
     }
     acc.push('</div>');
 }
@@ -308,7 +310,7 @@ function loadSelect ()
 // limit the query after clicking the facet
 function limitQuery (field, value)
 {
-    document.mkwsSearchForm.query.value += ' and ' + field + '="' + value + '"';
+    document.mkwsSearchForm.mkwsQuery.value += ' and ' + field + '="' + value + '"';
     onFormSubmitEventHandler();
 }
 
@@ -638,7 +640,7 @@ function mkws_html_all(config) {
 }
 
 function mkws_set_lang(mkws_config)  {
-    var lang = jQuery.parseQuerystring().lang || mkws_config.lang || "";
+    var lang = $.parseQuerystring().lang || mkws_config.lang || "";
     if (!lang || !mkws_locale_lang[lang]) {
        mkws_config.lang = ""
     } else {
@@ -727,7 +729,7 @@ function mkws_service_proxy_auth(auth_url) {
 
     var request = new pzHttpRequest(auth_url);
     request.get(null, function(data) {
-       if (!jQuery.isXMLDoc(data)) {
+       if (!$.isXMLDoc(data)) {
            alert("service proxy auth response document is not valid XML document, give up!");
            return;
        }
@@ -821,8 +823,8 @@ function M(word) {
 /*
  * implement jQuery plugins
  */
-jQuery.extend({
-    // implement jQuery.parseQuerystring() for parsing URL parameters
+$.extend({
+    // implement $.parseQuerystring() for parsing URL parameters
     parseQuerystring: function() {
        var nvpair = {};
        var qs = window.location.search.replace('?', '');
@@ -846,10 +848,7 @@ jQuery.extend({
        <div id="mkwsSearch"></div>\
        <div id="mkwsResults"></div>\
        <div id="mkwsTargets"></div>\
-       <div id="mkwsFooter">\
-         <div id="mkwsStat"></div>\
-         <span>Powered by MKWS &copy; 2013 <a target="_new" href="http://www.indexdata.com">Index Data</a></span>\
-       </div>';
+        <div id="mkwsStat"></div>';
 
        // new table layout
        var table = '\
@@ -897,9 +896,23 @@ jQuery.extend({
          </tr>\
        </table>';
 
+       var popup = '\
+         <div id="mkwsSearch"></div>\
+         <div id="mkwsPopup">\
+           <div id="mkwsSwitch"></div>\
+           <div id="mkwsLang"></div>\
+           <div id="mkwsResults"></div>\
+           <div id="mkwsTargets"></div>\
+           <div id="mkwsStat"></div>\
+         </div>'
+
        if (config && config.layout == 'div') {
            this.debug2("jquery plugin layout: div");
            document.write(div);
+       } else if (config && config.layout == 'popup') {
+           this.debug2("jquery plugin layout: popup");
+           document.write(popup);
+           $(document).ready( function() { init_popup(config); } );
        } else {
            this.debug2("jquery plugin layout: table");
            document.write(table);
@@ -907,6 +920,38 @@ jQuery.extend({
     }
 });
 
+function init_popup(obj) {
+    var config = obj ? obj : {};
+
+    var height = config.height || 760;
+    var width = config.width || 880;
+    var id_button = config.button || "input#mkwsButton";
+    var id_popup = config.popup || "#mkwsPopup";
+
+    debug("popup height: " + height + ", width: " + width);
+
+    $(id_popup).dialog({
+      closeOnEscape: true,
+      autoOpen: false,
+      height: height,
+      width: width,
+      modal: true,
+      resizable: true,
+      buttons: {
+             Cancel: function() {
+                     $(this).dialog("close");
+             }
+      },
+      close: function() { }
+    });
+
+    $(id_button)
+      .button()
+      .click(function() {
+             $(id_popup).dialog("open");
+      });
+};
+
 function debug(string) {
     if (!mkws_debug)
        return;