public async Task<Listing> GetPostsByUser(string username, int? limit)
{
var maxLimit = (await UserIsGold()) ? 1500 : 100;
var guardedLimit = Math.Min(maxLimit, limit ?? maxLimit);
var targetUri = string.Format("http://www.reddit.com/user/{0}/.json?limit={1}", username, guardedLimit);
try
{
var comments = await _simpleHttpService.SendGet(await GetCurrentLoginCookie(), targetUri);
var newListing = JsonConvert.DeserializeObject<Listing>(comments);
return MaybeFilterForNSFW(newListing);
}
catch (Exception ex)
{
_notificationService.CreateErrorNotification(ex);
return new Listing { Kind = "Listing", Data = new ListingData { Children = new List<Thing>() } };
}
}