diff --git a/UI/Content/icons.less b/UI/Content/icons.less index 34a55b224..06c6292cd 100644 --- a/UI/Content/icons.less +++ b/UI/Content/icons.less @@ -109,4 +109,8 @@ .icon-nd-imported:before { .icon(@download-alt); +} + +.icon-nd-status:before { + .icon(@circle); } \ No newline at end of file diff --git a/UI/Content/theme.less b/UI/Content/theme.less index 5e94c3bd3..a11ceb566 100644 --- a/UI/Content/theme.less +++ b/UI/Content/theme.less @@ -149,3 +149,15 @@ footer { padding-right : 5px; } } + +.status-primary { + color: @linkColor; +} + +.status-success { + color: @successText; +} + +.status-danger { + color: @errorText; +} \ No newline at end of file diff --git a/UI/Series/Details/SeasonLayout.js b/UI/Series/Details/SeasonLayout.js index 621223a98..52ecb6130 100644 --- a/UI/Series/Details/SeasonLayout.js +++ b/UI/Series/Details/SeasonLayout.js @@ -82,7 +82,7 @@ define( this.series = options.series; this.showingEpisodes = this._shouldShowEpisodes(); - this.templateHelpers.showingEpisodes = this.showingEpisodes; + this._generateTemplateHelpers(); this.listenTo(this.model, 'sync', function () { this._afterSeasonMonitored(); @@ -198,6 +198,25 @@ define( return result; }, + _generateTemplateHelpers: function () { + this.templateHelpers.showingEpisodes = this.showingEpisodes; + + var episodeCount = this.episodeCollection.filter(function (episode) { + return (episode.get('monitored') && Moment(episode.get('airDateUtc')).isBefore(Moment())) || episode.get('hasFile'); + }).length; + + var episodeFileCount = this.episodeCollection.where({ hasFile: true }).length; + var percentOfEpisodes = 100; + + if (episodeCount > 0) { + percentOfEpisodes = episodeFileCount / episodeCount * 100; + } + + this.templateHelpers.episodeCount = episodeCount; + this.templateHelpers.episodeFileCount = episodeFileCount; + this.templateHelpers.percentOfEpisodes = percentOfEpisodes; + }, + _showHideEpisodes: function () { if (this.showingEpisodes) { this.showingEpisodes = false; diff --git a/UI/Series/Details/SeasonLayoutTemplate.html b/UI/Series/Details/SeasonLayoutTemplate.html index 372caf157..e966a9bd0 100644 --- a/UI/Series/Details/SeasonLayoutTemplate.html +++ b/UI/Series/Details/SeasonLayoutTemplate.html @@ -8,6 +8,16 @@ Specials {{/if}} + {{#if_eq episodeCount compare=0}} + + {{else}} + {{#if_eq percentOfEpisodes compare=100}} + + {{else}} + + {{/if_eq}} + {{/if_eq}} + diff --git a/UI/Series/series.less b/UI/Series/series.less index 4bb5f64ad..5a8222bd5 100644 --- a/UI/Series/series.less +++ b/UI/Series/series.less @@ -262,3 +262,8 @@ margin-top: 10px; } } + +.season-status { + font-size: 16px; + vertical-align: middle !important; +} \ No newline at end of file