From 6789347981732a15766973ed1112fa7610eb0942 Mon Sep 17 00:00:00 2001 From: Renaud Paquay Date: Mon, 18 Oct 2010 17:36:42 -0700 Subject: [PATCH] Make PublishedDate and PublishedWhen shape methods --HG-- branch : dev --- .../Common/Extensions/HtmlHelperExtensions.cs | 23 ++++++++++++++----- .../Parts/Common.Metadata.Summary.cshtml | 2 +- .../Common/Views/Parts/Common.Metadata.cshtml | 2 +- .../Parts/Blogs.BlogPost.Metadata.ascx | 2 +- .../Items/Blogs.BlogPost.Summary.ascx | 2 +- .../Parts/Blogs.BlogPost.Metadata.ascx | 2 +- .../Views/Items/BlogPost.Summary.cshtml | 2 +- 7 files changed, 23 insertions(+), 12 deletions(-) diff --git a/src/Orchard.Web/Core/Common/Extensions/HtmlHelperExtensions.cs b/src/Orchard.Web/Core/Common/Extensions/HtmlHelperExtensions.cs index 3961b92a3..5101081f4 100644 --- a/src/Orchard.Web/Core/Common/Extensions/HtmlHelperExtensions.cs +++ b/src/Orchard.Web/Core/Common/Extensions/HtmlHelperExtensions.cs @@ -1,15 +1,26 @@ using System; +using System.Web; using System.Web.Mvc; +using Orchard.DisplayManagement; using Orchard.Localization; using Orchard.Mvc.Html; namespace Orchard.Core.Common.Extensions { - public static class HtmlHelperExtensions { - public static LocalizedString PublishedState(this HtmlHelper htmlHelper, DateTime? versionPublishedUtc, Localizer T) { - return htmlHelper.DateTime(versionPublishedUtc, T("Draft")); + public class Shapes { + public Shapes() { + T = NullLocalizer.Instance; } - public static LocalizedString PublishedWhen(this HtmlHelper htmlHelper, DateTime? versionPublishedUtc, Localizer T) { - return htmlHelper.DateTimeRelative(versionPublishedUtc, T("as a Draft"), T); + + public Localizer T { get; set; } + + [Shape] + public IHtmlString PublishedState(HtmlHelper Html, DateTime? versionPublishedUtc) { + return Html.DateTime(versionPublishedUtc, T("Draft")); + } + + [Shape] + public IHtmlString PublishedWhen(dynamic Display, HtmlHelper Html, DateTime? versionPublishedUtc) { + return Display.DateTimeRelative(dateTime: versionPublishedUtc, defaultIfNull: T("as a Draft")); } } -} \ No newline at end of file +} diff --git a/src/Orchard.Web/Core/Common/Views/Parts/Common.Metadata.Summary.cshtml b/src/Orchard.Web/Core/Common/Views/Parts/Common.Metadata.Summary.cshtml index e5ca1cad4..bd7444ce2 100644 --- a/src/Orchard.Web/Core/Common/Views/Parts/Common.Metadata.Summary.cshtml +++ b/src/Orchard.Web/Core/Common/Views/Parts/Common.Metadata.Summary.cshtml @@ -1,2 +1,2 @@ @using Orchard.Core.Common.Extensions; -
@Html.PublishedState((DateTime?)Model.ContentPart.VersionPublishedUtc, T)
\ No newline at end of file +
@Display.PublishedState(versionPublishedUtc: (DateTime?)Model.ContentPart.VersionPublishedUtc)
\ No newline at end of file diff --git a/src/Orchard.Web/Core/Common/Views/Parts/Common.Metadata.cshtml b/src/Orchard.Web/Core/Common/Views/Parts/Common.Metadata.cshtml index e5ca1cad4..bd7444ce2 100644 --- a/src/Orchard.Web/Core/Common/Views/Parts/Common.Metadata.cshtml +++ b/src/Orchard.Web/Core/Common/Views/Parts/Common.Metadata.cshtml @@ -1,2 +1,2 @@ @using Orchard.Core.Common.Extensions; -
@Html.PublishedState((DateTime?)Model.ContentPart.VersionPublishedUtc, T)
\ No newline at end of file +
@Display.PublishedState(versionPublishedUtc: (DateTime?)Model.ContentPart.VersionPublishedUtc)
\ No newline at end of file diff --git a/src/Orchard.Web/Themes/Corporate/Views/DisplayTemplates/Parts/Blogs.BlogPost.Metadata.ascx b/src/Orchard.Web/Themes/Corporate/Views/DisplayTemplates/Parts/Blogs.BlogPost.Metadata.ascx index 03bb4f709..486f49d5e 100644 --- a/src/Orchard.Web/Themes/Corporate/Views/DisplayTemplates/Parts/Blogs.BlogPost.Metadata.ascx +++ b/src/Orchard.Web/Themes/Corporate/Views/DisplayTemplates/Parts/Blogs.BlogPost.Metadata.ascx @@ -3,5 +3,5 @@ <%@ Import Namespace="Orchard.Blogs.Models"%> <% if (Model.Creator != null) { - %><%=_Encoded(" | Posted by {0} {1}", Model.Creator.UserName, Html.PublishedWhen(Model)) %><% + %><%=_Encoded(" | Posted by {0} {1}", Model.Creator.UserName, Display.PublishedWhen(versionPublishedUtc: Model))%><% } %> diff --git a/src/Orchard.Web/Themes/Green/Views/DisplayTemplates/Items/Blogs.BlogPost.Summary.ascx b/src/Orchard.Web/Themes/Green/Views/DisplayTemplates/Items/Blogs.BlogPost.Summary.ascx index 2d2a553bd..97f642984 100644 --- a/src/Orchard.Web/Themes/Green/Views/DisplayTemplates/Items/Blogs.BlogPost.Summary.ascx +++ b/src/Orchard.Web/Themes/Green/Views/DisplayTemplates/Items/Blogs.BlogPost.Summary.ascx @@ -4,7 +4,7 @@ <%@ Import Namespace="Orchard.Blogs.Models"%> <%@ Import Namespace="Orchard.Core.Common.Extensions" %>

<%: Html.Link(Model.Item.Title, Url.BlogPost(Model.Item)) %>

-
<%: Html.PublishedState(Model.Item, T) %> | <%Html.Zone("meta");%>
+
<%: Display.PublishedState(versionPublishedUtc: Model.Item)%> | <%Html.Zone("meta");%>
<% Html.Zone("primary"); %>
\ No newline at end of file diff --git a/src/Orchard.Web/Themes/Green/Views/DisplayTemplates/Parts/Blogs.BlogPost.Metadata.ascx b/src/Orchard.Web/Themes/Green/Views/DisplayTemplates/Parts/Blogs.BlogPost.Metadata.ascx index 55c302473..07dfa4e19 100644 --- a/src/Orchard.Web/Themes/Green/Views/DisplayTemplates/Parts/Blogs.BlogPost.Metadata.ascx +++ b/src/Orchard.Web/Themes/Green/Views/DisplayTemplates/Parts/Blogs.BlogPost.Metadata.ascx @@ -3,5 +3,5 @@ <%@ Import Namespace="Orchard.Blogs.Models"%> <%@ Import Namespace="Orchard.Core.Common.Extensions" %><% if (Model.Creator != null) { - %><%: T("Posted by {0} {1}", Model.Creator.UserName, Html.PublishedWhen(Model, T)) %><% + %><%: T("Posted by {0} {1}", Model.Creator.UserName, Display.PublishedWhen(versionPublishedUtc: Model))%><% } %> \ No newline at end of file diff --git a/src/Orchard.Web/Themes/TheThemeMachine/Views/Items/BlogPost.Summary.cshtml b/src/Orchard.Web/Themes/TheThemeMachine/Views/Items/BlogPost.Summary.cshtml index f63938d75..249e3f202 100644 --- a/src/Orchard.Web/Themes/TheThemeMachine/Views/Items/BlogPost.Summary.cshtml +++ b/src/Orchard.Web/Themes/TheThemeMachine/Views/Items/BlogPost.Summary.cshtml @@ -8,7 +8,7 @@
- @Html.PublishedState(new CommonMetadataViewModel((CommonPart)Model.ContentItem.Get(typeof(CommonPart))), T) + @Display.PublishedState(versionPublishedUtc: new CommonMetadataViewModel((CommonPart)Model.ContentItem.Get(typeof(CommonPart)))) @Display(Model.meta)