public static List<Comment> ReadComments(string blogIds) { List<Comment> commentList = new List<Comment>(); using (var webClient = new WebClient()) { try { webClient.Headers.Add("Rest-User-Token", TelligentAuth()); var requestUrl = GetApiEndPoint("comments.xml?PageSize=100&SortOrder=Descending"); var xml = webClient.DownloadString(requestUrl); var xmlDoc = new XmlDocument(); xmlDoc.LoadXml(xml); XmlNodeList nodes = xmlDoc.SelectNodes("Response/Comments/Comment"); foreach (XmlNode xn in nodes) { XmlNode author = xn.SelectSingleNode("User"); XmlNode app = xn.SelectSingleNode("Content/Application"); XmlNode content = xn.SelectSingleNode("Content"); var commentId = xn["CommentId"].InnerText; var isApproved = xn["IsApproved"].InnerText; var replyCount = xn["ReplyCount"].InnerText; var commentContentTypeId = xn["CommentContentTypeId"].InnerText; var body = xn["Body"].InnerText; var publishedDate = UnderstoodDotOrg.Common.Helpers.DataFormatHelper.FormatDate(xn["CreatedDate"].InnerText); var authorId = author["Id"].InnerText; var authorAvatarUrl = author["AvatarUrl"].InnerText; var authorDisplayName = author["DisplayName"].InnerText; var authorProfileUrl = author["ProfileUrl"].InnerText; var authorUsername = author["Username"].InnerText; var parentTitle = content["HtmlName"].InnerText; if (app["HtmlName"].InnerText != "Articles" && app["HtmlName"].InnerText != "General" && app["HtmlName"].InnerText != "Assistive Tools") { Comment comment = new Comment() { CommentId = commentId, IsApproved = isApproved, ReplyCount = replyCount, CommentContentTypeId = commentContentTypeId, Body = body, PublishedDate = publishedDate, AuthorId = authorId, AuthorAvatarUrl = authorAvatarUrl, AuthorDisplayName = authorDisplayName, AuthorProfileUrl = authorProfileUrl, AuthorUsername = authorUsername, ParentTitle = parentTitle, Url = "~/Community and Events/Blogs/" + app["HtmlName"].InnerText + "/" + parentTitle, }; commentList.Add(comment); } } } catch { } // TODO: add logging } return commentList; }
public static List<Comment> ListUserComments(string username) { List<Comment> commentsList = new List<Comment>(); using (var webClient = new WebClient()) { string adminKeyBase64 = CommunityHelper.TelligentAuth(); try { var userId = ReadUserId(username); webClient.Headers.Add("Rest-User-Token", adminKeyBase64); var requestUrl = GetApiEndPoint(String.Format("comments.xml?PageSize=100&SortBy=CreatedUtcDate&SortOrder=Descending&UserId={0}", userId)); var xml = webClient.DownloadString(requestUrl); var xmlDoc = new XmlDocument(); xmlDoc.LoadXml(xml); XmlNodeList nodes = xmlDoc.SelectNodes("Response/Comments/Comment"); int nodecount = 0; foreach (XmlNode xn in nodes) { Comment comment = new Comment(xn); commentsList.Add(comment); nodecount++; } } catch { } // TODO: add logging } return commentsList; }
//public static List<GroupModel> GetUserGroups(string username) //{ // List<GroupModel> groupsList = new List<GroupModel>(); // using (var webClient = new WebClient()) // { // if (!String.IsNullOrEmpty(username)) // { // username = username.Trim(); // username = username.ToLower(); // string adminKeyBase64 = CommunityHelper.TelligentAuth(); // try // { // webClient.Headers.Add("Rest-User-Token", adminKeyBase64); // //webClient.Headers.Add("Rest-Impersonate-User", userId); // var requestUrl = GetApiEndPoint(String.Format("groups.xml?Username={0}", username)); // var xml = webClient.DownloadString(requestUrl); // var xmlDoc = new XmlDocument(); // xmlDoc.LoadXml(xml); // XmlNodeList nodes = xmlDoc.SelectNodes("Response/Groups/Group"); // foreach (XmlNode xn in nodes) // { // GroupModel group = new GroupModel // { // Title = xn["Name"].InnerText, // Url = "/Community and Events/Groups/" + xn["Name"].InnerText, // Id = xn["Id"].InnerText // }; // groupsList.Add(group); // } // } // catch (Exception ex) { groupsList = null; Sitecore.Diagnostics.Error.LogError("GetuserGroups Error:\n" + ex.Message); } // TODO: add logging // } // } // return groupsList; //} public static List<Comment> ReadComments() { List<Comment> commentList = new List<Comment>(); using (var webClient = new WebClient()) { try { webClient.Headers.Add("Rest-User-Token", TelligentAuth()); var requestUrl = GetApiEndPoint("comments.xml?PageSize=100"); var xml = webClient.DownloadString(requestUrl); var xmlDoc = new XmlDocument(); xmlDoc.LoadXml(xml); XmlNodeList nodes = xmlDoc.SelectNodes("Response/Comments/Comment"); foreach (XmlNode xn in nodes) { Comment comment = new Comment(xn); commentList.Add(comment); } } catch { } // TODO: add logging } return commentList; }
public static Comment ReadComment(string commentId) { var webClient = new WebClient(); Comment comment = null; string adminKeyBase64 = CommunityHelper.TelligentAuth(); if (!String.IsNullOrEmpty(commentId)) { try { webClient.Headers.Add("Rest-User-Token", adminKeyBase64); var requestUrl = GetApiEndPoint(String.Format("comments/{0}.xml", commentId)); var xml = webClient.DownloadString(requestUrl); var xmlDoc = new XmlDocument(); xmlDoc.LoadXml(xml); var node = xmlDoc.SelectSingleNode("Response/Comment"); if (node != null) comment = new Comment(node); } catch (Exception ex) { comment = null; } } return comment; }