diff --git a/Clients/CompatApiClient/POCOs/CompatResult.cs b/Clients/CompatApiClient/POCOs/CompatResult.cs index 1d1c1a7f..dc0cfbe8 100644 --- a/Clients/CompatApiClient/POCOs/CompatResult.cs +++ b/Clients/CompatApiClient/POCOs/CompatResult.cs @@ -28,6 +28,8 @@ public class TitleInfo public string AlternativeTitle; [JsonPropertyName("wiki-title")] public string WikiTitle; + [JsonPropertyName("wiki-id")] + public int? WikiId; public string Status; public string Date; public int Thread; diff --git a/CompatBot/Utils/ResultFormatters/TitleInfoFormatter.cs b/CompatBot/Utils/ResultFormatters/TitleInfoFormatter.cs index daacf314..0de8522a 100644 --- a/CompatBot/Utils/ResultFormatters/TitleInfoFormatter.cs +++ b/CompatBot/Utils/ResultFormatters/TitleInfoFormatter.cs @@ -90,17 +90,19 @@ internal static class TitleInfoFormatter var desc = $"{info.Status} since {info.ToUpdated() ?? "forever"}"; if (info.Pr > 0) desc += $" (PR {info.ToPrString()})"; - if (!forLog && !string.IsNullOrEmpty(info.AlternativeTitle)) - desc = info.AlternativeTitle + Environment.NewLine + desc; - if (!string.IsNullOrEmpty(info.WikiTitle)) - desc += $"{(forLog ? ", " : Environment.NewLine)}[Wiki Page](https://wiki.rpcs3.net/index.php?title={Uri.EscapeDataString(info.WikiTitle)})"; + if (!forLog && info.AlternativeTitle is {Length: >0}) + desc = info.AlternativeTitle + '\n' + desc; + if (info.WikiId > 0) + desc += $"{(forLog ? ", " : "\n")}[Wiki Page](https://wiki.rpcs3.net/index.php?curid={info.WikiId})"; + else if (info.WikiTitle is {Length: >0}) + desc += $"{(forLog ? ", " : "\n")}[Wiki Page](https://wiki.rpcs3.net/index.php?title={Uri.EscapeDataString(info.WikiTitle)})"; if (info.UsingLocalCache == true) desc += " (cached)"; var cacheTitle = info.Title ?? gameTitle; - if (!string.IsNullOrEmpty(cacheTitle)) + if (cacheTitle is {Length: >0}) StatsStorage.IncGameStat(cacheTitle); var title = $"{productCodePart}{cacheTitle?.Trim(200)}{onlineOnlyPart}"; - if (string.IsNullOrEmpty(title)) + if (title is not {Length: >0}) desc = ""; var result = new DiscordEmbedBuilder {