You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
1.9 KiB
71 lines
1.9 KiB
var Marionette = require('marionette');
|
|
var Backgrid = require('backgrid');
|
|
var BackupCollection = require('./TaskCollection');
|
|
var RelativeTimeCell = require('../../Cells/RelativeTimeCell');
|
|
var TaskIntervalCell = require('./TaskIntervalCell');
|
|
var ExecuteTaskCell = require('./ExecuteTaskCell');
|
|
var NextExecutionCell = require('./NextExecutionCell');
|
|
var LoadingView = require('../../Shared/LoadingView');
|
|
require('../../Mixins/backbone.signalr.mixin');
|
|
|
|
module.exports = Marionette.Layout.extend({
|
|
template : 'System/Task/TaskLayoutTemplate',
|
|
|
|
regions : {
|
|
tasks : '#x-tasks'
|
|
},
|
|
|
|
columns : [
|
|
{
|
|
name : 'name',
|
|
label : 'Name',
|
|
sortable : true,
|
|
cell : 'string'
|
|
},
|
|
{
|
|
name : 'interval',
|
|
label : 'Interval',
|
|
sortable : true,
|
|
cell : TaskIntervalCell
|
|
},
|
|
{
|
|
name : 'lastExecution',
|
|
label : 'Last Execution',
|
|
sortable : true,
|
|
cell : RelativeTimeCell
|
|
},
|
|
{
|
|
name : 'nextExecution',
|
|
label : 'Next Execution',
|
|
sortable : true,
|
|
cell : NextExecutionCell
|
|
},
|
|
{
|
|
name : 'this',
|
|
label : '',
|
|
sortable : false,
|
|
cell : ExecuteTaskCell
|
|
}
|
|
],
|
|
|
|
initialize : function() {
|
|
this.taskCollection = new BackupCollection();
|
|
|
|
this.listenTo(this.taskCollection, 'sync', this._showTasks);
|
|
this.taskCollection.bindSignalR();
|
|
},
|
|
|
|
onRender : function() {
|
|
this.tasks.show(new LoadingView());
|
|
|
|
this.taskCollection.fetch();
|
|
},
|
|
|
|
_showTasks : function() {
|
|
this.tasks.show(new Backgrid.Grid({
|
|
columns : this.columns,
|
|
collection : this.taskCollection,
|
|
className : 'table table-hover'
|
|
}));
|
|
}
|
|
}); |