#18548: Fixing custom DisplayText metadata

Work Item: 18548

--HG--
branch : 1.x
This commit is contained in:
Sebastien Ros
2012-03-20 17:29:18 -07:00
parent e623bf8d0b
commit 03fb3b4baf
4 changed files with 16 additions and 21 deletions

View File

@@ -1,4 +1,5 @@
using Orchard.ContentManagement.Handlers;
using Orchard.ContentManagement;
using Orchard.ContentManagement.Handlers;
using Orchard.Core.Title.Models;
using Orchard.Data;
@@ -7,6 +8,15 @@ namespace Orchard.Core.Title.Handlers {
public TitlePartHandler(IRepository<TitlePartRecord> repository) {
Filters.Add(StorageFilter.For(repository));
OnIndexing<TitlePart>((context, part) => context.DocumentIndex.Add("title", part.Title).RemoveTags().Analyze());
}
protected override void GetItemMetadata(GetContentItemMetadataContext context) {
var part = context.ContentItem.As<TitlePart>();
if (part != null) {
context.Metadata.DisplayText = part.Title;
}
}
}
}

View File

@@ -2,6 +2,7 @@
using JetBrains.Annotations;
using Orchard.ContentManagement;
using Orchard.ContentManagement.Handlers;
using Orchard.Core.Title.Models;
using Orchard.Data;
using Orchard.Widgets.Models;
@@ -11,7 +12,8 @@ namespace Orchard.Widgets.Handlers {
public WidgetPartHandler(IRepository<WidgetPartRecord> widgetsRepository) {
Filters.Add(StorageFilter.For(widgetsRepository));
OnInitializing<WidgetPart>((context, part) => part.RenderTitle = true);
OnInitializing<WidgetPart>((context, part) => part.RenderTitle = true);
OnIndexing<TitlePart>((context, part) => context.DocumentIndex.Add("title", part.Title).RemoveTags().Analyze());
}
protected override void GetItemMetadata(GetContentItemMetadataContext context) {
@@ -20,6 +22,8 @@ namespace Orchard.Widgets.Handlers {
if (widget == null)
return;
context.Metadata.DisplayText = widget.Title;
// create needs to go through the add widget flow (index -> [select layer -> ] add [widget type] to layer)
context.Metadata.CreateRouteValues = new RouteValueDictionary {
{"Area", "Orchard.Widgets"},

View File

@@ -1,18 +0,0 @@
using Orchard.ContentManagement.Aspects;
namespace Orchard.ContentManagement.Handlers {
public class TitlePartHandler : ContentHandler {
public TitlePartHandler() {
OnIndexing<ITitleAspect>((context, part) => context.DocumentIndex.Add("title", part.Title).RemoveTags().Analyze());
}
protected override void GetItemMetadata(GetContentItemMetadataContext context) {
var part = context.ContentItem.As<ITitleAspect>();
if (part != null) {
context.Metadata.DisplayText = part.Title;
}
}
}
}

View File

@@ -161,7 +161,6 @@
<Compile Include="ContentManagement\Handlers\BuildShapeContext.cs" />
<Compile Include="ContentManagement\Handlers\ExportContentContext.cs" />
<Compile Include="ContentManagement\Handlers\ImportContentContext.cs" />
<Compile Include="ContentManagement\Handlers\TitleAspectHandler.cs" />
<Compile Include="ContentManagement\IContentBehavior.cs" />
<Compile Include="ContentManagement\ImportContentSession.cs" />
<Compile Include="ContentManagement\MetaData\Services\ISettingsFormatter.cs" />