2011-02-11 01:22:29 +00:00
|
|
|
|
using System;
|
|
|
|
|
using System.ComponentModel;
|
|
|
|
|
using System.ComponentModel.DataAnnotations;
|
|
|
|
|
using System.Web.Mvc;
|
|
|
|
|
using NzbDrone.Core.Model;
|
2012-01-19 04:05:03 +00:00
|
|
|
|
using NzbDrone.Core.Model.Sabnzbd;
|
2012-02-25 21:21:41 +00:00
|
|
|
|
using NzbDrone.Web.Helpers.Validation;
|
2011-02-11 01:22:29 +00:00
|
|
|
|
|
|
|
|
|
namespace NzbDrone.Web.Models
|
|
|
|
|
{
|
2012-01-28 21:43:44 +00:00
|
|
|
|
public class DownloadClientSettingsModel
|
2011-02-11 01:22:29 +00:00
|
|
|
|
{
|
2011-04-10 02:44:01 +00:00
|
|
|
|
public SelectList PrioritySelectList =
|
2012-02-01 23:25:38 +00:00
|
|
|
|
new SelectList(new[] {"Default", "Paused", "Low", "Normal", "High", "Force"});
|
2011-04-10 02:44:01 +00:00
|
|
|
|
|
2011-02-11 01:22:29 +00:00
|
|
|
|
[DataType(DataType.Text)]
|
|
|
|
|
[DisplayName("SABnzbd Host")]
|
2011-04-27 05:09:24 +00:00
|
|
|
|
[Description("Hostname or IP Address running SABnzbd")]
|
2012-02-25 21:21:41 +00:00
|
|
|
|
[RequiredIf("DownloadClient", (int)DownloadClientType.Sabnzbd, ErrorMessage = "Required when Download Client is SABnzbd")]
|
2011-04-10 02:44:01 +00:00
|
|
|
|
public String SabHost { get; set; }
|
2011-02-11 01:22:29 +00:00
|
|
|
|
|
|
|
|
|
[DataType(DataType.Text)]
|
|
|
|
|
[DisplayName("SABnzbd Port")]
|
2011-04-27 05:09:24 +00:00
|
|
|
|
[Description("Port for SABnzbd web interface")]
|
2012-02-25 21:21:41 +00:00
|
|
|
|
[RequiredIf("DownloadClient", (int)DownloadClientType.Sabnzbd, ErrorMessage = "Required when Download Client is SABnzbd")]
|
2011-04-10 02:44:01 +00:00
|
|
|
|
public int SabPort { get; set; }
|
2011-02-11 01:22:29 +00:00
|
|
|
|
|
|
|
|
|
[DataType(DataType.Text)]
|
|
|
|
|
[DisplayName("SABnzbd API Key")]
|
2011-04-27 05:09:24 +00:00
|
|
|
|
[Description("API Key for SABNzbd, Found in Config: General")]
|
2011-02-15 01:20:17 +00:00
|
|
|
|
[DisplayFormat(ConvertEmptyStringToNull = false)]
|
2011-04-10 02:44:01 +00:00
|
|
|
|
public String SabApiKey { get; set; }
|
2011-02-11 01:22:29 +00:00
|
|
|
|
|
|
|
|
|
[DataType(DataType.Text)]
|
|
|
|
|
[DisplayName("SABnzbd Username")]
|
2011-04-27 05:09:24 +00:00
|
|
|
|
[Description("Username for SABnzbd WebUI (Not Required when using APIKey)")]
|
2011-02-15 01:20:17 +00:00
|
|
|
|
[DisplayFormat(ConvertEmptyStringToNull = false)]
|
2011-04-10 02:44:01 +00:00
|
|
|
|
public String SabUsername { get; set; }
|
2011-02-11 01:22:29 +00:00
|
|
|
|
|
|
|
|
|
[DataType(DataType.Text)]
|
|
|
|
|
[DisplayName("SABnzbd Password")]
|
2011-04-27 05:09:24 +00:00
|
|
|
|
[Description("Password for SABnzbd WebUI (Not required when using APIKey)")]
|
2011-02-15 01:20:17 +00:00
|
|
|
|
[DisplayFormat(ConvertEmptyStringToNull = false)]
|
2011-04-10 02:44:01 +00:00
|
|
|
|
public String SabPassword { get; set; }
|
2011-02-11 01:22:29 +00:00
|
|
|
|
|
|
|
|
|
[DataType(DataType.Text)]
|
2011-02-15 01:20:17 +00:00
|
|
|
|
[DisplayFormat(ConvertEmptyStringToNull = false)]
|
2011-03-06 22:27:52 +00:00
|
|
|
|
[DisplayName("SABnzbd TV Category")]
|
2011-04-27 05:09:24 +00:00
|
|
|
|
[Description("Category to use when sending NZBs to SABnzbd")]
|
2011-04-10 02:44:01 +00:00
|
|
|
|
public String SabTvCategory { get; set; }
|
2011-02-11 01:22:29 +00:00
|
|
|
|
|
|
|
|
|
[Required(ErrorMessage = "Please select a valid priority")]
|
|
|
|
|
[DisplayName("SABnzbd Priority")]
|
2011-04-27 05:09:24 +00:00
|
|
|
|
[Description("Priority to use when sending NZBs to SABnzbd")]
|
2012-01-19 04:05:03 +00:00
|
|
|
|
public SabPriorityType SabTvPriority { get; set; }
|
2011-06-07 07:08:37 +00:00
|
|
|
|
|
2012-02-25 21:21:41 +00:00
|
|
|
|
[Required(ErrorMessage = "Required so NzbDrone can sort downloads")]
|
2012-01-28 21:43:44 +00:00
|
|
|
|
[DisplayName("Download Client TV Directory")]
|
2012-02-25 21:21:41 +00:00
|
|
|
|
[Description("The directory where your download client downloads TV shows to")]
|
2011-06-07 07:08:37 +00:00
|
|
|
|
[DisplayFormat(ConvertEmptyStringToNull = false)]
|
2012-01-28 21:43:44 +00:00
|
|
|
|
public string DownloadClientDropDirectory { get; set; }
|
|
|
|
|
|
|
|
|
|
[DisplayName("Blackhole Directory")]
|
|
|
|
|
[Description("The directory where your download client will pickup NZB files")]
|
|
|
|
|
[DisplayFormat(ConvertEmptyStringToNull = false)]
|
2012-02-25 21:21:41 +00:00
|
|
|
|
[RequiredIf("DownloadClient", (int)DownloadClientType.Blackhole, ErrorMessage = "Required when Download Client is Blackhole")]
|
2012-01-28 21:43:44 +00:00
|
|
|
|
public string BlackholeDirectory { get; set; }
|
|
|
|
|
|
|
|
|
|
[DisplayName("Download Client")]
|
|
|
|
|
[Description("What method do you download NZBs with?")]
|
|
|
|
|
public int DownloadClient { get; set; }
|
2011-06-09 01:45:06 +00:00
|
|
|
|
|
2012-08-30 02:33:57 +00:00
|
|
|
|
[DisplayName("Pneumatic Nzb Directory")]
|
|
|
|
|
[Description("Directory to save NZBs for Pneumatic, must be able from XBMC")]
|
|
|
|
|
[DisplayFormat(ConvertEmptyStringToNull = false)]
|
|
|
|
|
[RequiredIf("DownloadClient", (int)DownloadClientType.Pneumatic, ErrorMessage = "Required when Download Client is Blackhole")]
|
|
|
|
|
public string PneumaticDirectory { get; set; }
|
|
|
|
|
|
2011-08-26 17:45:59 +00:00
|
|
|
|
public SelectList SabTvCategorySelectList { get; set; }
|
2012-01-28 21:43:44 +00:00
|
|
|
|
public SelectList DownloadClientSelectList { get; set; }
|
2011-02-11 01:22:29 +00:00
|
|
|
|
}
|
|
|
|
|
}
|