Exemple #1
0
        public async Task <IActionResult> BeheerMeldingen(int pagina, string sorteerType, string sorteerVolgorde, string filter, string status, string poster, DateTime date1, DateTime date2, bool likedby)
        {
            //Standaardwaarden indien parameters null zijn
            if (sorteerType == null)
            {
                sorteerType = "Datum";
            }
            if (sorteerVolgorde == null)
            {
                sorteerVolgorde = "aflopend";
            }
            if (status == null)
            {
                status = "Open";
            }
            if (poster == null)
            {
                poster = "Toon alles";
            }

            ViewData["Filter"]          = filter;
            ViewData["SorteerType"]     = sorteerType;
            ViewData["SorteerVolgorde"] = sorteerVolgorde;
            ViewData["Status"]          = status;
            ViewData["Poster"]          = poster;
            ViewData["Date1"]           = DateFormat(date1);
            ViewData["Date2"]           = DateFormat(date2);
            ViewData["Likedby"]         = likedby;

            //Stuur een gepagineerde, gesorteerde en gefilterde lijst mee terug aan de view.
            return(View(await GepagineerdeLijst <Melding> .CreateAsync(DateRange(Filter(Sort(sorteerVolgorde, sorteerType), filter, status, poster, likedby), date1, date2), pagina, 5)));
        }
Exemple #2
0
        //Indexpagina die wordt gebruikt om meldingen weer te geven, opgedeeld in pagina's
        public async Task <IActionResult> OverzichtMeldingen(int pagina, string sorteerType, string sorteerVolgorde, string filter, string status, string poster, DateTime date1, DateTime date2, bool likedby)
        {
            //Standaardwaarden indien parameters null zijn
            if (sorteerType == null)
            {
                sorteerType = "Datum";
            }
            if (sorteerVolgorde == null)
            {
                sorteerVolgorde = "aflopend";
            }
            if (status == null)
            {
                status = "Open";
            }
            if (poster == null)
            {
                poster = "Toon alles";
            }
            //Maak een user aan identiek aan de user die op dit moment is ingelogd. De FindByIDAsync methode zoekt een user in de usermanager.
            //De parameter is een UserID. Deze wordt gevonden doormiddel van this.user (het huidig ingelogde user van het type ClaimType), waarna de eerste
            //waarde hiervan wordt gevonden (van het type UserID).
            WDPR_BuurtApp_3GUser user = await _userManager.FindByIdAsync(this.User.FindFirst(ClaimTypes.NameIdentifier).Value);

            //Check of ingelogd user moderator is. Boolean wordt meegestuurd in de viewdata
            ViewData["UserIsModerator"] = false;
            if (await _userManager.IsInRoleAsync(user, "Moderator"))
            {
                ViewData["UserIsModerator"] = true;
            }
            ViewData["Likedby"]         = likedby;
            ViewData["Filter"]          = filter;
            ViewData["SorteerType"]     = sorteerType;
            ViewData["SorteerVolgorde"] = sorteerVolgorde;
            ViewData["Status"]          = status;
            ViewData["Poster"]          = poster;
            ViewData["Date1"]           = DateFormat(date1);
            ViewData["Date2"]           = DateFormat(date2);
            ViewData["LoggedInID"]      = this.User.FindFirst(ClaimTypes.NameIdentifier).Value;

            //Stuur een gepagineerde, gesorteerde en gefilterde lijst mee terug aan de view.
            return(View(await GepagineerdeLijst <Melding> .CreateAsync(DateRange(Filter(Sort(sorteerVolgorde, sorteerType), filter, status, poster, likedby), date1, date2), pagina, 5)));
        }