public async Task <IActionResult> Index(HttpReponseStatusCode statusCode = HttpReponseStatusCode.NoStatus) { CourseCategoryIndexViewModel mainModel = await GetCourses(); ViewBag.InfoMessage = new InfoMessage(_stringLocalizer, statusCode); return(View(mainModel)); }
private async Task <CourseCategoryIndexViewModel> GetCourses(int pageNumber = 0, StudyProgram[] studyPrograms = null, string searchFor = null) { int offset = pageNumber * WebConstants.MAX_NUMBER_OF_COURSES_PER_PAGE; if (studyPrograms == null || studyPrograms.Count() == 0) { studyPrograms = Enum.GetValues(typeof(StudyProgram)).Cast <StudyProgram>().ToArray(); } List <DetailedCourseCategoryDTO> detailedCourses = await _courseCategoryManagementService.GetDetailedCourses(offset, WebConstants.MAX_NUMBER_OF_COURSES_PER_PAGE, studyPrograms, searchFor); PageInformation pageInformation = new PageInformation(pageNumber, _courseCategoryManagementService.Count(studyPrograms, searchFor), WebConstants.MAX_NUMBER_OF_COURSES_PER_PAGE); CourseCategoryIndexViewModel mainModel = new CourseCategoryIndexViewModel(_mapper.Map <List <DetailedCourseCategoryDTO>, List <DetailedCourseViewModel> >(detailedCourses), pageInformation); ViewBag.SearchFor = searchFor; ViewBag.StudyPrograms = studyPrograms; return(mainModel); }
public async Task <IActionResult> SearchFilter(int pageNumber, string searchFor, StudyProgram[] studyPrograms) { CourseCategoryIndexViewModel mainModel = await GetCourses(pageNumber, studyPrograms, searchFor); return(View("Index", mainModel)); }