/// <summary> /// Saves translation for given resource string. /// </summary> /// <returns>Returns TRUE if resource string was successfully modified</returns> public override bool Save() { // Save changes only when macro is edited if (IsLocalizationMacro && mUserHasPermissionForLocalizations) { string resKey = GetResouceKeyFromString(OriginalValue); if (!IsInplaceMacro(TextBox.Text)) { // Update key var ri = ResourceStringInfoProvider.GetResourceStringInfo(resKey); if (ri != null) { ri.TranslationText = TextBox.Text.Trim(); if (CultureInfoProvider.GetCultureID(CultureHelper.PreferredUICultureCode) != 0) { ri.CultureCode = CultureHelper.PreferredUICultureCode; } else { ri.CultureCode = CultureHelper.DefaultUICultureCode; } ResourceStringInfoProvider.SetResourceStringInfo(ri); return(true); } } else { // Remove localization if in-place macro was inserted RemoveLocalization(resKey); } } return(false); }
/// <summary> /// Saves translation for given resource string. /// </summary> /// <returns>Returns TRUE if resource string was successfully modified</returns> public override bool Save() { // Save changes only when translation is edited if (IsLocalizationMacro && mUserHasPermissionForLocalizations && LocalizationExists && !IsInplaceMacro(OriginalValue)) { string resKey = GetResourceKeyFromString(OriginalValue); // Prevent from creating translation containing macro if (!MacroProcessor.IsLocalizationMacro(TextBox.Text)) { resKey = resKey.Trim(); var translationText = TextBox.Text.Trim(); if (string.IsNullOrEmpty(translationText)) { lblError.Visible = true; lblError.ResourceString = "localize.entertext"; return(false); } var cultureCode = CultureInfoProvider.GetCultureID(CultureHelper.PreferredUICultureCode) != 0 ? CultureHelper.PreferredUICultureCode : CultureHelper.DefaultUICultureCode; if (IsTranslationChanged(resKey, cultureCode, translationText)) { // Update / insert key var ri = ResourceStringInfoProvider.GetResourceStringInfo(resKey) ?? new ResourceStringInfo { StringKey = resKey, StringIsCustom = !SystemContext.DevelopmentMode }; ri.TranslationText = translationText; ri.CultureCode = cultureCode; ResourceStringInfoProvider.SetResourceStringInfo(ri); return(true); } return(false); } } return(false); }
/// <summary> /// Saves translation for given resource string. /// </summary> /// <returns>Returns TRUE if resource string was successfully modified</returns> public override bool Save() { // Save changes only when translation is edited if (IsLocalizationMacro && mUserHasPermissionForLocalizations && LocalizationExists && !IsInplaceMacro(OriginalValue)) { string resKey = GetResouceKeyFromString(OriginalValue); // Prevent from creating translation containing macro if (!MacroProcessor.IsLocalizationMacro(TextBox.Text)) { resKey = resKey.Trim(); // Update / insert key var ri = ResourceStringInfoProvider.GetResourceStringInfo(resKey) ?? new ResourceStringInfo { StringKey = resKey, StringIsCustom = !SystemContext.DevelopmentMode }; ri.TranslationText = TextBox.Text.Trim(); if (CultureInfoProvider.GetCultureID(CultureHelper.PreferredUICultureCode) != 0) { ri.CultureCode = CultureHelper.PreferredUICultureCode; } else { ri.CultureCode = CultureHelper.DefaultUICultureCode; } ResourceStringInfoProvider.SetResourceStringInfo(ri); return(true); } else { // Remove localization if in-place macro was inserted RemoveLocalization(resKey); } } return(false); }