New: (TorrentLeech) Add VIP Expiration

Closes #419
bonus- sort en.json
pull/459/head
bakerboy448 3 years ago
parent 03f821f484
commit 46e1cce632

@ -329,6 +329,14 @@ namespace NzbDrone.Core.Indexers.Definitions
{ {
RuleFor(c => c.Username).NotEmpty(); RuleFor(c => c.Username).NotEmpty();
RuleFor(c => c.Password).NotEmpty(); RuleFor(c => c.Password).NotEmpty();
RuleFor(c => c.VipExpiration).Must(c => c.IsValidDate())
.When(c => c.VipExpiration.IsNotNullOrWhiteSpace())
.WithMessage("Correctly formatted date is required");
RuleFor(c => c.VipExpiration).Must(c => c.IsFutureDate())
.When(c => c.VipExpiration.IsNotNullOrWhiteSpace())
.WithMessage("Must be a future date");
} }
} }
@ -354,7 +362,10 @@ namespace NzbDrone.Core.Indexers.Definitions
[FieldDefinition(4, Label = "FreeLeech Only", Type = FieldType.Checkbox, Advanced = true, HelpText = "Search Freeleech torrents only")] [FieldDefinition(4, Label = "FreeLeech Only", Type = FieldType.Checkbox, Advanced = true, HelpText = "Search Freeleech torrents only")]
public bool FreeLeechOnly { get; set; } public bool FreeLeechOnly { get; set; }
[FieldDefinition(5)] [FieldDefinition(5, Label = "VIP Expiration", HelpText = "Enter date (yyyy-mm-dd) for VIP Expiration or blank, Prowlarr will notify 1 week from expiration of VIP")]
public string VipExpiration { get; set; }
[FieldDefinition(6)]
public IndexerBaseSettings BaseSettings { get; set; } = new IndexerBaseSettings(); public IndexerBaseSettings BaseSettings { get; set; } = new IndexerBaseSettings();
public NzbDroneValidationResult Validate() public NzbDroneValidationResult Validate()

@ -191,16 +191,18 @@
"IndexerPriority": "Indexer Priority", "IndexerPriority": "Indexer Priority",
"IndexerPriorityHelpText": "Indexer Priority from 1 (Highest) to 50 (Lowest). Default: 25.", "IndexerPriorityHelpText": "Indexer Priority from 1 (Highest) to 50 (Lowest). Default: 25.",
"IndexerProxies": "Indexer Proxies", "IndexerProxies": "Indexer Proxies",
"IndexerSettingsSummary": "Configure various global Indexer settings including Proxies.",
"IndexerProxyStatusCheckAllClientMessage": "All proxies are unavailable due to failures", "IndexerProxyStatusCheckAllClientMessage": "All proxies are unavailable due to failures",
"IndexerProxyStatusCheckSingleClientMessage": "Proxies unavailable due to failures: {0}", "IndexerProxyStatusCheckSingleClientMessage": "Proxies unavailable due to failures: {0}",
"IndexerQuery": "Indexer Query", "IndexerQuery": "Indexer Query",
"IndexerRss": "Indexer Rss", "IndexerRss": "Indexer Rss",
"Indexers": "Indexers", "Indexers": "Indexers",
"IndexerSettingsSummary": "Configure various global Indexer settings including Proxies.",
"IndexersSelectedInterp": "{0} Indexer(s) Selected", "IndexersSelectedInterp": "{0} Indexer(s) Selected",
"IndexerStatusCheckAllClientMessage": "All indexers are unavailable due to failures", "IndexerStatusCheckAllClientMessage": "All indexers are unavailable due to failures",
"IndexerStatusCheckSingleClientMessage": "Indexers unavailable due to failures: {0}", "IndexerStatusCheckSingleClientMessage": "Indexers unavailable due to failures: {0}",
"IndexerTagsHelpText": "Use tags to specify default clients, specify Indexer Proxies, or just to organize your indexers.", "IndexerTagsHelpText": "Use tags to specify default clients, specify Indexer Proxies, or just to organize your indexers.",
"IndexerVipCheckExpiredClientMessage": "Indexer VIP benefits have expired: {0}",
"IndexerVipCheckExpiringClientMessage": "Indexer VIP benefits expiring soon: {0}",
"Info": "Info", "Info": "Info",
"InteractiveSearch": "Interactive Search", "InteractiveSearch": "Interactive Search",
"Interval": "Interval", "Interval": "Interval",
@ -239,8 +241,6 @@
"Name": "Name", "Name": "Name",
"NetCore": ".NET", "NetCore": ".NET",
"New": "New", "New": "New",
"IndexerVipCheckExpiredClientMessage": "Indexer VIP benefits have expired: {0}",
"IndexerVipCheckExpiringClientMessage": "Indexer VIP benefits expiring soon: {0}",
"NoBackupsAreAvailable": "No backups are available", "NoBackupsAreAvailable": "No backups are available",
"NoChange": "No Change", "NoChange": "No Change",
"NoChanges": "No Changes", "NoChanges": "No Changes",

Loading…
Cancel
Save