'use strict'; define([ 'app', 'Cells/EpisodeStatusCell', 'Cells/EpisodeTitleCell', 'Cells/AirDateCell', 'Cells/ToggleCell'], function () { NzbDrone.Series.Details.SeasonLayout = Backbone.Marionette.Layout.extend({ template: 'Series/Details/SeasonLayoutTemplate', regions: { episodeGrid: '#x-episode-grid' }, columns: [ { name : 'ignored', label : '', cell : NzbDrone.Cells.ToggleCell, trueClass : 'icon-bookmark-empty', falseClass: 'icon-bookmark' }, { name : 'episodeNumber', label: '#', cell : Backgrid.IntegerCell.extend({ className: 'episode-number-cell' }) }, { name : 'this', label: 'Title', cell : NzbDrone.Cells.EpisodeTitleCell }, { name : 'airDate', label: 'Air Date', cell : NzbDrone.Cells.AirDateCell } , { name : 'status', label: 'Status', cell : NzbDrone.Cells.EpisodeStatusCell } ], initialize: function (options) { if (!options.episodeCollection) { throw 'episodeCollection is needed'; } this.episodeCollection = options.episodeCollection.bySeason(this.model.get('seasonNumber')); }, onShow: function () { this.episodeGrid.show(new Backgrid.Grid( { columns : this.columns, collection: this.episodeCollection, className : 'table table-hover season-grid' })); } }); });