fix(search): preserve configured ticket links
This commit is contained in:
@@ -65,8 +65,8 @@ namespace FasdDesktopUi.Basics.Helper
|
||||
if (relation == null || relation.Type != enumF4sdSearchResultClass.Ticket)
|
||||
return false;
|
||||
|
||||
if (TryGetHttpLink(relation, "TicketLink", out ticketLink) ||
|
||||
TryGetHttpLink(relation, "DirectLinkPreview", out ticketLink))
|
||||
if (TryGetConfiguredLink(relation, "TicketLink", out ticketLink) ||
|
||||
TryGetConfiguredLink(relation, "DirectLinkPreview", out ticketLink))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -90,19 +90,13 @@ namespace FasdDesktopUi.Basics.Helper
|
||||
return true;
|
||||
}
|
||||
|
||||
private static bool TryGetHttpLink(cF4sdApiSearchResultRelation relation, string key, out string ticketLink)
|
||||
private static bool TryGetConfiguredLink(cF4sdApiSearchResultRelation relation, string key, out string ticketLink)
|
||||
{
|
||||
ticketLink = null;
|
||||
if (relation?.Infos?.TryGetValue(key, out var configuredLink) != true || string.IsNullOrWhiteSpace(configuredLink))
|
||||
return false;
|
||||
|
||||
if (!Uri.TryCreate(configuredLink, UriKind.Absolute, out var linkUri) ||
|
||||
(linkUri.Scheme != Uri.UriSchemeHttp && linkUri.Scheme != Uri.UriSchemeHttps))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
ticketLink = linkUri.AbsoluteUri;
|
||||
ticketLink = configuredLink;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user