Some renaming of class around content to be more consistent.

--HG--
extra : convert_revision : svn%3A5ff7c347-ad56-4c35-b696-ccb81de16e03/trunk%4045011
This commit is contained in:
ErikPorter
2010-01-05 21:49:48 +00:00
parent 031df21291
commit dcbda9458f
74 changed files with 317 additions and 344 deletions

View File

@@ -1,8 +1,5 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using Autofac;
using Autofac.Builder;
using Autofac.Modules;
@@ -16,14 +13,14 @@ using Orchard.UI.Zones;
namespace Orchard.Tests.ContentManagement {
[TestFixture]
public class PartDriverHandlerTests {
public class ContentPartDriverHandlerTests {
private IContainer _container;
[SetUp]
public void Init() {
var builder = new ContainerBuilder();
builder.RegisterModule(new ImplicitCollectionSupportModule());
builder.Register<PartDriverHandler>().As<IContentHandler>();
builder.Register<ContentPartDriverHandler>().As<IContentHandler>();
_container = builder.Build();
}
@@ -35,15 +32,15 @@ namespace Orchard.Tests.ContentManagement {
[Test]
public void AllDriversShouldBeCalled() {
var driver1 = new Mock<IPartDriver>();
var driver2 = new Mock<IPartDriver>();
var driver1 = new Mock<IContentPartDriver>();
var driver2 = new Mock<IContentPartDriver>();
_container.Build(x => {
x.Register(driver1.Object);
x.Register(driver2.Object);
});
var contentHandler = _container.Resolve<IContentHandler>();
var ctx = new BuildDisplayModelContext(new ItemViewModel(new ContentItem()), null);
var ctx = new BuildDisplayModelContext(new ContentItemViewModel(new ContentItem()), null);
driver1.Verify(x => x.BuildDisplayModel(ctx), Times.Never());
contentHandler.BuildDisplayModel(ctx);
@@ -53,23 +50,23 @@ namespace Orchard.Tests.ContentManagement {
[Test]
public void TestDriverCanAddDisplay() {
var driver = new StubPartDriver();
_container.Build(x => x.Register(driver).As<IPartDriver>());
_container.Build(x => x.Register(driver).As<IContentPartDriver>());
var contentHandler = _container.Resolve<IContentHandler>();
var item = new ContentItem();
item.Weld(new StubPart { Foo = new[] { "a", "b", "c" } });
var ctx = new BuildDisplayModelContext(new ItemViewModel(item), "");
var ctx = new BuildDisplayModelContext(new ContentItemViewModel(item), "");
Assert.That(ctx.ViewModel.Zones.Count(), Is.EqualTo(0));
contentHandler.BuildDisplayModel(ctx);
Assert.That(ctx.ViewModel.Zones.Count(), Is.EqualTo(1));
Assert.That(ctx.ViewModel.Zones.Single().Key, Is.EqualTo("topmeta"));
Assert.That(ctx.ViewModel.Zones.Single().Value.Items.OfType<PartDisplayZoneItem>().Single().Prefix, Is.EqualTo("Stub"));
Assert.That(ctx.ViewModel.Zones.Single().Value.Items.OfType<ContentPartDisplayZoneItem>().Single().Prefix, Is.EqualTo("Stub"));
}
public class StubPartDriver : PartDriver<StubPart> {
public class StubPartDriver : ContentPartDriver<StubPart> {
protected override string Prefix {
get { return "Stub"; }
}
@@ -77,21 +74,21 @@ namespace Orchard.Tests.ContentManagement {
protected override DriverResult Display(StubPart part, string displayType) {
var viewModel = new StubViewModel { Foo = string.Join(",", part.Foo) };
if (displayType.StartsWith("Summary"))
return PartTemplate(viewModel, "StubViewModelTerse").Location("topmeta");
return ContentPartTemplate(viewModel, "StubViewModelTerse").Location("topmeta");
return PartTemplate(viewModel).Location("topmeta");
return ContentPartTemplate(viewModel).Location("topmeta");
}
protected override DriverResult Editor(StubPart part) {
var viewModel = new StubViewModel { Foo = string.Join(",", part.Foo) };
return PartTemplate(viewModel).Location("last", "10");
return ContentPartTemplate(viewModel).Location("last", "10");
}
protected override DriverResult Editor(StubPart part, IUpdateModel updater) {
var viewModel = new StubViewModel { Foo = string.Join(",", part.Foo) };
updater.TryUpdateModel(viewModel, Prefix, null, null);
part.Foo = viewModel.Foo.Split(new[] { ',' }).Select(x => x.Trim()).ToArray();
return PartTemplate(viewModel).Location("last", "10");
return ContentPartTemplate(viewModel).Location("last", "10");
}
}
@@ -104,5 +101,4 @@ namespace Orchard.Tests.ContentManagement {
public string Foo { get; set; }
}
}
}

View File

@@ -122,7 +122,7 @@
<Compile Include="ContentManagement\Models\Gamma.cs" />
<Compile Include="ContentManagement\Models\Styled.cs" />
<Compile Include="ContentManagement\Models\StyledHandler.cs" />
<Compile Include="ContentManagement\PartDriverHandlerTests.cs">
<Compile Include="ContentManagement\ContentPartDriverHandlerTests.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="ContentManagement\Records\DeltaRecord.cs">

View File

@@ -3,7 +3,7 @@ using Orchard.Core.Common.Models;
using Orchard.Core.Common.ViewModels;
namespace Orchard.Core.Common.Controllers {
public class BodyDriver : PartDriver<BodyAspect> {
public class BodyDriver : ContentPartDriver<BodyAspect> {
private const string TemplateName = "Parts/Common.Body";
private const string DefaultTextEditorTemplate = "TinyMceTextEditor";
protected override string Prefix {
@@ -12,18 +12,18 @@ namespace Orchard.Core.Common.Controllers {
protected override DriverResult Display(BodyAspect part, string displayType) {
var model = new BodyDisplayViewModel { BodyAspect = part };
return PartTemplate(model, TemplateName, Prefix).Location("body");
return ContentPartTemplate(model, TemplateName, Prefix).Location("body");
}
protected override DriverResult Editor(BodyAspect part) {
var model = new BodyEditorViewModel { BodyAspect = part, TextEditorTemplate = DefaultTextEditorTemplate };
return PartTemplate(model, TemplateName, Prefix).Location("body");
return ContentPartTemplate(model, TemplateName, Prefix).Location("body");
}
protected override DriverResult Editor(BodyAspect part, Orchard.ContentManagement.IUpdateModel updater) {
var model = new BodyEditorViewModel { BodyAspect = part, TextEditorTemplate = DefaultTextEditorTemplate };
updater.TryUpdateModel(model, Prefix, null, null);
return PartTemplate(model, TemplateName, Prefix).Location("body");
return ContentPartTemplate(model, TemplateName, Prefix).Location("body");
}
}
}

View File

@@ -7,16 +7,16 @@ using Orchard.ContentManagement.Drivers;
using Orchard.Core.Settings.Models;
namespace Orchard.Core.Settings.Controllers {
public class SiteSettingsDriver : ItemDriver<SiteSettings> {
public class SiteSettingsDriver : ContentItemDriver<SiteSettings> {
protected override ContentType GetContentType() {
return SiteSettings.ContentType;
}
protected override DriverResult Editor(SiteSettings part) {
return ItemTemplate("Items/Settings.Site");
return ContentItemTemplate("Items/Settings.Site");
}
protected override DriverResult Editor(SiteSettings part, IUpdateModel updater) {
return ItemTemplate("Items/Settings.Site");
return ContentItemTemplate("Items/Settings.Site");
}
}
}

View File

@@ -6,7 +6,7 @@ using Orchard.Core.Settings.Models;
namespace Orchard.Core.Settings.ViewModels {
public class SettingsIndexViewModel : AdminViewModel {
public SiteSettings Site { get; set; }
public ItemViewModel ViewModel { get; set; }
public ContentItemViewModel ViewModel { get; set; }
[HiddenInput(DisplayValue = false)]

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<SiteSettings>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<SiteSettings>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Core.Settings.Models"%>
<% Html.Zone("primary"); %>

View File

@@ -10,7 +10,7 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.Controllers {
[UsedImplicitly]
public class BlogDriver : ItemDriver<Blog> {
public class BlogDriver : ContentItemDriver<Blog> {
public readonly static ContentType ContentType = new ContentType {
Name = "blog",
DisplayName = "Blog"
@@ -54,7 +54,7 @@ namespace Orchard.Blogs.Controllers {
protected override DriverResult Display(Blog blog, string displayType) {
IEnumerable<ItemViewModel<BlogPost>> blogPosts = null;
IEnumerable<ContentItemViewModel<BlogPost>> blogPosts = null;
if (displayType.StartsWith("DetailAdmin")) {
blogPosts = _blogPostService.Get(blog)
.Select(bp => _contentManager.BuildDisplayModel(bp, "SummaryAdmin"));
@@ -65,21 +65,21 @@ namespace Orchard.Blogs.Controllers {
}
return Combined(
ItemTemplate("Items/Blogs.Blog").LongestMatch(displayType, "Summary", "DetailAdmin", "SummaryAdmin"),
blogPosts == null ? null : PartTemplate(blogPosts, "Parts/Blogs.BlogPost.List", "").Location("body"));
ContentItemTemplate("Items/Blogs.Blog").LongestMatch(displayType, "Summary", "DetailAdmin", "SummaryAdmin"),
blogPosts == null ? null : ContentPartTemplate(blogPosts, "Parts/Blogs.BlogPost.List", "").Location("body"));
}
protected override DriverResult Editor(Blog blog) {
return Combined(
ItemTemplate("Items/Blogs.Blog"),
PartTemplate(blog, "Parts/Blogs.Blog.Fields").Location("primary", "1"));
ContentItemTemplate("Items/Blogs.Blog"),
ContentPartTemplate(blog, "Parts/Blogs.Blog.Fields").Location("primary", "1"));
}
protected override DriverResult Editor(Blog blog, IUpdateModel updater) {
updater.TryUpdateModel(blog, Prefix, null, null);
return Combined(
ItemTemplate("Items/Blogs.Blog"),
PartTemplate(blog, "Parts/Blogs.Blog.Fields").Location("primary", "1"));
ContentItemTemplate("Items/Blogs.Blog"),
ContentPartTemplate(blog, "Parts/Blogs.Blog.Fields").Location("primary", "1"));
}
}
}

View File

@@ -6,7 +6,7 @@ using Orchard.ContentManagement.Drivers;
namespace Orchard.Blogs.Controllers {
[UsedImplicitly]
public class BlogPostDriver : ItemDriver<BlogPost> {
public class BlogPostDriver : ContentItemDriver<BlogPost> {
public readonly static ContentType ContentType = new ContentType {
Name = "blogpost",
DisplayName = "Blog Post"
@@ -43,14 +43,14 @@ namespace Orchard.Blogs.Controllers {
}
protected override DriverResult Display(BlogPost post, string displayType) {
return ItemTemplate("Items/Blogs.BlogPost").LongestMatch(displayType, "Summary", "SummaryAdmin");
return ContentItemTemplate("Items/Blogs.BlogPost").LongestMatch(displayType, "Summary", "SummaryAdmin");
}
protected override DriverResult Editor(BlogPost post) {
return Combined(
ItemTemplate("Items/Blogs.BlogPost"),
PartTemplate(post, "Parts/Blogs.BlogPost.Fields").Location("primary", "1"),
PartTemplate(post, "Parts/Blogs.BlogPost.Publish").Location("secondary", "1"));
ContentItemTemplate("Items/Blogs.BlogPost"),
ContentPartTemplate(post, "Parts/Blogs.BlogPost.Fields").Location("primary", "1"),
ContentPartTemplate(post, "Parts/Blogs.BlogPost.Publish").Location("secondary", "1"));
}
protected override DriverResult Editor(BlogPost post, IUpdateModel updater) {

View File

@@ -4,6 +4,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.ViewModels {
public class AdminBlogsViewModel : AdminViewModel {
public IEnumerable<ItemViewModel<Blog>> Blogs { get; set; }
public IEnumerable<ContentItemViewModel<Blog>> Blogs { get; set; }
}
}

View File

@@ -3,6 +3,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.ViewModels {
public class BlogEditViewModel : AdminViewModel {
public ItemViewModel<Blog> Blog { get; set; }
public ContentItemViewModel<Blog> Blog { get; set; }
}
}

View File

@@ -3,6 +3,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.ViewModels {
public class BlogForAdminViewModel : AdminViewModel {
public ItemViewModel<Blog> Blog { get; set; }
public ContentItemViewModel<Blog> Blog { get; set; }
}
}

View File

@@ -3,6 +3,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.ViewModels {
public class BlogPostEditViewModel : AdminViewModel {
public ItemViewModel<BlogPost> BlogPost { get; set; }
public ContentItemViewModel<BlogPost> BlogPost { get; set; }
}
}

View File

@@ -4,6 +4,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.ViewModels {
public class BlogPostViewModel : BaseViewModel {
public Blog Blog { get; set; }
public ItemViewModel<BlogPost> BlogPost { get; set; }
public ContentItemViewModel<BlogPost> BlogPost { get; set; }
}
}

View File

@@ -3,6 +3,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.ViewModels {
public class BlogViewModel : BaseViewModel {
public ItemViewModel<Blog> Blog { get; set; }
public ContentItemViewModel<Blog> Blog { get; set; }
}
}

View File

@@ -4,6 +4,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.ViewModels {
public class BlogsViewModel : BaseViewModel {
public IEnumerable<ItemViewModel<Blog>> Blogs { get; set; }
public IEnumerable<ContentItemViewModel<Blog>> Blogs { get; set; }
}
}

View File

@@ -3,6 +3,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.ViewModels {
public class CreateBlogPostViewModel : AdminViewModel {
public ItemViewModel<BlogPost> BlogPost { get; set; }
public ContentItemViewModel<BlogPost> BlogPost { get; set; }
}
}

View File

@@ -3,6 +3,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Blogs.ViewModels {
public class CreateBlogViewModel : AdminViewModel {
public ItemViewModel<Blog> Blog { get; set; }
public ContentItemViewModel<Blog> Blog { get; set; }
}
}

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<Blog>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<Blog>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Blogs.Extensions"%>
<%@ Import Namespace="Orchard.Blogs.Models"%>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<Blog>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<Blog>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Blogs.Extensions"%>
<%@ Import Namespace="Orchard.Blogs.Models"%>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<Blog>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<Blog>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Blogs.Extensions"%>
<%@ Import Namespace="Orchard.Blogs.Models"%>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<Blog>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<Blog>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Blogs.Extensions"%>
<%@ Import Namespace="Orchard.Blogs.Models"%>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<BlogPost>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<BlogPost>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.ContentManagement"%>
<%@ Import Namespace="Orchard.Core.Common.Models"%>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<BlogPost>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<BlogPost>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.ContentManagement"%>
<%@ Import Namespace="Orchard.Core.Common.Models"%>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<BlogPost>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<BlogPost>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Blogs.Extensions"%>
<%@ Import Namespace="Orchard.Blogs.Models"%>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<ItemViewModel<BlogPost>>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<ContentItemViewModel<BlogPost>>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Blogs.Models"%>
<%=Html.UnorderedList(Model, (bp, i) => Html.DisplayForItem(bp).ToHtmlString(), "blogPosts contentItems") %>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<Blog>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<Blog>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Blogs.Models"%>
<% Html.AddTitleParts(Model.Item.Name); %>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<BlogPost>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<BlogPost>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Blogs.Models"%>
<% Html.AddTitleParts(Model.Item.Title); %>

View File

@@ -3,7 +3,7 @@ using Orchard.ContentManagement;
using Orchard.ContentManagement.Drivers;
namespace Orchard.Comments.Controllers {
public class HasCommentsDriver : PartDriver<HasComments> {
public class HasCommentsDriver : ContentPartDriver<HasComments> {
protected override DriverResult Display(HasComments part, string displayType) {
if (part.CommentsShown == false) {
return null;
@@ -13,20 +13,20 @@ namespace Orchard.Comments.Controllers {
// comment count go in any given skin or what if the skin builder doesn't want the count
if (displayType.StartsWith("Detail")) {
return Combined(
PartTemplate(part, "Parts/Comments.Count").Location("body", "above.5"),
PartTemplate(part, "Parts/Comments.HasComments").Location("body", "below.5"));
ContentPartTemplate(part, "Parts/Comments.Count").Location("body", "above.5"),
ContentPartTemplate(part, "Parts/Comments.HasComments").Location("body", "below.5"));
}
return PartTemplate(part, "Parts/Comments.Count").Location("body", "above.5");
return ContentPartTemplate(part, "Parts/Comments.Count").Location("body", "above.5");
}
protected override DriverResult Editor(HasComments part) {
return PartTemplate(part, "Parts/Comments.HasComments").Location("primary", "99");
return ContentPartTemplate(part, "Parts/Comments.HasComments").Location("primary", "99");
}
protected override DriverResult Editor(HasComments part, IUpdateModel updater) {
updater.TryUpdateModel(part, Prefix, null, null);
return PartTemplate(part, "Parts/Comments.HasComments").Location("primary", "99");
return ContentPartTemplate(part, "Parts/Comments.HasComments").Location("primary", "99");
}
}
}

View File

@@ -14,15 +14,15 @@ namespace Orchard.DevTools.ViewModels {
public IEnumerable<Type> PartTypes { get; set; }
public ItemViewModel DisplayModel { get; set; }
public ContentItemViewModel DisplayModel { get; set; }
public ItemViewModel EditorModel { get; set; }
public ContentItemViewModel EditorModel { get; set; }
public IEnumerable<TemplateViewModel> Displays {
get {
return DisplayModel.Zones
.SelectMany(z => z.Value.Items
.OfType<PartDisplayZoneItem>()
.OfType<ContentPartDisplayZoneItem>()
.Select(x=>new{ZoneName=z.Key,Item=x}))
.Select(x => new TemplateViewModel(x.Item.Model,x.Item.Prefix) {
Model = x.Item.Model,
@@ -37,7 +37,7 @@ namespace Orchard.DevTools.ViewModels {
get {
return EditorModel.Zones
.SelectMany(z => z.Value.Items
.OfType<PartEditorZoneItem>()
.OfType<ContentPartEditorZoneItem>()
.Select(x => new { ZoneName = z.Key, Item = x }))
.Select(x => new TemplateViewModel(x.Item.Model, x.Item.Prefix) {
Model = x.Item.Model,

View File

@@ -15,7 +15,7 @@ using Orchard.Security;
using Orchard.UI.Notify;
namespace Orchard.Roles.Controllers {
public class UserRolesDriver : PartDriver<UserRoles> {
public class UserRolesDriver : ContentPartDriver<UserRoles> {
private readonly IRepository<UserRolesRecord> _userRolesRepository;
private readonly IRoleService _roleService;
private readonly INotifier _notifier;
@@ -49,7 +49,7 @@ namespace Orchard.Roles.Controllers {
UserRoles = userRoles,
Roles = roles.ToList(),
};
return PartTemplate(model, "Parts/Roles.UserRoles");
return ContentPartTemplate(model, "Parts/Roles.UserRoles");
}
protected override DriverResult Editor(UserRoles userRoles, IUpdateModel updater) {
@@ -75,7 +75,7 @@ namespace Orchard.Roles.Controllers {
}
}
return PartTemplate(model, "Parts/Roles.UserRoles");
return ContentPartTemplate(model, "Parts/Roles.UserRoles");
}
}
}

View File

@@ -8,7 +8,7 @@ using Orchard.Sandbox.Models;
namespace Orchard.Sandbox.Controllers {
[UsedImplicitly]
public class SandboxPageDriver : ItemDriver<SandboxPage> {
public class SandboxPageDriver : ContentItemDriver<SandboxPage> {
public readonly static ContentType ContentType = new ContentType {
Name = "sandboxpage",
DisplayName = "Sandbox Page"
@@ -43,17 +43,17 @@ namespace Orchard.Sandbox.Controllers {
protected override DriverResult Display(SandboxPage part, string displayType) {
return Combined(
ItemTemplate("Items/Sandbox.Page").LongestMatch(displayType, "Summary"),
PartTemplate(part, "Parts/Sandbox.Page.Title").Location("title"));
ContentItemTemplate("Items/Sandbox.Page").LongestMatch(displayType, "Summary"),
ContentPartTemplate(part, "Parts/Sandbox.Page.Title").Location("title"));
}
protected override DriverResult Editor(ItemViewModel<SandboxPage> model) {
return ItemTemplate("Items/Sandbox.Page");
protected override DriverResult Editor(ContentItemViewModel<SandboxPage> model) {
return ContentItemTemplate("Items/Sandbox.Page");
}
protected override DriverResult Editor(ItemViewModel<SandboxPage> model, IUpdateModel updater) {
protected override DriverResult Editor(ContentItemViewModel<SandboxPage> model, IUpdateModel updater) {
updater.TryUpdateModel(model, Prefix, null, null);
return ItemTemplate("Items/Sandbox.Page");
return ContentItemTemplate("Items/Sandbox.Page");
}
}
}

View File

@@ -5,6 +5,6 @@ using Orchard.Sandbox.Models;
namespace Orchard.Sandbox.ViewModels {
public class PageEditViewModel : BaseViewModel {
public ItemViewModel<SandboxPage> Page { get; set; }
public ContentItemViewModel<SandboxPage> Page { get; set; }
}
}

View File

@@ -4,6 +4,6 @@ using Orchard.Sandbox.Models;
namespace Orchard.Sandbox.ViewModels {
public class PageIndexViewModel : BaseViewModel {
public IEnumerable<ItemViewModel<SandboxPage>> Pages { get; set; }
public IEnumerable<ContentItemViewModel<SandboxPage>> Pages { get; set; }
}
}

View File

@@ -3,6 +3,6 @@ using Orchard.Sandbox.Models;
namespace Orchard.Sandbox.ViewModels {
public class PageShowViewModel : BaseViewModel {
public ItemViewModel<SandboxPage> Page { get; set; }
public ContentItemViewModel<SandboxPage> Page { get; set; }
}
}

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<SandboxPage>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<SandboxPage>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Sandbox.Models" %>

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<SandboxPage>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<SandboxPage>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Sandbox.Models" %>
<div class="item">

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<SandboxPage>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<SandboxPage>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Sandbox.Models" %>

View File

@@ -10,7 +10,7 @@ using Orchard.Tags.ViewModels;
namespace Orchard.Tags.Controllers {
[UsedImplicitly]
public class HasTagsDriver : PartDriver<HasTags> {
public class HasTagsDriver : ContentPartDriver<HasTags> {
private readonly ITagService _tagService;
public HasTagsDriver(ITagService tagService) {
@@ -18,14 +18,14 @@ namespace Orchard.Tags.Controllers {
}
protected override DriverResult Display(HasTags part, string displayType) {
return PartTemplate(part, "Parts/Tags.ShowTags").Location("body:above");
return ContentPartTemplate(part, "Parts/Tags.ShowTags").Location("body:above");
}
protected override DriverResult Editor(HasTags part) {
var model = new EditTagsViewModel {
Tags = string.Join(", ", part.CurrentTags.Select((t, i) => t.TagName).ToArray())
};
return PartTemplate(model, "Parts/Tags.EditTags").Location("primary", "9");
return ContentPartTemplate(model, "Parts/Tags.EditTags").Location("primary", "9");
}
protected override DriverResult Editor(HasTags part, IUpdateModel updater) {
@@ -36,7 +36,7 @@ namespace Orchard.Tags.Controllers {
var tagNames = TagHelpers.ParseCommaSeparatedTagNames(model.Tags);
_tagService.UpdateTagsForContentItem(part.ContentItem.Id, tagNames);
return PartTemplate(model, "Parts/Tags.EditTags").Location("primary", "9");
return ContentPartTemplate(model, "Parts/Tags.EditTags").Location("primary", "9");
}
}
}

View File

@@ -5,6 +5,6 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.Tags.ViewModels {
public class TagsSearchViewModel : BaseViewModel {
public string TagName { get; set; }
public IEnumerable<ItemViewModel<IContent>> Items { get; set; }
public IEnumerable<ContentItemViewModel<IContent>> Items { get; set; }
}
}

View File

@@ -6,7 +6,7 @@ using Orchard.Users.Models;
namespace Orchard.Users.Controllers {
[UsedImplicitly]
public class UserDriver : ItemDriver<User> {
public class UserDriver : ContentItemDriver<User> {
public readonly static ContentType ContentType = new ContentType {
Name = "user",
DisplayName = "User Profile"
@@ -31,11 +31,11 @@ namespace Orchard.Users.Controllers {
}
protected override DriverResult Editor(User part) {
return ItemTemplate("Items/Users.User");
return ContentItemTemplate("Items/Users.User");
}
protected override DriverResult Editor(User part, IUpdateModel updater) {
return ItemTemplate("Items/Users.User");
return ContentItemTemplate("Items/Users.User");
}
}
}

View File

@@ -19,6 +19,6 @@ namespace Orchard.Users.ViewModels {
[Required, DataType(DataType.Password)]
public string ConfirmPassword { get; set; }
public ItemViewModel<IUser> User { get; set; }
public ContentItemViewModel<IUser> User { get; set; }
}
}

View File

@@ -23,6 +23,6 @@ namespace Orchard.Users.ViewModels {
set { User.Item.Record.Email = value; }
}
public ItemViewModel<User> User { get; set; }
public ContentItemViewModel<User> User { get; set; }
}
}

View File

@@ -1,4 +1,4 @@
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ItemViewModel<User>>" %>
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ContentItemViewModel<User>>" %>
<%@ Import Namespace="Orchard.Mvc.ViewModels"%>
<%@ Import Namespace="Orchard.Users.Models" %>
<% Html.ZonesAny(); %>

View File

@@ -1,7 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Orchard.ContentManagement.Handlers;
using Orchard.ContentManagement.Records;
using Orchard.Mvc.ViewModels;
@@ -151,15 +150,15 @@ namespace Orchard.ContentManagement {
/* Display and editor convenience extension methods */
public static ItemViewModel<T> BuildDisplayModel<T>(this IContentManager manager, int id, string displayType) where T : class, IContent {
public static ContentItemViewModel<T> BuildDisplayModel<T>(this IContentManager manager, int id, string displayType) where T : class, IContent {
return manager.BuildDisplayModel(manager.Get<T>(id), displayType);
}
public static ItemViewModel<T> BuildEditorModel<T>(this IContentManager manager, int id) where T : class, IContent {
public static ContentItemViewModel<T> BuildEditorModel<T>(this IContentManager manager, int id) where T : class, IContent {
return manager.BuildEditorModel(manager.Get<T>(id));
}
public static ItemViewModel<T> UpdateEditorModel<T>(this IContentManager manager, int id, IUpdateModel updater) where T : class, IContent {
public static ContentItemViewModel<T> UpdateEditorModel<T>(this IContentManager manager, int id, IUpdateModel updater) where T : class, IContent {
return manager.UpdateEditorModel(manager.Get<T>(id), updater);
}

View File

@@ -282,18 +282,18 @@ namespace Orchard.ContentManagement {
}
public ContentItemMetadata GetItemMetadata(IContent content) {
var context = new GetItemMetadataContext {
var context = new GetContentItemMetadataContext {
ContentItem = content.ContentItem,
Metadata = new ContentItemMetadata()
};
foreach (var handler in Handlers) {
handler.GetItemMetadata(context);
handler.GetContentItemMetadata(context);
}
return context.Metadata;
}
public ItemViewModel<TContentPart> BuildDisplayModel<TContentPart>(TContentPart content, string displayType) where TContentPart : IContent {
var displayModel = new ItemViewModel<TContentPart>(content);
public ContentItemViewModel<TContentPart> BuildDisplayModel<TContentPart>(TContentPart content, string displayType) where TContentPart : IContent {
var displayModel = new ContentItemViewModel<TContentPart>(content);
var context = new BuildDisplayModelContext(displayModel, displayType);
foreach (var handler in Handlers) {
handler.BuildDisplayModel(context);
@@ -301,8 +301,8 @@ namespace Orchard.ContentManagement {
return displayModel;
}
public ItemViewModel<TContentPart> BuildEditorModel<TContentPart>(TContentPart content) where TContentPart : IContent {
var editorModel = new ItemViewModel<TContentPart>(content);
public ContentItemViewModel<TContentPart> BuildEditorModel<TContentPart>(TContentPart content) where TContentPart : IContent {
var editorModel = new ContentItemViewModel<TContentPart>(content);
var context = new BuildEditorModelContext(editorModel);
foreach (var handler in Handlers) {
handler.BuildEditorModel(context);
@@ -310,8 +310,8 @@ namespace Orchard.ContentManagement {
return editorModel;
}
public ItemViewModel<TContentPart> UpdateEditorModel<TContentPart>(TContentPart content, IUpdateModel updater) where TContentPart : IContent {
var editorModel = new ItemViewModel<TContentPart>(content);
public ContentItemViewModel<TContentPart> UpdateEditorModel<TContentPart>(TContentPart content, IUpdateModel updater) where TContentPart : IContent {
var editorModel = new ContentItemViewModel<TContentPart>(content);
var context = new UpdateEditorModelContext(editorModel, updater);
foreach (var handler in Handlers) {

View File

@@ -1,21 +1,22 @@
using Orchard.ContentManagement.Handlers;
namespace Orchard.ContentManagement.Drivers {
public abstract class AutomaticPartDriver<TPart> : PartDriver<TPart> where TPart : class, IContent {
public abstract class AutomaticContentPartDriver<TPart> : ContentPartDriver<TPart> where TPart : class, IContent {
protected override string Prefix {
get {
return (typeof (TPart).Name);
}
}
protected override DriverResult Display(TPart part, string displayType) {
return PartTemplate(part);
return ContentPartTemplate(part);
}
protected override DriverResult Editor(TPart part) {
return PartTemplate(part);
return ContentPartTemplate(part);
}
protected override DriverResult Editor(TPart part, IUpdateModel updater) {
updater.TryUpdateModel(part, Prefix, null, null);
return PartTemplate(part);
return ContentPartTemplate(part);
}
}
}

View File

@@ -0,0 +1,87 @@
using System.Collections.Generic;
using System.Linq;
using System.Web.Routing;
using Orchard.ContentManagement.Handlers;
using Orchard.Mvc.ViewModels;
namespace Orchard.ContentManagement.Drivers {
public interface IContentItemDriver : IEvents {
IEnumerable<ContentType> GetContentTypes();
void GetContentItemMetadata(GetContentItemMetadataContext context);
DriverResult BuildDisplayModel(BuildDisplayModelContext context);
DriverResult BuildEditorModel(BuildEditorModelContext context);
DriverResult UpdateEditorModel(UpdateEditorModelContext context);
}
public abstract class ContentItemDriver<TContent> : ContentPartDriver<TContent>, IContentItemDriver where TContent : class, IContent {
private readonly ContentType _contentType;
public ContentItemDriver() {
}
public ContentItemDriver(ContentType contentType) {
_contentType = contentType;
}
IEnumerable<ContentType> IContentItemDriver.GetContentTypes() {
var contentType = GetContentType();
return contentType != null ? new[] { contentType } : Enumerable.Empty<ContentType>();
}
void IContentItemDriver.GetContentItemMetadata(GetContentItemMetadataContext context) {
var item = context.ContentItem.As<TContent>();
if (item != null) {
context.Metadata.DisplayText = GetDisplayText(item) ?? context.Metadata.DisplayText;
context.Metadata.DisplayRouteValues = GetDisplayRouteValues(item) ?? context.Metadata.DisplayRouteValues;
context.Metadata.EditorRouteValues = GetEditorRouteValues(item) ?? context.Metadata.EditorRouteValues;
}
}
DriverResult IContentItemDriver.BuildDisplayModel(BuildDisplayModelContext context) {
var part = context.ContentItem.As<TContent>();
if (part == null) {
return null;
}
if (context.ViewModel.GetType() != typeof(ContentItemViewModel<TContent>)) {
return Display(new ContentItemViewModel<TContent>(context.ViewModel), context.DisplayType);
}
return Display((ContentItemViewModel<TContent>)context.ViewModel, context.DisplayType);
}
DriverResult IContentItemDriver.BuildEditorModel(BuildEditorModelContext context) {
var part = context.ContentItem.As<TContent>();
if (part == null) {
return null;
}
if (context.ViewModel.GetType() != typeof(ContentItemViewModel<TContent>)) {
return Editor(new ContentItemViewModel<TContent>(context.ViewModel));
}
return Editor((ContentItemViewModel<TContent>)context.ViewModel);
}
DriverResult IContentItemDriver.UpdateEditorModel(UpdateEditorModelContext context) {
var part = context.ContentItem.As<TContent>();
if (part == null) {
return null;
}
if (context.ViewModel.GetType() != typeof(ContentItemViewModel<TContent>)) {
return Editor(new ContentItemViewModel<TContent>(context.ViewModel), context.Updater);
}
return Editor((ContentItemViewModel<TContent>)context.ViewModel, context.Updater);
}
protected virtual ContentType GetContentType() { return _contentType; }
protected virtual string GetDisplayText(TContent item) { return null; }
protected virtual RouteValueDictionary GetDisplayRouteValues(TContent item) { return null; }
protected virtual RouteValueDictionary GetEditorRouteValues(TContent item) { return null; }
protected virtual DriverResult Display(ContentItemViewModel<TContent> viewModel, string displayType) { return null; }
protected virtual DriverResult Editor(ContentItemViewModel<TContent> viewModel) { return null; }
protected virtual DriverResult Editor(ContentItemViewModel<TContent> viewModel, IUpdateModel updater) { return null; }
public ContentItemTemplateResult<TContent> ContentItemTemplate(string templateName) {
return new ContentItemTemplateResult<TContent>(templateName);
}
}
}

View File

@@ -1,17 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections.Generic;
using JetBrains.Annotations;
using Orchard.ContentManagement.Handlers;
using Orchard.Logging;
namespace Orchard.ContentManagement.Drivers {
[UsedImplicitly]
public class ItemDriverHandler : IContentHandler {
private readonly IEnumerable<IItemDriver> _drivers;
public class ContentItemDriverHandler : IContentHandler {
private readonly IEnumerable<IContentItemDriver> _drivers;
public ItemDriverHandler(IEnumerable<IItemDriver> drivers) {
public ContentItemDriverHandler(IEnumerable<IContentItemDriver> drivers) {
_drivers = drivers;
Logger = NullLogger.Instance;
}
@@ -45,8 +42,8 @@ namespace Orchard.ContentManagement.Drivers {
void IContentHandler.Removed(RemoveContentContext context) { }
void IContentHandler.GetItemMetadata(GetItemMetadataContext context) {
_drivers.Invoke(driver => driver.GetItemMetadata(context), Logger);
void IContentHandler.GetContentItemMetadata(GetContentItemMetadataContext context) {
_drivers.Invoke(driver => driver.GetContentItemMetadata(context), Logger);
}
void IContentHandler.BuildDisplayModel(BuildDisplayModelContext context) {
@@ -72,8 +69,5 @@ namespace Orchard.ContentManagement.Drivers {
result.Apply(context);
}, Logger);
}
}
}
}

View File

@@ -1,12 +1,11 @@
using System;
using System.Linq;
using System.Web.Mvc;
using Orchard.ContentManagement.Handlers;
using Orchard.Mvc.ViewModels;
namespace Orchard.ContentManagement.Drivers {
public class ItemTemplateResult<TContent> : DriverResult where TContent : class, IContent {
public ItemTemplateResult(string templateName) {
public class ContentItemTemplateResult<TContent> : DriverResult where TContent : class, IContent {
public ContentItemTemplateResult(string templateName) {
TemplateName = templateName;
}
@@ -14,11 +13,11 @@ namespace Orchard.ContentManagement.Drivers {
public override void Apply(BuildDisplayModelContext context) {
context.ViewModel.TemplateName = TemplateName;
if (context.ViewModel.GetType() != typeof(ItemViewModel<TContent>)) {
if (context.ViewModel.GetType() != typeof(ContentItemViewModel<TContent>)) {
context.ViewModel.Adaptor = (html, viewModel) => {
return new HtmlHelper<ItemViewModel<TContent>>(
return new HtmlHelper<ContentItemViewModel<TContent>>(
html.ViewContext,
new ViewDataContainer { ViewData = new ViewDataDictionary(new ItemViewModel<TContent>(viewModel)) },
new ViewDataContainer { ViewData = new ViewDataDictionary(new ContentItemViewModel<TContent>(viewModel)) },
html.RouteCollection);
};
}
@@ -26,22 +25,21 @@ namespace Orchard.ContentManagement.Drivers {
public override void Apply(BuildEditorModelContext context) {
context.ViewModel.TemplateName = TemplateName;
if (context.ViewModel.GetType() != typeof(ItemViewModel<TContent>)) {
if (context.ViewModel.GetType() != typeof(ContentItemViewModel<TContent>)) {
context.ViewModel.Adaptor = (html, viewModel) => {
return new HtmlHelper<ItemViewModel<TContent>>(
return new HtmlHelper<ContentItemViewModel<TContent>>(
html.ViewContext,
new ViewDataContainer { ViewData = new ViewDataDictionary(new ItemViewModel<TContent>(viewModel)) },
new ViewDataContainer { ViewData = new ViewDataDictionary(new ContentItemViewModel<TContent>(viewModel)) },
html.RouteCollection);
};
}
}
class ViewDataContainer : IViewDataContainer {
public ViewDataDictionary ViewData { get; set; }
}
public ItemTemplateResult<TContent> LongestMatch(string displayType, params string[] knownDisplayTypes) {
public ContentItemTemplateResult<TContent> LongestMatch(string displayType, params string[] knownDisplayTypes) {
if (string.IsNullOrEmpty(displayType))
return this;

View File

@@ -1,29 +1,27 @@
using System;
using Orchard.ContentManagement.Handlers;
using Orchard.ContentManagement.Handlers;
namespace Orchard.ContentManagement.Drivers {
public interface IPartDriver : IEvents {
public interface IContentPartDriver : IEvents {
DriverResult BuildDisplayModel(BuildDisplayModelContext context);
DriverResult BuildEditorModel(BuildEditorModelContext context);
DriverResult UpdateEditorModel(UpdateEditorModelContext context);
}
public abstract class PartDriver<TContent> : IPartDriver where TContent : class, IContent {
public abstract class ContentPartDriver<TContent> : IContentPartDriver where TContent : class, IContent {
protected virtual string Prefix { get { return ""; } }
protected virtual string Zone { get { return "body"; } }
DriverResult IPartDriver.BuildDisplayModel(BuildDisplayModelContext context) {
DriverResult IContentPartDriver.BuildDisplayModel(BuildDisplayModelContext context) {
var part = context.ContentItem.As<TContent>();
return part == null ? null : Display(part, context.DisplayType);
}
DriverResult IPartDriver.BuildEditorModel(BuildEditorModelContext context) {
DriverResult IContentPartDriver.BuildEditorModel(BuildEditorModelContext context) {
var part = context.ContentItem.As<TContent>();
return part == null ? null : Editor(part);
}
DriverResult IPartDriver.UpdateEditorModel(UpdateEditorModelContext context) {
DriverResult IContentPartDriver.UpdateEditorModel(UpdateEditorModelContext context) {
var part = context.ContentItem.As<TContent>();
return part == null ? null : Editor(part, context.Updater);
}
@@ -33,15 +31,18 @@ namespace Orchard.ContentManagement.Drivers {
protected virtual DriverResult Editor(TContent part, IUpdateModel updater) {return null;}
public PartTemplateResult PartTemplate(object model) {
return new PartTemplateResult(model, null, Prefix).Location(Zone);
public ContentPartTemplateResult ContentPartTemplate(object model) {
return new ContentPartTemplateResult(model, null, Prefix).Location(Zone);
}
public PartTemplateResult PartTemplate(object model, string template) {
return new PartTemplateResult(model, template, Prefix).Location(Zone);
public ContentPartTemplateResult ContentPartTemplate(object model, string template) {
return new ContentPartTemplateResult(model, template, Prefix).Location(Zone);
}
public PartTemplateResult PartTemplate(object model, string template, string prefix) {
return new PartTemplateResult(model, template, prefix).Location(Zone);
public ContentPartTemplateResult ContentPartTemplate(object model, string template, string prefix) {
return new ContentPartTemplateResult(model, template, prefix).Location(Zone);
}
public CombinedResult Combined(params DriverResult[] results) {
return new CombinedResult(results);
}

View File

@@ -6,17 +6,17 @@ using Orchard.Logging;
namespace Orchard.ContentManagement.Drivers {
[UsedImplicitly]
public class PartDriverHandler : IContentHandler {
private readonly IEnumerable<IPartDriver> _drivers;
public class ContentPartDriverHandler : IContentHandler {
private readonly IEnumerable<IContentPartDriver> _drivers;
public PartDriverHandler(IEnumerable<IPartDriver> drivers) {
public ContentPartDriverHandler(IEnumerable<IContentPartDriver> drivers) {
_drivers = drivers;
Logger = NullLogger.Instance;
}
public ILogger Logger { get; set; }
System.Collections.Generic.IEnumerable<ContentType> IContentHandler.GetContentTypes() {
IEnumerable<ContentType> IContentHandler.GetContentTypes() {
return Enumerable.Empty<ContentType>();
}
@@ -40,7 +40,7 @@ namespace Orchard.ContentManagement.Drivers {
void IContentHandler.Removed(RemoveContentContext context) { }
void IContentHandler.GetItemMetadata(GetItemMetadataContext context) { }
void IContentHandler.GetContentItemMetadata(GetContentItemMetadataContext context) { }
void IContentHandler.BuildDisplayModel(BuildDisplayModelContext context) {
_drivers.Invoke(driver => {
@@ -65,6 +65,5 @@ namespace Orchard.ContentManagement.Drivers {
result.Apply(context);
}, Logger);
}
}
}

View File

@@ -1,15 +1,14 @@
using Orchard.ContentManagement.Handlers;
using Orchard.ContentManagement.ViewModels;
namespace Orchard.ContentManagement.Drivers {
public class PartTemplateResult : DriverResult {
public class ContentPartTemplateResult : DriverResult {
public object Model { get; set; }
public string TemplateName { get; set; }
public string Prefix { get; set; }
public string Zone { get; set; }
public string Position { get; set; }
public PartTemplateResult(object model, string templateName, string prefix) {
public ContentPartTemplateResult(object model, string templateName, string prefix) {
Model = model;
TemplateName = templateName;
Prefix = prefix;
@@ -25,12 +24,12 @@ namespace Orchard.ContentManagement.Drivers {
Zone + ":" + Position, Model, TemplateName, Prefix);
}
public PartTemplateResult Location(string zone) {
public ContentPartTemplateResult Location(string zone) {
Zone = zone;
return this;
}
public PartTemplateResult Location(string zone, string position) {
public ContentPartTemplateResult Location(string zone, string position) {
Zone = zone;
Position = position;
return this;

View File

@@ -1,89 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Routing;
using Orchard.ContentManagement.Handlers;
using Orchard.Mvc.ViewModels;
namespace Orchard.ContentManagement.Drivers {
public interface IItemDriver : IEvents {
IEnumerable<ContentType> GetContentTypes();
void GetItemMetadata(GetItemMetadataContext context);
DriverResult BuildDisplayModel(BuildDisplayModelContext context);
DriverResult BuildEditorModel(BuildEditorModelContext context);
DriverResult UpdateEditorModel(UpdateEditorModelContext context);
}
public abstract class ItemDriver<TContent> : PartDriver<TContent>, IItemDriver where TContent : class, IContent {
private ContentType _contentType;
public ItemDriver() {
}
public ItemDriver(ContentType contentType) {
_contentType = contentType;
}
IEnumerable<ContentType> IItemDriver.GetContentTypes() {
var contentType = GetContentType();
return contentType != null ? new[] { contentType } : Enumerable.Empty<ContentType>();
}
void IItemDriver.GetItemMetadata(GetItemMetadataContext context) {
var item = context.ContentItem.As<TContent>();
if (item != null) {
context.Metadata.DisplayText = GetDisplayText(item) ?? context.Metadata.DisplayText;
context.Metadata.DisplayRouteValues = GetDisplayRouteValues(item) ?? context.Metadata.DisplayRouteValues;
context.Metadata.EditorRouteValues = GetEditorRouteValues(item) ?? context.Metadata.EditorRouteValues;
}
}
DriverResult IItemDriver.BuildDisplayModel(BuildDisplayModelContext context) {
var part = context.ContentItem.As<TContent>();
if (part == null) {
return null;
}
if (context.ViewModel.GetType() != typeof(ItemViewModel<TContent>)) {
return Display(new ItemViewModel<TContent>(context.ViewModel), context.DisplayType);
}
return Display((ItemViewModel<TContent>)context.ViewModel, context.DisplayType);
}
DriverResult IItemDriver.BuildEditorModel(BuildEditorModelContext context) {
var part = context.ContentItem.As<TContent>();
if (part == null) {
return null;
}
if (context.ViewModel.GetType() != typeof(ItemViewModel<TContent>)) {
return Editor(new ItemViewModel<TContent>(context.ViewModel));
}
return Editor((ItemViewModel<TContent>)context.ViewModel);
}
DriverResult IItemDriver.UpdateEditorModel(UpdateEditorModelContext context) {
var part = context.ContentItem.As<TContent>();
if (part == null) {
return null;
}
if (context.ViewModel.GetType() != typeof(ItemViewModel<TContent>)) {
return Editor(new ItemViewModel<TContent>(context.ViewModel), context.Updater);
}
return Editor((ItemViewModel<TContent>)context.ViewModel, context.Updater);
}
protected virtual ContentType GetContentType() { return _contentType; }
protected virtual string GetDisplayText(TContent item) { return null; }
protected virtual RouteValueDictionary GetDisplayRouteValues(TContent item) { return null; }
protected virtual RouteValueDictionary GetEditorRouteValues(TContent item) { return null; }
protected virtual DriverResult Display(ItemViewModel<TContent> viewModel, string displayType) { return null; }
protected virtual DriverResult Editor(ItemViewModel<TContent> viewModel) { return null; }
protected virtual DriverResult Editor(ItemViewModel<TContent> viewModel, IUpdateModel updater) { return null; }
public ItemTemplateResult<TContent> ItemTemplate(string templateName) {
return new ItemTemplateResult<TContent>(templateName);
}
}
}

View File

@@ -4,7 +4,7 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.ContentManagement.Handlers {
public class BuildDisplayModelContext {
public BuildDisplayModelContext(ItemViewModel viewModel, string displayType) {
public BuildDisplayModelContext(ContentItemViewModel viewModel, string displayType) {
ContentItem = viewModel.Item;
DisplayType = displayType;
ViewModel = viewModel;
@@ -12,7 +12,7 @@ namespace Orchard.ContentManagement.Handlers {
public ContentItem ContentItem { get; private set; }
public string DisplayType { get; private set; }
public ItemViewModel ViewModel { get; private set; }
public ContentItemViewModel ViewModel { get; private set; }
public void AddDisplay(TemplateViewModel display) {
//TEMP: (loudej) transition code - from TemplateViewMode to ZoneItem

View File

@@ -4,13 +4,13 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.ContentManagement.Handlers {
public class BuildEditorModelContext {
public BuildEditorModelContext(ItemViewModel viewModel) {
public BuildEditorModelContext(ContentItemViewModel viewModel) {
ContentItem = viewModel.Item;
ViewModel = viewModel;
}
public ContentItem ContentItem { get; set; }
public ItemViewModel ViewModel { get; set; }
public ContentItemViewModel ViewModel { get; set; }
public void AddEditor(TemplateViewModel display) {

View File

@@ -49,7 +49,7 @@ namespace Orchard.ContentManagement.Handlers {
Filters.Add(new InlineStorageFilter<TPart> { OnRemoved = handler });
}
protected void OnGetItemMetadata<TPart>(Action<GetItemMetadataContext, TPart> handler) where TPart : class, IContent {
protected void OnGetContentItemMetadata<TPart>(Action<GetContentItemMetadataContext, TPart> handler) where TPart : class, IContent {
Filters.Add(new InlineTemplateFilter<TPart> { OnGetItemMetadata = handler });
}
protected void OnGetDisplayViewModel<TPart>(Action<BuildDisplayModelContext, TPart> handler) where TPart : class, IContent {
@@ -104,11 +104,11 @@ namespace Orchard.ContentManagement.Handlers {
}
class InlineTemplateFilter<TPart> : TemplateFilterBase<TPart> where TPart : class, IContent {
public Action<GetItemMetadataContext, TPart> OnGetItemMetadata { get; set; }
public Action<GetContentItemMetadataContext, TPart> OnGetItemMetadata { get; set; }
public Action<BuildDisplayModelContext, TPart> OnGetDisplayViewModel { get; set; }
public Action<BuildEditorModelContext, TPart> OnGetEditorViewModel { get; set; }
public Action<UpdateEditorModelContext, TPart> OnUpdateEditorViewModel { get; set; }
protected override void GetItemMetadata(GetItemMetadataContext context, TPart instance) {
protected override void GetContentItemMetadata(GetContentItemMetadataContext context, TPart instance) {
if (OnGetItemMetadata != null) OnGetItemMetadata(context, instance);
}
protected override void BuildDisplayModel(BuildDisplayModelContext context, TPart instance) {
@@ -185,9 +185,9 @@ namespace Orchard.ContentManagement.Handlers {
}
void IContentHandler.GetItemMetadata(GetItemMetadataContext context) {
void IContentHandler.GetContentItemMetadata(GetContentItemMetadataContext context) {
foreach (var filter in Filters.OfType<IContentTemplateFilter>())
filter.GetItemMetadata(context);
filter.GetContentItemMetadata(context);
GetItemMetadata(context);
}
void IContentHandler.BuildDisplayModel(BuildDisplayModelContext context) {
@@ -221,7 +221,7 @@ namespace Orchard.ContentManagement.Handlers {
protected virtual void Removing(RemoveContentContext context) { }
protected virtual void Removed(RemoveContentContext context) { }
protected virtual void GetItemMetadata(GetItemMetadataContext context) { }
protected virtual void GetItemMetadata(GetContentItemMetadataContext context) { }
protected virtual void BuildDisplayModel(BuildDisplayModelContext context) { }
protected virtual void BuildEditorModel(BuildEditorModelContext context) { }
protected virtual void UpdateEditorModel(UpdateEditorModelContext context) { }

View File

@@ -9,7 +9,7 @@ namespace Orchard.ContentManagement.Handlers {
// todo: (heskew) use _prefix?
private readonly string _prefix;
private readonly string[] _displayTypes;
private Action<UpdateEditorModelContext, ItemViewModel<TContent>> _updater;
private Action<UpdateEditorModelContext, ContentItemViewModel<TContent>> _updater;
public ContentItemTemplates(string templateName)
: this(templateName, "") {
@@ -30,11 +30,11 @@ namespace Orchard.ContentManagement.Handlers {
context.ViewModel.Prefix = _prefix;
if (context.ViewModel.GetType() != typeof(ItemViewModel<TContent>)) {
if (context.ViewModel.GetType() != typeof(ContentItemViewModel<TContent>)) {
context.ViewModel.Adaptor = (html, viewModel) => {
return new HtmlHelper<ItemViewModel<TContent>>(
return new HtmlHelper<ContentItemViewModel<TContent>>(
html.ViewContext,
new ViewDataContainer { ViewData = new ViewDataDictionary(new ItemViewModel<TContent>(viewModel)) },
new ViewDataContainer { ViewData = new ViewDataDictionary(new ContentItemViewModel<TContent>(viewModel)) },
html.RouteCollection);
};
}
@@ -57,26 +57,26 @@ namespace Orchard.ContentManagement.Handlers {
protected override void BuildEditorModel(BuildEditorModelContext context, TContent instance) {
context.ViewModel.TemplateName = _templateName;
context.ViewModel.Prefix = _prefix;
if (context.ViewModel.GetType() != typeof(ItemViewModel<TContent>)) {
if (context.ViewModel.GetType() != typeof(ContentItemViewModel<TContent>)) {
context.ViewModel.Adaptor = (html, viewModel) => {
return new HtmlHelper<ItemViewModel<TContent>>(
return new HtmlHelper<ContentItemViewModel<TContent>>(
html.ViewContext,
new ViewDataContainer { ViewData = new ViewDataDictionary(new ItemViewModel<TContent>(viewModel)) },
new ViewDataContainer { ViewData = new ViewDataDictionary(new ContentItemViewModel<TContent>(viewModel)) },
html.RouteCollection);
};
}
}
protected override void UpdateEditorModel(UpdateEditorModelContext context, TContent instance) {
if (context.ViewModel is ItemViewModel<TContent>)
_updater(context, (ItemViewModel<TContent>)context.ViewModel);
if (context.ViewModel is ContentItemViewModel<TContent>)
_updater(context, (ContentItemViewModel<TContent>)context.ViewModel);
else
_updater(context, new ItemViewModel<TContent>(context.ViewModel));
_updater(context, new ContentItemViewModel<TContent>(context.ViewModel));
context.ViewModel.TemplateName = _templateName;
context.ViewModel.Prefix = _prefix;
}
public void Updater(Action<UpdateEditorModelContext, ItemViewModel<TContent>> updater) {
public void Updater(Action<UpdateEditorModelContext, ContentItemViewModel<TContent>> updater) {
_updater = updater;
}
}

View File

@@ -1,5 +1,5 @@
namespace Orchard.ContentManagement.Handlers {
public class GetItemMetadataContext {
public class GetContentItemMetadataContext {
public ContentItem ContentItem { get; set; }
public ContentItemMetadata Metadata { get; set; }
}

View File

@@ -15,7 +15,7 @@ namespace Orchard.ContentManagement.Handlers {
void Removing(RemoveContentContext context);
void Removed(RemoveContentContext context);
void GetItemMetadata(GetItemMetadataContext context);
void GetContentItemMetadata(GetContentItemMetadataContext context);
void BuildDisplayModel(BuildDisplayModelContext context);
void BuildEditorModel(BuildEditorModelContext context);
void UpdateEditorModel(UpdateEditorModelContext context);

View File

@@ -1,11 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Orchard.ContentManagement.Handlers {
namespace Orchard.ContentManagement.Handlers {
interface IContentTemplateFilter : IContentFilter {
void GetItemMetadata(GetItemMetadataContext context);
void GetContentItemMetadata(GetContentItemMetadataContext context);
void BuildDisplayModel(BuildDisplayModelContext context);
void BuildEditorModel(BuildEditorModelContext context);
void UpdateEditorModel(UpdateEditorModelContext context);

View File

@@ -1,19 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Orchard.ContentManagement.Handlers {
namespace Orchard.ContentManagement.Handlers {
public abstract class TemplateFilterBase<TPart> : IContentTemplateFilter where TPart : class, IContent {
protected virtual void GetItemMetadata(GetItemMetadataContext context, TPart instance) { }
protected virtual void GetContentItemMetadata(GetContentItemMetadataContext context, TPart instance) { }
protected virtual void BuildDisplayModel(BuildDisplayModelContext context, TPart instance) { }
protected virtual void BuildEditorModel(BuildEditorModelContext context, TPart instance) { }
protected virtual void UpdateEditorModel(UpdateEditorModelContext context, TPart instance) { }
void IContentTemplateFilter.GetItemMetadata(GetItemMetadataContext context) {
void IContentTemplateFilter.GetContentItemMetadata(GetContentItemMetadataContext context) {
if (context.ContentItem.Is<TPart>())
GetItemMetadata(context, context.ContentItem.As<TPart>());
GetContentItemMetadata(context, context.ContentItem.As<TPart>());
}
void IContentTemplateFilter.BuildDisplayModel(BuildDisplayModelContext context) {
@@ -30,6 +24,5 @@ namespace Orchard.ContentManagement.Handlers {
if (context.ContentItem.Is<TPart>())
UpdateEditorModel(context, context.ContentItem.As<TPart>());
}
}
}

View File

@@ -2,7 +2,7 @@ using Orchard.Mvc.ViewModels;
namespace Orchard.ContentManagement.Handlers {
public class UpdateEditorModelContext : BuildEditorModelContext {
public UpdateEditorModelContext(ItemViewModel viewModel, IUpdateModel updater)
public UpdateEditorModelContext(ContentItemViewModel viewModel, IUpdateModel updater)
: base(viewModel) {
Updater = updater;
}

View File

@@ -21,9 +21,9 @@ namespace Orchard.ContentManagement {
ContentItemMetadata GetItemMetadata(IContent contentItem);
ItemViewModel<TContent> BuildDisplayModel<TContent>(TContent content, string displayType) where TContent : IContent;
ItemViewModel<TContent> BuildEditorModel<TContent>(TContent content) where TContent : IContent;
ItemViewModel<TContent> UpdateEditorModel<TContent>(TContent content, IUpdateModel updater) where TContent : IContent;
ContentItemViewModel<TContent> BuildDisplayModel<TContent>(TContent content, string displayType) where TContent : IContent;
ContentItemViewModel<TContent> BuildEditorModel<TContent>(TContent content) where TContent : IContent;
ContentItemViewModel<TContent> UpdateEditorModel<TContent>(TContent content, IUpdateModel updater) where TContent : IContent;
}
public class VersionOptions {

View File

@@ -1,6 +1,5 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Globalization;
using System.Linq;
using System.Linq.Expressions;
@@ -18,6 +17,7 @@ namespace Orchard.ContentManagement.Records {
public ContentItemAlteration() {
_recordTypes = Enumerable.Empty<Type>();
}
public ContentItemAlteration(IEnumerable<Type> recordTypes) {
_recordTypes = recordTypes;
}
@@ -69,7 +69,8 @@ namespace Orchard.ContentManagement.Records {
.Cascade.All();
}
}
class PartAlteration<TPartRecord> : IAlteration<ContentItemRecord> where TPartRecord : ContentPartRecord {
class ContentPartAlterationInternal<TPartRecord> : IAlteration<ContentItemRecord> where TPartRecord : ContentPartRecord {
public void Override(AutoMapping<ContentItemRecord> mapping) {
// public TPartRecord TPartRecord {get;set;}
@@ -94,7 +95,7 @@ namespace Orchard.ContentManagement.Records {
}
}
class PartVersionAlteration<TPartRecord> : IAlteration<ContentItemVersionRecord> where TPartRecord : ContentPartVersionRecord {
class ContentPartVersionAlterationInternal<TPartRecord> : IAlteration<ContentItemVersionRecord> where TPartRecord : ContentPartVersionRecord {
public void Override(AutoMapping<ContentItemVersionRecord> mapping) {
// public TPartRecord TPartRecord {get;set;}

View File

@@ -11,12 +11,12 @@ namespace Orchard.ContentManagement.Records {
var recordType = mapping.GetType().GetGenericArguments().Single();
if (Utility.IsPartRecord(recordType)) {
var type = typeof(PartAlteration<>).MakeGenericType(recordType);
var type = typeof(ContentPartAlterationInternal<>).MakeGenericType(recordType);
var alteration = (IAlteration)Activator.CreateInstance(type);
alteration.Override(mapping);
}
else if (Utility.IsPartVersionRecord(recordType)) {
var type = typeof(PartVersionAlteration<>).MakeGenericType(recordType);
var type = typeof(ContentPartVersionAlterationInternal<>).MakeGenericType(recordType);
var alteration = (IAlteration)Activator.CreateInstance(type);
alteration.Override(mapping);
}
@@ -28,7 +28,7 @@ namespace Orchard.ContentManagement.Records {
void Override(object mapping);
}
class PartAlteration<T> : IAlteration where T : ContentPartRecord {
class ContentPartAlterationInternal<T> : IAlteration where T : ContentPartRecord {
public void Override(object mappingObj) {
var mapping = (AutoMapping<T>)mappingObj;
@@ -40,7 +40,7 @@ namespace Orchard.ContentManagement.Records {
}
}
class PartVersionAlteration<T> : IAlteration where T : ContentPartVersionRecord {
class ContentPartVersionAlterationInternal<T> : IAlteration where T : ContentPartVersionRecord {
public void Override(object mappingObj) {
var mapping = (AutoMapping<T>)mappingObj;

View File

@@ -5,13 +5,12 @@ using System.Web.Mvc.Html;
using Orchard.Mvc.ViewModels;
namespace Orchard.Mvc.Html {
public static class ItemDisplayExtensions {
public static MvcHtmlString DisplayForItem<TModel, TItemModel>(this HtmlHelper<TModel> html, TItemModel item) where TItemModel : ItemViewModel {
public static class ContentItemDisplayExtensions {
public static MvcHtmlString DisplayForItem<TModel, TItemModel>(this HtmlHelper<TModel> html, TItemModel item) where TItemModel : ContentItemViewModel {
return html.DisplayForItem(x => item);
}
public static MvcHtmlString DisplayForItem<TModel, TItemModel>(this HtmlHelper<TModel> html, Expression<Func<TModel, TItemModel>> expression) where TItemModel : ItemViewModel {
public static MvcHtmlString DisplayForItem<TModel, TItemModel>(this HtmlHelper<TModel> html, Expression<Func<TModel, TItemModel>> expression) where TItemModel : ContentItemViewModel {
var metadata = ModelMetadata.FromLambdaExpression(expression, html.ViewData);
var model = (TItemModel)metadata.Model;

View File

@@ -5,12 +5,12 @@ using System.Web.Mvc.Html;
using Orchard.Mvc.ViewModels;
namespace Orchard.Mvc.Html {
public static class ItemEditorExtensions {
public static MvcHtmlString EditorForItem<TModel, TItemModel>(this HtmlHelper<TModel> html, TItemModel item) where TItemModel : ItemViewModel {
public static class ContentItemEditorExtensions {
public static MvcHtmlString EditorForItem<TModel, TItemModel>(this HtmlHelper<TModel> html, TItemModel item) where TItemModel : ContentItemViewModel {
return html.EditorForItem(x => item);
}
public static MvcHtmlString EditorForItem<TModel, TItemModel>(this HtmlHelper<TModel> html, Expression<Func<TModel, TItemModel>> expression) where TItemModel : ItemViewModel {
public static MvcHtmlString EditorForItem<TModel, TItemModel>(this HtmlHelper<TModel> html, Expression<Func<TModel, TItemModel>> expression) where TItemModel : ContentItemViewModel {
var metadata = ModelMetadata.FromLambdaExpression(expression, html.ViewData);
var model = (TItemModel)metadata.Model;

View File

@@ -45,7 +45,7 @@ namespace Orchard.Mvc.Html {
}
public static MvcHtmlString ItemDisplayTemplate(this HtmlHelper html, IContent content, string template) {
return html.Partial(string.Format("{0}/{1}", content.ContentItem.ContentType, template), new ItemViewModel(content.ContentItem));
return html.Partial(string.Format("{0}/{1}", content.ContentItem.ContentType, template), new ContentItemViewModel(content.ContentItem));
}
}
}

View File

@@ -4,19 +4,19 @@ using Orchard.ContentManagement;
using Orchard.UI.Zones;
namespace Orchard.Mvc.ViewModels {
public class ItemViewModel : IZoneContainer {
public class ContentItemViewModel : IZoneContainer {
private ContentItem _item;
public ItemViewModel() {
public ContentItemViewModel() {
Zones = new ZoneCollection();
}
public ItemViewModel(ContentItem item) {
public ContentItemViewModel(ContentItem item) {
Zones = new ZoneCollection();
Item = item;
}
public ItemViewModel(ItemViewModel viewModel) {
public ContentItemViewModel(ContentItemViewModel viewModel) {
TemplateName = viewModel.TemplateName;
Prefix = viewModel.Prefix;
Item = viewModel.Item;
@@ -32,23 +32,23 @@ namespace Orchard.Mvc.ViewModels {
_item = value;
}
public Func<HtmlHelper, ItemViewModel, HtmlHelper> Adaptor { get; set; }
public Func<HtmlHelper, ContentItemViewModel, HtmlHelper> Adaptor { get; set; }
public string TemplateName { get; set; }
public string Prefix { get; set; }
public ZoneCollection Zones { get; private set; }
}
public class ItemViewModel<TPart> : ItemViewModel where TPart : IContent {
public class ContentItemViewModel<TPart> : ContentItemViewModel where TPart : IContent {
private TPart _item;
public ItemViewModel() {
public ContentItemViewModel() {
}
public ItemViewModel(TPart content)
public ContentItemViewModel(TPart content)
: base(content.ContentItem) {
}
public ItemViewModel(ItemViewModel viewModel)
public ContentItemViewModel(ContentItemViewModel viewModel)
: base(viewModel) {
}

View File

@@ -135,14 +135,14 @@
<Compile Include="ContentManagement\ContentType.cs" />
<Compile Include="ContentManagement\DefaultContentManager.cs" />
<Compile Include="ContentManagement\DefaultContentQuery.cs" />
<Compile Include="ContentManagement\Drivers\AutomaticPartDriver.cs" />
<Compile Include="ContentManagement\Drivers\AutomaticContentPartDriver.cs" />
<Compile Include="ContentManagement\Drivers\CombinedResult.cs" />
<Compile Include="ContentManagement\Drivers\DriverResult.cs" />
<Compile Include="ContentManagement\Drivers\ItemDriver.cs" />
<Compile Include="ContentManagement\Drivers\ItemDriverHandler.cs" />
<Compile Include="ContentManagement\Drivers\ItemTemplateResult.cs" />
<Compile Include="ContentManagement\Drivers\PartDriverHandler.cs" />
<Compile Include="ContentManagement\Drivers\PartTemplateResult.cs" />
<Compile Include="ContentManagement\Drivers\ContentItemDriver.cs" />
<Compile Include="ContentManagement\Drivers\ContentItemDriverHandler.cs" />
<Compile Include="ContentManagement\Drivers\ContentItemTemplateResult.cs" />
<Compile Include="ContentManagement\Drivers\ContentPartDriverHandler.cs" />
<Compile Include="ContentManagement\Drivers\ContentPartTemplateResult.cs" />
<Compile Include="ContentManagement\Handlers\ActivatedContentContext.cs" />
<Compile Include="ContentManagement\Handlers\ActivatingContentContext.cs" />
<Compile Include="ContentManagement\Handlers\ActivatingFilter.cs" />
@@ -152,7 +152,7 @@
<Compile Include="ContentManagement\Handlers\ContentItemBuilder.cs" />
<Compile Include="ContentManagement\Handlers\ContentItemTemplates.cs" />
<Compile Include="ContentManagement\Handlers\CreateContentContext.cs" />
<Compile Include="ContentManagement\Handlers\GetItemMetadataContext.cs" />
<Compile Include="ContentManagement\Handlers\GetContentItemMetadataContext.cs" />
<Compile Include="ContentManagement\Handlers\IContentActivatingFilter.cs" />
<Compile Include="ContentManagement\Handlers\IContentFilter.cs" />
<Compile Include="ContentManagement\Handlers\IContentHandler.cs" />
@@ -167,7 +167,7 @@
<Compile Include="ContentManagement\IContent.cs" />
<Compile Include="ContentManagement\IContentManager.cs" />
<Compile Include="ContentManagement\IContentQuery.cs" />
<Compile Include="ContentManagement\Drivers\PartDriver.cs" />
<Compile Include="ContentManagement\Drivers\ContentPartDriver.cs" />
<Compile Include="ContentManagement\IUpdateModel.cs" />
<Compile Include="ContentManagement\Records\ContentItemRecord.cs" />
<Compile Include="ContentManagement\Records\ContentItemAlteration.cs" />
@@ -177,7 +177,7 @@
<Compile Include="ContentManagement\Records\ContentPartVersionRecord.cs" />
<Compile Include="ContentManagement\Records\ContentTypeRecord.cs" />
<Compile Include="ContentManagement\Records\Utility.cs" />
<Compile Include="Mvc\ViewModels\ItemViewModel.cs" />
<Compile Include="Mvc\ViewModels\ContentItemViewModel.cs" />
<Compile Include="ContentManagement\ViewModels\TemplateViewModel.cs" />
<Compile Include="Controllers\AccountController.cs" />
<Compile Include="Controllers\HomeController.cs" />
@@ -225,8 +225,8 @@
<Compile Include="Logging\NullLoggerFactory.cs" />
<Compile Include="Mvc\Html\ContainerExtensions.cs" />
<Compile Include="Mvc\Html\ContentItemExtensions.cs" />
<Compile Include="Mvc\Html\ItemDisplayExtensions.cs" />
<Compile Include="Mvc\Html\ItemEditorExtensions.cs" />
<Compile Include="Mvc\Html\ContentItemDisplayExtensions.cs" />
<Compile Include="Mvc\Html\ContentItemEditorExtensions.cs" />
<Compile Include="Mvc\Html\LayoutExtensions.cs" />
<Compile Include="Mvc\MvcModule.cs" />
<Compile Include="Mvc\Html\HtmlHelperExtensions.cs" />
@@ -254,10 +254,10 @@
<Compile Include="UI\Resources\ResourceFilter.cs" />
<Compile Include="UI\Resources\ResourceManager.cs" />
<Compile Include="UI\Zones\DelegateZoneItem.cs" />
<Compile Include="UI\Zones\ItemDisplayZoneItem.cs" />
<Compile Include="UI\Zones\ContentItemDisplayZoneItem.cs" />
<Compile Include="UI\Zones\IZoneManager.cs" />
<Compile Include="UI\Zones\PartDisplayZoneItem.cs" />
<Compile Include="UI\Zones\PartEditorZoneItem.cs" />
<Compile Include="UI\Zones\ContentPartDisplayZoneItem.cs" />
<Compile Include="UI\Zones\ContentPartEditorZoneItem.cs" />
<Compile Include="UI\Zones\RenderPartialZoneItem.cs" />
<Compile Include="UI\Zones\ZoneCollection.cs" />
<Compile Include="UI\Zones\ZoneEntry.cs" />

View File

@@ -3,8 +3,8 @@ using Orchard.Mvc.Html;
using Orchard.Mvc.ViewModels;
namespace Orchard.UI.Zones {
public class ItemDisplayZoneItem : ZoneItem {
public ItemViewModel ViewModel { get; set; }
public class ContentItemDisplayZoneItem : ZoneItem {
public ContentItemViewModel ViewModel { get; set; }
public override void Execute<TModel>(HtmlHelper<TModel> html) {
html.DisplayForItem(ViewModel);

View File

@@ -2,7 +2,7 @@ using System.Web.Mvc;
using System.Web.Mvc.Html;
namespace Orchard.UI.Zones {
public class PartDisplayZoneItem : ZoneItem {
public class ContentPartDisplayZoneItem : ZoneItem {
public object Model { get; set; }
public string TemplateName { get; set; }
public string Prefix { get; set; }

View File

@@ -2,7 +2,7 @@ using System.Web.Mvc;
using System.Web.Mvc.Html;
namespace Orchard.UI.Zones {
public class PartEditorZoneItem : ZoneItem {
public class ContentPartEditorZoneItem : ZoneItem {
public object Model { get; set; }
public string TemplateName { get; set; }
public string Prefix { get; set; }

View File

@@ -15,14 +15,14 @@ namespace Orchard.UI.Zones {
public void AddRenderPartial(string location, string templateName, object model) {
AddZoneItem(location, new RenderPartialZoneItem { Model = model, TemplateName = templateName });
}
public void AddDisplayItem(string location, ItemViewModel viewModel) {
AddZoneItem(location, new ItemDisplayZoneItem { ViewModel = viewModel });
public void AddDisplayItem(string location, ContentItemViewModel viewModel) {
AddZoneItem(location, new ContentItemDisplayZoneItem { ViewModel = viewModel });
}
public void AddDisplayPart(string location, object model, string templateName, string prefix) {
AddZoneItem(location, new PartDisplayZoneItem { Model = model, TemplateName = templateName, Prefix = prefix });
AddZoneItem(location, new ContentPartDisplayZoneItem { Model = model, TemplateName = templateName, Prefix = prefix });
}
public void AddEditorPart(string location, object model, string templateName, string prefix) {
AddZoneItem(location, new PartEditorZoneItem { Model = model, TemplateName = templateName, Prefix = prefix });
AddZoneItem(location, new ContentPartEditorZoneItem { Model = model, TemplateName = templateName, Prefix = prefix });
}
private void AddZoneItem(string location, ZoneItem item) {