sonarr-repo-only/UI/Logs/Layout.js

73 lines
2.0 KiB
JavaScript

'use strict';
define([
'marionette',
'backgrid',
'Shared/Grid/Pager',
'Logs/Collection'
],
function (Marionette,Backgrid, GridPager, LogCollection) {
return Marionette.Layout.extend({
template: 'Logs/LayoutTemplate',
regions: {
grid : '#x-grid',
toolbar: '#x-toolbar',
pager : '#x-pager'
},
columns: [
{
name : 'level',
label : 'Level',
sortable: true,
cell : Backgrid.StringCell
},
{
name : 'logger',
label : 'Component',
sortable: true,
cell : Backgrid.StringCell
},
{
name : 'message',
label : 'Message',
sortable: false,
cell : Backgrid.StringCell
},
{
name : 'time',
label: 'Time',
cell : Backgrid.DatetimeCell
}
],
showTable: function () {
this.grid.show(new Backgrid.Grid(
{
row : Backgrid.Row,
columns : this.columns,
collection: this.collection,
className : 'table table-hover'
}));
this.pager.show(new GridPager({
columns : this.columns,
collection: this.collection
}));
},
initialize: function () {
this.collection = new LogCollection();
this.collection.fetch();
},
onShow: function () {
this.showTable();
}
})
;
})
;