protected override DriverResult Editor(LocalizationPart part, dynamic shapeHelper) { var lPs = _cultureService.GetLocalizations(part, VersionOptions.Latest).ToList(); var localizations = lPs.Where(l => l.Culture.Culture != null).ToList(); var siteCulture = _cultureService.GetSiteCulture(); var selectedCulture = part.Culture != null ? part.Culture.Culture : (part.Id == 0 ? siteCulture : null); var sC = _cultureService.ListCultures(); var siteCultures = sC.Where(c => c.Culture != null) .Select(c => c.Culture) .Where(s => !localizations.Select(l => l.Culture.Culture).Contains(s)); var model = new EditLocalizationViewModel { SelectedCulture = selectedCulture, SiteCultures = siteCultures, ContentItem = part, MasterContentItem = part.MasterContentItem, ContentLocalizations = new ContentLocalizationsViewModel(part) { Localizations = localizations.Where(c => c.Culture.Culture != selectedCulture) } }; return(ContentShape("Parts_ExLocalization_ContentTranslations_Edit", () => shapeHelper.EditorTemplate(TemplateName: "Parts/ExLocalization.ContentTranslations", Model: model, Prefix: TemplatePrefix))); }
public IActionResult EditKey(EditLocalizationViewModel model) { if (!ModelState.IsValid) { return(View(model)); } _localizationService.EditKey(model); return(RedirectToAction("Index", "Localization", new { page = 1, perPage = 10 })); }
protected override DriverResult Editor(LocalizationPart part, IUpdateModel updater, dynamic shapeHelper) { var model = new EditLocalizationViewModel(); if (updater != null && updater.TryUpdateModel(model, TemplatePrefix, null, null)) { _localizationService.SetContentCulture(part, model.SelectedCulture); } return(Editor(part, shapeHelper)); }
protected override DriverResult Editor(LocalizationPart part, IUpdateModel updater, dynamic shapeHelper) { var model = new EditLocalizationViewModel(); // GetCulture(part) is checked against null value, because the content culture has to be set only if it's not set already. // model.SelectedCulture is checked against null value, because the editor group may not contain LocalizationPart when the content item is saved for the first time. if (updater != null && updater.TryUpdateModel(model, TemplatePrefix, null, null) && GetCulture(part) == null && !string.IsNullOrEmpty(model.SelectedCulture)) { _localizationService.SetContentCulture(part, model.SelectedCulture); } return Editor(part, shapeHelper); }
public ActionResult TranslatePOST(int id, Action <ContentItem> conditionallyPublish) { var masterContentItem = _contentManager.Get(id, VersionOptions.Latest); if (masterContentItem == null) { return(HttpNotFound()); } var masterLocalizationPart = masterContentItem.As <LocalizationPart>(); if (masterLocalizationPart == null) { return(HttpNotFound()); } var model = new EditLocalizationViewModel(); TryUpdateModel(model, "Localization"); var existingTranslation = _localizationService.GetLocalizedContentItem(masterContentItem, model.SelectedCulture); if (existingTranslation != null) { var existingTranslationMetadata = _contentManager.GetItemMetadata(existingTranslation); return(RedirectToAction( Convert.ToString(existingTranslationMetadata.EditorRouteValues["action"]), existingTranslationMetadata.EditorRouteValues)); } var contentItemTranslation = _contentManager .Create <LocalizationPart>(masterContentItem.ContentType, VersionOptions.Draft, part => { part.MasterContentItem = masterLocalizationPart.MasterContentItem == null ? masterContentItem : masterLocalizationPart.MasterContentItem; }); var content = _contentManager.UpdateEditor(contentItemTranslation, this); if (!ModelState.IsValid) { Services.TransactionManager.Cancel(); return(View(content)); } conditionallyPublish(contentItemTranslation.ContentItem); Services.Notifier.Information(T("Created content item translation.")); var metadata = _contentManager.GetItemMetadata(contentItemTranslation); return(RedirectToAction(Convert.ToString(metadata.EditorRouteValues["action"]), metadata.EditorRouteValues)); }
protected override DriverResult Editor(LocalizationPart part, dynamic shapeHelper) { var localizations = GetEditorLocalizations(part).ToList(); var model = new EditLocalizationViewModel { SelectedCulture = part.Culture != null ? part.Culture.Culture : null, SiteCultures = _cultureManager.ListCultures().Where(s => s != _cultureManager.GetSiteCulture() && !localizations.Select(l => l.Culture.Culture).Contains(s)), ContentItem = part, MasterContentItem = part.MasterContentItem, ContentLocalizations = new ContentLocalizationsViewModel(part) { Localizations = localizations } }; return(ContentShape("Parts_Localization_ContentTranslations_Edit", () => shapeHelper.EditorTemplate(TemplateName: "Parts/Localization.ContentTranslations.Edit", Model: model, Prefix: TemplatePrefix))); }
protected override DriverResult Editor(LocalizationPart part, dynamic shapeHelper) { var localizations = GetEditorLocalizations(part).ToList(); var masterContentItem = _contentManager.Get(part.Record.MasterContentItemId, VersionOptions.Latest); var missingCultures = part.HasTranslationGroup && masterContentItem != null ? RetrieveMissingCultures(masterContentItem.As<LocalizationPart>(), true) : RetrieveMissingCultures(part, part.Culture != null); var model = new EditLocalizationViewModel { SelectedCulture = GetCulture(part), MissingCultures = missingCultures, ContentItem = part, MasterContentItem = masterContentItem, ContentLocalizations = new ContentLocalizationsViewModel(part) { Localizations = localizations } }; return ContentShape("Parts_Localization_ContentTranslations_Edit", () => shapeHelper.EditorTemplate(TemplateName: "Parts/Localization.ContentTranslations.Edit", Model: model, Prefix: TemplatePrefix)); }
public IActionResult EditKey(string key) { if (string.IsNullOrEmpty(key)) { return(View()); } var rz = new Dictionary <string, string>(); foreach (var item in _locConfig.Value.Languages) { var str = _localize.GetForLanguage(key, item.Identifier); rz.Add(item.Identifier, str.Value != $"[{str.Name}]" ? str : string.Empty); } var model = new EditLocalizationViewModel { Key = key, LocalizedStrings = rz, Languages = _locConfig.Value.Languages.ToDictionary(f => f.Identifier, f => f.Name) }; return(View(model)); }
/// <summary> /// Edit key /// </summary> /// <param name="model"></param> public void EditKey(EditLocalizationViewModel model) { var newStrings = model.LocalizedStrings; AddOrUpdateKey(model.Key, newStrings); }
public virtual void EditKey(EditLocalizationViewModel model) { throw new NotImplementedException(); }