using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using Jackett.Common.Indexers.Abstract; using Jackett.Common.Models; using Jackett.Common.Services.Interfaces; using Jackett.Common.Utils.Clients; using NLog; using static Jackett.Common.Models.IndexerConfig.ConfigurationData; namespace Jackett.Common.Indexers { [ExcludeFromCodeCoverage] public class PrivateHD : AvistazTracker { public override string Id => "privatehd"; public override string Name => "PrivateHD"; public override string Description => "BitTorrent site for High Quality, High Definition (HD) movies and TV Shows"; public override string SiteLink { get; protected set; } = "https://privatehd.to/"; public override TorznabCapabilities TorznabCaps => SetCapabilities(); public PrivateHD(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps, ICacheService cs) : base(configService: configService, client: wc, logger: l, p: ps, cs: cs ) { configData.AddDynamic("Account Inactivity", new DisplayInfoConfigurationItem("Account Inactivity", "To avoid account deletion you must login at least 1 time every 90 days, and you must download at least 1 torrent every 6 months. Simply keeping torrents seeding long term will not protect your account")); } private TorznabCapabilities SetCapabilities() { var caps = new TorznabCapabilities { LimitsDefault = 50, LimitsMax = 50, TvSearchParams = new List { TvSearchParam.Q, TvSearchParam.Season, TvSearchParam.Ep, TvSearchParam.ImdbId, TvSearchParam.TvdbId, TvSearchParam.Genre }, MovieSearchParams = new List { MovieSearchParam.Q, MovieSearchParam.ImdbId, MovieSearchParam.TmdbId, MovieSearchParam.Genre }, TvSearchImdbAvailable = true }; caps.Categories.AddCategoryMapping(1, TorznabCatType.Movies); caps.Categories.AddCategoryMapping(1, TorznabCatType.MoviesUHD); caps.Categories.AddCategoryMapping(1, TorznabCatType.MoviesHD); caps.Categories.AddCategoryMapping(1, TorznabCatType.MoviesSD); caps.Categories.AddCategoryMapping(2, TorznabCatType.TV); caps.Categories.AddCategoryMapping(2, TorznabCatType.TVUHD); caps.Categories.AddCategoryMapping(2, TorznabCatType.TVHD); caps.Categories.AddCategoryMapping(2, TorznabCatType.TVSD); return caps; } } }