예제 #1
0
        //Main controller to pull all the burial records.
        public IActionResult BurialRecords(int pageNum = 1, bool isPagination = false)
        {
            ViewBag.FilterSubmitted = false;

            if (User.IsInRole("Admin")) //Checks the role
            {
                ViewBag.Admin = true;
            }
            if (User.IsInRole("Researcher"))
            {
                ViewBag.Researcher = true;
            }
            int pageSize = 12; //numebr of cards on a page

            List <Burial> listToView = new List <Burial>();

            if (TempData["isDataStored"] != null && isPagination == true)
            {
                FilterData filterData = TempData.Get <FilterData>("filterData");
                listToView = _filterService.FilterAllData(filterData);

                TempData.Keep("isDataStored");
                TempData.Keep("filterData");
                ViewBag.FilterSubmitted = true;
                ViewBag.FilterDisplay   = _filterService.GetActiveFilterDisplay(filterData);
            }
            else
            {
                listToView = _recordService.GetAllBurials().ToList();
            }

            BurialViewModel bvm = new BurialViewModel
            {
                Burials   = listToView.Skip((pageNum - 1) * pageSize).Take(pageSize).ToList(),
                Locations = _recordService.GetAllLocations().ToList(),

                PageNumInfo = new PageNumInfo
                {
                    NumItemsPerPage = pageSize,
                    CurrentPage     = pageNum,
                    TotalNumItems   = listToView.Count()
                }
            };

            return(View(bvm));
        }