diff --git a/app/models/repo.coffee b/app/models/repo.coffee index b3083982..d150d46e 100644 --- a/app/models/repo.coffee +++ b/app/models/repo.coffee @@ -107,7 +107,7 @@ Repo = Model.extend duration ).property('_lastBuildDuration', 'lastBuildStartedAt', 'lastBuildFinishedAt') - sortOrder: (-> + sortOrderForLandingPage: (-> state = @get('lastBuildState') if state != 'passed' && state != 'failed' 0 @@ -115,6 +115,14 @@ Repo = Model.extend parseInt(@get('lastBuildId')) ).property('lastBuildId', 'lastBuildState') + sortOrder: (-> + # cuz sortAscending seems buggy when set to false + if lastBuildFinishedAt = @get('lastBuildFinishedAt') + - new Date(lastBuildFinishedAt).getTime() + else + - new Date('9999').getTime() - parseInt(@get('lastBuildId')) + ).property('lastBuildFinishedAt', 'lastBuildId') + stats: (-> if @get('slug') @get('_stats') || $.get("https://api.github.com/repos/#{@get('slug')}", (data) => diff --git a/app/routes/home.coffee b/app/routes/home.coffee index c11760cc..56d7f374 100644 --- a/app/routes/home.coffee +++ b/app/routes/home.coffee @@ -16,7 +16,7 @@ Route = BasicRoute.extend withExternal: Ember.computed.union('repos', 'external') sorted: Ember.computed.sort('withExternal', 'sortedReposKeys') content: limit('sorted', 'limit') - sortedReposKeys: ['sortOrder:desc'] + sortedReposKeys: ['sortOrderForLandingPage:desc'] limit: 3 ).create()