mirror of
https://github.com/wabbajack-tools/wabbajack.git
synced 2024-08-30 18:42:17 +00:00
Merge pull request #420 from erri120/tesalliance-support
Added Tesalliance Support
This commit is contained in:
commit
9ead688696
@ -29,8 +29,7 @@ namespace Wabbajack.Lib
|
||||
typeof(BA2FileEntryState), typeof(MediaFireDownloader.State), typeof(ArchiveMeta),
|
||||
typeof(PropertyFile), typeof(SteamMeta), typeof(SteamWorkshopDownloader), typeof(SteamWorkshopDownloader.State),
|
||||
typeof(LoversLabDownloader.State), typeof(GameFileSourceDownloader.State), typeof(VectorPlexusDownloader.State),
|
||||
typeof(DeadlyStreamDownloader.State), typeof(AFKModsDownloader.State)
|
||||
|
||||
typeof(DeadlyStreamDownloader.State), typeof(AFKModsDownloader.State), typeof(TESAllianceDownloader.State)
|
||||
},
|
||||
};
|
||||
Config.VersionTolerance.Mode = VersionToleranceMode.Standard;
|
||||
|
@ -6,7 +6,7 @@ namespace Wabbajack.Lib.Downloaders
|
||||
{
|
||||
#region INeedsDownload
|
||||
public override string SiteName => "AFK Mods";
|
||||
public override Uri SiteURL => new Uri("https://www.afkmods.com");
|
||||
public override Uri SiteURL => new Uri("https://www.afkmods.com/index.php?");
|
||||
public override Uri IconUri => new Uri("https://www.afkmods.com/favicon.ico");
|
||||
#endregion
|
||||
|
||||
|
@ -24,7 +24,8 @@ namespace Wabbajack.Lib.Downloaders
|
||||
typeof(SteamWorkshopDownloader.State),
|
||||
typeof(VectorPlexusDownloader.State),
|
||||
typeof(DeadlyStreamDownloader.State),
|
||||
typeof(AFKModsDownloader.State)
|
||||
typeof(AFKModsDownloader.State),
|
||||
typeof(TESAllianceDownloader.State)
|
||||
};
|
||||
public static Dictionary<string, Type> NameToType { get; set; }
|
||||
public static Dictionary<Type, string> TypeToName { get; set; }
|
||||
|
@ -21,6 +21,7 @@ namespace Wabbajack.Lib.Downloaders
|
||||
{
|
||||
public override string SiteName { get; }
|
||||
public override Uri SiteURL { get; }
|
||||
|
||||
public async Task<AbstractDownloadState> GetDownloaderState(dynamic archiveINI)
|
||||
{
|
||||
Uri url = DownloaderUtils.GetDirectURL(archiveINI);
|
||||
@ -41,6 +42,9 @@ namespace Wabbajack.Lib.Downloaders
|
||||
public string FileID { get; set; }
|
||||
public string FileName { get; set; }
|
||||
|
||||
private static bool IsHTTPS => Downloader.SiteURL.AbsolutePath.StartsWith("https://");
|
||||
private static string URLPrefix => IsHTTPS ? "https://" : "http://";
|
||||
|
||||
public override object[] PrimaryKey
|
||||
{
|
||||
get
|
||||
@ -74,11 +78,11 @@ namespace Wabbajack.Lib.Downloaders
|
||||
string csrfurl;
|
||||
if (FileID == null)
|
||||
{
|
||||
csrfurl = $"https://{downloader.SiteURL.Host}/files/file/{FileName}/?do=download";
|
||||
csrfurl = $"{URLPrefix}{downloader.SiteURL.Host}/files/file/{FileName}/?do=download";
|
||||
}
|
||||
else
|
||||
{
|
||||
csrfurl = $"https://{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&r={FileID}";
|
||||
csrfurl = $"{URLPrefix}{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&r={FileID}";
|
||||
}
|
||||
var html = await downloader.AuthedClient.GetStringAsync(csrfurl);
|
||||
|
||||
@ -92,9 +96,9 @@ namespace Wabbajack.Lib.Downloaders
|
||||
|
||||
string url;
|
||||
if (FileID == null)
|
||||
url = $"https://{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&confirm=1&t=1&csrfKey={csrfKey}";
|
||||
url = $"{URLPrefix}{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&confirm=1&t=1&csrfKey={csrfKey}";
|
||||
else
|
||||
url = $"https://{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&r={FileID}&confirm=1&t=1&csrfKey={csrfKey}";
|
||||
url = $"{URLPrefix}{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&r={FileID}&confirm=1&t=1&csrfKey={csrfKey}";
|
||||
|
||||
|
||||
var streamResult = await downloader.AuthedClient.GetAsync(url);
|
||||
@ -150,7 +154,7 @@ namespace Wabbajack.Lib.Downloaders
|
||||
public override string GetReportEntry(Archive a)
|
||||
{
|
||||
var downloader = (INeedsLogin)GetDownloader();
|
||||
return $"* {((INeedsLogin)GetDownloader()).SiteName} - [{a.Name}](https://{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&r={FileID})";
|
||||
return $"* {((INeedsLogin)GetDownloader()).SiteName} - [{a.Name}]({URLPrefix}{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&r={FileID})";
|
||||
}
|
||||
|
||||
public override string[] GetMetaIni()
|
||||
@ -161,12 +165,12 @@ namespace Wabbajack.Lib.Downloaders
|
||||
return new[]
|
||||
{
|
||||
"[General]",
|
||||
$"directURL=https://{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&r={FileID}&confirm=1&t=1"
|
||||
$"directURL={URLPrefix}{downloader.SiteURL.Host}/files/file/{FileName}/?do=download&r={FileID}&confirm=1&t=1"
|
||||
};
|
||||
return new[]
|
||||
{
|
||||
"[General]",
|
||||
$"directURL=https://{downloader.SiteURL.Host}/files/file/{FileName}"
|
||||
$"directURL={URLPrefix}{downloader.SiteURL.Host}/files/file/{FileName}"
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -21,6 +21,7 @@ namespace Wabbajack.Lib.Downloaders
|
||||
new VectorPlexusDownloader(),
|
||||
new DeadlyStreamDownloader(),
|
||||
new AFKModsDownloader(),
|
||||
new TESAllianceDownloader(),
|
||||
new HTTPDownloader(),
|
||||
new ManualDownloader(),
|
||||
};
|
||||
|
20
Wabbajack.Lib/Downloaders/TESAllianceDownloader.cs
Normal file
20
Wabbajack.Lib/Downloaders/TESAllianceDownloader.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using System;
|
||||
|
||||
namespace Wabbajack.Lib.Downloaders
|
||||
{
|
||||
public class TESAllianceDownloader : AbstractIPS4Downloader<TESAllianceDownloader, TESAllianceDownloader.State>
|
||||
{
|
||||
#region INeedsDownload
|
||||
public override string SiteName => "TESAlliance";
|
||||
public override Uri SiteURL => new Uri("http://tesalliance.org/forums/index.php?");
|
||||
public override Uri IconUri => new Uri("http://tesalliance.org/favicon.ico");
|
||||
#endregion
|
||||
|
||||
public TESAllianceDownloader() : base(new Uri("http://tesalliance.org/forums/index.php?/login/"),
|
||||
"tesalliance", "tesalliance.org")
|
||||
{
|
||||
}
|
||||
|
||||
public class State : State<TESAllianceDownloader>{}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user