protected override DriverResult Editor(TaxonomyPart part, IUpdateModel updater, dynamic shapeHelper) { if (string.IsNullOrWhiteSpace(part.TermTypeName)) { AssociateTermTypeViewModel model = new AssociateTermTypeViewModel(); if (updater.TryUpdateModel(model, Prefix, null, null)) { switch (model.TermCreationAction) { case TermCreationOptions.CreateLocalized: _taxonomyExtensionsService.CreateLocalizedTermContentType(part); break; case TermCreationOptions.UseExisting: part.TermTypeName = model.SelectedTermTypeId; break; default: part.TermTypeName = null; break; } } } return(Editor(part, shapeHelper)); }
protected override DriverResult Editor(TaxonomyPart part, dynamic shapeHelper) { AssociateTermTypeViewModel model = new AssociateTermTypeViewModel(); model.TermTypes = _taxonomyExtensionsService.GetAllTermTypes(); model.TermCreationAction = TermCreationOptions.CreateLocalized; model.SelectedTermTypeId = part.TermTypeName; model.ContentItem = part; return(ContentShape("Parts_TaxonomyTermSelector", () => shapeHelper.EditorTemplate( TemplateName: "Parts/TaxonomyTermSelector", Model: model, Prefix: Prefix))); }