Merge remote branch 'origin/master' into wosch
authorWolfram Schneider <wosch@indexdata.dk>
Wed, 10 Jul 2013 12:16:30 +0000 (12:16 +0000)
committerWolfram Schneider <wosch@indexdata.dk>
Wed, 10 Jul 2013 12:16:30 +0000 (12:16 +0000)
1  2 
tools/htdocs/mkws.js

diff --combined tools/htdocs/mkws.js
@@@ -198,10 -198,6 +198,6 @@@ function my_onterm(data) 
  
      var termlist = document.getElementById("mkwsTermlists");
      replaceHtml(termlist, acc.join(''));
-     // ### I don't believe these lines should be necessary (but they are)
-     if (mkws_config.responsive_design)
-         mkws_mobile_resize();
  }
  
  function add_single_facet(acc, caption, data, max, cclIndex) {
@@@ -532,7 -528,7 +528,7 @@@ function mkws_html_all(config) 
        perpage_menu: true,     /* show/hide perpage menu */
        lang_display: [],       /* display languages links for given languages, [] for all */
        facets: ["sources", "subjects", "authors"], /* display facets, in this order, [] for none */
-       responsive_design_width: 980, /* a page with less pixel width considered as mobile */
+       responsive_design_width: 980, /* a page with less pixel width considered as narrow */
        debug: 1,     /* debug level for development: 0..2 */
  
        dummy: "dummy"
        $("#mkwsResults").html('\
        <table width="100%" border="0" cellpadding="6" cellspacing="0">\
          <tr>\
-           <td width="250" valign="top">\
+           <td id="mkwsTermlistContainer1" width="250" valign="top">\
              <div id="mkwsTermlists"></div>\
            </td>\
            <td id="mkwsMOTDContainer" valign="top">\
              <div id="mkwsRecords"></div>\
            </td>\
          </tr>\
+         <tr>\
+           <td colspan="2">\
+             <div id="mkwsTermlistContainer2"></div>\
+           </td>\
+         </tr>\
        </table>');
      }
  
      if (mkws_config.responsive_design) {
        // Responsive web design - change layout on the fly based on
        // current screen width. Required for mobile devices.
-       $(window).resize( function(e) { mkws_mobile_resize() });
+       $(window).resize( function(e) { mkws_resize_page() });
        // initial check after page load
-       $(document).ready(function() { mkws_mobile_resize() });
+       $(document).ready(function() { mkws_resize_page() });
      }
  
      domReady();
@@@ -780,28 -781,30 +781,30 @@@ function mkws_html_lang(mkws_config) 
      $("#mkwsLang").html(data);
  }
  
- function mkws_mobile_resize () {
-     debug("resize width: " + $(window).height() + ", width: " + $(window).width());
+ function mkws_resize_page () {
      var list = ["mkwsSwitch"];
-     var obj;
-     // alert($(window).width());
  
      var width = mkws_config.responsive_design_width || 980;
-     if ($(window).width() <= width) {
+     var parentId = $("#mkwsTermlists").parent().attr('id');
+     if ($(window).width() <= width &&
+       parentId === "mkwsTermlistContainer1") {
+       debug("changing from wide to narrow: " + $(window).width());
+       $("#mkwsTermlists").appendTo($("#mkwsTermlistContainer2"));
+       $("#mkwsTermlistContainer1").hide();
+       $("#mkwsTermlistContainer2").show();
        for(var i = 0; i < list.length; i++) {
            $("#" + list[i]).hide();
        }
-       $("#mkwsTermlists").hide();
-       obj = $("#mkwsTermlists").html();
-         $("#mkwsShiftedTermlists").html(obj);
-     } else {
+     } else if ($(window).width() > width &&
+       parentId === "mkwsTermlistContainer2") {
+       debug("changing from narrow to wide: " + $(window).width());
+       $("#mkwsTermlists").appendTo($("#mkwsTermlistContainer1"));
+       $("#mkwsTermlistContainer1").show();
+       $("#mkwsTermlistContainer2").hide();
        for(var i = 0; i < list.length; i++) {
            $("#" + list[i]).show();
        }
-       $("#mkwsTermlists").show();
-       $("#mkwsShiftedTermlists").html("");
      }
  };
  
@@@ -827,10 -830,8 +830,10 @@@ jQuery.extend(
      });
      return nvpair;
    },
 -  pazpar2: function(data) {
 -      document.write('<div id="mkwsSwitch"></div>\
 +  pazpar2: function(config) {
 +
 +    // simple layout
 +    var div = '<div id="mkwsSwitch"></div>\
      <div id="mkwsLang"></div>\
      <div id="mkwsSearch"></div>\
      <div id="mkwsResults"></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>';
 +
 +    // new table layout
 +    var table = '\
 +    <style type="text/css">\
 +      #mkwsTermlists div.facet {\
 +      float:left;\
 +      width: 30%;\
 +      margin: 0.3em;\
 +      }\
 +      #mkwsStat {\
 +      text-align: right;\
 +      }\
 +    </style>\
 +      \
 +    <table width="100%" border="0">\
 +      <tr>\
 +        <td>\
 +          <div id="mkwsSwitch"></div>\
 +          <div id="mkwsLang"></div>\
 +          <div id="mkwsSearch"></div>\
 +        </td>\
 +      </tr>\
 +      <tr>\
 +        <td>\
 +          <div style="height:500px; overflow: auto">\
 +            <div id="mkwsPager"></div>\
 +            <div id="mkwsNavi"></div>\
 +            <div id="mkwsRecords"></div>\
 +            <div id="mkwsTargets"></div>\
 +            <div id="mkwsRanking"></div>\
 +          </div>\
 +        </td>\
 +      </tr>\
 +      <tr>\
 +        <td>\
 +          <div style="height:300px; overflow: hidden">\
 +            <div id="mkwsTermlists"></div>\
 +          </div>\
 +        </td>\
 +      </tr>\
 +      <tr>\
 +        <td>\
 +          <div id="mkwsStat"></div>\
 +        </td>\
 +      </tr>\
 +    </table>';
 +
 +    if (config && config.layout == 'table') {
 +       document.write(table);
 +    } else {
 +       document.write(div);
 +    }
  
      mkws_html_all(mkws_config);
    }