2012-02-25 02:01:53 +00:00
|
|
|
|
using System;
|
|
|
|
|
using System.Web.Mvc;
|
2011-12-02 01:33:17 +00:00
|
|
|
|
using NzbDrone.Core.Jobs;
|
2012-09-03 23:26:52 +00:00
|
|
|
|
using NzbDrone.Core.Providers;
|
|
|
|
|
using NzbDrone.Core.Repository.Quality;
|
2011-05-27 06:03:57 +00:00
|
|
|
|
using NzbDrone.Web.Models;
|
|
|
|
|
|
|
|
|
|
namespace NzbDrone.Web.Controllers
|
|
|
|
|
{
|
|
|
|
|
public class EpisodeController : Controller
|
|
|
|
|
{
|
|
|
|
|
private readonly JobProvider _jobProvider;
|
2012-09-03 23:26:52 +00:00
|
|
|
|
private readonly MediaFileProvider _mediaFileProvider;
|
2011-05-27 06:03:57 +00:00
|
|
|
|
|
2012-09-03 23:26:52 +00:00
|
|
|
|
public EpisodeController(JobProvider jobProvider, MediaFileProvider mediaFileProvider)
|
2011-05-27 06:03:57 +00:00
|
|
|
|
{
|
|
|
|
|
_jobProvider = jobProvider;
|
2012-09-03 23:26:52 +00:00
|
|
|
|
_mediaFileProvider = mediaFileProvider;
|
2011-05-27 06:03:57 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public JsonResult Search(int episodeId)
|
|
|
|
|
{
|
|
|
|
|
_jobProvider.QueueJob(typeof(EpisodeSearchJob), episodeId);
|
2012-02-26 21:47:04 +00:00
|
|
|
|
return JsonNotificationResult.Queued("Episode search");
|
2011-05-27 06:03:57 +00:00
|
|
|
|
}
|
|
|
|
|
|
2011-08-22 00:48:37 +00:00
|
|
|
|
public JsonResult SearchSeason(int seriesId, int seasonNumber)
|
|
|
|
|
{
|
2012-09-10 19:04:17 +00:00
|
|
|
|
_jobProvider.QueueJob(typeof(SeasonSearchJob), new { SeriesId = seriesId, SeasonNumber = seasonNumber });
|
2012-02-26 21:47:04 +00:00
|
|
|
|
return JsonNotificationResult.Queued("Season search");
|
|
|
|
|
|
2011-08-22 00:48:37 +00:00
|
|
|
|
}
|
|
|
|
|
|
2011-11-26 07:53:16 +00:00
|
|
|
|
public JsonResult BacklogSeries(int seriesId)
|
2011-08-23 05:29:12 +00:00
|
|
|
|
{
|
|
|
|
|
_jobProvider.QueueJob(typeof(SeriesSearchJob), seriesId);
|
2012-02-26 21:47:04 +00:00
|
|
|
|
return JsonNotificationResult.Queued("Series Backlog");
|
|
|
|
|
|
2011-08-23 05:29:12 +00:00
|
|
|
|
}
|
|
|
|
|
|
2011-08-22 00:48:37 +00:00
|
|
|
|
public JsonResult RenameSeason(int seriesId, int seasonNumber)
|
|
|
|
|
{
|
2012-09-10 19:04:17 +00:00
|
|
|
|
_jobProvider.QueueJob(typeof(RenameSeasonJob), new { SeriesId = seriesId, SeasonNumber = seasonNumber });
|
2012-02-26 21:47:04 +00:00
|
|
|
|
return JsonNotificationResult.Queued("Season rename");
|
|
|
|
|
|
2011-08-22 00:48:37 +00:00
|
|
|
|
}
|
2011-08-23 05:29:12 +00:00
|
|
|
|
|
2012-07-21 04:46:16 +00:00
|
|
|
|
public JsonResult RenameSeries(int seriesId)
|
2011-08-23 05:29:12 +00:00
|
|
|
|
{
|
|
|
|
|
_jobProvider.QueueJob(typeof(RenameSeriesJob), seriesId);
|
2012-02-26 21:47:04 +00:00
|
|
|
|
return JsonNotificationResult.Queued("Series rename");
|
2011-08-23 05:29:12 +00:00
|
|
|
|
}
|
2012-07-21 04:46:16 +00:00
|
|
|
|
|
|
|
|
|
public JsonResult RenameAllSeries()
|
|
|
|
|
{
|
|
|
|
|
_jobProvider.QueueJob(typeof(RenameSeriesJob));
|
|
|
|
|
return JsonNotificationResult.Queued("Series rename");
|
|
|
|
|
}
|
2012-09-03 23:26:52 +00:00
|
|
|
|
|
|
|
|
|
[HttpPost]
|
|
|
|
|
public JsonResult ChangeEpisodeQuality(int episodeFileId, QualityTypes quality)
|
|
|
|
|
{
|
|
|
|
|
_mediaFileProvider.ChangeQuality(episodeFileId, quality);
|
|
|
|
|
return Json("ok");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[HttpPost]
|
|
|
|
|
public JsonResult ChangeSeasonQuality(int seriesId, int seasonNumber, QualityTypes quality)
|
|
|
|
|
{
|
|
|
|
|
_mediaFileProvider.ChangeQuality(seriesId, seasonNumber, quality);
|
|
|
|
|
return Json("ok");
|
|
|
|
|
}
|
2011-05-27 06:03:57 +00:00
|
|
|
|
}
|
|
|
|
|
}
|