X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fmkws-core.js;h=ba20a0226fdab36aaa46c86c9f56451d97e99e11;hb=c2074eeee90862c15cddd8d5a833567c97d625e4;hp=589c3277bab9eba92d1cba58eefb2e48fa9da86c;hpb=4e343e1dc8dbf8894b0063441647e08758d5f5dd;p=mkws-moved-to-github.git diff --git a/src/mkws-core.js b/src/mkws-core.js index 589c327..ba20a02 100644 --- a/src/mkws-core.js +++ b/src/mkws-core.js @@ -330,33 +330,40 @@ mkws.pagerNext = function(tname) { function resizePage() { - var list = ["mkwsSwitch", "mkwsLang"]; - - var targetWidth = mkws.config.responsive_design_width; - var parent = $(".mkwsTermlists").parent(); - - if ($(window).width() <= targetWidth && - parent.hasClass("mkwsTermlist-Container-wide")) { - log("changing from wide to narrow: " + $(window).width()); - $(".mkwsTermlist-Container-wide").hide(); - $(".mkwsTermlist-Container-narrow").show(); + var list = ["Switch", "Lang"]; + + var threshhold = mkws.config.responsive_design_width; + var width = $(window).width(); + var from, to, method; + + if ((mkws.width === undefined || mkws.width > threshhold) && + width <= threshhold) { + from = "wide"; to = "narrow"; method = "hide"; + } else if ((mkws.width === undefined || mkws.width <= threshhold) && + width > threshhold) { + from = "narrow"; to = "wide"; method = "show"; + } + mkws.width = width; + + if (from) { + log("changing from " + from + " to " + to + ": " + width); for (var tname in mkws.teams) { - mkws.teams[tname].queue("resize-narrow").publish(); - $(".mkwsTermlists.mkwsTeam_" + tname).appendTo($(".mkwsTermlist-Container-narrow.mkwsTeam_" + tname)); + var team = mkws.teams[tname]; + 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(); for(var i = 0; i < list.length; i++) { - $("." + list[i] + ".mkwsTeam_" + tname).hide(); - } - } - } else if ($(window).width() > targetWidth && - parent.hasClass("mkwsTermlist-Container-narrow")) { - log("changing from narrow to wide: " + $(window).width()); - $(".mkwsTermlist-Container-wide").show(); - $(".mkwsTermlist-Container-narrow").hide(); - for (var tname in mkws.teams) { - mkws.teams[tname].queue("resize-wide").publish(); - $(".mkwsTermlists.mkwsTeam_" + tname).appendTo($(".mkwsTermlist-Container-wide.mkwsTeam_" + tname)); - for(var i = 0; i < list.length; i++) { - $("." + list[i] + ".mkwsTeam_" + tname).show(); + var widget = team.widget(list[i]); + if (widget) $(widget.node)[method](); } } } @@ -424,7 +431,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)); } }); @@ -504,15 +511,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,