mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-12-03 03:58:13 +08:00
Optimizing Comments display in Admin
--HG-- branch : 1.x
This commit is contained in:
@@ -180,13 +180,13 @@ namespace Orchard.Blogs.Controllers {
|
|||||||
if (blogPart == null)
|
if (blogPart == null)
|
||||||
return HttpNotFound();
|
return HttpNotFound();
|
||||||
|
|
||||||
var blogPosts = _blogPostService.Get(blogPart, pager.GetStartIndex(), pager.PageSize, VersionOptions.Latest)
|
var blogPosts = _blogPostService.Get(blogPart, pager.GetStartIndex(), pager.PageSize, VersionOptions.Latest).ToArray();
|
||||||
.Select(bp => _contentManager.BuildDisplay(bp, "SummaryAdmin"));
|
var blogPostsShapes = blogPosts.Select(bp => _contentManager.BuildDisplay(bp, "SummaryAdmin")).ToArray();
|
||||||
|
|
||||||
dynamic blog = Services.ContentManager.BuildDisplay(blogPart, "DetailAdmin");
|
dynamic blog = Services.ContentManager.BuildDisplay(blogPart, "DetailAdmin");
|
||||||
|
|
||||||
var list = Shape.List();
|
var list = Shape.List();
|
||||||
list.AddRange(blogPosts);
|
list.AddRange(blogPostsShapes);
|
||||||
blog.Content.Add(Shape.Parts_Blogs_BlogPost_ListAdmin(ContentItems: list), "5");
|
blog.Content.Add(Shape.Parts_Blogs_BlogPost_ListAdmin(ContentItems: list), "5");
|
||||||
|
|
||||||
var totalItemCount = _blogPostService.PostCount(blogPart, VersionOptions.Latest);
|
var totalItemCount = _blogPostService.PostCount(blogPart, VersionOptions.Latest);
|
||||||
|
|||||||
@@ -18,14 +18,16 @@ namespace Orchard.Comments.Drivers {
|
|||||||
if (part.CommentsShown == false)
|
if (part.CommentsShown == false)
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
|
var commentsForCommentedContent = _commentService.GetCommentsForCommentedContent(part.ContentItem.Id);
|
||||||
|
|
||||||
return Combined(
|
return Combined(
|
||||||
ContentShape("Parts_Comments",
|
ContentShape("Parts_Comments",
|
||||||
() => shapeHelper.Parts_Comments(ContentPart: part)),
|
() => shapeHelper.Parts_Comments(ContentPart: part)),
|
||||||
ContentShape("Parts_Comments_Count",
|
ContentShape("Parts_Comments_Count",
|
||||||
() => shapeHelper.Parts_Comments_Count(ContentPart: part, CommentCount: _commentService.GetCommentsForCommentedContent(part.ContentItem.Id).Count(), PendingCount: part.PendingComments.Count)),
|
() => shapeHelper.Parts_Comments_Count(ContentPart: part, CommentCount: commentsForCommentedContent.Count(), PendingCount: commentsForCommentedContent.Where(x => x.Status == CommentStatus.Pending).Count())),
|
||||||
ContentShape("Parts_Comments_Count_SummaryAdmin",
|
ContentShape("Parts_Comments_Count_SummaryAdmin",
|
||||||
() => shapeHelper.Parts_Comments_Count_SummaryAdmin(ContentPart: part, CommentCount: _commentService.GetCommentsForCommentedContent(part.ContentItem.Id).Count(), PendingCount: part.PendingComments.Count))
|
() => shapeHelper.Parts_Comments_Count_SummaryAdmin(ContentPart: part, CommentCount: commentsForCommentedContent.Count(), PendingCount: commentsForCommentedContent.Where(x => x.Status == CommentStatus.Pending).Count()))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override DriverResult Editor(CommentsPart part, dynamic shapeHelper) {
|
protected override DriverResult Editor(CommentsPart part, dynamic shapeHelper) {
|
||||||
|
|||||||
@@ -4,6 +4,10 @@ using Orchard.Data.Conventions;
|
|||||||
|
|
||||||
namespace Orchard.Comments.Models {
|
namespace Orchard.Comments.Models {
|
||||||
public class CommentsPartRecord : ContentPartRecord {
|
public class CommentsPartRecord : ContentPartRecord {
|
||||||
|
public CommentsPartRecord() {
|
||||||
|
CommentPartRecords = new List<CommentPartRecord>();
|
||||||
|
}
|
||||||
|
|
||||||
public virtual bool CommentsShown { get; set; }
|
public virtual bool CommentsShown { get; set; }
|
||||||
public virtual bool CommentsActive { get; set; }
|
public virtual bool CommentsActive { get; set; }
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,6 @@
|
|||||||
<Place Parts_Comments_Count="Meta:5" />
|
<Place Parts_Comments_Count="Meta:5" />
|
||||||
</Match>
|
</Match>
|
||||||
<Match DisplayType="SummaryAdmin">
|
<Match DisplayType="SummaryAdmin">
|
||||||
<Place Parts_Comments_Count_SummaryAdmin="Sidebar" />
|
<Place Parts_Comments_Count_SummaryAdmin="Meta:4" />
|
||||||
</Match>
|
</Match>
|
||||||
</Placement>
|
</Placement>
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
@using Orchard.Comments.Models;
|
<ul class="pageStatus">
|
||||||
@using Orchard.Comments.ViewModels;
|
<li>
|
||||||
@using Orchard.ContentManagement;
|
@Display.CommentSummaryLinks(item: Model.ContentPart.ContentItem, count: Model.CommentCount, pendingCount: Model.PendingCount)
|
||||||
<span class="commentcount">@Display.CommentSummaryLinks(item: Model.ContentPart.ContentItem, count: Model.CommentCount, pendingCount: Model.PendingCount)@T(" | ")</span>
|
@T(" | ")
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
Reference in New Issue
Block a user