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