mirror of https://github.com/Jackett/Jackett
Merge pull request #312 from coolius/ipt_alternatelink
Added AlternateLink to IPTorrents
This commit is contained in:
commit
2671cf00e0
|
@ -26,11 +26,11 @@ namespace Jackett.Indexers
|
||||||
private string BrowseUrl { get { return UseLink + "browse.php"; } }
|
private string BrowseUrl { get { return UseLink + "browse.php"; } }
|
||||||
private string LoginUrl { get { return UseLink + "takelogin.php"; } }
|
private string LoginUrl { get { return UseLink + "takelogin.php"; } }
|
||||||
private string LoginReferer { get { return UseLink + "login.php"; } }
|
private string LoginReferer { get { return UseLink + "login.php"; } }
|
||||||
private List<String> KnownURLs = new List<String>{ "https://www.bitsoup.me/","https://www.bitsoup.org/"};
|
private List<String> KnownURLs = new List<String> { "https://www.bitsoup.me/", "https://www.bitsoup.org/" };
|
||||||
|
|
||||||
new NxtGnConfigurationData configData
|
new ConfigurationDataBasicLoginWithAlternateLink configData
|
||||||
{
|
{
|
||||||
get { return (NxtGnConfigurationData)base.configData; }
|
get { return (ConfigurationDataBasicLoginWithAlternateLink)base.configData; }
|
||||||
set { base.configData = value; }
|
set { base.configData = value; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -43,11 +43,11 @@ namespace Jackett.Indexers
|
||||||
client: wc,
|
client: wc,
|
||||||
logger: l,
|
logger: l,
|
||||||
p: ps,
|
p: ps,
|
||||||
configData: new NxtGnConfigurationData())
|
configData: new ConfigurationDataBasicLoginWithAlternateLink())
|
||||||
{
|
{
|
||||||
this.configData.DisplayText.Value = this.DisplayName + " has multiple URLs. The default (" + this.SiteLink + ") can be changed by entering a new value in the box below.";
|
this.configData.Instructions.Value = this.DisplayName + " has multiple URLs. The default (" + this.SiteLink + ") can be changed by entering a new value in the box below.";
|
||||||
this.configData.DisplayText.Value += "The following are some known URLs for " + this.DisplayName;
|
this.configData.Instructions.Value += "The following are some known URLs for " + this.DisplayName;
|
||||||
this.configData.DisplayText.Value += "<ul><li>" + String.Join("</li><li>", this.KnownURLs.ToArray()) + "</li></ul>";
|
this.configData.Instructions.Value += "<ul><li>" + String.Join("</li><li>", this.KnownURLs.ToArray()) + "</li></ul>";
|
||||||
|
|
||||||
//AddCategoryMapping("624", TorznabCatType.Console);
|
//AddCategoryMapping("624", TorznabCatType.Console);
|
||||||
//AddCategoryMapping("307", TorznabCatType.ConsoleNDS);
|
//AddCategoryMapping("307", TorznabCatType.ConsoleNDS);
|
||||||
|
@ -188,11 +188,12 @@ namespace Jackett.Indexers
|
||||||
var queryCollection = new NameValueCollection();
|
var queryCollection = new NameValueCollection();
|
||||||
|
|
||||||
|
|
||||||
queryCollection.Add("search", string.IsNullOrWhiteSpace(searchString)? "" : searchString);
|
queryCollection.Add("search", string.IsNullOrWhiteSpace(searchString) ? "" : searchString);
|
||||||
if (trackerCats.Count > 1)
|
if (trackerCats.Count > 1)
|
||||||
{
|
{
|
||||||
for (var ct = 0; ct < trackerCats.Count; ct++) queryCollection.Add("cat" + (ct+1), trackerCats.ElementAt(ct));
|
for (var ct = 0; ct < trackerCats.Count; ct++) queryCollection.Add("cat" + (ct + 1), trackerCats.ElementAt(ct));
|
||||||
} else
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
queryCollection.Add("cat", (trackerCats.Count == 1 ? trackerCats.ElementAt(0) : "0"));
|
queryCollection.Add("cat", (trackerCats.Count == 1 ? trackerCats.ElementAt(0) : "0"));
|
||||||
}
|
}
|
||||||
|
@ -242,23 +243,5 @@ namespace Jackett.Indexers
|
||||||
OnParseError(results, ex);
|
OnParseError(results, ex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class NxtGnConfigurationData : ConfigurationData
|
|
||||||
{
|
|
||||||
public StringItem Username { get; private set; }
|
|
||||||
public StringItem Password { get; private set; }
|
|
||||||
public DisplayItem DisplayText { get; private set; }
|
|
||||||
public StringItem AlternateLink { get; set; }
|
|
||||||
|
|
||||||
|
|
||||||
public NxtGnConfigurationData()
|
|
||||||
{
|
|
||||||
Username = new StringItem { Name = "Username" };
|
|
||||||
Password = new StringItem { Name = "Password" };
|
|
||||||
DisplayText = new DisplayItem("") { Name = "" };
|
|
||||||
AlternateLink = new StringItem { Name = "AlternateLinks" };
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -21,11 +21,13 @@ namespace Jackett.Indexers
|
||||||
{
|
{
|
||||||
public class IPTorrents : BaseIndexer, IIndexer
|
public class IPTorrents : BaseIndexer, IIndexer
|
||||||
{
|
{
|
||||||
private string BrowseUrl { get { return SiteLink + "t"; } }
|
private string UseLink { get { return (!String.IsNullOrEmpty(this.configData.AlternateLink.Value) ? this.configData.AlternateLink.Value : SiteLink); } }
|
||||||
|
private string BrowseUrl { get { return UseLink + "t"; } }
|
||||||
|
private List<String> KnownURLs = new List<String> { "https://nemo.iptorrents.com/", "https://ipt.rocks/" };
|
||||||
|
|
||||||
new ConfigurationDataBasicLogin configData
|
new ConfigurationDataBasicLoginWithAlternateLink configData
|
||||||
{
|
{
|
||||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
get { return (ConfigurationDataBasicLoginWithAlternateLink)base.configData; }
|
||||||
set { base.configData = value; }
|
set { base.configData = value; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,8 +40,12 @@ namespace Jackett.Indexers
|
||||||
client: wc,
|
client: wc,
|
||||||
logger: l,
|
logger: l,
|
||||||
p: ps,
|
p: ps,
|
||||||
configData: new ConfigurationDataBasicLogin())
|
configData: new ConfigurationDataBasicLoginWithAlternateLink())
|
||||||
{
|
{
|
||||||
|
this.configData.Instructions.Value = this.DisplayName + " has multiple URLs. The default (" + this.SiteLink + ") can be changed by entering a new value in the box below.";
|
||||||
|
this.configData.Instructions.Value += "The following are some known URLs for " + this.DisplayName;
|
||||||
|
this.configData.Instructions.Value += "<ul><li>" + String.Join("</li><li>", this.KnownURLs.ToArray()) + "</li></ul>";
|
||||||
|
|
||||||
AddCategoryMapping(72, TorznabCatType.Movies);
|
AddCategoryMapping(72, TorznabCatType.Movies);
|
||||||
AddCategoryMapping(77, TorznabCatType.MoviesSD);
|
AddCategoryMapping(77, TorznabCatType.MoviesSD);
|
||||||
AddCategoryMapping(89, TorznabCatType.MoviesSD);
|
AddCategoryMapping(89, TorznabCatType.MoviesSD);
|
||||||
|
@ -92,9 +98,9 @@ namespace Jackett.Indexers
|
||||||
};
|
};
|
||||||
var request = new Utils.Clients.WebRequest()
|
var request = new Utils.Clients.WebRequest()
|
||||||
{
|
{
|
||||||
Url = SiteLink,
|
Url = UseLink,
|
||||||
Type = RequestType.POST,
|
Type = RequestType.POST,
|
||||||
Referer = SiteLink,
|
Referer = UseLink,
|
||||||
PostData = pairs
|
PostData = pairs
|
||||||
};
|
};
|
||||||
var response = await webclient.GetString(request);
|
var response = await webclient.GetString(request);
|
||||||
|
@ -156,7 +162,7 @@ namespace Jackett.Indexers
|
||||||
}
|
}
|
||||||
|
|
||||||
release.Description = release.Title;
|
release.Description = release.Title;
|
||||||
release.Guid = new Uri(SiteLink + qTitleLink.Attr("href").Substring(1));
|
release.Guid = new Uri(UseLink + qTitleLink.Attr("href").Substring(1));
|
||||||
release.Comments = release.Guid;
|
release.Comments = release.Guid;
|
||||||
|
|
||||||
var descString = qRow.Find(".t_ctime").Text();
|
var descString = qRow.Find(".t_ctime").Text();
|
||||||
|
@ -165,7 +171,7 @@ namespace Jackett.Indexers
|
||||||
release.PublishDate = DateTimeUtil.FromTimeAgo(dateString);
|
release.PublishDate = DateTimeUtil.FromTimeAgo(dateString);
|
||||||
|
|
||||||
var qLink = row.ChildElements.ElementAt(3).Cq().Children("a");
|
var qLink = row.ChildElements.ElementAt(3).Cq().Children("a");
|
||||||
release.Link = new Uri(SiteLink + HttpUtility.UrlEncode(qLink.Attr("href").TrimStart('/')));
|
release.Link = new Uri(UseLink + HttpUtility.UrlEncode(qLink.Attr("href").TrimStart('/')));
|
||||||
|
|
||||||
var sizeStr = row.ChildElements.ElementAt(5).Cq().Text();
|
var sizeStr = row.ChildElements.ElementAt(5).Cq().Text();
|
||||||
release.Size = ReleaseInfo.GetBytes(sizeStr);
|
release.Size = ReleaseInfo.GetBytes(sizeStr);
|
||||||
|
|
|
@ -231,6 +231,7 @@
|
||||||
<Compile Include="Models\IndexerConfig\ConfigurationDataBasicLoginWithFilter.cs" />
|
<Compile Include="Models\IndexerConfig\ConfigurationDataBasicLoginWithFilter.cs" />
|
||||||
<Compile Include="Models\IndexerConfig\ConfigurationDataAPIKey.cs" />
|
<Compile Include="Models\IndexerConfig\ConfigurationDataAPIKey.cs" />
|
||||||
<Compile Include="Models\IndexerConfig\ConfigurationDataBasicLoginWithRSSAndDisplay.cs" />
|
<Compile Include="Models\IndexerConfig\ConfigurationDataBasicLoginWithRSSAndDisplay.cs" />
|
||||||
|
<Compile Include="Models\IndexerConfig\ConfigurationDataBasicLoginWithAlternateLink.cs" />
|
||||||
<Compile Include="Models\ManualSearchResult.cs" />
|
<Compile Include="Models\ManualSearchResult.cs" />
|
||||||
<Compile Include="Indexers\TVChaosUK.cs" />
|
<Compile Include="Indexers\TVChaosUK.cs" />
|
||||||
<Compile Include="Indexers\NCore.cs" />
|
<Compile Include="Indexers\NCore.cs" />
|
||||||
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
using Newtonsoft.Json.Linq;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace Jackett.Models.IndexerConfig
|
||||||
|
{
|
||||||
|
public class ConfigurationDataBasicLoginWithAlternateLink : ConfigurationData
|
||||||
|
{
|
||||||
|
public StringItem Username { get; private set; }
|
||||||
|
public StringItem Password { get; private set; }
|
||||||
|
public DisplayItem Instructions { get; private set; }
|
||||||
|
public StringItem AlternateLink { get; set; }
|
||||||
|
|
||||||
|
public ConfigurationDataBasicLoginWithAlternateLink(string instructionMessageOptional = null)
|
||||||
|
{
|
||||||
|
Username = new StringItem { Name = "Username" };
|
||||||
|
Password = new StringItem { Name = "Password" };
|
||||||
|
Instructions = new DisplayItem(instructionMessageOptional) { Name = "" };
|
||||||
|
AlternateLink = new StringItem { Name = "Alternate Link" };
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue