'use strict'; define(['app', 'Series/Details/EpisodeStatusCell', 'Series/Details/EpisodeTitleCell','Shared/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.Shared.Cells.ToggleCell, trueClass : 'icon-bookmark-empty', falseClass :'icon-bookmark' }, { name : 'episodeNumber', label: '#', cell : Backgrid.IntegerCell.extend({ className: 'episode-number-cell' }) }, { name : 'title', label: 'Title', cell : NzbDrone.Series.Details.EpisodeTitleCell }, { name : 'airDate', label: 'Air Date', cell : Backgrid.DateCell.extend({ className: 'episode-air-date-cell' }) } , { name : 'status', label: 'Status', cell : NzbDrone.Series.Details.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' })); } }); });