/// <summary> /// The ressources page. /// </summary> /// <returns></returns> public async Task <ActionResult> Index() { FilterFormData filterFormData = new FilterFormData(); //authors AuthorsViewData authorsViewData = await GetAuthors(); List <SelectListItem> authors = (from author in authorsViewData.Authors where author?.Author != null select new SelectListItem { Text = author.Author.AuthorFirstName + $@" " + author.Author.AuthorLastName, Value = author.Author.AuthorId.ToString() }).ToList(); ViewBag.Authors = authors; //Themes : ThemesViewData themesViewData = await GetThemes(); List <SelectListItem> themes = (from theme in themesViewData.Themes where theme?.Theme != null select new SelectListItem() { Text = theme.TranslationsList.First(t => t.LanguageId == _lang).ThemeName, Value = theme.Theme.ThemeId.ToString(), }).ToList(); ViewBag.Themes = themes; //Areas AreasViewData areasViewData = await GetAreas(); List <SelectListItem> areas = (from area in areasViewData.Areas where area?.Area != null select new SelectListItem { Text = area.TranslationsList.First(t => t.LanguageId == _lang).AreaName, Value = area.Area.AreaId.ToString() }).ToList(); ViewBag.Areas = areas; RessourcesModel ressourcesModel = new RessourcesModel { PublicationsViewData = await GetPublications(), OccurrencesViewData = await GetOccurrences(), PartnersViewData = await GetPartners(), NewsViewDatas = await GetNews(), FilterFormData = filterFormData }; return(View(ressourcesModel)); }
/// <summary> /// Sors publications. /// </summary> /// <returns></returns> public async Task <ActionResult> SortPublications(FilterFormData filterFormData) { PublicationsViewData publicationsViewDataFiltred = new PublicationsViewData { Publications = new List <PublicationViewData>() }; PublicationsViewData publicationsViewData = await GetPublications(); foreach (var publicationViewData in publicationsViewData.Publications) { //if (publicationViewData.Publication.AuthorId == filterFormData.AuthorId) //{ // publicationsViewDataFiltred.Publications.Add(publicationViewData); //} if (publicationViewData.ThemesViewData.Themes.Any(t => t.Theme.ThemeId == filterFormData.ThemeId)) { publicationsViewDataFiltred.Publications.Add(publicationViewData); } } return(View("_Publication", publicationsViewDataFiltred)); }