mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 11:44:58 +08:00
Merge
--HG-- branch : dev
This commit is contained in:
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -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);
|
||||
});
|
||||
|
@@ -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);
|
||||
|
@@ -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
|
Reference in New Issue
Block a user