Esempio n. 1
0
        /// <summary>
        /// GetTheme
        /// </summary>
        /// <returns></returns>
        private async Task <ThemesViewData> GetThemes()
        {
            ThemeResultData themeResultData =
                await WebApiClient.GetAsync <ThemeResultData>(Constant.WebApiControllerRessources, Constant.WebApiThemeList);

            List <ThemeViewData> themeList = new List <ThemeViewData>();

            if (themeResultData == null || !themeResultData.OperationSuccess ||
                themeResultData.ThemeDtoList == null)
            {
                return(null);
            }
            foreach (var themeDto in themeResultData.ThemeDtoList)
            {
                ThemeViewData theme = new ThemeViewData
                {
                    TranslationsList = new List <ThemeTranslationItemData>(),
                    Theme            = themeDto
                };
                theme.TranslationsList = await GetThemeTranslations(themeDto.ThemeId);

                themeList.Add(theme);
            }
            ThemesViewData themeslistdata = new ThemesViewData {
                Themes = themeList
            };

            return(themeslistdata);
        }
Esempio n. 2
0
        /// <summary>
        /// Get publicationThemes list.
        /// </summary>
        /// <returns>publications view.</returns>
        public async Task <ThemesViewData> GetPublicationThemes(int publicationId)
        {
            ThemesViewData themesViewData = new ThemesViewData {
                Themes = new List <ThemeViewData>()
            };
            PublicationThemeRequestData findPublicationThemeRequest = new PublicationThemeRequestData
            {
                PublicationThemeDto = new PublicationThemeItemData {
                    PublicationId = publicationId
                },
                FindPublicationThemeDto = FindPublicationThemeItemData.PublicationId
            };

            PublicationThemeResultData publicationThemeResultData =
                await WebApiClient.PostFormJsonAsync <PublicationThemeRequestData, PublicationThemeResultData>(
                    Constant.WebApiControllerRessources, Constant.WebApiFindPublicationThemes,
                    findPublicationThemeRequest);

            if (!publicationThemeResultData.ThemeTranslationDtoList.Any())
            {
                return(themesViewData);
            }
            foreach (var themeTranslationItemData in publicationThemeResultData.ThemeTranslationDtoList.Where(t => t.LanguageId == _lang).ToList())
            {
                ThemeViewData themeViewData = new ThemeViewData
                {
                    Theme = new ThemeItemData {
                        ThemeId = themeTranslationItemData.Theme.ThemeId
                    },
                    TranslationsList = new List <ThemeTranslationItemData>()
                };
                themeViewData.TranslationsList.Add(themeTranslationItemData);
                themesViewData.Themes.Add(themeViewData);
            }

            return(themesViewData);
        }