mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2026-02-09 09:16:41 +08:00
Merge
--HG-- branch : dev
This commit is contained in:
@@ -139,6 +139,41 @@ namespace Orchard.ContentTypes.Controllers {
|
||||
typeBuilder.WithPart(entry.part.PartDefinition.Name, typePartBuilder => {
|
||||
partViewModel.Templates = _extendViewModels.TypePartEditorUpdate(typePartBuilder, updater);
|
||||
});
|
||||
|
||||
if (!partViewModel.PartDefinition.Fields.Any())
|
||||
continue;
|
||||
|
||||
_contentDefinitionManager.AlterPartDefinition(partViewModel.PartDefinition.Name, partBuilder => {
|
||||
foreach (var fieldEntry in partViewModel.PartDefinition.Fields.Select((field, index) => new { field, index })) {
|
||||
var fieldViewModel = fieldEntry.field;
|
||||
|
||||
// enable updater to be aware of changing field prefix
|
||||
var firstHalfFieldName = "Fields[" + fieldEntry.index + "].";
|
||||
updater._prefix = secondHalf => firstHalfFieldName + secondHalf;
|
||||
|
||||
// allow extensions to alter partField configuration
|
||||
partBuilder.WithField(fieldViewModel.Name, partFieldBuilder => {
|
||||
fieldViewModel.Templates = _extendViewModels.PartFieldEditorUpdate(partFieldBuilder, updater);
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (viewModel.Fields.Any()) {
|
||||
_contentDefinitionManager.AlterPartDefinition(viewModel.Name, partBuilder => {
|
||||
foreach (var fieldEntry in viewModel.Fields.Select((field, index) => new { field, index })) {
|
||||
var fieldViewModel = fieldEntry.field;
|
||||
|
||||
// enable updater to be aware of changing field prefix
|
||||
var firstHalfFieldName = "Fields[" + fieldEntry.index + "].";
|
||||
updater._prefix = secondHalf => firstHalfFieldName + secondHalf;
|
||||
|
||||
// allow extensions to alter partField configuration
|
||||
partBuilder.WithField(fieldViewModel.Name, partFieldBuilder => {
|
||||
fieldViewModel.Templates = _extendViewModels.PartFieldEditorUpdate(partFieldBuilder, updater);
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ namespace Orchard.Indexing.Settings {
|
||||
yield return DefinitionTemplate(model);
|
||||
}
|
||||
|
||||
public override IEnumerable<TemplateViewModel> PartFieldEditorUpdate(ContentPartDefinitionBuilder builder, IUpdateModel updateModel) {
|
||||
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);
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace Orchard.ContentManagement.MetaData {
|
||||
IEnumerable<TemplateViewModel> TypeEditorUpdate(ContentTypeDefinitionBuilder builder, IUpdateModel updateModel);
|
||||
IEnumerable<TemplateViewModel> TypePartEditorUpdate(ContentTypeDefinitionBuilder.PartConfigurer builder, IUpdateModel updateModel);
|
||||
IEnumerable<TemplateViewModel> PartEditorUpdate(ContentPartDefinitionBuilder builder, IUpdateModel updateModel);
|
||||
IEnumerable<TemplateViewModel> PartFieldEditorUpdate(ContentPartDefinitionBuilder builder, IUpdateModel updateModel);
|
||||
IEnumerable<TemplateViewModel> PartFieldEditorUpdate(ContentPartDefinitionBuilder.FieldConfigurer builder, IUpdateModel updateModel);
|
||||
}
|
||||
|
||||
public abstract class ContentDefinitionEditorEventsBase : IContentDefinitionEditorEvents {
|
||||
@@ -47,7 +47,7 @@ namespace Orchard.ContentManagement.MetaData {
|
||||
return Enumerable.Empty<TemplateViewModel>();
|
||||
}
|
||||
|
||||
public virtual IEnumerable<TemplateViewModel> PartFieldEditorUpdate(ContentPartDefinitionBuilder builder, IUpdateModel updateModel) {
|
||||
public virtual IEnumerable<TemplateViewModel> PartFieldEditorUpdate(ContentPartDefinitionBuilder.FieldConfigurer builder, IUpdateModel updateModel) {
|
||||
return Enumerable.Empty<TemplateViewModel>();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user