private ViewUserCoursesViewModel GetCoursesForUserViewModel(bool showMyAttendingOnly, bool showMyInstructingOnly, string searchTerm, int pageSize, int pageIndex)
        {
            ViewUserCoursesViewModel viewModel = new ViewUserCoursesViewModel();

            string userId = User.Identity.GetUserId();

            if (!string.IsNullOrEmpty(userId))
            {
                if (pageSize <= 0)
                {
                    pageSize = ContextHelpers.DefaultPageSize;
                }

                if (pageIndex < 0)
                {
                    pageIndex = 0;
                }

                PagedCollection <UserCourseDto> pagedItems = unitOfWork.CoursesRepository.GetCoursesForUserView(userId, showMyAttendingOnly, showMyInstructingOnly, searchTerm, pageSize, pageIndex);
                viewModel.Courses.AddRange(pagedItems.Items);
                viewModel.PagerToken = pagedItems.PagerToken;
            }

            return(viewModel);
        }
        public ActionResult Instructing(string searchTerm = null, int pageSize = -1, int pageIndex = 0)
        {
            ViewUserCoursesViewModel viewModel = GetCoursesForUserViewModel(false, true, searchTerm, pageSize, pageIndex);

            if (Request.IsAjaxRequest())
            {
                return(PartialView("UserCourses", viewModel));
            }

            return(View(viewModel));
        }