X-Git-Url: http://git.indexdata.com/?p=mkws-moved-to-github.git;a=blobdiff_plain;f=src%2Fmkws-widget-main.js;h=017ce65c109fdf0882f00cf064014b9401efe149;hp=446fe75c463a490f08e3333f34cad28ee24b3483;hb=ec8afe26d4ebd3b3097515c42b19a356c4481a39;hpb=4ac151034e2dd7ddc8b0732aa575c8486cb449f0 diff --git a/src/mkws-widget-main.js b/src/mkws-widget-main.js index 446fe75..017ce65 100644 --- a/src/mkws-widget-main.js +++ b/src/mkws-widget-main.js @@ -113,8 +113,7 @@ mkws.registerWidgetType('details', function() { mkws.registerWidgetType('records', function() { var that = this; var team = this.team; - var m_data; - var m_needRedraw = false; + var m_dataToRedraw = null; var m_frozen = false; this.team.queue("searchtriggered").subscribe(function() { @@ -125,9 +124,9 @@ mkws.registerWidgetType('records', function() { function refreshRecordData() { that.node.css('opacity', 1); - if (m_needRedraw) { - for (var i = 0; i < m_data.hits.length; i++) { - var hit = m_data.hits[i]; + if (m_dataToRedraw) { + for (var i = 0; i < m_dataToRedraw.hits.length; i++) { + var hit = m_dataToRedraw.hits[i]; hit.detailLinkId = team.recordElementId(hit.recid[0]); hit.detailClick = "mkws.showDetails('" + team.name() + "', '" + hit.recid[0] + "');return false;"; hit.containerClass = "mkws-summary mkwsSummary mkws-team-" + team.name(); @@ -143,16 +142,15 @@ mkws.registerWidgetType('records', function() { } var template = team.loadTemplate(that.config.template || "records"); var summaryPartial = team.loadTemplate(that.config['summary-template'] || "summary"); - var tdata = $.extend({}, {"hits": m_data.hits}, that.config.template_vars); + var tdata = $.extend({}, {"hits": m_dataToRedraw.hits}, that.config.template_vars); that.node.html(template(tdata, {"partials":{"summary":summaryPartial}})); } - m_needRedraw = false; + m_dataToRedraw = null; } function setRecordData(data) { - m_data = data; - m_needRedraw = true; + m_dataToRedraw = data; if (!m_frozen) { refreshRecordData(); } @@ -160,35 +158,23 @@ mkws.registerWidgetType('records', function() { this.team.queue("records").subscribe(setRecordData); + var m_timer; this.node.mousemove(function() { that.info("freezing display records"); that.node.css('opacity', 0.5); m_frozen = true; + clearTimeout(m_timer); + m_timer = setTimeout(unfreezeRecordDisplay, 1000); }); - this.node.mouseleave(function() { + function unfreezeRecordDisplay() { + clearTimeout(m_timer); that.info("refreshing records"); that.node.css('opacity', 1); m_frozen = false; refreshRecordData(); - }); - -/* - var m_busy = false; - this.node.mousemove(function() { - if (!m_busy) { - m_busy = true; - that.info("making semi-transparent in 0.001 s"); - that.node.fadeTo(1, 0.5, function() { - that.info("making opaque in 2 s"); - that.node.fadeTo(2000, 1, function() { - that.info("done making opaque"); - m_busy = false; - }); - }); - } - }); -*/ + } + this.node.mouseleave(unfreezeRecordDisplay); that.autosearch(); });