reformat EnrichMagnetLink
This commit is contained in:
parent
ae66b40a3d
commit
5de0bac9d5
1 changed files with 9 additions and 3 deletions
|
|
@ -111,7 +111,10 @@ public class Torrents(
|
||||||
|
|
||||||
private async Task<String> EnrichMagnetLink(String magnetLink)
|
private async Task<String> EnrichMagnetLink(String magnetLink)
|
||||||
{
|
{
|
||||||
if (string.IsNullOrWhiteSpace(Settings.Get.General.MagnetTrackerEnrichment)) return magnetLink;
|
if (String.IsNullOrWhiteSpace(Settings.Get.General.MagnetTrackerEnrichment))
|
||||||
|
{
|
||||||
|
return magnetLink;
|
||||||
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
@ -122,19 +125,22 @@ public class Torrents(
|
||||||
var existingTrackers = query.GetValues("tr") ?? [];
|
var existingTrackers = query.GetValues("tr") ?? [];
|
||||||
var allTrackers = existingTrackers.Concat(newTrackers).Distinct(StringComparer.OrdinalIgnoreCase);
|
var allTrackers = existingTrackers.Concat(newTrackers).Distinct(StringComparer.OrdinalIgnoreCase);
|
||||||
|
|
||||||
var trackerQuery = string.Join("&tr=", allTrackers.Select(Uri.EscapeDataString));
|
var trackerQuery = String.Join("&tr=", allTrackers.Select(Uri.EscapeDataString));
|
||||||
if (!string.IsNullOrEmpty(trackerQuery))
|
|
||||||
|
if (!String.IsNullOrEmpty(trackerQuery))
|
||||||
{
|
{
|
||||||
trackerQuery = "&tr=" + trackerQuery;
|
trackerQuery = "&tr=" + trackerQuery;
|
||||||
}
|
}
|
||||||
|
|
||||||
var baseWithoutTrackers = magnetLink.Split(["&tr="], StringSplitOptions.None)[0];
|
var baseWithoutTrackers = magnetLink.Split(["&tr="], StringSplitOptions.None)[0];
|
||||||
var separator = baseWithoutTrackers.Contains('?') ? "&" : "?";
|
var separator = baseWithoutTrackers.Contains('?') ? "&" : "?";
|
||||||
|
|
||||||
return baseWithoutTrackers + separator + trackerQuery.TrimStart('&');
|
return baseWithoutTrackers + separator + trackerQuery.TrimStart('&');
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
logger.LogError(ex, "{Message}, trying to enrich {Magnet}", ex.Message, magnetLink);
|
logger.LogError(ex, "{Message}, trying to enrich {Magnet}", ex.Message, magnetLink);
|
||||||
|
|
||||||
return magnetLink;
|
return magnetLink;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue