projects
/
mkws-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Details widget
[mkws-moved-to-github.git]
/
src
/
mkws-team.js
diff --git
a/src/mkws-team.js
b/src/mkws-team.js
index
d209e43
..
ead2f03
100644
(file)
--- a/
src/mkws-team.js
+++ b/
src/mkws-team.js
@@
-28,9
+28,11
@@
function team($, teamName) {
var m_paz; // will be initialised below
var m_templateText = {}; // widgets can register templates to be compiled
var m_template = {}; // compiled templates, from any source
var m_paz; // will be initialised below
var m_templateText = {}; // widgets can register templates to be compiled
var m_template = {}; // compiled templates, from any source
- var m_config = mkws.objectInheritingFrom(mkws.config);
var m_widgets = {}; // Maps widget-type to array of widget objects
var m_gotRecords = false;
var m_widgets = {}; // Maps widget-type to array of widget objects
var m_gotRecords = false;
+
+ var config = mkws.objectInheritingFrom(mkws.config);
+ that.config = config;
that.toString = function() { return '[Team ' + teamName + ']'; };
that.toString = function() { return '[Team ' + teamName + ']'; };
@@
-44,7
+46,7
@@
function team($, teamName) {
that.currentRecordId = function() { return m_currentRecordId; };
that.currentRecordData = function() { return m_currentRecordData; };
that.filters = function() { return m_filterSet; };
that.currentRecordId = function() { return m_currentRecordId; };
that.currentRecordData = function() { return m_currentRecordData; };
that.filters = function() { return m_filterSet; };
- that.config = function() { return m_config; };
+ that.gotRecords = function() { return m_gotRecords; };
// Accessor methods for individual widgets: writers
that.set_sortOrder = function(val) { m_sortOrder = val };
// Accessor methods for individual widgets: writers
that.set_sortOrder = function(val) { m_sortOrder = val };
@@
-86,23
+88,23
@@
function team($, teamName) {
log("making new widget team");
log("making new widget team");
- m_sortOrder = m_config.sort_default;
- m_perpage = m_config.perpage_default;
+ m_sortOrder = config.sort_default;
+ m_perpage = config.perpage_default;
// create a parameters array and pass it to the pz2's constructor
// then register the form submit event with the pz2.search function
// autoInit is set to true on default
m_paz = new pz2({ "windowid": teamName,
// create a parameters array and pass it to the pz2's constructor
// then register the form submit event with the pz2.search function
// autoInit is set to true on default
m_paz = new pz2({ "windowid": teamName,
- "pazpar2path": m_config.pazpar2_url,
- "usesessions" : m_config.use_service_proxy ? false : true,
+ "pazpar2path": config.pazpar2_url,
+ "usesessions" : config.use_service_proxy ? false : true,
"oninit": onInit,
"onbytarget": onBytarget,
"onstat": onStat,
"oninit": onInit,
"onbytarget": onBytarget,
"onstat": onStat,
- "onterm": (m_config.facets.length ? onTerm : undefined),
+ "onterm": (config.facets.length ? onTerm : undefined),
"onshow": onShow,
"onrecord": onRecord,
"showtime": 500, //each timer (show, stat, term, bytarget) can be specified this way
"onshow": onShow,
"onrecord": onRecord,
"showtime": 500, //each timer (show, stat, term, bytarget) can be specified this way
- "termlist": m_config.facets.join(',')
+ "termlist": config.facets.join(',')
});
log("created main pz2 object");
});
log("created main pz2 object");
@@
-148,6
+150,7
@@
function team($, teamName) {
log("record");
// FIXME: record is async!!
clearTimeout(m_paz.recordTimer);
log("record");
// FIXME: record is async!!
clearTimeout(m_paz.recordTimer);
+ queue("record").publish(data);
var detRecordDiv = findnode(recordDetailsId(data.recid[0]));
if (detRecordDiv.length) {
// in case on_show was faster to redraw element
var detRecordDiv = findnode(recordDetailsId(data.recid[0]));
if (detRecordDiv.length) {
// in case on_show was faster to redraw element
@@
-257,7
+260,7
@@
function team($, teamName) {
function newSearch(query, sortOrder, maxrecs, perpage, limit, targets, torusquery) {
log("newSearch: " + query);
function newSearch(query, sortOrder, maxrecs, perpage, limit, targets, torusquery) {
log("newSearch: " + query);
- if (m_config.use_service_proxy && !mkws.authenticated) {
+ if (config.use_service_proxy && !mkws.authenticated) {
alert("searching before authentication");
return;
}
alert("searching before authentication");
return;
}
@@
-292,7
+295,7
@@
function team($, teamName) {
if (maxrecs) params.maxrecs = maxrecs;
if (torusquery) {
if (!mkws.config.use_service_proxy)
if (maxrecs) params.maxrecs = maxrecs;
if (torusquery) {
if (!mkws.config.use_service_proxy)
- alert("can't narrow search by torusquery when Service Proxy is not in use");
+ alert("can't narrow search by torusquery when not authenticated");
params.torusquery = torusquery;
}
params.torusquery = torusquery;
}
@@
-302,6
+305,12
@@
function team($, teamName) {
m_paz.search(m_query, m_perpage, m_sortOrder, pp2filter, undefined, params);
}
m_paz.search(m_query, m_perpage, m_sortOrder, pp2filter, undefined, params);
}
+ // fetch record details to be retrieved from the record queue
+ that.fetchDetails = function(recId) {
+ log("fetchDetails() requesting record '" + recId + "'");
+ m_paz.record(recId);
+ };
+
// switching view between targets and records
function switchView(view) {
// switching view between targets and records
function switchView(view) {
@@
-386,7
+395,7
@@
function team($, teamName) {
};
};
- function loadTemplate(name) {
+ function loadTemplate(name, fallbackString) {
var template = m_template[name];
if (template === undefined && Handlebars.compile) {
var source;
var template = m_template[name];
if (template === undefined && Handlebars.compile) {
var source;
@@
-413,9
+422,10
@@
function team($, teamName) {
return template;
}
else {
return template;
}
else {
- alert("Missing MKWS template for " + name);
+ mkws.log("No MKWS template for " + name);
+ return null;
}
}
- }
+ }
that.loadTemplate = loadTemplate;
that.loadTemplate = loadTemplate;