fixing bug introduced @ da0355ef79 (multiple widget areas defined = explosion)

This commit is contained in:
psychobunny
2014-03-12 17:11:13 -04:00
parent bdc7a19bd7
commit 0d625761be
2 changed files with 37 additions and 23 deletions

View File

@@ -165,22 +165,26 @@ var ajaxify = {};
numLocations = widgetLocations.length;
function renderWidget(err, renderedWidgets) {
if (area.html()) {
area.html(templates.prepare(area.html()).parse({
widgets: renderedWidgets
})).removeClass('hidden');
function renderWidgets(location) {
var area = $('#content [widget-area="' + location + '"]');
if (!renderedWidgets.length) {
$('body [no-widget-class]').each(function() {
var $this = $(this);
$this.removeClass();
$this.addClass($this.attr('no-widget-class'));
});
socket.emit('widgets.render', {template: tpl_url + '.tpl', url: url, location: location}, function(err, renderedWidgets) {
if (area.html()) {
area.html(templates.prepare(area.html()).parse({
widgets: renderedWidgets
})).removeClass('hidden');
if (!renderedWidgets.length) {
$('body [no-widget-class]').each(function() {
var $this = $(this);
$this.removeClass();
$this.addClass($this.attr('no-widget-class'));
});
}
}
}
checkCallback();
checkCallback();
});
}
function checkCallback() {
@@ -192,10 +196,7 @@ var ajaxify = {};
for (var i in widgetLocations) {
if (widgetLocations.hasOwnProperty(i)) {
var location = widgetLocations,
area = $('#content [widget-area="' + location + '"]');
socket.emit('widgets.render', {template: tpl_url + '.tpl', url: url, location: location}, renderWidget);
renderWidgets(widgetLocations[i]);
}
}