From c5dce133179acab4c15912422ac8ffd1c35b541f Mon Sep 17 00:00:00 2001 From: Piotr Sarnacki Date: Thu, 7 Feb 2013 05:02:18 +0100 Subject: [PATCH] Group running jobs by repo --- .../app/controllers/running_jobs.coffee | 19 ++++++++++--------- .../app/templates/jobs/running/group.hbs | 3 +-- assets/styles/right.sass | 6 ++++-- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/assets/scripts/app/controllers/running_jobs.coffee b/assets/scripts/app/controllers/running_jobs.coffee index f9af4841..d8d57f54 100644 --- a/assets/scripts/app/controllers/running_jobs.coffee +++ b/assets/scripts/app/controllers/running_jobs.coffee @@ -1,6 +1,6 @@ Travis.RunningJobsController = Em.ArrayProxy.extend Group: Em.Object.extend - build: (-> @get('jobs.firstObject.build') ).property('jobs.firstObject.build') + repo: (-> @get('jobs.firstObject.repo') ).property('jobs.firstObject.repo') init: -> @set 'jobs', [] @@ -24,7 +24,7 @@ Travis.RunningJobsController = Em.ArrayProxy.extend ).property('jobs.length') groups: [] - groupsByBuildIds: {} + groupsBySlug: {} init: -> @_super.apply this, arguments @@ -46,23 +46,24 @@ Travis.RunningJobsController = Em.ArrayProxy.extend addedJobs: (jobs) -> self = this jobs.forEach (job) -> - buildId = job.get('buildId') - group = self.groupForBuild(buildId) + slug = job.get('repoSlug') + group = self.groupForSlug(slug) group.add(job) removedJobs: (jobs) -> self = this jobs.forEach (job) -> - buildId = job.get('buildId') - group = self.groupForBuild(buildId) + slug = job.get('repoSlug') + group = self.groupForSlug(slug) group.remove(job) - groupForBuild: (buildId) -> - @groupsByBuildIds[buildId] ||= @Group.create(buildId: buildId, parent: this) + groupForSlug: (slug) -> + console.log 'slug', slug + @groupsBySlug[slug] ||= @Group.create(slug: slug, parent: this) addGroup: (group) -> @get('groups').pushObject group unless @get('groups').contains group removeGroup: (group) -> @get('groups').removeObject group - delete @groupsByBuildIds[group.get('buildId')] + delete @groupsBySlug[group.get('slug')] diff --git a/assets/scripts/app/templates/jobs/running/group.hbs b/assets/scripts/app/templates/jobs/running/group.hbs index b3636297..385196a3 100644 --- a/assets/scripts/app/templates/jobs/running/group.hbs +++ b/assets/scripts/app/templates/jobs/running/group.hbs @@ -1,6 +1,5 @@ - {{build.repo.slug}} - #{{build.number}} + {{slug}} ({{jobs.length}})