Remove stuff not used in travis-web anymore

This commit is contained in:
Piotr Sarnacki 2013-08-28 14:17:26 +02:00
parent 34ae33f087
commit 18ba86eca0
10 changed files with 7 additions and 281 deletions

View File

@ -57,8 +57,6 @@ require 'controllers/job'
require 'controllers/profile' require 'controllers/profile'
require 'controllers/repos' require 'controllers/repos'
require 'controllers/repo' require 'controllers/repo'
#require 'controllers/running_jobs'
#require 'controllers/sidebar'
require 'controllers/stats' require 'controllers/stats'
require 'controllers/current_user' require 'controllers/current_user'
require 'controllers/account_index' require 'controllers/account_index'

View File

@ -1,103 +0,0 @@
Travis.RunningJobsController = Em.ArrayProxy.extend
Group: Em.Object.extend
slug: (-> @get('jobs.firstObject.repoSlug') ).property('jobs.firstObject.repoSlug')
init: ->
@_super.apply this, arguments
@set 'jobs', []
@set 'sortedJobs', Em.ArrayProxy.extend(Em.SortableMixin,
sortProperties: ['number']
).create(content: @get('jobs'))
willDestroy: ->
@get('sortedJobs').destroy()
add: (job) ->
@get('jobs').pushObject(job) unless @get('jobs').contains job
@attach()
remove: (job) ->
@get('jobs').removeObject(job)
@clean()
attach: ->
@get('parent').addGroup(this)
clean: ->
@get('parent').removeGroup(this) if @get('isEmpty')
isEmpty: (->
@get('jobs.length') == 0
).property('jobs.length')
groups: []
sortedGroups: (->
Em.ArrayProxy.extend(Em.SortableMixin,
sortProperties: ['slug']
).create(content: @get('groups'))
).property()
groupsBySlug: {}
init: ->
@_super.apply this, arguments
jobs = Travis.Job.running()
@set 'content', jobs
@addedJobs jobs
contentArrayWillChange: (array, index, removedCount, addedCount) ->
@_super.apply this, arguments
if removedCount
@removedJobs array.slice(index, index + removedCount)
contentArrayDidChange: (array, index, removedCount, addedCount) ->
@_super.apply this, arguments
if addedCount
@addedJobs array.slice(index, index + addedCount)
addedJobs: (jobs) ->
self = this
jobs.forEach (job) ->
self.waitForSlug(job, 'addJob')
removedJobs: (jobs) ->
self = this
jobs.forEach (job) ->
self.waitForSlug(job, 'removeJob')
addJob: (job) ->
slug = job.get('repoSlug')
group = @groupForSlug(slug)
group.add(job)
removeJob: (job) ->
slug = job.get('repoSlug')
group = @groupForSlug(slug)
group.remove(job)
waitForSlug: (job, callbackName) ->
callback = @[callbackName]
self = this
if job.get('repoSlug')?
callback.call self, job
else
observer = ->
if job.get('repoSlug')?
callback.call self, job
job.removeObserver 'repoSlug', observer
job.addObserver 'repoSlug', observer
groupForSlug: (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 @groupsBySlug[group.get('slug')]
group.destroy()

View File

@ -1,41 +0,0 @@
Travis.reopen
SidebarController: Em.ArrayController.extend
needs: ['runningJobs']
jobsBinding: 'controllers.runningJobs'
init: ->
@_super.apply this, arguments
QueuesController: Em.ArrayController.extend
init: ->
@_super.apply this, arguments
queues = for queue in Travis.QUEUES
Travis.LimitedArray.create
content: Travis.Job.queued(queue.name), limit: 20
id: "queue_#{queue.name}"
name: queue.display
@set 'content', queues
showAll: (queue) ->
queue.showAll()
WorkersController: Em.ArrayController.extend
init: ->
@_super.apply this, arguments
@set 'content', Travis.Worker.find()
groups: (->
if content = @get 'arrangedContent'
groups = {}
for worker in content.toArray()
host = worker.get('host')
unless groups[host]
groups[host] = Em.ArrayProxy.extend(Em.SortableMixin,
content: [],
sortProperties: ['nameForSort']
).create()
groups[host].pushObject(worker)
$.values(groups)
).property('length')

View File

@ -103,18 +103,15 @@ require 'travis/model'
).property('state') ).property('state')
@Travis.Job.reopenClass @Travis.Job.reopenClass
queued: (queue) -> queued: ->
filtered = Ember.FilteredRecordArray.create( filtered = Ember.FilteredRecordArray.create(
modelClass: Travis.Job modelClass: Travis.Job
filterFunction: (job) -> filterFunction: (job) ->
queued = ['created', 'queued'].indexOf(job.get('state')) != -1 ['created', 'queued'].indexOf(job.get('state')) != -1
# TODO: why queue is sometimes just common instead of build.common?
queued && (!queue || job.get('queue') == "builds.#{queue}" || job.get('queue') == queue)
filterProperties: ['state', 'queue'] filterProperties: ['state', 'queue']
) )
@fetch(state: 'started').then (array) -> @fetch().then (array) ->
filtered.updateFilter() filtered.updateFilter()
filtered.set('isLoaded', true) filtered.set('isLoaded', true)

