From a9bcbfad8c878b6fd6382a8c9da5aa414608f0eb Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Wed, 19 Oct 2011 08:16:34 -0700 Subject: [PATCH] Added QuickAdd for adding series, not displayed currently, needs some prettifying. --- NzbDrone.Web/Content/NzbDrone.css | 7 ++++ .../Controllers/AddSeriesController.cs | 32 +++++++++++++++++-- NzbDrone.Web/NzbDrone.Web.csproj | 3 ++ NzbDrone.Web/Scripts/addSeries.js | 21 ++++++++++++ NzbDrone.Web/Views/AddSeries/AddNew.cshtml | 2 +- NzbDrone.Web/Views/AddSeries/Index.cshtml | 4 --- NzbDrone.Web/Views/Shared/QuickAdd.cshtml | 15 +++++++++ SharedLiveTemplates.xml | 1 + 8 files changed, 77 insertions(+), 8 deletions(-) create mode 100644 NzbDrone.Web/Views/Shared/QuickAdd.cshtml create mode 100644 SharedLiveTemplates.xml diff --git a/NzbDrone.Web/Content/NzbDrone.css b/NzbDrone.Web/Content/NzbDrone.css index 58d512762..5b452186e 100644 --- a/NzbDrone.Web/Content/NzbDrone.css +++ b/NzbDrone.Web/Content/NzbDrone.css @@ -235,4 +235,11 @@ select, button, input[type="button"], input[type="submit"], input[type="reset"] { min-width: 60px; width: auto; +} + +#quickAdd +{ + position: fixed; + top: 30px; + right: 15px; } \ No newline at end of file diff --git a/NzbDrone.Web/Controllers/AddSeriesController.cs b/NzbDrone.Web/Controllers/AddSeriesController.cs index 429de70f7..0487b540f 100644 --- a/NzbDrone.Web/Controllers/AddSeriesController.cs +++ b/NzbDrone.Web/Controllers/AddSeriesController.cs @@ -53,9 +53,7 @@ namespace NzbDrone.Web.Controllers var defaultQuality = _configProvider.DefaultQualityProfile; var qualityProfiles = _qualityProvider.All(); - ViewData["qualityList"] = qualityProfiles; - - ViewData["quality"] = new SelectList( + ViewData["qualityProfiles"] = new SelectList( qualityProfiles, "QualityProfileId", "Name", @@ -132,6 +130,19 @@ namespace NzbDrone.Web.Controllers } } + [HttpPost] + public JsonResult QuickAddNewSeries(string seriesName, int seriesId, int qualityProfileId) + { + var path = _rootFolderProvider.GetMostFreeRootDir(); + path = Path.Combine(path, MediaFileProvider.CleanFilename(seriesName)); + + //Create the folder for the new series + //Use the created folder name when adding the series + path = _diskProvider.CreateDirectory(path); + + return AddExistingSeries(path, seriesName, seriesId, qualityProfileId); + } + public JsonResult AddSeries(string path, int seriesId, int qualityProfileId) { //Get TVDB Series Name @@ -145,6 +156,21 @@ namespace NzbDrone.Web.Controllers return new JsonResult { Data = "ok" }; } + [ChildActionOnly] + public ActionResult QuickAdd() + { + var defaultQuality = _configProvider.DefaultQualityProfile; + var qualityProfiles = _qualityProvider.All(); + + ViewData["qualityProfiles"] = new SelectList( + qualityProfiles, + "QualityProfileId", + "Name", + defaultQuality); + + return PartialView(); + } + //Root Directory [HttpPost] diff --git a/NzbDrone.Web/NzbDrone.Web.csproj b/NzbDrone.Web/NzbDrone.Web.csproj index 1068453a3..89204688f 100644 --- a/NzbDrone.Web/NzbDrone.Web.csproj +++ b/NzbDrone.Web/NzbDrone.Web.csproj @@ -929,6 +929,9 @@ + + +