X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=tools%2Fhtdocs%2Fmkws.js;h=e1bcd0631839c43caab9a8b5bf1d54448aa59c34;hb=efb560394dd731154a378cfa4c64cb89f67a9a38;hp=50eec65fd76f91d8f0c37738a4b530e8167a92ef;hpb=b9d32463b38074309f2c80145094f597ae98daa3;p=mkws-moved-to-github.git diff --git a/tools/htdocs/mkws.js b/tools/htdocs/mkws.js index 50eec65..e1bcd06 100644 --- a/tools/htdocs/mkws.js +++ b/tools/htdocs/mkws.js @@ -232,10 +232,10 @@ function team($, teamName) { var m_sortOrder; // will be set below var m_perpage; // will be set below var m_filters = []; - var m_totalRec = 0; - var m_curPage = 1; - var m_curDetRecId = ''; - var m_curDetRecData = null; + var m_totalRecordCount = 0; + var m_currentPage = 1; + var m_currentRecordId = ''; + var m_currentRecordData = null; var m_debugTime = { // Timestamps for logging "start": $.now(), @@ -335,7 +335,7 @@ function team($, teamName) { function onShow(data, teamName) { debug("show"); - m_totalRec = data.merged; + m_totalRecordCount = data.merged; var pager = findnode(".mkwsPager"); if (pager.length) { @@ -352,9 +352,9 @@ function team($, teamName) { html.push('
', renderSummary(hit), '
'); - if (hit.recid == m_curDetRecId) { - if (m_curDetRecData) - html.push(renderDetails(m_curDetRecData)); + if (hit.recid == m_currentRecordId) { + if (m_currentRecordData) + html.push(renderDetails(m_currentRecordData)); } } results.html(html.join('')); @@ -368,10 +368,10 @@ function team($, teamName) { // in case on_show was faster to redraw element var detRecordDiv = document.getElementById('mkwsDet_' + teamName + '_' + data.recid); if (detRecordDiv) return; - m_curDetRecData = data; + m_currentRecordData = data; // Can't use jQuery's $('#x') syntax to find this ID, because it contains spaces. - var recordDiv = document.getElementById('mkwsRecdiv_' + teamName + '_' + m_curDetRecData.recid); - var html = renderDetails(m_curDetRecData); + var recordDiv = document.getElementById('mkwsRecdiv_' + teamName + '_' + m_currentRecordData.recid); + var html = renderDetails(m_currentRecordData); $(recordDiv).append(html); } @@ -420,10 +420,10 @@ function team($, teamName) { //client indexes pages from 1 but pz2 from 0 var onsides = 6; - var pages = Math.ceil(m_totalRec / m_perpage); + var pages = Math.ceil(m_totalRecordCount / m_perpage); - var firstClkbl = (m_curPage - onsides > 0) - ? m_curPage - onsides + var firstClkbl = (m_currentPage - onsides > 0) + ? m_currentPage - onsides : 1; var lastClkbl = firstClkbl + 2*onsides < pages @@ -431,14 +431,14 @@ function team($, teamName) { : pages; var prev = '<< ' + M('Prev') + ' | '; - if (m_curPage > 1) + if (m_currentPage > 1) prev = '' +'<< ' + M('Prev') + ' | '; var middle = ''; for(var i = firstClkbl; i <= lastClkbl; i++) { var numLabel = i; - if(i == m_curPage) + if(i == m_currentPage) numLabel = '' + i + ''; middle += ' ' @@ -446,7 +446,7 @@ function team($, teamName) { } var next = ' | ' + M('Next') + ' >>'; - if (pages - m_curPage > 0) + if (pages - m_currentPage > 0) next = ' | ' + M('Next') + ' >>'; @@ -534,8 +534,8 @@ function team($, teamName) { function resetPage() { - m_curPage = 1; - m_totalRec = 0; + m_currentPage = 1; + m_totalRecordCount = 0; } @@ -677,23 +677,23 @@ function team($, teamName) { that.showPage = function (pageNum) { - m_curPage = pageNum; - m_paz.showPage(m_curPage - 1); + m_currentPage = pageNum; + m_paz.showPage(m_currentPage - 1); } // simple paging functions that.pagerNext = function () { - if (m_totalRec - m_perpage*m_curPage > 0) { + if (m_totalRecordCount - m_perpage*m_currentPage > 0) { m_paz.showNext(); - m_curPage++; + m_currentPage++; } } that.pagerPrev = function () { if (m_paz.showPrev() != false) - m_curPage--; + m_currentPage--; } @@ -736,19 +736,19 @@ function team($, teamName) { // detailed record drawing that.showDetails = function (prefixRecId) { var recId = prefixRecId.replace('mkwsRec_', ''); - var oldRecId = m_curDetRecId; - m_curDetRecId = recId; + var oldRecordId = m_currentRecordId; + m_currentRecordId = recId; // remove current detailed view if any - var detRecordDiv = document.getElementById('mkwsDet_' + m_teamName + '_' + oldRecId); + var detRecordDiv = document.getElementById('mkwsDet_' + m_teamName + '_' + oldRecordId); // lovin DOM! if (detRecordDiv) detRecordDiv.parentNode.removeChild(detRecordDiv); // if the same clicked, just hide - if (recId == oldRecId) { - m_curDetRecId = ''; - m_curDetRecData = null; + if (recId == oldRecordId) { + m_currentRecordId = ''; + m_currentRecordData = null; return; } // request the record @@ -1473,6 +1473,14 @@ function team($, teamName) { mkws.teams[tname] = team(j, tname); debug("Made MKWS team '" + tname + "'"); } + }); + }); + // Second pass: make the individual widget objects. This has + // to be done separately, and after the team-creation, since + // that sometimes makes new widget nodes (e.g. creating + // mkwsTermlists instead mkwsResults. + $('[class^="mkws"],[class*=" mkws"]').each(function () { + mkws.handleNodeWithTeam(this, function(tname, type) { var myTeam = mkws.teams[tname]; var myWidget = widget(j, myTeam, type, this); });