public async Task<Listing> GetMoreOnListing(IEnumerable<string> childrenIds, string contentId, string subreddit)
{
var targetUri = "http://www.reddit.com/api/morechildren.json";
if (childrenIds.Count() == 0)
return new Listing
{
Kind = "Listing",
Data = new ListingData()
};
var arguments = new Dictionary<string, string>
{
{"children", string.Join(",", childrenIds) },
{"link_id", contentId },
{"pv_hex", ""},
{"api_type", "json" }
};
if (subreddit != null)
{
arguments.Add("r", subreddit);
}
try
{
var result = await _simpleHttpService.SendPost(await GetCurrentLoginCookie(), arguments, targetUri);
var newListing = new Listing
{
Kind = "Listing",
Data = new ListingData { Children = JsonConvert.DeserializeObject<JsonThing>(result).Json.Data.Things }
};
return MaybeInjectAdvertisements(MaybeFilterForNSFW(newListing));
}
catch (Exception ex)
{
_notificationService.CreateErrorNotification(ex);
return new Listing
{
Kind = "Listing",
Data = new ListingData { Children = new List<Thing>() }
};
}
}