From c158caba4919994df37b257a3e063758ea7f96e6 Mon Sep 17 00:00:00 2001 From: Dave Reed Date: Fri, 4 Mar 2011 14:37:44 -0800 Subject: [PATCH] - Added 'AdminLink' concept to content item metadata, allows content types to determine where clicking their items from admin should go. Defaults to Edit. - Changed Blogs to use AdminLink, no longer needs to overwrite the entire SummaryAdmin view. - This will also aid the potential future AdminMenuPart for blogs and lists as it can link to the list details instead of their edit properties. --HG-- branch : dev --- .../Views/Content.SummaryAdmin.cshtml | 2 +- .../Orchard.Blogs/Drivers/BlogPartDriver.cs | 2 ++ .../Orchard.Blogs/Handlers/BlogPartHandler.cs | 6 ++++ .../Orchard.Blogs/Orchard.Blogs.csproj | 4 ++- .../Modules/Orchard.Blogs/Placement.info | 3 +- .../Views/Content-Blog.SummaryAdmin.cshtml | 32 ------------------- .../Parts.Blogs.Blog.SummaryAdmin.cshtml | 10 ++++++ .../ContentManagement/ContentItemMetadata.cs | 6 ++++ src/Orchard/Mvc/Html/ContentItemExtensions.cs | 19 +++++++++++ 9 files changed, 49 insertions(+), 35 deletions(-) delete mode 100644 src/Orchard.Web/Modules/Orchard.Blogs/Views/Content-Blog.SummaryAdmin.cshtml create mode 100644 src/Orchard.Web/Modules/Orchard.Blogs/Views/Parts.Blogs.Blog.SummaryAdmin.cshtml diff --git a/src/Orchard.Web/Core/Contents/Views/Content.SummaryAdmin.cshtml b/src/Orchard.Web/Core/Contents/Views/Content.SummaryAdmin.cshtml index ed4c16944..9e9e42930 100644 --- a/src/Orchard.Web/Core/Contents/Views/Content.SummaryAdmin.cshtml +++ b/src/Orchard.Web/Core/Contents/Views/Content.SummaryAdmin.cshtml @@ -7,7 +7,7 @@
-

@Html.ItemEditLink(contentItem)

+

@Html.ItemAdminLink(contentItem)

@if (Model.Header != null) {
@Display(Model.Header)
} diff --git a/src/Orchard.Web/Modules/Orchard.Blogs/Drivers/BlogPartDriver.cs b/src/Orchard.Web/Modules/Orchard.Blogs/Drivers/BlogPartDriver.cs index dfff9e6b3..46fa7e3f9 100644 --- a/src/Orchard.Web/Modules/Orchard.Blogs/Drivers/BlogPartDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Blogs/Drivers/BlogPartDriver.cs @@ -12,6 +12,8 @@ namespace Orchard.Blogs.Drivers { () => shapeHelper.Parts_Blogs_Blog_Manage(ContentPart: part)), ContentShape("Parts_Blogs_Blog_Description", () => shapeHelper.Parts_Blogs_Blog_Description(ContentPart: part, Description: part.Description)), + ContentShape("Parts_Blogs_Blog_SummaryAdmin", + () => shapeHelper.Parts_Blogs_Blog_SummaryAdmin(ContentPart: part, ContentItem: part.ContentItem)), ContentShape("Parts_Blogs_Blog_BlogPostCount", () => shapeHelper.Parts_Blogs_Blog_BlogPostCount(ContentPart: part, PostCount: part.PostCount)) ); diff --git a/src/Orchard.Web/Modules/Orchard.Blogs/Handlers/BlogPartHandler.cs b/src/Orchard.Web/Modules/Orchard.Blogs/Handlers/BlogPartHandler.cs index c42d1eae6..133f46880 100644 --- a/src/Orchard.Web/Modules/Orchard.Blogs/Handlers/BlogPartHandler.cs +++ b/src/Orchard.Web/Modules/Orchard.Blogs/Handlers/BlogPartHandler.cs @@ -77,6 +77,12 @@ namespace Orchard.Blogs.Handlers { {"Action", "Remove"}, {"blogId", context.ContentItem.Id} }; + context.Metadata.AdminRouteValues = new RouteValueDictionary { + {"Area", "Orchard.Blogs"}, + {"Controller", "BlogAdmin"}, + {"Action", "Item"}, + {"blogId", context.ContentItem.Id} + }; } } } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Blogs/Orchard.Blogs.csproj b/src/Orchard.Web/Modules/Orchard.Blogs/Orchard.Blogs.csproj index da7db577b..f0bba2831 100644 --- a/src/Orchard.Web/Modules/Orchard.Blogs/Orchard.Blogs.csproj +++ b/src/Orchard.Web/Modules/Orchard.Blogs/Orchard.Blogs.csproj @@ -125,7 +125,6 @@ Code - @@ -164,6 +163,9 @@ + + +