public void AddTextHasOriginalTextAndTwoTranslation() { var tpm = new TranslatePageModel() { Feature = RandomData.GetString(), OriginalText = RandomData.GetString(), LanguageToSave = Models.Localization.SupportedLanguage.English, SelectedLanguage = Models.Localization.SupportedLanguage.English, TranslatedText = RandomData.GetString() }; this.localizationEditor.AddUpdateOriginalText(tpm); var tpm2 = new TranslatePageModel() { Feature = tpm.Feature, OriginalText = tpm.OriginalText, LanguageToSave = Models.Localization.SupportedLanguage.Finnish, SelectedLanguage = Models.Localization.SupportedLanguage.Finnish, TranslatedText = RandomData.GetString() }; this.localizationEditor.AddUpdateOriginalText(tpm2); var originalText = this.generalDbDataHelper.Get<OriginalText>(ot => ot.Feature == tpm.Feature && ot.Original == tpm.OriginalText); originalText.OriginalTextTranslations.Count.ShouldBeEquivalentTo(2); originalText.OriginalTextTranslations.Count(t => t.Language == SupportedLanguage.English && t.Translation == tpm.TranslatedText).ShouldBeEquivalentTo(1); originalText.OriginalTextTranslations.Count(t => t.Language == SupportedLanguage.Finnish && t.Translation == tpm2.TranslatedText).ShouldBeEquivalentTo(1); var model = this.localizationEditor.GetTranslatePageModel(tpm.OriginalText, tpm.Feature); model.TranslatedText.ShouldBeEquivalentTo(tpm.TranslatedText); model = this.localizationEditor.GetTranslatePageModel(tpm.OriginalText, tpm.Feature, Models.Localization.SupportedLanguage.Swedish); model.TranslatedText.ShouldBeEquivalentTo(string.Empty); }
private void AddUpdate(TranslatePageModel model) { this.LocalManager.AddUpdateOriginalText(model); }
public virtual ActionResult TextTranslation(TranslatePageModel model) { if (model == null) { throw new ArgumentException("Passed model (TranslatePageModel) is null"); } this.LocalEditor.AddUpdateOriginalText(model); if (model.IsReturnBack) { string absoluteReturnUrl = this.Session["callerURL"].ToString(); this.Session.Remove("callerURL"); return base.RedirectBack(absoluteReturnLink: absoluteReturnUrl); } return this.RedirectToAction(MVC.Localization.TextTranslationByLanguage(model.OriginalText, model.Feature, model.SelectedLanguage)); }
private void AddUpdate(TranslatePageModel model) { var oringMain = new db.OriginalText { Feature = model.Feature, Original = model.Text, OriginalTextTranslations = new List<db.OriginalTextTranslation> { new db.OriginalTextTranslation { Language = model.SelectedTranslatePageTranslationModel.Language.ToDbObject(), Translation = model.SelectedTranslatePageTranslationModel.TranslatedText } } }; //var origText = this.DbContext.Get<OriginalText>(o => o.Original == model.Text && o.Feature == model.Feature); var dborignText = this.dbH.Get<db.OriginalText>(o => o.Original == model.Text && o.Feature == model.Feature); if (dborignText != null) { foreach (var item in oringMain.OriginalTextTranslations) { db.OriginalTextTranslation txtTRans = dborignText.OriginalTextTranslations.Where(o => o.Language == item.Language).FirstOrDefault(); item.OriginalTextId = dborignText.Id; if (txtTRans == null) { this.dbH.Create<db.OriginalTextTranslation>(item); Console.WriteLine("Create WebElementTranslation"); this.dbH.FlushChanges(); this.UpdateCounter++; } else { if (item.Translation.ToUpperInvariant().Trim() != txtTRans.Translation.ToUpperInvariant().Trim()) { txtTRans.Translation = item.Translation; this.dbH.Update<db.OriginalTextTranslation>(txtTRans); Console.WriteLine("Update WebElementTranslation"); this.dbH.FlushChanges(); this.UpdateCounter++; } } } } else { this.dbH.Create<db.OriginalText>(oringMain); this.dbH.FlushChanges(); Console.WriteLine("Create: {0}", model.Text); } }