From 64522b46eed8cd889f6cf6adffe551a7868f95a0 Mon Sep 17 00:00:00 2001 From: urbanit Date: Fri, 17 Jul 2015 10:55:52 +0300 Subject: [PATCH] ItemEditLink with Html Attributes ItemEditLink may have HTML attributes added - e.g. class. --- src/Orchard/Mvc/Html/ContentItemExtensions.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/Orchard/Mvc/Html/ContentItemExtensions.cs b/src/Orchard/Mvc/Html/ContentItemExtensions.cs index 8524091c7..c8caa9a03 100644 --- a/src/Orchard/Mvc/Html/ContentItemExtensions.cs +++ b/src/Orchard/Mvc/Html/ContentItemExtensions.cs @@ -100,6 +100,19 @@ namespace Orchard.Mvc.Html { Convert.ToString(metadata.EditorRouteValues["action"]), metadata.EditorRouteValues.Merge(additionalRouteValues)); } + + public static MvcHtmlString ItemEditLink(this HtmlHelper html, string linkText, IContent content, object additionalRouteValues, object htmlAttributes = null) + { + var metadata = content.ContentItem.ContentManager.GetItemMetadata(content); + if (metadata.EditorRouteValues == null) + return null; + + return html.ActionLink( + NonNullOrEmpty(linkText, metadata.DisplayText, content.ContentItem.TypeDefinition.DisplayName), + Convert.ToString(metadata.EditorRouteValues["action"]), + metadata.EditorRouteValues.Merge(additionalRouteValues), + new RouteValueDictionary(htmlAttributes)); + } public static MvcHtmlString ItemAdminLink(this HtmlHelper html, IContent content) { return ItemAdminLink(html, null, content);