public static string GetEpicData(string gameName) { using (var client = new WebStoreClient()) { string Description = string.Empty; var catalogs = client.QuerySearch(gameName).GetAwaiter().GetResult(); if (catalogs.HasItems()) { var product = client.GetProductInfo(catalogs[0].productSlug, PlayniteLanguage).GetAwaiter().GetResult(); if (product.pages.HasItems()) { var page = product.pages.FirstOrDefault(a => a.type == "productHome"); if (page == null) { page = product.pages[0]; } Description = page.data.about.description; if (!Description.IsNullOrEmpty()) { Description = Description.Replace("\n", "\n<br>"); Description = Markup.MarkdownToHtml(Description); } } } return(Description); } }
public static string GetEpicData(string gameName) { using (var client = new WebStoreClient()) { string Description = string.Empty; var catalogs = client.QuerySearch(gameName).GetAwaiter().GetResult(); if (catalogs.HasItems()) { var product = client.GetProductInfo(catalogs[0].productSlug, PlayniteLanguage).GetAwaiter().GetResult(); if (product.pages.HasItems()) { var page = product.pages.FirstOrDefault(a => a.type is string type && type == "productHome"); if (page == null) { page = product.pages[0]; } Description = page.data.about.description; if (!Description.IsNullOrEmpty()) { Description = Description.Replace("\n", "\n<br>"); Description = Markup.MarkdownToHtml(Description); Description = Regex.Replace( Description, "!\\[[a-zA-Z0-9- -_]*\\][\\s]*\\(((ftp|http|https):\\/\\/(\\w+:{0,1}\\w*@)?(\\S+)(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))?)\\)", "<img src=\"$1\"/>"); } } } return(Description); } }