public IEnumerable <IBlogPostWeightedTag> SelectWeightedTags(int weights) { var serviceContext = Dependencies.GetServiceContext(); var infos = serviceContext.FetchBlogPostTagCountsInWebsite(Website.Id) .Select(c => new BlogPostTagInfo(c.Item1, c.Item2)); var tagCloudData = new TagCloudData(weights, TagInfo.TagComparer, infos); var archivePathGenerator = new WebsiteBlogAggregationArchiveApplicationPathGenerator(Dependencies); return(tagCloudData.Select(e => new BlogPostWeightedTag(e.Name, archivePathGenerator.GetTagPath(e.Name), e.TaggedItemCount, e.Weight))); }
public IEnumerable <IBlogArchiveMonth> SelectArchiveMonths() { var serviceContext = Dependencies.GetServiceContext(); var counts = serviceContext.FetchBlogPostCountsGroupedByMonthInWebsite(Website.Id); var archivePathGenerator = new WebsiteBlogAggregationArchiveApplicationPathGenerator(Dependencies); return(counts.Select(c => { var month = new DateTime(c.Item1, c.Item2, 1, 0, 0, 0, DateTimeKind.Utc); return new BlogArchiveMonth(month, c.Item3, archivePathGenerator.GetMonthPath(month)); }).OrderByDescending(e => e.Month)); }