Fixed: Convert Trakt list name to URL slug

pull/4812/head
Stevie Robinson 3 years ago committed by GitHub
parent 245a033ab3
commit d80565f6a9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -165,5 +165,28 @@ namespace NzbDrone.Common.Extensions
{
return source.Contains(value, StringComparer.InvariantCultureIgnoreCase);
}
public static string ToUrlSlug(this string value)
{
//First to lower case
value = value.ToLowerInvariant();
//Remove all accents
value = value.RemoveAccent();
//Replace spaces
value = Regex.Replace(value, @"\s", "-", RegexOptions.Compiled);
//Remove invalid chars
value = Regex.Replace(value, @"[^a-z0-9\s-_]", "", RegexOptions.Compiled);
//Trim dashes from end
value = value.Trim('-', '_');
//Replace double occurences of - or _
value = Regex.Replace(value, @"([-_]){2,}", "$1", RegexOptions.Compiled);
return value;
}
}
}

@ -26,9 +26,7 @@ namespace NzbDrone.Core.ImportLists.Trakt.List
{
var link = Settings.BaseUrl.Trim();
var listName = Settings.Listname.Trim();
link += $"/users/{Settings.Username.Trim()}/lists/{listName}/items/shows?limit={Settings.Limit}";
link += $"/users/{Settings.Username.Trim()}/lists/{Settings.Listname.ToUrlSlug()}/items/shows?limit={Settings.Limit}";
var request = new ImportListRequest($"{link}", HttpAccept.Json);

Loading…
Cancel
Save