MobyDog
09/19/2023, 12:30 PMMobyDog
09/19/2023, 12:30 PMjs
function LoadInvestorNews() {
    $.ajax({
        url: '/Umbraco/Api/InvestorNewsApi/GetInvestorNews',
        async: false,
        type: "GET",
        data: {},
        dataType: "json",
        contentType: "application/json",
        error: function (data) {
            console.log("error loading news" + data);
        },
        success: function (data) {
            console.log("success loading news", data);
            for (i = 0; i < data.length; i++) {
                var html = '<li>' +
                    '<span class="date"><a href="' + data[i].LinkUrl + '" target="_blank">' + data[i].Date + '</a></span> - ' +
                    '<span class="headline"><a href="' + data[i].LinkUrl + '" target="_blank">' + data[i].Header + '</a></span>';
                html += '</li>';
                console.log(html);
                $("#investor-news-list").append(
                    html
                );
            };
        }
    });
}MobyDog
09/19/2023, 12:31 PMcs
public static  List<InvestorNewsJsonItem> GetInvestorNewsJson()
        {
            List<InvestorNewsJsonItem> itemsList = new List<InvestorNewsJsonItem>();
            XDocument xml = GetXml("https://otp.tools.company.com/clients/uk/client/rns/xml-feed.aspx?culture=en-GB");
            
            if (xml != null)
            {                
                try
                {
                    itemsList = xml.Root.Descendants("RNSSummaries").Elements("RNSSummary").Select(node => new InvestorNewsJsonItem
                    {
                        Header = node.Element("Title").Value,
                        Date = DateTime.Parse(node.Element("pubDate").Value).ToString("dd MMM yyyy"),
                        LinkUrl = node.Element("ShareURL").Value,
                    })
                .ToList();
                    foreach (var item in itemsList)
                    {
                        Console.WriteLine($"Header: {item.Header}");                        
                    }
                }
                catch (Exception ex)
                {
                     Console.WriteLine(ex.Message);
                     Console.WriteLine(ex.StackTrace);
                }
            }
           
            return itemsList;
        }
    }MobyDog
09/19/2023, 12:32 PMcs
public class InvestorNewsApiController : UmbracoApiController
    {
        public List<InvestorNewsJsonItem> GetInvestorNews()
        {
            return InvestorNewsLogic.GetInvestorNewsJson();
            
        }
        
    }MobyDog
09/19/2023, 12:44 PMMobyDog
09/19/2023, 12:55 PMMobyDog
09/19/2023, 1:04 PMMobyDog
09/19/2023, 1:07 PMRachel D
09/19/2023, 1:47 PMA hub and casual space for you to interact with fellow community members and learn more about Umbraco!
Powered by