From f065d345a59ba18cf4985852b106b4d4da691aad Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Fri, 3 Feb 2012 20:34:02 -0800 Subject: [PATCH] Replaced Telerik SeasonGrid with simple table. --- NzbDrone.Web/Controllers/SeriesController.cs | 38 ++++- NzbDrone.Web/Models/SeasonModel.cs | 15 ++ NzbDrone.Web/Models/SeriesDetailsModel.cs | 22 +++ NzbDrone.Web/NzbDrone.Web.csproj | 13 +- NzbDrone.Web/Views/Series/Details.cshtml | 80 +++++------ NzbDrone.Web/Views/Series/Details2.cshtml | 144 +++++++++++++++++++ NzbDrone.Web/Views/Series/Episode.cshtml | 17 +++ NzbDrone.Web/Views/Series/Season.cshtml | 29 ++++ 8 files changed, 310 insertions(+), 48 deletions(-) create mode 100644 NzbDrone.Web/Models/SeasonModel.cs create mode 100644 NzbDrone.Web/Models/SeriesDetailsModel.cs create mode 100644 NzbDrone.Web/Views/Series/Details2.cshtml create mode 100644 NzbDrone.Web/Views/Series/Episode.cshtml create mode 100644 NzbDrone.Web/Views/Series/Season.cshtml diff --git a/NzbDrone.Web/Controllers/SeriesController.cs b/NzbDrone.Web/Controllers/SeriesController.cs index 7821f92dc..8c015b7c6 100644 --- a/NzbDrone.Web/Controllers/SeriesController.cs +++ b/NzbDrone.Web/Controllers/SeriesController.cs @@ -138,7 +138,7 @@ namespace NzbDrone.Web.Controllers return new EmptyResult(); } - public ActionResult Details(int seriesId) + public ActionResult Details2(int seriesId) { var series = _seriesProvider.GetSeries(seriesId); @@ -161,6 +161,42 @@ namespace NzbDrone.Web.Controllers return View(model); } + public ActionResult Details(int seriesId) + { + var series = _seriesProvider.GetSeries(seriesId); + + var model = new SeriesDetailsModel(); + + if (series.AirsDayOfWeek != null) + { + model.AirsDayOfWeek = series.AirsDayOfWeek.Value.ToString(); + } + else + { + model.AirsDayOfWeek = "N/A"; + } + model.Overview = series.Overview; + model.Title = series.Title; + model.SeriesId = series.SeriesId; + model.HasBanner = !String.IsNullOrEmpty(series.BannerUrl); + + var seasons = new List(); + var episodes = _episodeProvider.GetEpisodeBySeries(seriesId); + + foreach (var season in episodes.Select(s => s.SeasonNumber).Distinct()) + { + seasons.Add(new SeasonModel + { + SeasonNumber = season, + Episodes = GetEpisodeModels(episodes.Where(e => e.SeasonNumber == season).ToList()).OrderByDescending(e=> e.EpisodeNumber).ToList() + }); + } + + model.Seasons = seasons; + + return View(model); + } + public ActionResult MassEdit() { var profiles = _qualityProvider.All(); diff --git a/NzbDrone.Web/Models/SeasonModel.cs b/NzbDrone.Web/Models/SeasonModel.cs new file mode 100644 index 000000000..d49845fb5 --- /dev/null +++ b/NzbDrone.Web/Models/SeasonModel.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Web; +using NzbDrone.Core.Model; +using NzbDrone.Core.Repository; + +namespace NzbDrone.Web.Models +{ + public class SeasonModel + { + public int SeasonNumber { get; set; } + public List Episodes { get; set; } + } +} \ No newline at end of file diff --git a/NzbDrone.Web/Models/SeriesDetailsModel.cs b/NzbDrone.Web/Models/SeriesDetailsModel.cs new file mode 100644 index 000000000..329e213d5 --- /dev/null +++ b/NzbDrone.Web/Models/SeriesDetailsModel.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Web; +using NzbDrone.Core.Model; +using NzbDrone.Core.Repository; + +namespace NzbDrone.Web.Models +{ + public class SeriesDetailsModel + { + public int SeriesId { get; set; } + public string Title { get; set; } + public string AirsDayOfWeek { get; set; } + public string QualityProfileName { get; set; } + public string Overview { get; set; } + public string NextAiring { get; set; } + public string Path { get; set; } + public bool HasBanner { get; set; } + public List Seasons { get; set; } + } +} \ No newline at end of file diff --git a/NzbDrone.Web/NzbDrone.Web.csproj b/NzbDrone.Web/NzbDrone.Web.csproj index a60a232a0..33303345d 100644 --- a/NzbDrone.Web/NzbDrone.Web.csproj +++ b/NzbDrone.Web/NzbDrone.Web.csproj @@ -227,6 +227,8 @@ + + @@ -423,7 +425,7 @@ - + @@ -538,6 +540,15 @@ + + + + + + + + +