View File

@ -1,7 +0,0 @@
<ul class="groups">
{{#each group in view.groups}}
{{view view.GroupView groupBinding="group"}}
{{else}}
{{t no_job}}
{{/each}}
</ul>

View File

@ -1,15 +0,0 @@
<a {{action "toggle" target="view"}}>
<span class="slug">{{slug}}</span> ({{jobs.length}})
</a>
<ul class="jobs">
{{#each job in sortedJobs}}
<li class="job">
{{#if job.repo.slug}}
{{#linkTo "job" job.repo job}}
#{{job.number}}
{{/linkTo}}
{{/if}}
</li>
{{/each}}
</ul>

View File

@ -54,7 +54,6 @@ require 'views/job'
require 'views/log' require 'views/log'
require 'views/repo' require 'views/repo'
require 'views/profile' require 'views/profile'
require 'views/sidebar'
require 'views/stats' require 'views/stats'
require 'views/signin' require 'views/signin'
require 'views/top' require 'views/top'

View File

@ -1,87 +0,0 @@
@Travis.reopen
SidebarView: Travis.View.extend
templateName: 'layouts/sidebar'
didInsertElement: ->
@_super.apply this, arguments
#@activate('jobs')
activate: (name) ->
console.log
return if @get('activeTab') == name
@set('activeTab', name)
@connectOutlet 'pane', Travis.SidebarView["#{name.capitalize()}View"].create(controller: @get('controller'))
classQueues: (->
'active' if @get('activeTab') == 'queues'
).property('activeTab')
classWorkers: (->
'active' if @get('activeTab') == 'workers'
).property('activeTab')
classJobs: (->
'active' if @get('activeTab') == 'jobs'
).property('activeTab')
QueuesView: Em.View.extend
templateName: 'queues/list'
init: ->
@_super.apply this, arguments
@set 'controller', @get('controller').container.lookup('controller:queues')
WorkersView: Travis.View.extend
toggleWorkers: ->
handle = $(event.target).toggleClass('open')
if handle.hasClass('open')
$('#workers li').addClass('open')
else
$('#workers li').removeClass('open')
WorkersListView: Travis.View.extend
toggle: ->
this.$().find('> li').toggleClass('open')
WorkersItemView: Travis.View.extend
classNameBindings: ['worker.state']
display: (->
name = (@get('worker.name') || '').replace('travis-', '')
state = @get('worker.state')
if state == 'working'
"<span class='name'>#{name}: #{@get('worker.repoSlug')}</span> ##{@get('worker.jobNumber')}".htmlSafe()
else
"#{name}: #{state}"
).property('worker.state')
QueueItemView: Travis.View.extend
tagName: 'li'
Travis.SidebarView.reopenClass
WorkersView: Em.View.extend
templateName: 'workers/list'
init: ->
@_super.apply this, arguments
@set 'controller', @get('controller').container.lookup('controller:workers')
JobsView: Em.View.extend
templateName: 'jobs/running'
elementId: 'running-jobs'
init: ->
@_super.apply this, arguments
@set 'controller', @get('controller').container.lookup('controller:runningJobs')
groupsBinding: 'controller.sortedGroups'
jobsBinding: 'controller'
GroupView: Em.View.extend
templateName: 'jobs/running/group'
tagName: 'li'
contextBinding: 'group'
expanded: false
classNameBindings: ['expanded']
classNames: ['group']
toggle: ->
@toggleProperty('expanded')

View File

@ -438,6 +438,10 @@ Ember.Model = Ember.Object.extend(Ember.Evented, {
init: function() { init: function() {
this._createReference(); this._createReference();
this._super(); this._super();
this.one('didLoad', function() {
this.constructor.addToRecordArrays(this);
});
}, },
_createReference: function() { _createReference: function() {

View File

@ -41,22 +41,3 @@
#right .show-more-jobs #right .show-more-jobs
text-decoration: underline text-decoration: underline
cursor: pointer cursor: pointer
#running-jobs
.jobs
display: none
margin: 5px 0 5px
.job
list-style-type: disc
list-style-position: inside
.expanded .jobs
display: block
.slug
max-width: 150px
overflow: hidden
white-space: nowrap
text-overflow: ellipsis
display: inline-block
display: -moz-inline-stack
.group a
cursor: pointer