Example #1
0
        /// <summary>
        /// Action to load groups list 
        /// </summary>
        /// <param name="sortBy"></param>
        /// <param name="filterBy"></param>
        /// <param name="page"></param>
        /// <returns></returns>
        public ActionResult GroupList(string filterBy = "All", int page = 0)
        {
            var groups = groupService.GetGroupsByPage(User.Identity.GetUserId(), filterBy, 8, page).ToList();

            var groupsViewModel = Mapper.Map<IEnumerable<Group>, IEnumerable<GroupsItemViewModel>>(groups).ToList();

            foreach (var item in groupsViewModel)
            {
                var groupAdminId = groupUserService.GetAdminId(item.GroupId);
                var groupUserAdmin = userService.GetUser(groupAdminId);
                item.UserId = groupUserAdmin.Id;
                item.UserName = groupUserAdmin.UserName;
            }
            var groupsList = new GroupsPageViewModel(filterBy);
            groupsList.GroupList = groupsViewModel;

            if (Request.IsAjaxRequest())
            {
                return Json(groupsViewModel, JsonRequestBehavior.AllowGet);
            }
            return View("ListOfGroups", groupsList);
        }
Example #2
0
        /// <summary>
        /// Action to load groups list 
        /// </summary>
        /// <param name="filter"></param>
        /// <param name="page"></param>
        /// <returns></returns>
        public ActionResult GroupList(GroupFilter filter = GroupFilter.All, int page = 1)
        {
            // Get a paged list of groups
            var groups = groupService.GetGroups(User.Identity.GetUserId(), filter, new Page(page,8));
            
            // map it to a paged list of models.
            var groupsViewModel = Mapper.Map<IPagedList<Group>, IPagedList<GroupsItemViewModel>>(groups);

            foreach (var item in groupsViewModel)
            {
                var groupAdminId = groupUserService.GetAdminId(item.GroupId);
                var groupUserAdmin = userService.GetUser(groupAdminId);
                item.UserId = groupUserAdmin.Id;
                item.UserName = groupUserAdmin.UserName;
            }
            var groupsList = new GroupsPageViewModel {GroupList = groupsViewModel, Filter = filter};

            // If its an ajax request, just return the table
            if (Request.IsAjaxRequest())
            {
                return PartialView("_GroupsTable", groupsList);
            }
            return View("ListOfGroups", groupsList);
        }