diff --git a/NzbDrone.Web/Scripts/seriesDetails.js b/NzbDrone.Web/Scripts/seriesDetails.js index 36544f364..28a13be6c 100644 --- a/NzbDrone.Web/Scripts/seriesDetails.js +++ b/NzbDrone.Web/Scripts/seriesDetails.js @@ -19,14 +19,16 @@ $(".ignoreEpisode").live("click", function () { } var seasonNumber = 0; - + //Flip the ignored to the new state (We want the new value moving forward) ignored = !ignored; if (toggle.hasClass('ignoredEpisodesMaster')) { - seasonNumber = toggle.attr('id').replace('master_', ''); + //seasonNumber = toggle.attr('id').replace('master_', ''); + seasonNumber = toggle.attr('class').split(/\s+/)[2].replace('ignoreSeason_', ''); toggleChildren(seasonNumber, ignored); + toggleMasters(seasonNumber, ignored); saveSeasonIgnore(seasonNumber, ignored); } @@ -60,16 +62,36 @@ function toggleChildren(seasonNumber, ignored) { function toggleMaster(seasonNumber) { var ignoreEpisodes = $('.ignoreEpisode_' + seasonNumber); var ignoredCount = ignoreEpisodes.filter('.ignored').length; - var master = $('#master_' + seasonNumber); - - if (ignoreEpisodes.length == ignoredCount) { - master.attr('src', ignoredImage); - master.addClass('ignored'); + var masters = $('.ignoreSeason_' + seasonNumber); + + masters.each(function (index) { + if (ignoreEpisodes.length == ignoredCount) { + $(this).attr('src', ignoredImage); + $(this).addClass('ignored'); + } + + else { + $(this).attr('src', notIgnoredImage); + $(this).removeClass('ignored'); + } + }); +} + +function toggleMasters(seasonNumber, ignored) { + var masters = $('.ignoreSeason_' + seasonNumber); + + if (ignored) { + masters.each(function (index) { + $(this).addClass('ignored'); + $(this).attr('src', ignoredImage); + }); } else { - master.attr('src', notIgnoredImage); - master.removeClass('ignored'); + masters.each(function (index) { + $(this).removeClass('ignored'); + $(this).attr('src', notIgnoredImage); + }); } } @@ -89,28 +111,16 @@ function grid_rowBound(e) { ignoredIcon.attr('src', notIgnoredImage); ignoredIcon.removeClass('ignored'); } - + if (seriesId == 0) - seriesId = dataItem.SeriesId + seriesId = dataItem.SeriesId; } function grid_dataBound(e) { var id = $(this).attr('id'); var seasonNumber = id.replace('seasons_', ''); - var ignoreEpisodes = $('.ignoreEpisode_' + seasonNumber); - var master = $('#master_' + seasonNumber); - var count = ignoreEpisodes.length; - var ignoredCount = ignoreEpisodes.filter('.ignored').length; - - if (ignoredCount == count) { - master.attr('src', ignoredImage); - master.addClass('ignored'); - } - else { - master.attr('src', notIgnoredImage); - master.removeClass('ignored'); - } + toggleMaster(seasonNumber); } function saveSeasonIgnore(seasonNumber, ignored) { diff --git a/NzbDrone.Web/Views/Series/Details.cshtml b/NzbDrone.Web/Views/Series/Details.cshtml index 4405cfd21..81dfa4e0c 100644 --- a/NzbDrone.Web/Views/Series/Details.cshtml +++ b/NzbDrone.Web/Views/Series/Details.cshtml @@ -22,6 +22,45 @@ padding-left: 18px; padding-right: -18px; } + + .seasonToggleTopGroup + { + overflow: hidden; + width: 50%; + } + + .seasonToggleTop + { + @*float: left; + border-width: 1px; + border-style: solid; + border-color: grey; + margin: 5px; + padding: 3px; + padding-top: 0px; + padding-bottom: 0px;*@ + + background-color: #F1EDED; + background-position: 5px center; + background-repeat: no-repeat; + display: inline-block; + font-size: 15px; + margin: 2px; + padding: 2px 5px; + width: 95px; + } + + .seasonToggleLabel + { + margin-left: 5px; + } + + .seasonToggleTop .ignoredEpisodesMaster + { + padding-left: 0px; + padding-right: 0px; + margin-bottom: -4px; + } @section ActionMenu{ @@ -33,6 +72,18 @@ } @section MainContent{ + +