protected override GroupModel GetModel(UserLanguages userLanguages, GroupForUser group) { List <SourceWithTranslation> wordsWithTranslations = GetSourceWithTranslations(userLanguages, group); var options = new GroupModelOptions(new Dictionary <LinkId, string> { { LinkId.First, "Первое слово" }, { LinkId.Prev, "Предыдущее слово" }, { LinkId.Next, "Следующее слово" }, { LinkId.Last, "Последнее слово" } }, (patternUrl, elem) => string.Format(patternUrl, UrlBuilder.EncodePartUrl( elem.Source.Text), UrlBuilder.EncodePartUrl( elem.Translation.Text))); var model = new GroupModel(group, SpeakerDataType.Word, KnowledgeDataType.WordTranslation, options, userLanguages, wordsWithTranslations); return(model); }
protected override GroupModel GetModel(UserLanguages userLanguages, GroupForUser group) { List <SourceWithTranslation> sentencesWithTranslations = GetSourceWithTranslations(userLanguages, group); var options = new GroupModelOptions(new Dictionary <LinkId, string> { { LinkId.First, "Первая фраза" }, { LinkId.Prev, "Предыдущая фраза" }, { LinkId.Next, "Следующая фраза" }, { LinkId.Last, "Последняя фраза" } }, (patternUrl, elem) => string.Format(patternUrl, elem.Source.Id, elem.Translation.Id)) { SourceTextGetter = elem => elem.Source.Text, TranslationTextGetter = elem => elem.Translation.Text, }; var model = new GroupModel(group, SpeakerDataType.Sentence, KnowledgeDataType.PhraseTranslation, options, userLanguages, sentencesWithTranslations); return(model); }