"use strict"; // HTML5: disable for debug_level >= 2
+// Some functions are visible to be called from outside code, namely
+// generated HTML: mkws.switchView(), showDetails(), limitTarget(),
+// limitQuery(), delimitTarget(), delimitQuery(), pagerPrev(),
+// pagerNext(), showPage()
+
// Set up global mkws object. Contains a hash of session objects,
// indexed by windowid.
var mkws = {
function renderSummary(hit)
{
- if (mkws.templateSummary === undefined) {
- loadTemplate("Summary");
- }
-
+ var template = loadTemplate("Summary");
hit._id = "mkwsRec_" + hit.recid;
hit._onclick = "mkws.showDetails(this.id);return false;"
- return mkws.templateSummary(hit);
+ return template(hit);
}
function renderDetails(data, marker)
{
- if (mkws.templateRecord === undefined) {
- loadTemplate("Record");
- }
-
- var template = mkws.templateRecord;
+ var template = loadTemplate("Record");
var details = template(data);
return '<div class="details" id="mkwsDet_' + data.recid + '">' + details + '</div>';
}
function loadTemplate(name)
{
- if (mkws['template' + name])
- return; // It's already been done
+ var template = mkws['template' + name];
+
+ if (template === undefined) {
+ var source = $("#mkwsTemplate" + name).html();
+ if (!source) {
+ source = defaultTemplate(name);
+ }
- var source = $("#mkwsTemplate" + name).html();
- if (!source) {
- source = defaultTemplate(name);
+ template = Handlebars.compile(source);
+ debug("compiled template '" + name + "'");
+ mkws['template' + name] = template;
}
- var template = Handlebars.compile(source);
- debug("compiled template '" + name + "'");
- mkws['template' + name] = template;
+ return template;
}