that.name = function() { return m_teamName; }
var m_submitted = false;
var m_query; // initially undefined
- var m_sort; // will be set below
+ 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_totalRecordCount = 0;
+ var m_currentPage = 1;
var m_curDetRecId = '';
var m_curDetRecData = null;
- var m_debug_time = {
+ var m_debugTime = {
// Timestamps for logging
"start": $.now(),
"last": $.now()
var debug = function (s) {
var now = $.now();
- var timestamp = ((now - m_debug_time.start)/1000).toFixed(3) + " (+" + ((now - m_debug_time.last)/1000).toFixed(3) + ") "
- m_debug_time.last = now;
+ var timestamp = ((now - m_debugTime.start)/1000).toFixed(3) + " (+" + ((now - m_debugTime.last)/1000).toFixed(3) + ") "
+ m_debugTime.last = now;
mkws.debug(m_teamName + ": " + timestamp + s);
}
debug("start running MKWS");
- m_sort = mkws_config.sort_default;
+ m_sortOrder = mkws_config.sort_default;
m_perpage = mkws_config.perpage_default;
debug("Create main pz2 object");
function onShow(data, teamName) {
debug("show");
- m_totalRec = data.merged;
+ m_totalRecordCount = data.merged;
var pager = findnode(".mkwsPager");
if (pager.length) {
//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
: pages;
var prev = '<span class="mkwsPrev"><< ' + M('Prev') + '</span><b> | </b>';
- if (m_curPage > 1)
+ if (m_currentPage > 1)
prev = '<a href="#" class="mkwsPrev" onclick="mkws.pagerPrev(\'' + m_teamName + '\');">'
+'<< ' + M('Prev') + '</a><b> | </b>';
var middle = '';
for(var i = firstClkbl; i <= lastClkbl; i++) {
var numLabel = i;
- if(i == m_curPage)
+ if(i == m_currentPage)
numLabel = '<b>' + i + '</b>';
middle += '<a href="#" onclick="mkws.showPage(\'' + m_teamName + '\', ' + i + ')"> '
}
var next = '<b> | </b><span class="mkwsNext">' + M('Next') + ' >></span>';
- if (pages - m_curPage > 0)
+ if (pages - m_currentPage > 0)
next = '<b> | </b><a href="#" class="mkwsNext" onclick="mkws.pagerNext(\'' + m_teamName + '\')">'
+ M('Next') + ' >></a>';
}
- function newSearch(query, sort, targets)
+ function newSearch(query, sortOrder, targets)
{
debug("newSearch: " + query);
redrawNavi();
resetPage();
loadSelect();
- triggerSearch(query, sort, targets);
+ triggerSearch(query, sortOrder, targets);
switchView('records'); // In case it's configured to start off as hidden
m_submitted = true;
}
if (!m_submitted) return false;
resetPage();
loadSelect();
- m_paz.show(0, m_perpage, m_sort);
+ m_paz.show(0, m_perpage, m_sortOrder);
return false;
}
function resetPage()
{
- m_curPage = 1;
- m_totalRec = 0;
+ m_currentPage = 1;
+ m_totalRecordCount = 0;
}
function loadSelect ()
{
var node = findnode('.mkwsSort');
- if (node.length && node.val() != m_sort) {
- debug("changing m_sort from " + m_sort + " to " + node.val());
- m_sort = node.val();
+ if (node.length && node.val() != m_sortOrder) {
+ debug("changing m_sortOrder from " + m_sortOrder + " to " + node.val());
+ m_sortOrder = node.val();
}
node = findnode('.mkwsPerpage');
if (node.length && node.val() != m_perpage) {
}
- function triggerSearch (query, sort, targets)
+ function triggerSearch (query, sortOrder, targets)
{
var pp2filter = "";
var pp2limit = "";
- // Re-use previous query/sort if new ones are not specified
+ // Re-use previous query/sort-order if new ones are not specified
if (query) {
m_query = query;
}
- if (sort) {
- m_sort = sort;
+ if (sortOrder) {
+ m_sortOrder = sortOrder;
}
if (targets) {
m_filters.push({ id: targets, name: targets });
// We can use: params.torusquery = "udb=NAME"
// Note: that won't work when running against raw pazpar2
- m_paz.search(m_query, m_perpage, m_sort, pp2filter, undefined, params);
+ m_paz.search(m_query, m_perpage, m_sortOrder, pp2filter, undefined, params);
}
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--;
}
// detailed record drawing
that.showDetails = function (prefixRecId) {
var recId = prefixRecId.replace('mkwsRec_', '');
- var oldRecId = m_curDetRecId;
+ var oldRecordId = m_curDetRecId;
m_curDetRecId = 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) {
+ if (recId == oldRecordId) {
m_curDetRecId = '';
m_curDetRecData = null;
return;
function mkwsHtmlSort() {
- debug("HTML sort, m_sort = '" + m_sort + "'");
+ debug("HTML sort, m_sortOrder = '" + m_sortOrder + "'");
var sort_html = '<select class="mkwsSort mkwsTeam_' + m_teamName + '">';
for(var i = 0; i < mkws_config.sort_options.length; i++) {
var val = opt.length == 1 ? opt[0] : opt[1];
sort_html += '<option value="' + key + '"';
- if (m_sort == key || m_sort == val) {
+ if (m_sortOrder == key || m_sortOrder == val) {
sort_html += ' selected="selected"';
}
sort_html += '>' + M(val) + '</option>';
that.runAutoSearch = function() {
- // ### should check mkwsTermlist as well, for facet-only teams
- var node = findnode('.mkwsRecords');
+ var node = findnode('.mkwsRecords,.mkwsTermlists');
var query = node.attr('autosearch');
if (!query)
return;
debug("node=" + node + ", class='" + node.className + "', query=" + query);
- var sort = node.attr('sort');
+ var sortOrder = node.attr('sort');
var targets = node.attr('targets');
var s = "running auto search: '" + query + "'";
- if (sort) s += " sorted by '" + sort + "'";
+ if (sortOrder) s += " sorted by '" + sortOrder + "'";
if (targets) s += " in targets '" + targets + "'";
debug(s);
- newSearch(query, sort, targets);
+ newSearch(query, sortOrder, targets);
}
function findnode(selector, teamName) {
teamName = teamName || m_teamName;
- selector = selector.split(',').map(function(s) {
+ selector = $.map(selector.split(','), function(s, i) {
return s + '.mkwsTeam_' + teamName;
}).join(',');