parent
99728a604d
commit
1d339ad4f1
@ -1,65 +0,0 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1" ?>
|
||||
<rss version="0.91">
|
||||
<channel>
|
||||
<ttl>10</ttl>
|
||||
<title>BitMeTV.ORG</title>
|
||||
<link>http://www.bitmetv.org</link>
|
||||
<description>This is a private - by registration only - website. You can help keep it alive by donating: http://www.bitmetv.org/donate.php</description>
|
||||
<language>en-usde</language>
|
||||
<copyright>Copyright © 2004 - 2007 BitMeTV.ORG</copyright>
|
||||
<webMaster>noreply@bitmetv.org</webMaster>
|
||||
<image>
|
||||
<title>BitMeTV.ORG</title>
|
||||
<url>http://www.bitmetv.org/favicon.ico</url>
|
||||
<link>http://www.bitmetv.org</link>
|
||||
<width>16</width>
|
||||
<height>16</height>
|
||||
<description>This is a private - by registration only - website. You can help keep it alive by donating: http://www.bitmetv.org/donate.php</description>
|
||||
</image>
|
||||
<item>
|
||||
<title>Total.Divas.S02E08.HDTV.x264-CRiMSON</title>
|
||||
<link>http://www.bitmetv.org/download.php/12/Total.Divas.S02E08.HDTV.x264-CRiMSON.torrent</link>
|
||||
<pubDate>Tue, 13 May 2014 17:04:29 -0000</pubDate>
|
||||
<description>
|
||||
Category: (Reality TV - Un-scripted)
|
||||
Size: 376.71 MB
|
||||
</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Aqua.Teen.Hunger.Force.S10.INTERNAL.HDTV.x264-BitMeTV</title>
|
||||
<link>http://www.bitmetv.org/download.php/34/Aqua.Teen.Hunger.Force.S10.INTERNAL.HDTV.x264-BitMeTV.torrent</link>
|
||||
<pubDate>Tue, 13 May 2014 17:03:12 -0000</pubDate>
|
||||
<description>
|
||||
Category: (Adult Swim)
|
||||
Size: 725.46 MB
|
||||
</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Antiques.Roadshow.US.S18E16.720p.HDTV.x264-BAJSKORV</title>
|
||||
<link>http://www.bitmetv.org/download.php/56/Antiques.Roadshow.US.S18E16.720p.HDTV.x264-BAJSKORV.torrent</link>
|
||||
<pubDate>Tue, 13 May 2014 16:47:05 -0000</pubDate>
|
||||
<description>
|
||||
Category: (Reality TV - Un-scripted)
|
||||
Size: 960.15 MB
|
||||
</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Seth.Meyers.2014.05.12.Chris.O.Dowd-Emma.Roberts.HDTV.x264-CROOKS</title>
|
||||
<link>http://www.bitmetv.org/download.php/78/Seth.Meyers.2014.05.12.Chris.O.Dowd-Emma.Roberts.HDTV.x264-CROOKS.torrent</link>
|
||||
<pubDate>Tue, 13 May 2014 16:01:21 -0000</pubDate>
|
||||
<description>
|
||||
Category: Seth Meyers
|
||||
Size: 301.31 MB
|
||||
</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>The.Mole.Australia.Season.4</title>
|
||||
<link>http://www.bitmetv.org/download.php/910/The%20Mole%20Australia%20-%20Season%204.torrent</link>
|
||||
<pubDate>Tue, 13 May 2014 15:52:54 -0000</pubDate>
|
||||
<description>
|
||||
Category: (Reality TV - Competitive)
|
||||
Size: 2.13 GB
|
||||
</description>
|
||||
</item>
|
||||
</channel>
|
||||
</rss>
|
@ -1,32 +0,0 @@
|
||||
using NzbDrone.Common.Http;
|
||||
using NzbDrone.Core.Configuration;
|
||||
using NLog;
|
||||
using NzbDrone.Core.Parser;
|
||||
|
||||
namespace NzbDrone.Core.Indexers.BitMeTv
|
||||
{
|
||||
public class BitMeTv : HttpIndexerBase<BitMeTvSettings>
|
||||
{
|
||||
public override string Name => "BitMeTV";
|
||||
|
||||
public override DownloadProtocol Protocol => DownloadProtocol.Torrent;
|
||||
public override bool SupportsSearch => false;
|
||||
public override int PageSize => 0;
|
||||
|
||||
public BitMeTv(IHttpClient httpClient, IIndexerStatusService indexerStatusService, IConfigService configService, IParsingService parsingService, Logger logger)
|
||||
: base(httpClient, indexerStatusService, configService, parsingService, logger)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public override IIndexerRequestGenerator GetRequestGenerator()
|
||||
{
|
||||
return new BitMeTvRequestGenerator() { Settings = Settings };
|
||||
}
|
||||
|
||||
public override IParseIndexerResponse GetParser()
|
||||
{
|
||||
return new TorrentRssParser() { ParseSizeInDescription = true };
|
||||
}
|
||||
}
|
||||
}
|
@ -1,60 +0,0 @@
|
||||
using System.Text.RegularExpressions;
|
||||
using FluentValidation;
|
||||
using NzbDrone.Core.Annotations;
|
||||
using NzbDrone.Core.Validation;
|
||||
|
||||
namespace NzbDrone.Core.Indexers.BitMeTv
|
||||
{
|
||||
public class BitMeTvSettingsValidator : AbstractValidator<BitMeTvSettings>
|
||||
{
|
||||
public BitMeTvSettingsValidator()
|
||||
{
|
||||
RuleFor(c => c.BaseUrl).ValidRootUrl();
|
||||
RuleFor(c => c.UserId).NotEmpty();
|
||||
RuleFor(c => c.RssPasskey).NotEmpty();
|
||||
|
||||
RuleFor(c => c.Cookie).NotEmpty();
|
||||
|
||||
RuleFor(c => c.Cookie)
|
||||
.Matches(@"pass=[0-9a-f]{32}", RegexOptions.IgnoreCase)
|
||||
.WithMessage("Wrong pattern")
|
||||
.AsWarning();
|
||||
|
||||
RuleFor(c => c.SeedCriteria).SetValidator(_ => new SeedCriteriaSettingsValidator());
|
||||
}
|
||||
}
|
||||
|
||||
public class BitMeTvSettings : ITorrentIndexerSettings
|
||||
{
|
||||
private static readonly BitMeTvSettingsValidator Validator = new BitMeTvSettingsValidator();
|
||||
|
||||
public BitMeTvSettings()
|
||||
{
|
||||
BaseUrl = "https://www.bitmetv.org";
|
||||
MinimumSeeders = IndexerDefaults.MINIMUM_SEEDERS;
|
||||
}
|
||||
|
||||
[FieldDefinition(0, Label = "Website URL")]
|
||||
public string BaseUrl { get; set; }
|
||||
|
||||
[FieldDefinition(1, Label = "UserId")]
|
||||
public string UserId { get; set; }
|
||||
|
||||
[FieldDefinition(2, Label = "RSS Passkey")]
|
||||
public string RssPasskey { get; set; }
|
||||
|
||||
[FieldDefinition(3, Label = "Cookie", HelpText = "BitMeTv uses a login cookie needed to access the rss, you'll have to retrieve it via a browser.")]
|
||||
public string Cookie { get; set; }
|
||||
|
||||
[FieldDefinition(4, Type = FieldType.Number, Label = "Minimum Seeders", HelpText = "Minimum number of seeders required.", Advanced = true)]
|
||||
public int MinimumSeeders { get; set; }
|
||||
|
||||
[FieldDefinition(5)]
|
||||
public SeedCriteriaSettings SeedCriteria { get; } = new SeedCriteriaSettings();
|
||||
|
||||
public NzbDroneValidationResult Validate()
|
||||
{
|
||||
return new NzbDroneValidationResult(Validator.Validate(this));
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in new issue