private CustomFieldDefinitionModel LoadFieldTranslation(CustomFieldDefinitionModel original, string prefix, EntityTransaltion translation) { prefix = prefix + "[" + original.Name + "]."; var translated = new CustomFieldDefinitionModel { Id = original.Id, Name = original.Name, ControlType = original.ControlType }; if (translation != null) { translated.Label = translation.GetTranslatedText(prefix + "Label"); translated.DefaultValue = translation.GetTranslatedText(prefix + "DefaultValue"); } foreach (var item in original.SelectionItems) { var translatedItem = new SelectionItem { Value = item.Value }; if (translation != null) { translatedItem.Text = translation.GetTranslatedText(prefix + "SelectionItems[" + item.Value + "]"); } translated.SelectionItems.Add(item); } return translated; }
private void UpdateFieldTranslation(CustomFieldDefinition original, CustomFieldDefinitionModel translated, string prefix, List<PropertyTranslation> translations) { translations.Add(new PropertyTranslation(prefix + "Label", original.Label, translated.Label)); translations.Add(new PropertyTranslation(prefix + "DefaultValue", original.DefaultValue, translated.DefaultValue)); foreach (var item in translated.SelectionItems) { var originalItem = original.SelectionItems.FirstOrDefault(i => i.Value == item.Value); translations.Add(new PropertyTranslation(prefix + "SelectionItems[" + item.Value + "]", originalItem.Text, item.Text)); } }
private CustomFieldDefinitionModel LoadFieldDiff(CustomFieldDefinitionModel compared, string prefix, EntityTransaltion translation) { prefix = prefix + "[" + compared.Name + "]."; var diff = new CustomFieldDefinitionModel { Id = compared.Id, Name = compared.Name, ControlType = compared.ControlType }; if (translation != null) { diff.Label = DiffHelper.GetDiffHtml(translation.GetOriginalText(prefix + "Label"), compared.Label); diff.DefaultValue = DiffHelper.GetDiffHtml(translation.GetOriginalText(prefix + "DefaultValue"), compared.DefaultValue); } foreach (var item in compared.SelectionItems) { var itemDiff = new SelectionItem { Value = item.Value }; if (translation != null) { itemDiff.Text = DiffHelper.GetDiffHtml(translation.GetOriginalText(prefix + "SelectionItems[" + item.Value + "]"), item.Text); } diff.SelectionItems.Add(itemDiff); } return diff; }