public ViewBlogPostModelContainer ReadPostForViewByVisitor(string publicationName, int postId) { var content = BlogBiz.ReadPostForViewByVisitor(publicationName, postId); VisitBiz.IncrementContentVisits(content.Id); UnitOfWork.SaveChanges(); return(new ViewBlogPostModelContainer() { BlogInfo = BlogBiz.Read(b => b.Id == content.PublicationId).MapTo <BlogInfoPM>().Single(), Post = content.GetContentInfoWithTextPM(), Tags = content.Tags.Select(tag => tag.GetPresentationModel()).ToList(), ArchiveItems = PublicationBiz.ReadPublicationArchivedItemsCalendar(content.PublicationId.Value, ContentType.BlogPost) .Select(item => new ContentArchiveItemPM(item.Item1, item.Item2)), Links = BlogBiz.ReadBlogLinks(content.PublicationId.Value) .MapTo <BlogLinkPM>() .ToList(), Comments = content.Comments .Where(comment => !comment.IsPrivate) .Select(comment => comment.GetCommentInfoPM()).ToList(), LatestPosts = BlogBiz.ReadUserPublishedPostsForViewByVisitor(content.Publication.CreatorId) .Take(10) .MapTo <ContentInfoWithTextPM>() .ToList() }); }
private BlogHomePageModelContainer ReadBlogHomePageData(Blog blog) { return(new BlogHomePageModelContainer() { BlogInfo = blog.GetBlogInfo(), ArchiveItems = PublicationBiz.ReadPublicationArchivedItemsCalendar(blog.Id, ContentType.BlogPost) .Select(item => new ContentArchiveItemPM(item.Item1, item.Item2)), Links = BlogBiz.ReadBlogLinks(blog.Id) .MapTo <BlogLinkPM>() .ToList(), LatestPosts = BlogBiz.ReadUserPublishedPostsForViewByVisitor(blog.CreatorId) .Take(100) .MapTo <ContentInfoWithTextPM>() .ToList() }); }