mirror of
https://github.com/Sonarr/Sonarr.git
synced 2024-12-31 03:11:07 +02:00
Fixed updating of Default Qualities in CentralDispatch.
Default Quality can now be set through Settings/Quality using a drop down list. Fixed QualityType for BDRip (was sharing a value with DVD).
This commit is contained in:
parent
48e5b36936
commit
d083d653db
@ -281,7 +281,8 @@ private static void SetupDefaultQualityProfiles(IRepository repository)
|
||||
|
||||
//Add or Update SDTV
|
||||
Logger.Debug(String.Format("Checking for default QualityProfile: {0}", sdtv.Name));
|
||||
if (!repository.Exists<QualityProfile>(i => i.Name == sdtv.Name))
|
||||
var sdtvDb = repository.Single<QualityProfile>(i => i.Name == sdtv.Name);
|
||||
if (sdtvDb == null)
|
||||
{
|
||||
Logger.Debug(String.Format("Adding new default QualityProfile: {0}", sdtv.Name));
|
||||
repository.Add(sdtv);
|
||||
@ -290,12 +291,14 @@ private static void SetupDefaultQualityProfiles(IRepository repository)
|
||||
else
|
||||
{
|
||||
Logger.Debug(String.Format("Updating default QualityProfile: {0}", sdtv.Name));
|
||||
sdtv.ProfileId = sdtvDb.ProfileId;
|
||||
repository.Update(sdtv);
|
||||
}
|
||||
|
||||
//Add or Update DVD
|
||||
Logger.Debug(String.Format("Checking for default QualityProfile: {0}", dvd.Name));
|
||||
if (!repository.Exists<QualityProfile>(i => i.Name == dvd.Name))
|
||||
var dvdDb = repository.Single<QualityProfile>(i => i.Name == dvd.Name);
|
||||
if (dvdDb == null)
|
||||
{
|
||||
Logger.Debug(String.Format("Adding new default QualityProfile: {0}", dvd.Name));
|
||||
repository.Add(dvd);
|
||||
@ -304,12 +307,14 @@ private static void SetupDefaultQualityProfiles(IRepository repository)
|
||||
else
|
||||
{
|
||||
Logger.Debug(String.Format("Updating default QualityProfile: {0}", dvd.Name));
|
||||
dvd.ProfileId = dvdDb.ProfileId;
|
||||
repository.Update(dvd);
|
||||
}
|
||||
|
||||
//Add or Update BDRip
|
||||
Logger.Debug(String.Format("Checking for default QualityProfile: {0}", bdrip.Name));
|
||||
if (!repository.Exists<QualityProfile>(i => i.Name == bdrip.Name))
|
||||
var bdripDb = repository.Single<QualityProfile>(i => i.Name == bdrip.Name);
|
||||
if (bdripDb == null)
|
||||
{
|
||||
Logger.Debug(String.Format("Adding new default QualityProfile: {0}", bdrip.Name));
|
||||
repository.Add(bdrip);
|
||||
@ -318,12 +323,14 @@ private static void SetupDefaultQualityProfiles(IRepository repository)
|
||||
else
|
||||
{
|
||||
Logger.Debug(String.Format("Updating default QualityProfile: {0}", bdrip.Name));
|
||||
bdrip.ProfileId = bdripDb.ProfileId;
|
||||
repository.Update(bdrip);
|
||||
}
|
||||
|
||||
//Add or Update HDTV
|
||||
Logger.Debug(String.Format("Checking for default QualityProfile: {0}", hdtv.Name));
|
||||
if (!repository.Exists<QualityProfile>(i => i.Name == hdtv.Name))
|
||||
var hdtvDb = repository.Single<QualityProfile>(i => i.Name == hdtv.Name);
|
||||
if (hdtvDb == null)
|
||||
{
|
||||
Logger.Debug(String.Format("Adding new default QualityProfile: {0}", hdtv.Name));
|
||||
repository.Add(hdtv);
|
||||
@ -332,12 +339,14 @@ private static void SetupDefaultQualityProfiles(IRepository repository)
|
||||
else
|
||||
{
|
||||
Logger.Debug(String.Format("Updating default QualityProfile: {0}", hdtv.Name));
|
||||
hdtv.ProfileId = hdtvDb.ProfileId;
|
||||
repository.Update(hdtv);
|
||||
}
|
||||
|
||||
//Add or Update WEBDL
|
||||
Logger.Debug(String.Format("Checking for default QualityProfile: {0}", webdl.Name));
|
||||
if (!repository.Exists<QualityProfile>(i => i.Name == webdl.Name))
|
||||
var webdlDb = repository.Single<QualityProfile>(i => i.Name == webdl.Name);
|
||||
if (webdlDb == null)
|
||||
{
|
||||
Logger.Debug(String.Format("Adding new default QualityProfile: {0}", webdl.Name));
|
||||
repository.Add(webdl);
|
||||
@ -346,12 +355,14 @@ private static void SetupDefaultQualityProfiles(IRepository repository)
|
||||
else
|
||||
{
|
||||
Logger.Debug(String.Format("Updating default QualityProfile: {0}", webdl.Name));
|
||||
webdl.ProfileId = webdlDb.ProfileId;
|
||||
repository.Update(webdl);
|
||||
}
|
||||
|
||||
//Add or Update Bluray
|
||||
Logger.Debug(String.Format("Checking for default QualityProfile: {0}", bluray.Name));
|
||||
if (!repository.Exists<QualityProfile>(i => i.Name == bluray.Name))
|
||||
var blurayDb = repository.Single<QualityProfile>(i => i.Name == bluray.Name);
|
||||
if (blurayDb == null)
|
||||
{
|
||||
Logger.Debug(String.Format("Adding new default QualityProfile: {0}", bluray.Name));
|
||||
repository.Add(bluray);
|
||||
@ -360,6 +371,7 @@ private static void SetupDefaultQualityProfiles(IRepository repository)
|
||||
else
|
||||
{
|
||||
Logger.Debug(String.Format("Updating default QualityProfile: {0}", bluray.Name));
|
||||
bluray.ProfileId = blurayDb.ProfileId;
|
||||
repository.Update(bluray);
|
||||
}
|
||||
}
|
||||
|
@ -12,5 +12,6 @@ public interface IQualityProvider
|
||||
void Update(QualityProfile profile);
|
||||
void Delete(int profileId);
|
||||
List<QualityProfile> GetAllProfiles();
|
||||
QualityProfile Find(int profileId);
|
||||
}
|
||||
}
|
||||
|
@ -48,6 +48,11 @@ public List<QualityProfile> GetAllProfiles()
|
||||
return profiles;
|
||||
}
|
||||
|
||||
public QualityProfile Find(int profileId)
|
||||
{
|
||||
return _sonicRepo.Single<QualityProfile>(q => q.ProfileId == profileId);
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@ -21,19 +21,19 @@ public enum QualityTypes
|
||||
/// <summary>
|
||||
/// SD File (HD Source)
|
||||
/// </summary>
|
||||
BDRip = 2,
|
||||
BDRip = 3,
|
||||
/// <summary>
|
||||
/// HD File (HDTV Source)
|
||||
/// </summary>
|
||||
HDTV = 3,
|
||||
HDTV = 4,
|
||||
/// <summary>
|
||||
/// HD File (Online Source)
|
||||
/// </summary>
|
||||
WEBDL = 4,
|
||||
WEBDL = 5,
|
||||
/// <summary>
|
||||
/// HD File (Blu-ray Source could be 1080p or 720p)
|
||||
/// </summary>
|
||||
Bluray = 5,
|
||||
Bluray = 6,
|
||||
|
||||
}
|
||||
}
|
@ -215,13 +215,13 @@ input[type="text"]:hover
|
||||
background: #ff6;
|
||||
}
|
||||
|
||||
.submitButton
|
||||
.button
|
||||
{
|
||||
border: 1px solid #006;
|
||||
background: #ccf;
|
||||
}
|
||||
|
||||
.submitButton:hover
|
||||
.button:hover
|
||||
{
|
||||
border: 1px solid #f00;
|
||||
background: #eef;
|
||||
|
@ -5,7 +5,8 @@
|
||||
using System.Web;
|
||||
using System.Web.Mvc;
|
||||
using NLog;
|
||||
using NzbDrone.Core.Providers;
|
||||
using NzbDrone.Core.Providers;
|
||||
using NzbDrone.Core.Repository.Quality;
|
||||
using NzbDrone.Web.Models;
|
||||
|
||||
namespace NzbDrone.Web.Controllers
|
||||
@ -98,9 +99,26 @@ public ActionResult Quality()
|
||||
ViewData["viewName"] = "Quality";
|
||||
|
||||
var userProfiles = _qualityProvider.GetAllProfiles().Where(q => q.UserProfile).ToList();
|
||||
var profiles = _qualityProvider.GetAllProfiles().Where(q => q.UserProfile == false).ToList();
|
||||
var profiles = _qualityProvider.GetAllProfiles().ToList();
|
||||
var qualityTypes = new List<QualityTypes>();
|
||||
|
||||
QualityModel model = new QualityModel {Profiles = profiles, UserProfiles = userProfiles};
|
||||
foreach (QualityTypes qual in Enum.GetValues(typeof(QualityTypes)))
|
||||
{
|
||||
qualityTypes.Add(qual);
|
||||
}
|
||||
|
||||
var defaultQualityProfileId = Convert.ToInt32(_configProvider.GetValue("DefaultQualityProfile", profiles[0].ProfileId, true));
|
||||
|
||||
var selectList = new SelectList(profiles, "ProfileId", "Name");
|
||||
|
||||
var model = new QualityModel
|
||||
{
|
||||
Profiles = profiles,
|
||||
UserProfiles = userProfiles,
|
||||
Qualities = qualityTypes,
|
||||
DefaultProfileId = defaultQualityProfileId,
|
||||
SelectList = selectList
|
||||
};
|
||||
|
||||
return View("Index", model);
|
||||
}
|
||||
@ -264,9 +282,9 @@ public ActionResult SaveQuality(QualityModel data)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
|
||||
_configProvider.SetValue("DefaultQualityProfile", data.DefaultProfileId.ToString());
|
||||
}
|
||||
|
||||
catch (Exception e)
|
||||
{
|
||||
Logger.ErrorException(e.Message, e);
|
||||
|
@ -1,7 +1,9 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.Mvc;
|
||||
using NzbDrone.Core.Repository.Quality;
|
||||
|
||||
namespace NzbDrone.Web.Models
|
||||
@ -10,5 +12,11 @@ public class QualityModel
|
||||
{
|
||||
public List<QualityProfile> Profiles { get; set; }
|
||||
public List<QualityProfile> UserProfiles { get; set; }
|
||||
public List<QualityTypes> Qualities { get; set; }
|
||||
|
||||
[DisplayName("Default Quality Profile")]
|
||||
public int DefaultProfileId { get; set; }
|
||||
|
||||
public SelectList SelectList { get; set; }
|
||||
}
|
||||
}
|
@ -60,32 +60,21 @@
|
||||
|
||||
<% using (Html.BeginForm("SaveQuality", "Settings", FormMethod.Post, new { id = "form", name = "form" }))
|
||||
{%>
|
||||
<%: Html.ValidationSummary(true, "Unable to save your settings. Please correct the errors and try again.") %>
|
||||
<fieldset>
|
||||
<legend>Indexers</legend>
|
||||
<%: Html.ValidationSummary(true, "Unable to save your settings. Please correct the errors and try again.") %>
|
||||
|
||||
<div class="editor-label">
|
||||
<%= Html.LabelFor(m => m.DefaultProfileId) %>
|
||||
</div>
|
||||
<div class="editor-field">
|
||||
<%: Html.DropDownListFor(m => m.DefaultProfileId, Model.SelectList)%>
|
||||
<%= Html.ValidationMessageFor(m => m.DefaultProfileId)%>
|
||||
</div>
|
||||
|
||||
<div id="dropdown1">
|
||||
<ul>
|
||||
<li>Quality</li>
|
||||
<li>
|
||||
<ul>
|
||||
<li><a href="#">Argentina</a></li>
|
||||
<li><a href="#">Brazil</a></li>
|
||||
<li><a href="#">Uruguay</a></li>
|
||||
<li><a href="#">France</a></li>
|
||||
<li><a href="#">United Kingdon</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
|
||||
<br />
|
||||
<input type="submit" class="button" value="Save" />
|
||||
</fieldset>
|
||||
|
||||
<%}%>
|
||||
<div id="result"></div>
|
Loading…
Reference in New Issue
Block a user