open indexdata.com link in new tab
[mkws-moved-to-github.git] / experiments / spclient / mkws.js
index f182558..94ad399 100644 (file)
@@ -126,9 +126,9 @@ function my_onshow(data) {
     var html = [];
     for (var i = 0; i < data.hits.length; i++) {
         var hit = data.hits[i];
-             html.push('<div class="record" id="recdiv_'+hit.recid+'" >'
+             html.push('<div class="record" id="mkwsRecdiv_'+hit.recid+'" >'
             +'<span>'+ (i + 1 + recPerPage * (curPage - 1)) +'. </span>'
-            +'<a href="#" id="rec_'+hit.recid
+            +'<a href="#" id="mkwsRec_'+hit.recid
             +'" onclick="showDetails(this.id);return false;"><b>'
             + hit["md-title"] +' </b></a>');
              if (hit["md-title-remainder"] !== undefined) {
@@ -185,6 +185,9 @@ function my_onterm(data) {
 
     var termlist = document.getElementById("mkwsTermlists");
     replaceHtml(termlist, acc.join(''));
+
+    if (mkws_config.responsive_design)
+        mkws_mobile_resize();
 }
 
 function add_single_facet(acc, caption, data, max, cclIndex) {
@@ -213,7 +216,7 @@ function my_onrecord(data) {
     var detRecordDiv = document.getElementById('mkwsDet_'+data.recid);
     if (detRecordDiv) return;
     curDetRecData = data;
-    var recordDiv = document.getElementById('recdiv_'+curDetRecData.recid);
+    var recordDiv = document.getElementById('mkwsRecdiv_'+curDetRecData.recid);
     var html = renderDetails(curDetRecData);
     recordDiv.innerHTML += html;
 }
@@ -242,9 +245,9 @@ function my_onbytarget(data) {
 function domReady ()
 {
     document.search.onsubmit = onFormSubmitEventHandler;
-    document.search.query.value = '';
-    document.select.sort.onchange = onSelectDdChange;
-    document.select.perpage.onchange = onSelectDdChange;
+    document.search.mkwsQuery.value = '';
+    document.mkwsSelect.mkwsSort.onchange = onSelectDdChange;
+    document.mkwsSelect.mkwsPerpage.onchange = onSelectDdChange;
 }
 
 // when search button pressed
@@ -275,13 +278,13 @@ function resetPage()
 
 function triggerSearch ()
 {
-    my_paz.search(document.search.query.value, recPerPage, curSort, curFilter);
+    my_paz.search(document.search.mkwsQuery.value, recPerPage, curSort, curFilter);
 }
 
 function loadSelect ()
 {
-    curSort = document.select.sort.value;
-    recPerPage = document.select.perpage.value;
+    curSort = document.mkwsSelect.mkwsSort.value;
+    recPerPage = document.mkwsSelect.mkwsPerpage.value;
 }
 
 // limit the query after clicking the facet
@@ -331,9 +334,9 @@ function drawPager (pagerDiv)
         ? firstClkbl + 2*onsides
         : pages;
 
-    var prev = '<span id="prev">&#60;&#60; ' + M('Prev') + '</span><b> | </b>';
+    var prev = '<span id="mkwsPrev">&#60;&#60; ' + M('Prev') + '</span><b> | </b>';
     if (curPage > 1)
-        prev = '<a href="#" id="prev" onclick="pagerPrev();">'
+        prev = '<a href="#" id="mkwsPrev" onclick="pagerPrev();">'
         +'&#60;&#60; ' + M('Prev') + '</a><b> | </b>';
 
     var middle = '';
@@ -346,9 +349,9 @@ function drawPager (pagerDiv)
             + numLabel + ' </a>';
     }
 
-    var next = '<b> | </b><span id="next">' + M('Next') + ' &#62;&#62;</span>';
+    var next = '<b> | </b><span id="mkwsNext">' + M('Next') + ' &#62;&#62;</span>';
     if (pages - curPage > 0)
-        next = '<b> | </b><a href="#" id="next" onclick="pagerNext()">'
+        next = '<b> | </b><a href="#" id="mkwsNext" onclick="pagerNext()">'
         + M('Next') + ' &#62;&#62;</a>';
 
     var predots = '';
@@ -414,7 +417,7 @@ function switchView(view) {
 
 // detailed record drawing
 function showDetails (prefixRecId) {
-    var recId = prefixRecId.replace('rec_', '');
+    var recId = prefixRecId.replace('mkwsRec_', '');
     var oldRecId = curDetRecId;
     curDetRecId = recId;
 
@@ -502,9 +505,11 @@ function mkws_html_all(config) {
        lang_menu: true,        /* show/hide language 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 */   
 
        debug: 0,     /* debug level for development: 0..2 */
 
+
        dummy: "dummy"
     };
 
@@ -532,12 +537,12 @@ function mkws_html_all(config) {
        mkws_html_lang(mkws_config);
 
     // For some reason, doing this programmatically results in
-    // document.search.query being undefined, hence the raw HTML.
+    // document.search.mkwsQuery being undefined, hence the raw HTML.
     debug("HTML search form");
     $("#mkwsSearch").html('\
-    <form id="searchForm" name="search" action="" >\
-      <input id="query" type="text" size="' + mkws_config.query_width + '" />\
-      <input id="button" type="submit" value="' + M('Search') + '" />\
+    <form name="search" action="" >\
+      <input id="mkwsQuery" type="text" size="' + mkws_config.query_width + '" />\
+      <input id="mkwsButton" type="submit" value="' + M('Search') + '" />\
     </form>');
 
     debug("HTML records");
@@ -548,8 +553,8 @@ function mkws_html_all(config) {
             <div id="mkwsTermlists"></div>\
           </td>\
           <td valign="top">\
-            <div id="ranking">\
-              <form name="select" id="select" action="" >\
+            <div id="mkwsRanking">\
+              <form name="mkwsSelect" id="mkwsSelect" action="" >\
         ' + M('Sort by') + ' ' + mkws_html_sort(config) + '\
         ' + M('and show') + ' ' + mkws_html_perpage(config) + '\
         ' + M('per page') + '.\
@@ -585,7 +590,7 @@ function mkws_responsive_design () {
     $(window).resize( function(e) {
        if (timeout)
            clearTimeout(timeout);
-       timeout = setTimeout(function () { mkws_mobile_resize() }, 100);
+       timeout = setTimeout(function () { mkws_mobile_resize() }, 50);
     });
 
     // initial check after page load
@@ -634,7 +639,7 @@ function mkws_html_switch(config) {
 
 function mkws_html_sort(config) {
     debug("HTML sort");
-    var sort_html = '<select name="sort" id="sort">';
+    var sort_html = '<select name="mkwsSort" id="mkwsSort">';
 
     for(var i = 0; i < config.sort.length; i++) {
        var key = config.sort[i][0];
@@ -653,7 +658,7 @@ function mkws_html_sort(config) {
 
 function mkws_html_perpage(config) {
     debug("HTML perpage");
-    var perpage_html = '<select name="perpage" id="perpage">';
+    var perpage_html = '<select name="mkwsPerpage" id="mkwsPerpage">';
 
     for(var i = 0; i < config.perpage.length; i++) {
        var key = config.perpage[i];
@@ -742,7 +747,9 @@ function mkws_mobile_resize () {
     var obj;
     // alert($(window).width());
 
-    if ($(window).width() <= 980) {
+    var width = mkws_config.responsive_design_width || 980;
+
+    if ($(window).width() <= width) {
        for(var i = 0; i < list.length; i++) {
            $("#" + list[i]).hide();
        }
@@ -787,9 +794,9 @@ jQuery.extend({
     <div id="mkwsSearch"></div>\
     <div id="mkwsRecords"></div>\
     <div id="mkwsTargets"></div>\
-    <div id="footer">\
+    <div id="mkwsFooter">\
       <div id="mkwsStat"></div>\
-      <span>Powered by MKWS &copy; 2013 <a href="http://www.indexdata.com">Index Data</a></span>\
+      <span>Powered by MKWS &copy; 2013 <a target="_new" href="http://www.indexdata.com">Index Data</a></span>\
     </div>');
 
     mkws_html_all(mkws_config);