diff --git a/assets/scripts/app/app.coffee b/assets/scripts/app/app.coffee index 6d92f52f..8c634f31 100644 --- a/assets/scripts/app/app.coffee +++ b/assets/scripts/app/app.coffee @@ -1,3 +1,5 @@ +config = ENV.config + App = Ember.Application.extend(Ember.Evented, LOG_TRANSITIONS: true LOG_TRANSITIONS_INTERNAL: true @@ -6,18 +8,6 @@ App = Ember.Application.extend(Ember.Evented, LOG_VIEW_LOOKUPS: true #LOG_RESOLVER: true - setup: -> - if @config.pusher.key - @pusher = new Travis.Pusher(@config.pusher) - @tailing = new Travis.Tailing($(window), '#tail', '#log') - @toTop = new Travis.ToTop($(window), '.to-top', '#log-container') - - @on 'user:signed_in', (user) -> - Travis.onUserUpdate(user) - - @on 'user:synced', (user) -> - Travis.onUserUpdate(user) - lookup: -> @__container__.lookup.apply @__container__, arguments @@ -84,9 +74,14 @@ App = Ember.Application.extend(Ember.Evented, Em.run.later (-> element.remove()), 10 ready: -> - @slider = new Travis.Slider(@storage) location.href = location.href.replace('#!/', '') if location.hash.slice(0, 2) == '#!' + @on 'user:signed_in', (user) -> + Travis.onUserUpdate(user) + + @on 'user:synced', (user) -> + Travis.onUserUpdate(user) + currentDate: -> new Date() diff --git a/assets/scripts/app/initializers/google-analytics.coffee b/assets/scripts/app/initializers/google-analytics.coffee index ad8b6e6e..01aa569f 100644 --- a/assets/scripts/app/initializers/google-analytics.coffee +++ b/assets/scripts/app/initializers/google-analytics.coffee @@ -1,7 +1,9 @@ +config = ENV.config + initialize = (container) -> - if Travis.config.ga_code + if config.ga_code window._gaq = [] - _gaq.push(['_setAccount', Travis.config.ga_code]) + _gaq.push(['_setAccount', config.ga_code]) ga = document.createElement('script') ga.type = 'text/javascript' diff --git a/assets/scripts/app/initializers/services.coffee b/assets/scripts/app/initializers/services.coffee new file mode 100644 index 00000000..ef6f2663 --- /dev/null +++ b/assets/scripts/app/initializers/services.coffee @@ -0,0 +1,21 @@ +config = ENV.config +Slider = Travis.Slider +Pusher = Travis.Pusher +Tailing = Travis.Tailing +ToTop = Travis.ToTop + +initialize = (container, application) -> + application.slider = new Slider(application.storage) + + if config.pusher.key + application.pusher = new Pusher(config.pusher) + + application.tailing = new Tailing($(window), '#tail', '#log') + application.toTop = new ToTop($(window), '.to-top', '#log-container') + +Initializer = + name: 'services' + initialize: initialize + +Ember.onLoad 'Ember.Application', (Application) -> + Application.initializer Initializer diff --git a/assets/scripts/app/utils/pusher.coffee b/assets/scripts/app/utils/pusher.coffee index adfadaa0..55866404 100644 --- a/assets/scripts/app/utils/pusher.coffee +++ b/assets/scripts/app/utils/pusher.coffee @@ -166,3 +166,5 @@ if config.pro ] ] ] + +Travis.Pusher = TravisPusher diff --git a/assets/scripts/travis.coffee b/assets/scripts/travis.coffee index 43bda1ea..df7d32c8 100644 --- a/assets/scripts/travis.coffee +++ b/assets/scripts/travis.coffee @@ -180,7 +180,6 @@ require 'models/user' require 'models/env-var' require 'models/ssh-key' -require 'ext/ember/namespace' require 'views/view' require 'views/accounts' require 'views/annotation' @@ -214,5 +213,3 @@ require 'views/application/loading' require 'views/dashboard/loading' require 'components/travis-switch' - -Travis.setup()