Exemple #1
0
        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);
        }