mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-09-24 21:43:37 +08:00
Relocating the files to match namespaces. Using new ItemDriver technology within blogs module.
--HG-- rename : src/Orchard/Models/Aspects/ICommonAspect.cs => src/Orchard/ContentManagement/Aspects/ICommonAspect.cs rename : src/Orchard/Models/ContentExtensions.cs => src/Orchard/ContentManagement/ContentExtensions.cs rename : src/Orchard/Models/ContentItem.cs => src/Orchard/ContentManagement/ContentItem.cs rename : src/Orchard/Models/ContentItemMetadata.cs => src/Orchard/ContentManagement/ContentItemMetadata.cs rename : src/Orchard/Models/ContentModule.cs => src/Orchard/ContentManagement/ContentModule.cs rename : src/Orchard/Models/ContentPart.cs => src/Orchard/ContentManagement/ContentPart.cs rename : src/Orchard/Models/ContentType.cs => src/Orchard/ContentManagement/ContentType.cs rename : src/Orchard/Models/DefaultContentManager.cs => src/Orchard/ContentManagement/DefaultContentManager.cs rename : src/Orchard/Models/DefaultContentQuery.cs => src/Orchard/ContentManagement/DefaultContentQuery.cs rename : src/Orchard/Models/Diagram.cd => src/Orchard/ContentManagement/Diagram.cd rename : src/Orchard/Models/Driver/ActivatedContentContext.cs => src/Orchard/ContentManagement/Driver/ActivatedContentContext.cs rename : src/Orchard/Models/Driver/ActivatingContentContext.cs => src/Orchard/ContentManagement/Driver/ActivatingContentContext.cs rename : src/Orchard/Models/Driver/ActivatingFilter.cs => src/Orchard/ContentManagement/Driver/ActivatingFilter.cs rename : src/Orchard/Models/Driver/BuildDisplayModelContext.cs => src/Orchard/ContentManagement/Driver/BuildDisplayModelContext.cs rename : src/Orchard/Models/Driver/BuildEditorModelContext.cs => src/Orchard/ContentManagement/Driver/BuildEditorModelContext.cs rename : src/Orchard/Models/Driver/ContentHandler.cs => src/Orchard/ContentManagement/Driver/ContentHandler.cs rename : src/Orchard/Models/Driver/ContentItemBuilder.cs => src/Orchard/ContentManagement/Driver/ContentItemBuilder.cs rename : src/Orchard/Models/Driver/ContentItemTemplates.cs => src/Orchard/ContentManagement/Driver/ContentItemTemplates.cs rename : src/Orchard/Models/Driver/CreateContentContext.cs => src/Orchard/ContentManagement/Driver/CreateContentContext.cs rename : src/Orchard/Models/Driver/GetItemMetadataContext.cs => src/Orchard/ContentManagement/Driver/GetItemMetadataContext.cs rename : src/Orchard/Models/Driver/IContentActivatingFilter.cs => src/Orchard/ContentManagement/Driver/IContentActivatingFilter.cs rename : src/Orchard/Models/Driver/IContentFilter.cs => src/Orchard/ContentManagement/Driver/IContentFilter.cs rename : src/Orchard/Models/Driver/IContentHandler.cs => src/Orchard/ContentManagement/Driver/IContentHandler.cs rename : src/Orchard/Models/Driver/IContentStorageFilter.cs => src/Orchard/ContentManagement/Driver/IContentStorageFilter.cs rename : src/Orchard/Models/Driver/IContentTemplateFilter.cs => src/Orchard/ContentManagement/Driver/IContentTemplateFilter.cs rename : src/Orchard/Models/Driver/IUpdateModel.cs => src/Orchard/ContentManagement/Driver/IUpdateModel.cs rename : src/Orchard/Models/Driver/LoadContentContext.cs => src/Orchard/ContentManagement/Driver/LoadContentContext.cs rename : src/Orchard/Models/Driver/StorageFilter.cs => src/Orchard/ContentManagement/Driver/StorageFilter.cs rename : src/Orchard/Models/Driver/StorageFilterBase.cs => src/Orchard/ContentManagement/Driver/StorageFilterBase.cs rename : src/Orchard/Models/Driver/TemplateFilterBase.cs => src/Orchard/ContentManagement/Driver/TemplateFilterBase.cs rename : src/Orchard/Models/Driver/TemplateFilterForRecord.cs => src/Orchard/ContentManagement/Driver/TemplateFilterForRecord.cs rename : src/Orchard/Models/Driver/UpdateEditorModelContext.cs => src/Orchard/ContentManagement/Driver/UpdateEditorModelContext.cs rename : src/Orchard/Models/Driver/ActivatedContentContext.cs => src/Orchard/ContentManagement/Handlers/ActivatedContentContext.cs rename : src/Orchard/Models/Driver/ActivatingContentContext.cs => src/Orchard/ContentManagement/Handlers/ActivatingContentContext.cs rename : src/Orchard/Models/Driver/ActivatingFilter.cs => src/Orchard/ContentManagement/Handlers/ActivatingFilter.cs rename : src/Orchard/Models/Driver/BuildDisplayModelContext.cs => src/Orchard/ContentManagement/Handlers/BuildDisplayModelContext.cs rename : src/Orchard/Models/Driver/BuildEditorModelContext.cs => src/Orchard/ContentManagement/Handlers/BuildEditorModelContext.cs rename : src/Orchard/Models/Driver/ContentHandler.cs => src/Orchard/ContentManagement/Handlers/ContentHandler.cs rename : src/Orchard/Models/Driver/ContentItemBuilder.cs => src/Orchard/ContentManagement/Handlers/ContentItemBuilder.cs rename : src/Orchard/Models/Driver/ContentItemTemplates.cs => src/Orchard/ContentManagement/Handlers/ContentItemTemplates.cs rename : src/Orchard/Models/Driver/CreateContentContext.cs => src/Orchard/ContentManagement/Handlers/CreateContentContext.cs rename : src/Orchard/Models/Driver/GetItemMetadataContext.cs => src/Orchard/ContentManagement/Handlers/GetItemMetadataContext.cs rename : src/Orchard/Models/Driver/IContentActivatingFilter.cs => src/Orchard/ContentManagement/Handlers/IContentActivatingFilter.cs rename : src/Orchard/Models/Driver/IContentFilter.cs => src/Orchard/ContentManagement/Handlers/IContentFilter.cs rename : src/Orchard/Models/Driver/IContentHandler.cs => src/Orchard/ContentManagement/Handlers/IContentHandler.cs rename : src/Orchard/Models/Driver/IContentStorageFilter.cs => src/Orchard/ContentManagement/Handlers/IContentStorageFilter.cs rename : src/Orchard/Models/Driver/IContentTemplateFilter.cs => src/Orchard/ContentManagement/Handlers/IContentTemplateFilter.cs rename : src/Orchard/Models/Driver/IUpdateModel.cs => src/Orchard/ContentManagement/Handlers/IUpdateModel.cs rename : src/Orchard/Models/Driver/LoadContentContext.cs => src/Orchard/ContentManagement/Handlers/LoadContentContext.cs rename : src/Orchard/Models/Driver/StorageFilter.cs => src/Orchard/ContentManagement/Handlers/StorageFilter.cs rename : src/Orchard/Models/Driver/StorageFilterBase.cs => src/Orchard/ContentManagement/Handlers/StorageFilterBase.cs rename : src/Orchard/Models/Driver/TemplateFilterBase.cs => src/Orchard/ContentManagement/Handlers/TemplateFilterBase.cs rename : src/Orchard/Models/Driver/TemplateFilterForRecord.cs => src/Orchard/ContentManagement/Handlers/TemplateFilterForRecord.cs rename : src/Orchard/Models/Driver/UpdateEditorModelContext.cs => src/Orchard/ContentManagement/Handlers/UpdateEditorModelContext.cs rename : src/Orchard/Models/IContent.cs => src/Orchard/ContentManagement/IContent.cs rename : src/Orchard/Models/IContentDisplayInfo.cs => src/Orchard/ContentManagement/IContentDisplayInfo.cs rename : src/Orchard/Models/IContentManager.cs => src/Orchard/ContentManagement/IContentManager.cs rename : src/Orchard/Models/IContentQuery.cs => src/Orchard/ContentManagement/IContentQuery.cs rename : src/Orchard/Models/PartDriver.cs => src/Orchard/ContentManagement/PartDriver.cs rename : src/Orchard/Models/Records/ContentItemRecord.cs => src/Orchard/ContentManagement/Records/ContentItemRecord.cs rename : src/Orchard/Models/Records/ContentItemRecordAlteration.cs => src/Orchard/ContentManagement/Records/ContentItemRecordAlteration.cs rename : src/Orchard/Models/Records/ContentPartRecord.cs => src/Orchard/ContentManagement/Records/ContentPartRecord.cs rename : src/Orchard/Models/Records/ContentPartRecordAlteration.cs => src/Orchard/ContentManagement/Records/ContentPartRecordAlteration.cs rename : src/Orchard/Models/Records/ContentTypeRecord.cs => src/Orchard/ContentManagement/Records/ContentTypeRecord.cs rename : src/Orchard/Models/ViewModels/ItemDisplayModel.cs => src/Orchard/ContentManagement/ViewModels/ItemDisplayModel.cs rename : src/Orchard/Models/ViewModels/ItemEditorModel.cs => src/Orchard/ContentManagement/ViewModels/ItemEditorModel.cs rename : src/Orchard/Models/ViewModels/TemplateViewModel.cs => src/Orchard/ContentManagement/ViewModels/TemplateViewModel.cs extra : convert_revision : svn%3A5ff7c347-ad56-4c35-b696-ccb81de16e03/trunk%4044417
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web.Routing;
|
||||
using JetBrains.Annotations;
|
||||
using Orchard.Blogs.Models;
|
||||
using Orchard.Blogs.Services;
|
||||
using Orchard.ContentManagement;
|
||||
using Orchard.ContentManagement.Drivers;
|
||||
using Orchard.ContentManagement.ViewModels;
|
||||
|
||||
namespace Orchard.Blogs.Controllers {
|
||||
[UsedImplicitly]
|
||||
public class BlogDriver : ItemDriver<Blog> {
|
||||
private readonly IContentManager _contentManager;
|
||||
private readonly IBlogPostService _blogPostService;
|
||||
|
||||
public BlogDriver(IContentManager contentManager, IBlogPostService blogPostService) {
|
||||
_contentManager = contentManager;
|
||||
_blogPostService = blogPostService;
|
||||
}
|
||||
|
||||
protected override string Prefix { get { return ""; } }
|
||||
|
||||
protected override string GetDisplayText(Blog item) {
|
||||
return item.Name;
|
||||
}
|
||||
|
||||
protected override RouteValueDictionary GetDisplayRouteValues(Blog blog) {
|
||||
return new RouteValueDictionary {
|
||||
{"Area", "Orchard.Blogs"},
|
||||
{"Controller", "Blog"},
|
||||
{"Action", "Item"},
|
||||
{"blogSlug", blog.Slug}
|
||||
};
|
||||
}
|
||||
|
||||
protected override RouteValueDictionary GetEditorRouteValues(Blog blog) {
|
||||
return new RouteValueDictionary {
|
||||
{"Area", "Orchard.Blogs"},
|
||||
{"Controller", "Blog"},
|
||||
{"Action", "Edit"},
|
||||
{"blogSlug", blog.Slug}
|
||||
};
|
||||
}
|
||||
|
||||
protected override DriverResult Display(Blog blog, string displayType) {
|
||||
if (!displayType.StartsWith("Detail"))
|
||||
return null;
|
||||
|
||||
var posts = _blogPostService.Get(blog);
|
||||
|
||||
IEnumerable<ItemDisplayModel<BlogPost>> model;
|
||||
if (displayType.StartsWith("DetailAdmin")) {
|
||||
model = posts.Select(bp => _contentManager.BuildDisplayModel(bp, "SummaryAdmin"));
|
||||
}
|
||||
else {
|
||||
model = posts.Select(bp => _contentManager.BuildDisplayModel(bp, "Summary"));
|
||||
}
|
||||
|
||||
return PartialView(model, "Parts/Blogs.BlogPost.List", "").Location("body");
|
||||
}
|
||||
|
||||
protected override DriverResult Editor(Blog blog) {
|
||||
return PartialView(blog, "Parts/Blogs.Blog.Fields").Location("primary", "1");
|
||||
}
|
||||
|
||||
protected override DriverResult Editor(Blog blog, IUpdateModel updater) {
|
||||
updater.TryUpdateModel(blog, Prefix, null, null);
|
||||
return PartialView(blog, "Parts/Blogs.Blog.Fields").Location("primary", "1");
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user