Rename method. Resizing is nothing to do with mobiles.
[mkws-moved-to-github.git] / tools / htdocs / mkws.js
index 6c544ea..46a5206 100644 (file)
@@ -199,8 +199,9 @@ 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();
+        mkws_resize_page();
 }
 
 function add_single_facet(acc, caption, data, max, cclIndex) {
@@ -531,7 +532,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"
@@ -582,7 +583,7 @@ function mkws_html_all(config) {
        $("#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">\
@@ -592,6 +593,11 @@ function mkws_html_all(config) {
             <div id="mkwsRecords"></div>\
           </td>\
         </tr>\
+        <tr>\
+          <td colspan="2">\
+            <div id="mkwsTermlistContainer2"></div>\
+          </td>\
+        </tr>\
       </table>');
     }
 
@@ -614,8 +620,13 @@ function mkws_html_all(config) {
     if (mkws_config.use_service_proxy)
        mkws_service_proxy_auth(config.service_proxy_auth);
 
-    if (mkws_config.responsive_design)
-       mkws_responsive_design();
+    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_resize_page() });
+       // initial check after page load
+       $(document).ready(function() { mkws_resize_page() });
+    }
 
     domReady();
 
@@ -630,22 +641,6 @@ function mkws_html_all(config) {
     }
 }
 
-/* Responsive web design - change layout on the fly depending on
- * the current screen size width/height. Required for mobile devices.
- */
-function mkws_responsive_design () {
-    var timeout = null;
-
-    $(window).resize( function(e) {
-       if (timeout)
-           clearTimeout(timeout);
-       timeout = setTimeout(function () { mkws_mobile_resize() }, 50);
-    });
-
-    // initial check after page load
-    $(document).ready(function() { mkws_mobile_resize() });
-}
-
 function mkws_set_lang(mkws_config)  {
     var lang = jQuery.parseQuerystring().lang || mkws_config.lang || "";
     if (!lang || !mkws_locale_lang[lang]) {
@@ -790,28 +785,26 @@ 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;
+    var parentId = $("#mkwsTermlists").parent().attr('id');
 
-    if ($(window).width() <= width) {
+    if ($(window).width() <= width &&
+       parentId === "mkwsTermlistContainer1") {
+       debug("changing from wide to narrow: " + $(window).width());
+       $("#mkwsTermlists").appendTo($("#mkwsTermlistContainer2"));
        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"));
        for(var i = 0; i < list.length; i++) {
            $("#" + list[i]).show();
        }
-       $("#mkwsTermlists").show();
-       $("#mkwsShiftedTermlists").html("");
     }
 };