Remove stuff not used in travis-web anymore
This commit is contained in:
parent
34ae33f087
commit
18ba86eca0
|
@ -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'
|
||||||
|
|
|
@ -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()
|
|
|
@ -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')
|
|
|
@ -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)
|
||||||
|
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
<ul class="groups">
|
|
||||||
{{#each group in view.groups}}
|
|
||||||
{{view view.GroupView groupBinding="group"}}
|
|
||||||
{{else}}
|
|
||||||
{{t no_job}}
|
|
||||||
{{/each}}
|
|
||||||
</ul>
|
|
|
@ -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>
|
|
|
@ -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'
|
||||||
|
|
|
@ -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')
|
|
4
assets/scripts/vendor/ember-model.js
vendored
4
assets/scripts/vendor/ember-model.js
vendored
|
@ -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() {
|
||||||
|
|
|
@ -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
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user