public static async Task AddPage(string url) { JsonObject json = await accountManager.makeJsonPageRequest(url); if (json != null) { JsonObject pageinfo = json.GetNamedObject("data"); JsonArray links = pageinfo.GetNamedArray("children"); //string srt = links.GetObjectAt(0).GetNamedObject("data").GetNamedString("subreddit"); string sr = url.Substring(24, url.Length - 29); //srimg = "http://thumbs.reddit.com/" + srt + ".png"; string srimg = "Assets/reddit_logo.png"; SampleDataGroup LinkPage = new SampleDataGroup(url, sr, "", srimg, "/r/all"); //add http request to grab subreddit link for (uint i = 0; i < links.Count; i++) { JsonObject Data = links.GetObjectAt(i).GetNamedObject("data"); string title = Data.GetNamedString("title"); string id = Data.GetNamedString("id"); id = links.GetObjectAt(i).GetNamedString("kind") + "_" + id; string author = Data.GetNamedString("author"); string thumbnail = Data.GetNamedString("thumbnail"); string permalink = Data.GetNamedString("permalink"); string selftext = Data.GetNamedString("selftext"); string subreddit = Data.GetNamedString("subreddit"); int numcomments = (int)Data.GetNamedNumber("num_comments"); DateTime date = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); double sec = Data.GetNamedNumber("created_utc"); date = date.AddSeconds(sec); string linkurl = Data.GetNamedString("url"); //string selftext = links.GetObjectAt(i).GetNamedObject("data").GetNamedString("permalink"); int score = int.Parse(Data.GetNamedNumber("score").ToString()); SampleDataItem ans = new SampleDataItem(id, title, author, thumbnail, permalink, selftext, LinkPage, permalink, linkurl, score, subreddit, date, numcomments); if (thumbnail == "" || selftext != "") { ans.NeedImg = false; } // await ParseComments(ans); LinkPage.Items.Add(ans); if (SampleDataItem.isFVImageSource(ans.Url) && ans.FvImage != null) { LinkPage.Images.Add(ans); } } SampleDataSource._sampleDataSource.AllGroups.Add(LinkPage); } else { //show the user that the page wasn't valid } }
//String uniqueId, String title, String subtitle, String imagePath, String description, String content, SampleDataGroup group //String uniqueId, String title, String subtitle, String imagePath, String description public static async Task ExtendPageAsync(SampleDataGroup sg) { string url = sg.Items.Last().UniqueId; url = "http://www.reddit.com/r/" + sg.Title + "/.json?count=25&after=" + url; JsonObject json = await accountManager.makeJsonPageRequest(url); JsonObject pageinfo = json.GetNamedObject("data"); JsonArray links = pageinfo.GetNamedArray("children"); //add http request to grab subreddit link for (uint i = 0; i < links.Count; i++) { JsonObject Data = links.GetObjectAt(i).GetNamedObject("data"); string title = Data.GetNamedString("title"); string id = Data.GetNamedString("id"); id = links.GetObjectAt(i).GetNamedString("kind") + "_" + id; string author = Data.GetNamedString("author"); string thumbnail = Data.GetNamedString("thumbnail"); string permalink = Data.GetNamedString("permalink"); string selftext = Data.GetNamedString("selftext"); string subreddit = Data.GetNamedString("subreddit"); int numcomments = (int)Data.GetNamedNumber("num_comments"); DateTime date = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); double sec = Data.GetNamedNumber("created_utc"); date = date.AddSeconds(sec); string linkurl = Data.GetNamedString("url"); //string selftext = links.GetObjectAt(i).GetNamedObject("data").GetNamedString("permalink"); int score = int.Parse(Data.GetNamedNumber("score").ToString()); SampleDataItem ans = new SampleDataItem(id, title, author, thumbnail, permalink, selftext, sg, permalink, linkurl, score, subreddit, date, numcomments); if (thumbnail == "" || selftext != "") { ans.NeedImg = false; } sg.Items.Add(ans); if (SampleDataItem.isFVImageSource(ans.Url) && ans.FvImage != null) { sg.Images.Add(ans); } } }