Fix filtering for queue and running jobs
This commit is contained in:
parent
08d17fdf2b
commit
34ae33f087
|
@ -104,8 +104,7 @@ require 'travis/model'
|
||||||
|
|
||||||
@Travis.Job.reopenClass
|
@Travis.Job.reopenClass
|
||||||
queued: (queue) ->
|
queued: (queue) ->
|
||||||
@find()
|
filtered = Ember.FilteredRecordArray.create(
|
||||||
Ember.FilteredRecordArray.create(
|
|
||||||
modelClass: Travis.Job
|
modelClass: Travis.Job
|
||||||
filterFunction: (job) ->
|
filterFunction: (job) ->
|
||||||
queued = ['created', 'queued'].indexOf(job.get('state')) != -1
|
queued = ['created', 'queued'].indexOf(job.get('state')) != -1
|
||||||
|
@ -115,13 +114,24 @@ require 'travis/model'
|
||||||
filterProperties: ['state', 'queue']
|
filterProperties: ['state', 'queue']
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@fetch(state: 'started').then (array) ->
|
||||||
|
filtered.updateFilter()
|
||||||
|
filtered.set('isLoaded', true)
|
||||||
|
|
||||||
|
filtered
|
||||||
|
|
||||||
running: ->
|
running: ->
|
||||||
@find(state: 'started')
|
filtered = Ember.FilteredRecordArray.create(
|
||||||
Ember.FilteredRecordArray.create(
|
|
||||||
modelClass: Travis.Job
|
modelClass: Travis.Job
|
||||||
filterFunction: (job) ->
|
filterFunction: (job) ->
|
||||||
job.get('state') == 'started'
|
job.get('state') == 'started'
|
||||||
filterProperties: ['state']
|
filterProperties: ['state']
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@fetch(state: 'started').then (array) ->
|
||||||
|
filtered.updateFilter()
|
||||||
|
filtered.set('isLoaded', true)
|
||||||
|
|
||||||
|
filtered
|
||||||
|
|
||||||
|
|
||||||
|
|
10
assets/scripts/vendor/ember-model.js
vendored
10
assets/scripts/vendor/ember-model.js
vendored
|
@ -186,6 +186,8 @@ Ember.FilteredRecordArray = Ember.RecordArray.extend({
|
||||||
get(this, 'modelClass').forEachCachedRecord(function(record) {
|
get(this, 'modelClass').forEachCachedRecord(function(record) {
|
||||||
if (self.filterFunction(record)) {
|
if (self.filterFunction(record)) {
|
||||||
results.push(record);
|
results.push(record);
|
||||||
|
} else {
|
||||||
|
results.removeObject(record);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
this.set('content', Ember.A(results));
|
this.set('content', Ember.A(results));
|
||||||
|
@ -193,8 +195,12 @@ Ember.FilteredRecordArray = Ember.RecordArray.extend({
|
||||||
|
|
||||||
updateFilterForRecord: function(record) {
|
updateFilterForRecord: function(record) {
|
||||||
var results = get(this, 'content');
|
var results = get(this, 'content');
|
||||||
if (this.filterFunction(record) && !results.contains(record)) {
|
if (this.filterFunction(record)) {
|
||||||
results.pushObject(record);
|
if(!results.contains(record)) {
|
||||||
|
results.pushObject(record);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
results.removeObject(record);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user