X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fmkws-core.js;h=4d6550cee4f4c7e376d703ba4b92eb0bc7010b6e;hb=6fca436aa42f947b752e583ecf1fe201769782a2;hp=04accc89ba1e4b6f9f5bdf72f55f2025a92f64f1;hpb=199b8fb6fda2e04732bbf97b46cf8577b5e6895c;p=mkws-moved-to-github.git
diff --git a/src/mkws-core.js b/src/mkws-core.js
index 04accc8..4d6550c 100644
--- a/src/mkws-core.js
+++ b/src/mkws-core.js
@@ -18,6 +18,7 @@ window.mkws = {
// initial value allows jQuery popup to use logging.
teams: {},
widgetType2function: {},
+ defaultTemplates: {},
locale_lang: {
"de": {
@@ -181,6 +182,7 @@ mkws.setMkwsConfig = function(overrides) {
facets: ["xtargets", "subject", "author"], /* display facets, in this order, [] for none */
responsive_design_width: undefined, /* a page with less pixel width considered as narrow */
log_level: 1, /* log level for development: 0..2 */
+ template_vars: {}, /* values that may be exposed to templates */
dummy: "dummy"
};
@@ -204,110 +206,6 @@ mkws.objectInheritingFrom = function(o) {
}
-mkws.defaultTemplate = function(name) {
- if (name === 'Record') {
- return '\
-
\
- \
- {{mkws-translate "Title"}} | \
- \
- {{md-title}}\
- {{#if md-title-remainder}}\
- ({{md-title-remainder}})\
- {{/if}}\
- {{#if md-title-responsibility}}\
- {{md-title-responsibility}}\
- {{/if}}\
- | \
-
\
- {{#if md-date}}\
- \
- {{mkws-translate "Date"}} | \
- {{md-date}} | \
-
\
- {{/if}}\
- {{#if md-author}}\
- \
- {{mkws-translate "Author"}} | \
- {{md-author}} | \
-
\
- {{/if}}\
- {{#if md-electronic-url}}\
- \
- {{mkws-translate "Links"}} | \
- \
- {{#each md-electronic-url}}\
- Link{{mkws-index1}}\
- {{/each}}\
- | \
-
\
- {{/if}}\
- {{#mkws-if-any location having="md-subject"}}\
- \
- {{mkws-translate "Subject"}} | \
- \
- {{#mkws-first location having="md-subject"}}\
- {{#if md-subject}}\
- {{#mkws-commaList md-subject}}\
- {{this}}{{/mkws-commaList}}\
- {{/if}}\
- {{/mkws-first}}\
- | \
-
\
- {{/mkws-if-any}}\
- \
- {{mkws-translate "Locations"}} | \
- \
- {{#mkws-commaList location}}\
- {{mkws-attr "@name"}}{{/mkws-commaList}}\
- | \
-
\
-
\
-';
- } else if (name === "Summary") {
- return '\
-\
- {{md-title}}\
-\
-{{#if md-title-remainder}}\
- {{md-title-remainder}}\
-{{/if}}\
-{{#if md-title-responsibility}}\
- {{md-title-responsibility}}\
-{{/if}}\
-{{#if md-date}}, {{md-date}}\
-{{#if location}}\
-, {{#mkws-first location}}{{mkws-attr "@name"}}{{/mkws-first}}\
-{{/if}}\
-{{#if md-medium}}\
-, {{md-medium}}\
-{{/if}}\
-{{/if}}\
-';
- } else if (name === "Image") {
- return '\
- \
- {{#mkws-first md-thumburl}}\
- \
- {{/mkws-first}}\
-
\
- \
-';
- } else if (name === 'Facet') {
- return '\
-{{term}}\
-{{count}}\
-';
- }
-
- return null;
-};
-
-
// The following functions are dispatchers for team methods that
// are called from the UI using a team-name rather than implicit
// context.
@@ -379,7 +277,26 @@ mkws.pagerNext = function(tname) {
}
}
- if (!teamName) teamName = "AUTO";
+ // Widgets without a team are on team "AUTO"
+ if (!teamName) {
+ teamName = "AUTO";
+ // Autosearch widgets don't join team AUTO if there is already an
+ // autosearch on the team or the team has otherwise gotten a query
+ if (node.hasAttribute("autosearch")) {
+ if (mkws.autoHasAuto ||
+ mkws.teams["AUTO"] && mkws.teams["AUTO"].config["query"]) {
+ log("AUTO team already has a query, using unique team");
+ teamName = "UNIQUE";
+ }
+ mkws.autoHasAuto = true;
+ }
+ }
+
+ // Widgets on team "UNIQUE" get a random team
+ if (teamName === "UNIQUE") {
+ teamName = Math.floor(Math.random() * 100000000).toString();
+ }
+
callback.call(node, teamName, type);
}
@@ -523,6 +440,7 @@ mkws.pagerNext = function(tname) {
function init(rootsel) {
+ mkws.autoHasAuto = false;
if (!rootsel) var rootsel = ':root';
var saved_config;
if (typeof mkws_config === 'undefined') {