Пример #1
0
        public static GroupEventItems GetGroupEventItemsByID(int id, int pageNumber, int pageSize = int.MaxValue, GroupRelatedData relatedData = GroupRelatedData.None)
        {
            using (IUnitOfWork unitOfWork = new cmiUnitOfWork())
            {
                GroupEventItems    groupEvents     = new GroupEventItems();
                Repository <Group> repositoryGroup = new Repository <Group>(unitOfWork);
                groupEvents.Group = repositoryGroup.Get(g => g.ID == id, GetIncludeProperties(relatedData)).SingleOrDefault();

                Repository <Event> repositoryEvent = new Repository <Event>(unitOfWork);
                groupEvents.Events = repositoryEvent.Get(e => e.GroupID == id, "UsersToEvents").OrderBy(e => e.StartTime).ToPagedList(pageNumber, pageSize);

                return(groupEvents);
            }
        }
Пример #2
0
        public ActionResult GroupDetails(int id, int?currentPage, DML.Enums.MessageId message = DML.Enums.MessageId.Unknow)
        {
            currentPage = currentPage ?? 1;

            GroupEventItems groupEvents = BLL.GroupManager.GetGroupEventItemsByID(id, currentPage.Value, ConfigurationSettings.ItemsPerPage, GroupManager.GroupRelatedData.UsersAndGroupInvite);

            if (groupEvents == null ||
                (!groupEvents.Group.UsersToGroups.Any(u => u.UserID == Core.SessionManager.UserID) && !BLL.PermissionManager.HasPermission(Core.SessionManager.UserID, PermissionsItem.CanEditGroup)))
            {
                return(RedirectToAction("NotFound", "Error"));
            }

            GroupItem outGroupItem = groupEvents.Group.ToGroupItem();

            outGroupItem.groupEvents = groupEvents.Events;

            Core.SessionManager.BackToGroupID = id;

            ViewBag.Message = CountMeIn.Configuration.ConfigurationSettings.Message(message);

            return(View(outGroupItem));
        }