X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fmkws-core.js;h=00ad9c4b39b802a51b0ffb7feee1691c7c6939f7;hb=5191a2651f45fd50ca208298491adf1118e0c0d9;hp=ec2b4a6f1948243d3deb8fd8d987f3a88dc1683d;hpb=2dfad8167ee4e5d598c589954a73334c94be72c3;p=mkws-moved-to-github.git diff --git a/src/mkws-core.js b/src/mkws-core.js index ec2b4a6..00ad9c4 100644 --- a/src/mkws-core.js +++ b/src/mkws-core.js @@ -97,6 +97,17 @@ mkws.log = function(string) { }; +// Translation function. +mkws.M = function(word) { + var lang = mkws.config.lang; + + if (!lang || !mkws.locale_lang[lang]) + return word; + + return mkws.locale_lang[lang][word] || word; +}; + + // This function is taken from a StackOverflow answer // http://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript/901144#901144 mkws.getParameterByName = function(name) { @@ -169,7 +180,7 @@ mkws.defaultTemplate = function(name) { return '\ \ \ - \ + \ \ {{#if md-date}}\ \ - \ + \ \ \ {{/if}}\ {{#if md-author}}\ \ - \ + \ \ \ {{/if}}\ {{#if md-electronic-url}}\ \ - \ + \ \ \ {{/if}}\ - {{#if-any location having="md-subject"}}\ + {{#mkws-if-any location having="md-subject"}}\ \ - \ + \ \ \ - {{/if-any}}\ + {{/mkws-if-any}}\ \ - \ + \ \ \
{{translate "Title"}}{{mkws-translate "Title"}}\ {{md-title}}\ {{#if md-title-remainder}}\ @@ -182,44 +193,44 @@ mkws.defaultTemplate = function(name) {
{{translate "Date"}}{{mkws-translate "Date"}}{{md-date}}
{{translate "Author"}}{{mkws-translate "Author"}}{{md-author}}
{{translate "Links"}}{{mkws-translate "Links"}}\ {{#each md-electronic-url}}\ - Link{{index1}}\ + Link{{mkws-index1}}\ {{/each}}\
{{translate "Subject"}}{{mkws-translate "Subject"}}\ - {{#first location having="md-subject"}}\ + {{#mkws-first location having="md-subject"}}\ {{#if md-subject}}\ - {{#commaList md-subject}}\ - {{this}}{{/commaList}}\ + {{#mkws-commaList md-subject}}\ + {{this}}{{/mkws-commaList}}\ {{/if}}\ - {{/first}}\ + {{/mkws-first}}\
{{translate "Locations"}}{{mkws-translate "Locations"}}\ - {{#commaList location}}\ - {{attr "@name"}}{{/commaList}}\ + {{#mkws-commaList location}}\ + {{mkws-attr "@name"}}{{/mkws-commaList}}\
\ @@ -239,9 +250,9 @@ mkws.defaultTemplate = function(name) { } else if (name === "Image") { return '\ \ - {{#first md-thumburl}}\ + {{#mkws-first md-thumburl}}\ {{../md-title}}\ - {{/first}}\ + {{/mkws-first}}\
\
\ '; @@ -330,8 +341,6 @@ mkws.pagerNext = function(tname) { function resizePage() { - var list = ["Switch", "Lang"]; - var threshhold = mkws.config.responsive_design_width; var width = $(window).width(); var from, to, method; @@ -347,16 +356,20 @@ mkws.pagerNext = function(tname) { if (from) { log("changing from " + from + " to " + to + ": " + width); - $(".mkwsTermlist-Container-" + from).hide(); - $(".mkwsTermlist-Container-" + to).show(); for (var tname in mkws.teams) { var team = mkws.teams[tname]; - team.queue("resize" + to).publish(); - $(".mkwsTermlists.mkwsTeam_" + tname).appendTo($(".mkwsTermlist-Container-" + to + ".mkwsTeam_" + tname)); - for(var i = 0; i < list.length; i++) { - var widget = team.widget(list[i]); - if (widget) $(widget.node)[method](); - } + team.visitWidgets(function(t, w) { + var w1 = team.widget(t + "-Container-" + from); + var w2 = team.widget(t + "-Container-" + to); + if (w1) { + $(w1.node).hide(); + } + if (w2) { + $(w2.node).show(); + $(w.node).appendTo($(w2.node)); + } + }); + team.queue("resize-" + to).publish(); } } }; @@ -423,7 +436,7 @@ mkws.pagerNext = function(tname) { myTeam.addWidget(myWidget); var newHTML = this.innerHTML; if (newHTML !== oldHTML) { - log("widget " + tname + ":" + type + " HTML changed from '" + oldHTML + "' to '" + newHTML + "': reparse!"); + log("widget " + tname + ":" + type + " HTML changed: reparsing"); makeWidgetsWithin(level+1, $(this)); } }); @@ -453,6 +466,15 @@ mkws.pagerNext = function(tname) { } } + var lang = mkws.getParameterByName("lang") || mkws.config.lang; + if (!lang || !mkws.locale_lang[lang]) { + mkws.config.lang = "" + } else { + mkws.config.lang = lang; + } + + log("Locale language: " + (mkws.config.lang ? mkws.config.lang : "none")); + if (mkws.config.query_width < 5 || mkws.config.query_width > 150) { log("Reset query width: " + mkws.config.query_width); mkws.config.query_width = 50; @@ -503,15 +525,15 @@ mkws.pagerNext = function(tname) { var now = $.now(); log("Walking MKWS nodes took " + (now-then) + " ms"); -// for (var tName in mkws.teams) { -// var myTeam = mkws.teams[tName] -// var types = myTeam.widgetTypes(); -// log("TEAM '" + tName + "' = " + myTeam + " has widget types " + types); -// for (var i = 0; i < types.length; i++) { -// var type = types[i]; -// log(" has widget of type '" + type + "': " + myTeam.widget(type)); -// } -// } + /* + for (var tName in mkws.teams) { + var myTeam = mkws.teams[tName] + log("TEAM '" + tName + "' = " + myTeam + " ..."); + myTeam.visitWidgets(function(t, w) { + log(" has widget of type '" + t + "': " + w); + }); + } + */ if (mkws.config.use_service_proxy) { authenticateSession(mkws.config.service_proxy_auth,