#5355: Fixing that the selected terms in a TaxonomyField were cleared out when updating an editor group the field isn't displayed in

This commit is contained in:
Lombiq
2015-06-06 00:34:55 +02:00
committed by Benedek Farkas
parent 30411b6be5
commit 0c7b52e1be
@@ -83,7 +83,9 @@ namespace Orchard.Taxonomies.Drivers {
}
protected override DriverResult Editor(ContentPart part, TaxonomyField field, IUpdateModel updater, dynamic shapeHelper) {
var viewModel = new TaxonomyFieldViewModel { Terms = new List<TermEntry>() };
// Initializing viewmodel using the terms that are already selected to prevent loosing them when updating an editor group this field isn't displayed in.
var viewModel = new TaxonomyFieldViewModel { Terms = field.Terms.Select(t => t.CreateTermEntry()).ToList() };
foreach (var item in viewModel.Terms) item.IsChecked = true;
if (updater.TryUpdateModel(viewModel, GetPrefix(field, part), null, null)) {
var checkedTerms = viewModel.Terms