function resizePage() {
- var list = ["mkwsSwitch", "mkwsLang"];
+ var list = ["Switch", "Lang"];
var threshhold = mkws.config.responsive_design_width;
var width = $(window).width();
-
- if (mkws.width === undefined) {
- // No state change, since we have no previous state
- } else if (mkws.width > threshhold && width <= threshhold) {
- log("wide -> narrow");
- } else if (mkws.width <= threshhold && width > threshhold) {
- log("narrow -> wide");
+ 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 (mkws.width > threshhold && width <= threshhold) {
- log("changing from wide to narrow: " + width);
- $(".mkwsTermlist-Container-wide").hide();
- $(".mkwsTermlist-Container-narrow").show();
- for (var tname in mkws.teams) {
- mkws.teams[tname].queue("resize-narrow").publish();
- $(".mkwsTermlists.mkwsTeam_" + tname).appendTo($(".mkwsTermlist-Container-narrow.mkwsTeam_" + tname));
- for(var i = 0; i < list.length; i++) {
- $("." + list[i] + ".mkwsTeam_" + tname).hide();
- }
- }
- } else if (mkws.width <= threshhold && width > threshhold) {
- log("changing from narrow to wide: " + width);
- $(".mkwsTermlist-Container-wide").show();
- $(".mkwsTermlist-Container-narrow").hide();
+ if (from) {
+ log("changing from " + from + " to " + to + ": " + width);
for (var tname in mkws.teams) {
- mkws.teams[tname].queue("resize-wide").publish();
- $(".mkwsTermlists.mkwsTeam_" + tname).appendTo($(".mkwsTermlist-Container-wide.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).show();
+ var widget = team.widget(list[i]);
+ if (widget) $(widget.node)[method]();
}
}
}
-
- mkws.width = width;
};
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));
}
});
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,