Fix routing to build/job when object is already loaded
This commit is contained in:
parent
2575218ddb
commit
87bccccde8
|
@ -356,16 +356,20 @@ Travis.Router = Ember.Router.extend
|
||||||
# record.
|
# record.
|
||||||
# TODO: find out why it happens
|
# TODO: find out why it happens
|
||||||
build = Travis.Build.find params.build_id
|
build = Travis.Build.find params.build_id
|
||||||
deferred = $.Deferred()
|
|
||||||
|
|
||||||
observer = ->
|
if build.get 'id'
|
||||||
if build.get 'id'
|
build
|
||||||
build.removeObserver 'id', observer
|
else
|
||||||
deferred.resolve build
|
deferred = $.Deferred()
|
||||||
|
|
||||||
build.addObserver 'id', observer
|
observer = ->
|
||||||
|
if build.get 'id'
|
||||||
|
build.removeObserver 'id', observer
|
||||||
|
deferred.resolve build
|
||||||
|
|
||||||
deferred.promise()
|
build.addObserver 'id', observer
|
||||||
|
|
||||||
|
deferred.promise()
|
||||||
|
|
||||||
# TODO: this is not dry, but for some weird
|
# TODO: this is not dry, but for some weird
|
||||||
# reason Mixins don't play nice with Ember.Route
|
# reason Mixins don't play nice with Ember.Route
|
||||||
|
@ -402,14 +406,18 @@ Travis.Router = Ember.Router.extend
|
||||||
|
|
||||||
deserialize: (router, params) ->
|
deserialize: (router, params) ->
|
||||||
job = Travis.Job.find params.job_id
|
job = Travis.Job.find params.job_id
|
||||||
deferred = $.Deferred()
|
|
||||||
|
|
||||||
observer = ->
|
if job.get 'id'
|
||||||
if job.get 'id'
|
job
|
||||||
job.removeObserver 'id', observer
|
else
|
||||||
deferred.resolve job
|
deferred = $.Deferred()
|
||||||
job.addObserver 'id', observer
|
|
||||||
deferred.promise()
|
observer = ->
|
||||||
|
if job.get 'id'
|
||||||
|
job.removeObserver 'id', observer
|
||||||
|
deferred.resolve job
|
||||||
|
job.addObserver 'id', observer
|
||||||
|
deferred.promise()
|
||||||
|
|
||||||
initialState: 'default'
|
initialState: 'default'
|
||||||
default: defaultRoute
|
default: defaultRoute
|
||||||
|
|
|
@ -81,6 +81,7 @@
|
||||||
target = $(event.target)
|
target = $(event.target)
|
||||||
|
|
||||||
target.closest('.fold').toggleClass('open')
|
target.closest('.fold').toggleClass('open')
|
||||||
|
|
||||||
if target.is('.log-line-number')
|
if target.is('.log-line-number')
|
||||||
path = target.attr 'href'
|
path = target.attr 'href'
|
||||||
Travis.app.get('router').route(path)
|
Travis.app.get('router').route(path)
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user