--HG--
branch : dev
This commit is contained in:
Dave Reed
2010-10-19 16:03:50 -07:00
4 changed files with 24 additions and 10 deletions

View File

@@ -2,17 +2,26 @@ using System;
using System.Web;
using System.Web.Mvc;
using Orchard.DisplayManagement;
using Orchard.DisplayManagement.Descriptors;
using Orchard.Localization;
using Orchard.Mvc.Html;
namespace Orchard.Core.Common {
public class Shapes : IDependency {
public class Shapes : IShapeTableProvider {
public Shapes() {
T = NullLocalizer.Instance;
}
public Localizer T { get; set; }
public void Discover(ShapeTableBuilder builder) {
builder.Describe("Fields_Common_Text")
.OnDisplaying(displaying => {
string textFieldName = displaying.Shape.Name;
displaying.ShapeMetadata.Alternates.Add("Fields_Common_Text__" + textFieldName);
});
}
[Shape]
public IHtmlString PublishedState(HtmlHelper Html, DateTime? dateTimeUtc) {
return Html.DateTime(dateTimeUtc, T("Draft"));
@@ -20,12 +29,10 @@ namespace Orchard.Core.Common {
[Shape]
public IHtmlString PublishedWhen(dynamic Display, DateTime? dateTimeUtc) {
if (dateTimeUtc == null) {
if (dateTimeUtc == null)
return T("as a Draft");
}
else {
return Display.DateTimeRelative(dateTimeUtc: dateTimeUtc);
}
return Display.DateTimeRelative(dateTimeUtc: dateTimeUtc);
}
}
}

View File

@@ -51,7 +51,7 @@ namespace Orchard.Core.Shapes {
.OnCreating(creating => creating.BaseType = typeof(Zone))
.OnDisplaying(displaying => {
var zone = displaying.Shape;
zone.Classes.Add("zone-" + zone.ZoneName.ToLower());
zone.Classes.Add("zone-" + zone.ZoneName.HtmlClassify());
zone.Classes.Add("zone");
zone.Metadata.Alternates.Add("Zone__" + zone.ZoneName);
});
@@ -59,7 +59,7 @@ namespace Orchard.Core.Shapes {
builder.Describe("Menu")
.OnDisplaying(displaying => {
var menu = displaying.Shape;
menu.Classes.Add("menu-" + menu.MenuName.ToLower());
menu.Classes.Add("menu-" + menu.MenuName.HtmlClassify());
menu.Classes.Add("menu");
menu.Metadata.Alternates.Add("Menu__" + menu.MenuName);
});

View File

@@ -1,5 +1,6 @@
using Orchard.ContentManagement;
using Orchard.DisplayManagement.Descriptors;
using Orchard.Utility.Extensions;
using Orchard.Widgets.Models;
namespace Orchard.Widgets {
@@ -16,8 +17,13 @@ namespace Orchard.Widgets {
widget.Child.Add(created.New.PlaceChildContent(Source: widget));
})
.OnDisplaying(displaying => {
var widget = displaying.Shape;
widget.Classes.Add("widget");
ContentItem contentItem = displaying.Shape.ContentItem;
if (contentItem != null) {
widget.Classes.Add("widget-" + contentItem.ContentType.HtmlClassify());
var zoneName = contentItem.As<WidgetPart>().Zone;
displaying.ShapeMetadata.Alternates.Add("Widget__" + contentItem.ContentType);
displaying.ShapeMetadata.Alternates.Add("Widget__" + zoneName);

View File

@@ -2,8 +2,9 @@
@using Orchard.Widgets.Models;
@{
var title = ((IContent)Model.ContentItem).As<WidgetPart>().Title;
var tag = Tag(Model, "article");
}
<article class="widget">
@tag.StartElement
<header>
<h1>@title</h1>
@Display(Model.Header)
@@ -14,4 +15,4 @@
@Display(Model.Footer)
</footer>
}
</article>
@tag.EndElement