mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2026-02-09 09:16:41 +08:00
Merging per-type and per-field indexing things
--HG-- branch : dev
This commit is contained in:
@@ -56,7 +56,8 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Content Include="Module.txt" />
|
<Content Include="Module.txt" />
|
||||||
<Content Include="Views\Admin\Index.ascx" />
|
<Content Include="Views\Admin\Index.ascx" />
|
||||||
<Content Include="Views\DefinitionTemplates\IndexingSettings.ascx" />
|
<Content Include="Views\DefinitionTemplates\FieldIndexing.ascx" />
|
||||||
|
<Content Include="Views\DefinitionTemplates\TypeIndexing.ascx" />
|
||||||
<Content Include="Web.config" />
|
<Content Include="Web.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
@@ -79,7 +80,8 @@
|
|||||||
<Compile Include="Models\LuceneSearchHit.cs" />
|
<Compile Include="Models\LuceneSearchHit.cs" />
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
<Compile Include="Services\IndexService.cs" />
|
<Compile Include="Services\IndexService.cs" />
|
||||||
<Compile Include="Settings\IndexingSettings.cs" />
|
<Compile Include="Settings\EditorEvents.cs" />
|
||||||
|
<Compile Include="Settings\FieldIndexing.cs" />
|
||||||
<Compile Include="Settings\TypeIndexing.cs" />
|
<Compile Include="Settings\TypeIndexing.cs" />
|
||||||
<Compile Include="ViewModels\IndexViewModel.cs" />
|
<Compile Include="ViewModels\IndexViewModel.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -1,24 +0,0 @@
|
|||||||
using System.Collections.Generic;
|
|
||||||
using Orchard.ContentManagement;
|
|
||||||
using Orchard.ContentManagement.MetaData;
|
|
||||||
using Orchard.ContentManagement.MetaData.Builders;
|
|
||||||
using Orchard.ContentManagement.MetaData.Models;
|
|
||||||
using Orchard.ContentManagement.ViewModels;
|
|
||||||
|
|
||||||
namespace Orchard.Indexing.Settings {
|
|
||||||
public class ContentDefinitionEditorEvents : ContentDefinitionEditorEventsBase {
|
|
||||||
public override IEnumerable<TemplateViewModel> TypeEditor(ContentTypeDefinition definition) {
|
|
||||||
var model = definition.Settings.GetModel<TypeIndexing>();
|
|
||||||
yield return DefinitionTemplate(model);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override IEnumerable<TemplateViewModel> TypeEditorUpdate(ContentTypeDefinitionBuilder builder, IUpdateModel updateModel) {
|
|
||||||
var model = new TypeIndexing();
|
|
||||||
updateModel.TryUpdateModel(model, "TypeIndexing", null, null);
|
|
||||||
builder
|
|
||||||
.WithSetting("TypeIndexing.Included", model.Included ? true.ToString() : null);
|
|
||||||
|
|
||||||
yield return DefinitionTemplate(model);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using Orchard.ContentManagement;
|
||||||
|
using Orchard.ContentManagement.MetaData;
|
||||||
|
using Orchard.ContentManagement.MetaData.Builders;
|
||||||
|
using Orchard.ContentManagement.MetaData.Models;
|
||||||
|
using Orchard.ContentManagement.ViewModels;
|
||||||
|
|
||||||
|
namespace Orchard.Indexing.Settings {
|
||||||
|
public class EditorEvents : ContentDefinitionEditorEventsBase {
|
||||||
|
public override IEnumerable<TemplateViewModel> TypeEditor(ContentTypeDefinition definition) {
|
||||||
|
var model = definition.Settings.GetModel<TypeIndexing>();
|
||||||
|
yield return DefinitionTemplate(model);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override IEnumerable<TemplateViewModel> TypeEditorUpdate(ContentTypeDefinitionBuilder builder, IUpdateModel updateModel) {
|
||||||
|
var model = new TypeIndexing();
|
||||||
|
updateModel.TryUpdateModel(model, "TypeIndexing", null, null);
|
||||||
|
builder.WithSetting("TypeIndexing.Included", model.Included ? true.ToString() : null);
|
||||||
|
yield return DefinitionTemplate(model);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override IEnumerable<TemplateViewModel> PartFieldEditor(ContentPartDefinition.Field definition) {
|
||||||
|
var model = definition.Settings.GetModel<FieldIndexing>();
|
||||||
|
yield return DefinitionTemplate(model);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override IEnumerable<TemplateViewModel> PartFieldEditorUpdate(ContentPartDefinitionBuilder.FieldConfigurer builder, IUpdateModel updateModel) {
|
||||||
|
var model = new FieldIndexing();
|
||||||
|
updateModel.TryUpdateModel(model, "IndexingSettings", null, null);
|
||||||
|
builder.WithSetting("IndexingSettings.Included", model.Included ? true.ToString() : null);
|
||||||
|
yield return DefinitionTemplate(model);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
namespace Orchard.Indexing.Settings {
|
||||||
|
public class FieldIndexing {
|
||||||
|
public bool Included { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
using System.Collections.Generic;
|
|
||||||
using Orchard.ContentManagement;
|
|
||||||
using Orchard.ContentManagement.MetaData;
|
|
||||||
using Orchard.ContentManagement.MetaData.Builders;
|
|
||||||
using Orchard.ContentManagement.MetaData.Models;
|
|
||||||
using Orchard.ContentManagement.ViewModels;
|
|
||||||
|
|
||||||
namespace Orchard.Indexing.Settings {
|
|
||||||
public class IndexingSettings {
|
|
||||||
public bool IncludeInIndex { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public class IndexingSettingsHooks : ContentDefinitionEditorEventsBase {
|
|
||||||
public override IEnumerable<TemplateViewModel> PartFieldEditor(ContentPartDefinition.Field definition) {
|
|
||||||
var model = definition.Settings.GetModel<IndexingSettings>();
|
|
||||||
yield return DefinitionTemplate(model);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override IEnumerable<TemplateViewModel> PartFieldEditorUpdate(ContentPartDefinitionBuilder.FieldConfigurer builder, IUpdateModel updateModel) {
|
|
||||||
var model = new IndexingSettings();
|
|
||||||
updateModel.TryUpdateModel(model, "IndexingSettings", null, null);
|
|
||||||
builder.WithSetting("IndexingSettings.IncludeInIndex", model.IncludeInIndex ? true.ToString() : null);
|
|
||||||
yield return DefinitionTemplate(model);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
<%@ Control Language="C#" Inherits="Orchard.Mvc.ViewUserControl<Orchard.Indexing.Settings.FieldIndexing>" %>
|
||||||
|
<%@ Import Namespace="Orchard.Mvc.Html" %>
|
||||||
|
<fieldset>
|
||||||
|
<%:Html.EditorFor(m=>m.Included) %>
|
||||||
|
<label for="<%:Html.FieldIdFor(m => m.Included) %>" class="forcheckbox"><%:T("Include in the index") %></label>
|
||||||
|
<%:Html.ValidationMessageFor(m => m.Included)%>
|
||||||
|
</fieldset>
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
<%@ Control Language="C#" Inherits="Orchard.Mvc.ViewUserControl<Orchard.Indexing.Settings.IndexingSettings>" %>
|
|
||||||
<%@ Import Namespace="Orchard.Mvc.Html" %>
|
|
||||||
<fieldset>
|
|
||||||
<%:Html.EditorFor(m=>m.IncludeInIndex) %>
|
|
||||||
<label for="<%:Html.FieldIdFor(m => m.IncludeInIndex) %>" class="forcheckbox"><%:T("Include in the index") %></label>
|
|
||||||
<%:Html.ValidationMessageFor(m => m.IncludeInIndex)%>
|
|
||||||
</fieldset>
|
|
||||||
Reference in New Issue
Block a user