From 267ad6c752698cb4b13f227cce41bce2b3626573 Mon Sep 17 00:00:00 2001 From: Sven Fuchs Date: Fri, 6 Jul 2012 13:34:44 +0200 Subject: [PATCH] try using SortableMixin, but it's buggy --- assets/javascripts/app/controllers.coffee | 10 +++++---- .../javascripts/app/models/repository.coffee | 22 +++++++++++-------- .../app/templates/repositories/list.hbs | 4 ++-- assets/javascripts/lib/mocks.coffee | 14 ++++++------ public/javascripts/application.js | 2 +- 5 files changed, 29 insertions(+), 23 deletions(-) diff --git a/assets/javascripts/app/controllers.coffee b/assets/javascripts/app/controllers.coffee index 09a7aea0..264e5ba7 100644 --- a/assets/javascripts/app/controllers.coffee +++ b/assets/javascripts/app/controllers.coffee @@ -2,10 +2,12 @@ require 'helpers' require 'travis/ticker' Travis.Controllers = Em.Namespace.create - RepositoriesController: Em.ArrayController.extend + RepositoriesController: Ember.ArrayController.extend contentBinding: 'layout.repositories' + # sortProperties: ['sortOrder'] + # sortAscending: false - RepositoryController: Em.Controller.extend # Travis.Urls.Repository, + RepositoryController: Em.Controller.extend repositoryBinding: 'layout.repository' TabsController: Em.Controller.extend @@ -18,11 +20,11 @@ Travis.Controllers = Em.Namespace.create repositoryBinding: 'layout.repository' contentBinding: 'layout.builds' - BuildController: Em.Controller.extend # Travis.Urls.Commit, + BuildController: Em.Controller.extend repositoryBinding: 'layout.repository' buildBinding: 'layout.build' - JobController: Em.Controller.extend # Travis.Urls.Commit, + JobController: Em.Controller.extend repositoryBinding: 'layout.repository' jobBinding: 'layout.job' diff --git a/assets/javascripts/app/models/repository.coffee b/assets/javascripts/app/models/repository.coffee index 10391ba5..3555a516 100644 --- a/assets/javascripts/app/models/repository.coffee +++ b/assets/javascripts/app/models/repository.coffee @@ -1,15 +1,15 @@ require 'travis/model' @Travis.Repository = Travis.Model.extend - slug: DS.attr('string') - owner: DS.attr('string') - name: DS.attr('string') - description: DS.attr('string') - lastBuildId: DS.attr('number') - lastBuildNumber: DS.attr('string') - lastBuildResult: DS.attr('number') - lastBuildStarted_at: DS.attr('string') - lastBuildFinished_at: DS.attr('string') + slug: DS.attr('string') + owner: DS.attr('string') + name: DS.attr('string') + description: DS.attr('string') + lastBuildId: DS.attr('number') + lastBuildNumber: DS.attr('string') + lastBuildResult: DS.attr('number') + lastBuildStartedAt: DS.attr('string') + lastBuildFinishedAt: DS.attr('string') lastBuild: DS.belongsTo('Travis.Build') @@ -27,6 +27,10 @@ require 'travis/model' duration ).property('data.lastBuildDuration', 'lastBuildStartedAt', 'lastBuildFinishedAt') + sortOrder: (-> + @get('lastBuildFinishedAt') || '9999' + ).property('lastBuildFinishedAt') + stats: (-> # @get('_stats') || $.get("https://api.github.com/repos/#{@get('slug')}", (data) => # @set('_stats', data) diff --git a/assets/javascripts/app/templates/repositories/list.hbs b/assets/javascripts/app/templates/repositories/list.hbs index b662c55b..37977aea 100644 --- a/assets/javascripts/app/templates/repositories/list.hbs +++ b/assets/javascripts/app/templates/repositories/list.hbs @@ -1,5 +1,5 @@