Skip to content

Commit 50fe117

Browse files
committed
FIX: Load order bug
1 parent 274743b commit 50fe117

11 files changed

Lines changed: 23 additions & 18 deletions

app/assets/javascripts/discourse.js

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -100,10 +100,12 @@ Discourse = Ember.Application.createWithMixins(Discourse.Ajax, {
100100
101101
@method addInitializer
102102
@param {Function} init the initializer to add.
103+
@param {Boolean} immediate whether to execute the function right away.
104+
Default is false, for next run loop. If unsure, use false.
103105
**/
104-
addInitializer: function(init) {
106+
addInitializer: function(init, immediate) {
105107
Discourse.initializers = Discourse.initializers || [];
106-
Discourse.initializers.push(init);
108+
Discourse.initializers.push({fn: init, immediate: !!immediate});
107109
},
108110

109111
/**
@@ -115,10 +117,14 @@ Discourse = Ember.Application.createWithMixins(Discourse.Ajax, {
115117
var initializers = this.initializers;
116118
if (initializers) {
117119
var self = this;
118-
Em.run.next(function() {
119-
initializers.forEach(function (init) {
120-
init.call(self);
121-
});
120+
initializers.forEach(function (init) {
121+
if (init.immediate) {
122+
init.fn.call(self);
123+
} else {
124+
Em.run.next(function() {
125+
init.fn.call(self);
126+
});
127+
}
122128
});
123129
}
124130
}

app/assets/javascripts/discourse/initializers/click_interceptor.js renamed to app/assets/javascripts/discourse/initializers/1_click_interceptor.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,4 @@ Discourse.addInitializer(function() {
2929
return false;
3030
});
3131

32-
});
32+
}, true);

app/assets/javascripts/discourse/initializers/1_init_message_bus.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ Discourse.addInitializer(function() {
55
Discourse.MessageBus.alwaysLongPoll = Discourse.Environment === "development";
66
Discourse.MessageBus.start();
77
Discourse.KeyValueStore.init("discourse_", Discourse.MessageBus);
8-
});
8+
}, true);

app/assets/javascripts/discourse/initializers/bootbox.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ Discourse.addInitializer(function() {
88
// clicking outside a bootbox modal closes it
99
bootbox.backdrop(true);
1010

11-
});
11+
}, true);

app/assets/javascripts/discourse/initializers/csrf_token.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,5 @@ Discourse.addInitializer(function() {
1515
}
1616
});
1717

18-
});
18+
}, true);
1919

app/assets/javascripts/discourse/initializers/focus_event.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ Discourse.addInitializer(function() {
1313
self.set('hasFocus', false);
1414
});
1515

16-
});
16+
}, true);

app/assets/javascripts/discourse/initializers/init_mobile.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@
33
**/
44
Discourse.addInitializer(function() {
55
Discourse.Mobile.init();
6-
});
6+
}, true);
77

app/assets/javascripts/discourse/initializers/live_development.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
**/
44
Discourse.addInitializer(function() {
55

6-
console.log('live reloading');
7-
86
// subscribe to any site customizations that are loaded
97
$('link.custom-css').each(function() {
108
var split = this.href.split("/"),
@@ -70,4 +68,4 @@ Discourse.addInitializer(function() {
7068
});
7169
});
7270

73-
});
71+
}, true);

app/assets/javascripts/discourse/initializers/relative_ages.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@ Discourse.addInitializer(function() {
88
Discourse.Formatter.updateRelativeAge($('.relative-date'));
99
}, 60 * 1000);
1010

11-
});
11+
}, true);
1212

app/assets/javascripts/discourse/initializers/sniff_capabilities.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,4 @@ Discourse.addInitializer(function() {
2323
// iPads should report as 1024.
2424
caps.set('highRes', Modernizr.mq("only screen and (min-width: 1280px)"));
2525

26-
});
26+
}, true);

0 commit comments

Comments
 (0)