public override IEnumerable <TemplateViewModel> TypePartEditorUpdate(ContentTypePartDefinitionBuilder builder, IUpdateModel updateModel) { if (builder.Name != "RelatedContentPart") { yield break; } var viewModel = new RelatedContentTypePartSettingsViewModel { AvailableItemContentTypes = _contentDefinitionManager.ListTypeDefinitions().ToList() }; updateModel.TryUpdateModel(viewModel, "RelatedContentTypePartSettingsViewModel", null, new[] { "AvailableItemContentTypes" }); builder.WithSetting("RelatedContentTypeSettings.CollectionDisplayShape", viewModel.CollectionDisplayShape); builder.WithSetting("RelatedContentTypeSettings.RestrictedItemContentTypes", viewModel.RestrictedItemContentTypes != null ? string.Join(",", viewModel.RestrictedItemContentTypes) : ""); builder.WithSetting("RelatedContentTypeSettings.RestrictItemContentTypes", viewModel.RestrictItemContentTypes.ToString()); yield return(DefinitionTemplate(viewModel)); }
public override IEnumerable <TemplateViewModel> TypePartEditor(ContentTypePartDefinition definition) { if (definition.PartDefinition.Name != "RelatedContentPart") { yield break; } var model = definition.Settings.GetModel <RelatedContentTypeSettings>(); var viewModel = new RelatedContentTypePartSettingsViewModel { CollectionDisplayShape = model.CollectionDisplayShape, RestrictedItemContentTypes = _contentDefinitionManager.ParseContentTypeDefinitions(model.RestrictedItemContentTypes).Select(x => x.Name).ToList(), RestrictItemContentTypes = model.RestrictItemContentTypes, AvailableItemContentTypes = GetRelatableTypes() }; yield return(DefinitionTemplate(viewModel)); }