示例#1
0
 public TranslationViewModel(FlashcardTranslation translation)
 {
     ID             = translation.ID;
     Translation    = translation.Translation;
     Pronounciation = translation.Pronounciation;
     Significance   = (double)translation.Significance;
 }
示例#2
0
 public EditTranslationViewModel(FlashcardTranslation flashcardTranslation)
 {
     TranslationID  = flashcardTranslation.ID;
     Translation    = flashcardTranslation.Translation;
     Pronounciation = flashcardTranslation.Pronounciation;
     Significance   = (double)flashcardTranslation.Significance;
 }
        public void ChangeTranslation(FlashcardTranslation flashTranslation, string translation, string pronounciation, double significance)
        {
            flashTranslation.Translation    = translation;
            flashTranslation.Pronounciation = pronounciation;
            flashTranslation.Significance   = (decimal)significance;

            flashcardTranslationRepository.SaveChanges();
        }
 public MethodResult CanRemoveTranslation(FlashcardTranslation translation)
 {
     if (translation == null)
     {
         return(new MethodResult("Translation does not exist!"));
     }
     return(MethodResult.Success);
 }
 public MethodResult CanChangeTranslation(FlashcardTranslation flashTranslation, string translation, string pronounciation, double significance)
 {
     if (flashTranslation == null)
     {
         return(new MethodResult("Translation does not exist!"));
     }
     return(checkCorrectnesOfTranslation(translation, pronounciation, significance));
 }
示例#6
0
        private void saveTranslations()
        {
            var existingIDs = Translations.Values
                              .SelectMany(t => t)
                              .Where(t => t.ID.HasValue)
                              .Select(t => t.ID);

            var existing = unit.FlashcardTranslationRepository.
                           Where(t => existingIDs.Contains(t.ID))
                           .ToDictionary(x => x.ID, x => x);

            Dictionary <TranslationViewModel, FlashcardTranslation> newT = new Dictionary <TranslationViewModel, FlashcardTranslation>();


            foreach (var langID in Translations.Keys)
            {
                foreach (var translation in Translations[langID])
                {
                    FlashcardTranslation dbT = null;
                    if (translation.ID.HasValue)
                    {
                        dbT = existing[translation.ID.Value];
                    }
                    else
                    {
                        dbT = new FlashcardTranslation();
                        newT.Add(translation, dbT);
                    }

                    dbT.Translation    = translation.Translation;
                    dbT.Pronounciation = translation.Pronounciation;
                    dbT.Significance   = (decimal)translation.Significance;

                    unit.FlashcardTranslationRepository.Add(dbT);
                }
            }

            unit.FlashcardTranslationRepository.SaveChanges();


            foreach (var langID in Translations.Keys)
            {
                foreach (var translation in Translations[langID])
                {
                    if (translation.ID.HasValue == false)
                    {
                        translation.ID = newT[translation].ID;
                    }
                }
            }
        }
        public void AddTranslation(Flashcard flashcard, Language lang, string translation, string pronounciation, double significance)
        {
            var dbTranslation = new FlashcardTranslation()
            {
                FlashcardID    = flashcard.ID,
                Translation    = translation,
                LanguageID     = lang.ID,
                Pronounciation = pronounciation,
                Significance   = (decimal)significance
            };

            flashcardTranslationRepository.Add(dbTranslation);
            flashcardTranslationRepository.SaveChanges();
        }
 public void RemoveTranslation(FlashcardTranslation translation)
 {
     flashcardTranslationRepository.Remove(translation);
 }
示例#9
0
 public AnswerTranslation(FlashcardTranslation translation)
 {
     Translation    = translation.Translation;
     Pronounciation = translation.Pronounciation;
     Significance   = (double)translation.Significance;
 }