refactor Routes, does not need to be an Ember.Object

This commit is contained in:
Sven Fuchs 2012-07-22 16:45:12 +02:00
parent 24cddfef53
commit f1a60fe39e
6 changed files with 18 additions and 19 deletions

View File

@ -31,10 +31,8 @@ Ember.ENV.RAISE_ON_DEPRECATION = true
@store = Travis.Store.create() @store = Travis.Store.create()
@store.loadMany(Travis.Sponsor, Travis.SPONSORS) @store.loadMany(Travis.Sponsor, Travis.SPONSORS)
@routes = Travis.Routes.create() @routes = new Travis.Routes()
@routes.start() # @pusher = new Travis.Pusher()
@pusher = new Travis.Pusher()
connect: -> connect: ->
@controller = Em.Controller.create() @controller = Em.Controller.create()

View File

@ -1,6 +1,5 @@
Travis.RepositoriesController = Ember.ArrayController.extend Travis.RepositoriesController = Ember.ArrayController.extend
sortProperties: ['sortOrder'] sortProperties: ['sortOrder']
# sortAscending: false
init: -> init: ->
@activate('recent') @activate('recent')

View File

@ -42,7 +42,7 @@ require 'travis/model'
).property('data.last_build_duration', 'lastBuildStartedAt', 'lastBuildFinishedAt') ).property('data.last_build_duration', 'lastBuildStartedAt', 'lastBuildFinishedAt')
sortOrder: (-> sortOrder: (->
- new Date(@get('lastBuildFinishedAt') || '9999').getTime() - new Date(@get('lastBuildFinishedAt') || '9999').getTime() # cuz sortAscending seems buggy when set to false
).property('lastBuildFinishedAt') ).property('lastBuildFinishedAt')
stats: (-> stats: (->

View File

@ -26,7 +26,7 @@ require 'travis/model'
).property('state') ).property('state')
urlJob: (-> urlJob: (->
"#!/#{@get('repository')}/jobs/#{@get('job_id')}" if @get('state') == 'working' "/#{@get('repository')}/jobs/#{@get('job_id')}" if @get('state') == 'working'
).property('repository', 'job_id', 'state') ).property('repository', 'job_id', 'state')
repository: (-> repository: (->

View File

@ -1,6 +1,13 @@
Travis.Routes = Em.Object.extend Travis.Routes = ->
BASE_URI: "#{document.location.protocol}//#{document.location.host}" unless Travis.Routes.initialized
Em.routes.set('usesHistory', true)
Em.routes.set('wantsHistory', true)
Em.routes.set('baseURI', @base_uri)
@add(route, target[0], target[1]) for route, target of Travis.Routes.ROUTES
Travis.Routes.initialized = true
$.extend Travis.Routes,
ROUTES: ROUTES:
'profile': ['profile', 'show'] 'profile': ['profile', 'show']
'stats': ['stats', 'show'] 'stats': ['stats', 'show']
@ -13,24 +20,19 @@ Travis.Routes = Em.Object.extend
':owner/:name': ['home', 'current'] ':owner/:name': ['home', 'current']
'': ['home', 'index'] '': ['home', 'index']
start: -> $.extend Travis.Routes.prototype,
unless @started base_uri: "#{document.location.protocol}//#{document.location.host}"
Em.routes.set('usesHistory', true)
Em.routes.set('wantsHistory', true)
Em.routes.set('baseURI', @BASE_URI)
@started = true
@add(route, target[0], target[1]) for route, target of @ROUTES
add: (route, layout, action) -> add: (route, layout, action) ->
Em.routes.add route, (params) => Em.routes.add route, (params) =>
@action(layout, action, params) @action(layout, action, params)
route: (event) -> route: (event) ->
Em.routes.set('location', event.target.href.replace("#{@BASE_URI}/", '')) Em.routes.set('location', event.target.href.replace("#{@base_uri}/", ''))
action: (name, action, params) -> action: (name, action, params) ->
# this needs to be a global reference because Em.routes is global # this needs to be a global reference because Em.routes is global
layout = Travis.app.connectLayout(name) layout = Travis.app.connectLayout(name)
layout.activate(action, params || {}) layout.activate(action, params || {})
$('body').attr('id', name) $('body').attr('id', name)

File diff suppressed because one or more lines are too long