mirror of
https://github.com/lidarr/lidarr.git
synced 2025-08-21 05:53:33 -07:00
Merge branch 'markus101'
Conflicts: NzbDrone.Core.Test/SeriesProviderTest.cs NzbDrone.Core/Providers/MediaFileProvider.cs NzbDrone.Core/Providers/SeriesProvider.cs
This commit is contained in:
commit
3cccb5858a
21 changed files with 524 additions and 280 deletions
|
@ -187,9 +187,16 @@ namespace NzbDrone.Web.Controllers
|
|||
[HttpPost]
|
||||
public JsonResult SaveRootDir(int id, string path)
|
||||
{
|
||||
if (String.IsNullOrWhiteSpace(path))
|
||||
return new JsonResult { Data = "failed" };
|
||||
|
||||
try
|
||||
{
|
||||
_rootFolderProvider.Update(new RootDir { Id = id, Path = path });
|
||||
if (id == 0)
|
||||
id = _rootFolderProvider.Add(new RootDir { Path = path });
|
||||
|
||||
else
|
||||
_rootFolderProvider.Update(new RootDir { Id = id, Path = path });
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -199,30 +206,33 @@ namespace NzbDrone.Web.Controllers
|
|||
return new JsonResult { Data = "failed" };
|
||||
}
|
||||
|
||||
return new JsonResult { Data = "ok" };
|
||||
return new JsonResult { Data = id };
|
||||
}
|
||||
|
||||
public PartialViewResult AddRootDir()
|
||||
{
|
||||
var rootDir = new RootDir { Path = String.Empty };
|
||||
var model = new RootDirModel
|
||||
{
|
||||
Id = 0,
|
||||
Path = "",
|
||||
SelectList = new SelectList(new List<string> { "" }, "")
|
||||
};
|
||||
|
||||
var id = _rootFolderProvider.Add(rootDir);
|
||||
rootDir.Id = id;
|
||||
|
||||
var model = new RootDirModel();
|
||||
model.Id = rootDir.Id;
|
||||
model.Path = rootDir.Path;
|
||||
model.SelectList = new SelectList(new List<string> { rootDir.Path }, rootDir.Path);
|
||||
ViewData["guid"] = Guid.NewGuid();
|
||||
|
||||
return PartialView("RootDir", model);
|
||||
}
|
||||
|
||||
public ActionResult GetRootDirView(RootDir rootDir)
|
||||
{
|
||||
var model = new RootDirModel();
|
||||
model.Id = rootDir.Id;
|
||||
model.Path = rootDir.Path;
|
||||
model.SelectList = new SelectList(new List<string> { rootDir.Path }, rootDir.Path);
|
||||
var model = new RootDirModel
|
||||
{
|
||||
Id = rootDir.Id,
|
||||
Path = rootDir.Path,
|
||||
SelectList = new SelectList(new List<string> { rootDir.Path }, rootDir.Path)
|
||||
};
|
||||
|
||||
ViewData["guid"] = Guid.NewGuid();
|
||||
|
||||
return PartialView("RootDir", model);
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web.Mvc;
|
||||
using NzbDrone.Core.Model;
|
||||
|
@ -44,20 +45,30 @@ namespace NzbDrone.Web.Controllers
|
|||
//TODO: possible subsonic bug, IQuarible causes some issues so ToList() is called
|
||||
//https://github.com/subsonic/SubSonic-3.0/issues/263
|
||||
|
||||
var history = _historyProvider.AllItems().ToList().Select(h => new HistoryModel
|
||||
{
|
||||
HistoryId = h.HistoryId,
|
||||
SeasonNumber = h.Episode.SeasonNumber,
|
||||
EpisodeNumber = h.Episode.EpisodeNumber,
|
||||
EpisodeTitle = h.Episode.Title,
|
||||
EpisodeOverview = h.Episode.Overview,
|
||||
SeriesTitle = h.Episode.Series.Title,
|
||||
NzbTitle = h.NzbTitle,
|
||||
Quality = h.Quality.ToString(),
|
||||
IsProper = h.IsProper,
|
||||
Date = h.Date,
|
||||
Indexer = h.Indexer
|
||||
});
|
||||
var historyDb = _historyProvider.AllItems().ToList();
|
||||
|
||||
var history = new List<HistoryModel>();
|
||||
|
||||
foreach (var item in historyDb)
|
||||
{
|
||||
var episode = item.Episode;
|
||||
var series = episode.Series;
|
||||
|
||||
history.Add(new HistoryModel
|
||||
{
|
||||
HistoryId = item.HistoryId,
|
||||
SeasonNumber = episode.SeasonNumber,
|
||||
EpisodeNumber = episode.EpisodeNumber,
|
||||
EpisodeTitle = episode.Title,
|
||||
EpisodeOverview = episode.Overview,
|
||||
SeriesTitle = series.Title,
|
||||
NzbTitle = item.NzbTitle,
|
||||
Quality = item.Quality.ToString(),
|
||||
IsProper = item.IsProper,
|
||||
Date = item.Date,
|
||||
Indexer = item.Indexer
|
||||
});
|
||||
}
|
||||
|
||||
return View(new GridModel(history));
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web.Mvc;
|
||||
using NzbDrone.Core.Providers;
|
||||
|
@ -27,17 +28,25 @@ namespace NzbDrone.Web.Controllers
|
|||
[GridAction]
|
||||
public ActionResult _AjaxBindingYesterday()
|
||||
{
|
||||
var upcoming = _upcomingEpisodesProvider.Yesterday().Select(e => new UpcomingEpisodeModel
|
||||
{
|
||||
SeriesId = e.Series.SeriesId,
|
||||
EpisodeId = e.EpisodeId,
|
||||
SeriesName = e.Series.Title,
|
||||
SeasonNumber = e.SeasonNumber,
|
||||
EpisodeNumber = e.EpisodeNumber,
|
||||
Title = e.Title,
|
||||
Overview = e.Overview,
|
||||
AirDate = e.AirDate.Add(Convert.ToDateTime(e.Series.AirTimes).TimeOfDay)
|
||||
});
|
||||
var upcomingDb = _upcomingEpisodesProvider.Yesterday();
|
||||
var upcoming = new List<UpcomingEpisodeModel>();
|
||||
|
||||
foreach (var item in upcomingDb)
|
||||
{
|
||||
var series = item.Series;
|
||||
|
||||
upcoming.Add(new UpcomingEpisodeModel
|
||||
{
|
||||
SeriesId = series.SeriesId,
|
||||
EpisodeId = item.EpisodeId,
|
||||
SeriesName = series.Title,
|
||||
SeasonNumber = item.SeasonNumber,
|
||||
EpisodeNumber = item.EpisodeNumber,
|
||||
Title = item.Title,
|
||||
Overview = item.Overview,
|
||||
AirDate = item.AirDate.Add(Convert.ToDateTime(series.AirTimes).TimeOfDay)
|
||||
});
|
||||
}
|
||||
|
||||
return View(new GridModel(upcoming));
|
||||
}
|
||||
|
@ -45,16 +54,25 @@ namespace NzbDrone.Web.Controllers
|
|||
[GridAction]
|
||||
public ActionResult _AjaxBindingToday()
|
||||
{
|
||||
var upcoming = _upcomingEpisodesProvider.Today().Select(e => new UpcomingEpisodeModel
|
||||
{
|
||||
SeriesId = e.Series.SeriesId,
|
||||
SeriesName = e.Series.Title,
|
||||
SeasonNumber = e.SeasonNumber,
|
||||
EpisodeNumber = e.EpisodeNumber,
|
||||
Title = e.Title,
|
||||
Overview = e.Overview,
|
||||
AirDate = e.AirDate.Add(Convert.ToDateTime(e.Series.AirTimes).TimeOfDay)
|
||||
});
|
||||
var upcomingDb = _upcomingEpisodesProvider.Today();
|
||||
var upcoming = new List<UpcomingEpisodeModel>();
|
||||
|
||||
foreach (var item in upcomingDb)
|
||||
{
|
||||
var series = item.Series;
|
||||
|
||||
upcoming.Add(new UpcomingEpisodeModel
|
||||
{
|
||||
SeriesId = series.SeriesId,
|
||||
EpisodeId = item.EpisodeId,
|
||||
SeriesName = series.Title,
|
||||
SeasonNumber = item.SeasonNumber,
|
||||
EpisodeNumber = item.EpisodeNumber,
|
||||
Title = item.Title,
|
||||
Overview = item.Overview,
|
||||
AirDate = item.AirDate.Add(Convert.ToDateTime(series.AirTimes).TimeOfDay)
|
||||
});
|
||||
}
|
||||
|
||||
return View(new GridModel(upcoming));
|
||||
}
|
||||
|
@ -62,16 +80,25 @@ namespace NzbDrone.Web.Controllers
|
|||
[GridAction]
|
||||
public ActionResult _AjaxBindingTomorrow()
|
||||
{
|
||||
var upcoming = _upcomingEpisodesProvider.Tomorrow().Select(e => new UpcomingEpisodeModel
|
||||
var upcomingDb = _upcomingEpisodesProvider.Tomorrow();
|
||||
var upcoming = new List<UpcomingEpisodeModel>();
|
||||
|
||||
foreach (var item in upcomingDb)
|
||||
{
|
||||
SeriesId = e.Series.SeriesId,
|
||||
SeriesName = e.Series.Title,
|
||||
SeasonNumber = e.SeasonNumber,
|
||||
EpisodeNumber = e.EpisodeNumber,
|
||||
Title = e.Title,
|
||||
Overview = e.Overview,
|
||||
AirDate = e.AirDate.Add(Convert.ToDateTime(e.Series.AirTimes).TimeOfDay)
|
||||
});
|
||||
var series = item.Series;
|
||||
|
||||
upcoming.Add(new UpcomingEpisodeModel
|
||||
{
|
||||
SeriesId = series.SeriesId,
|
||||
EpisodeId = item.EpisodeId,
|
||||
SeriesName = series.Title,
|
||||
SeasonNumber = item.SeasonNumber,
|
||||
EpisodeNumber = item.EpisodeNumber,
|
||||
Title = item.Title,
|
||||
Overview = item.Overview,
|
||||
AirDate = item.AirDate.Add(Convert.ToDateTime(series.AirTimes).TimeOfDay)
|
||||
});
|
||||
}
|
||||
|
||||
return View(new GridModel(upcoming));
|
||||
}
|
||||
|
@ -79,16 +106,25 @@ namespace NzbDrone.Web.Controllers
|
|||
[GridAction]
|
||||
public ActionResult _AjaxBindingWeek()
|
||||
{
|
||||
var upcoming = _upcomingEpisodesProvider.Week().Select(e => new UpcomingEpisodeModel
|
||||
{
|
||||
SeriesId = e.Series.SeriesId,
|
||||
SeriesName = e.Series.Title,
|
||||
SeasonNumber = e.SeasonNumber,
|
||||
EpisodeNumber = e.EpisodeNumber,
|
||||
Title = e.Title,
|
||||
Overview = e.Overview,
|
||||
AirDate = e.AirDate.Add(Convert.ToDateTime(e.Series.AirTimes).TimeOfDay)
|
||||
});
|
||||
var upcomingDb = _upcomingEpisodesProvider.Week();
|
||||
var upcoming = new List<UpcomingEpisodeModel>();
|
||||
|
||||
foreach (var item in upcomingDb)
|
||||
{
|
||||
var series = item.Series;
|
||||
|
||||
upcoming.Add(new UpcomingEpisodeModel
|
||||
{
|
||||
SeriesId = series.SeriesId,
|
||||
EpisodeId = item.EpisodeId,
|
||||
SeriesName = series.Title,
|
||||
SeasonNumber = item.SeasonNumber,
|
||||
EpisodeNumber = item.EpisodeNumber,
|
||||
Title = item.Title,
|
||||
Overview = item.Overview,
|
||||
AirDate = item.AirDate.Add(Convert.ToDateTime(series.AirTimes).TimeOfDay)
|
||||
});
|
||||
}
|
||||
|
||||
return View(new GridModel(upcoming));
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue