Пример #1
0
        public ActionResult Index(GridOptionsModel options)
        {
            options.Column = options.Column == "Id" ? "Name" : options.Column;

            var searchCriteria = new EventsSearchCriteria
                                     {
                                         OnlyCurrent = false,
                                         OrderByProperty = options.Column,
                                         Ascending = options.Ascending,
                                         Filters = options.SearchOptions.Filters
                                     };

            var events = _eventService.FindEvents(searchCriteria);
            var searchResults = new EventSearchResultModel
                                                    {
                                                        Data = Mapper.Map<IEnumerable<Event>, IEnumerable<EventModel>>(events).AsPagination(options.Page, 4),
                                                        Options = options
                                                    };
            if (Request != null && Request.IsAjaxRequest())
                return PartialView("SearchResults", searchResults);

            return View(new EventIndexModel { SearchResults = searchResults });
        }
Пример #2
0
        public ActionResult Programs(GridOptionsModel options)
        {
            var classFilter = new SearchFilter<Event> { Conditional = SearchConditional.Equals, PropertyName = "EventType", PropertyValue = EventType.Program };
            var filtersList = options.SearchOptions.Filters.ToList();
            filtersList.Add(classFilter);
            options.Column = options.Column == "Id" ? "Name" : options.Column;
            options.SearchOptions.Filters = filtersList;

            var searchCriteria = new EventsSearchCriteria
                                     {
                                         OnlyCurrent = false,
                                         OrderByProperty = options.Column,
                                         Ascending = options.Ascending,
                                         Filters = options.SearchOptions.Filters
                                     };

            var events = _eventService.FindEvents(searchCriteria);
            var searchResults = new EventSearchResultModel
                                                    {
                                                        Data = Mapper.Map<IEnumerable<Event>, IEnumerable<EventModel>>(events).AsPagination(options.Page, 4),
                                                        Options = options,
                                                        EventSearchCategory = "Programs"
                                                    };
            if (Request != null && Request.IsAjaxRequest())
                return PartialView("SearchResults", searchResults);

            return View(new EventProgramsModel { SearchResults = searchResults });
        }
Пример #3
0
        public ActionResult Classes(GridOptionsModel options)
        {
            var classFilter = new SearchFilter<Event> { Conditional = SearchConditional.Equals, PropertyName = "EventType", PropertyValue = EventType.Class };
            var filtersList = options.SearchOptions.Filters.ToList();
            filtersList.Add(classFilter);
            options.Column = options.Column == "Id" ? "Name" : options.Column;
            options.SearchOptions.Filters = filtersList;

            var searchCriteria = new EventsSearchCriteria
                                     {
                                         OnlyCurrent = false,
                                         OrderByProperty = options.Column,
                                         Ascending = options.Ascending,
                                         Filters = options.SearchOptions.Filters
                                     };

            var events = _eventService.FindEvents(searchCriteria);
            var eventsModel = new List<EventModel>();
            var usersMemberEvents = User == null ? new List<EventMember>() : User.MemberEvents;
            var usersCoodinatorEvents = User == null ? new List<EventCoordinator>() : User.CoordinatorEvents;
            foreach (var evnt in events)
            {
                var eventModel = Mapper.Map<Event, EventModel>(evnt);
                var evnt1 = evnt;
                var eventMember = usersMemberEvents.FirstOrDefault(x => x.Event == evnt1);
                var eventCoordinator = usersCoodinatorEvents.FirstOrDefault(x => x.Event == evnt1);
                eventModel.MemberStatus = eventMember != null ? eventMember.Status : EventMemberStatus.Null;
                eventModel.CoordinatorStatus = eventCoordinator != null ? eventCoordinator.Status : EventMemberStatus.Null;
                eventsModel.Add(eventModel);
            }

            var searchResults = new EventSearchResultModel
                                                    {
                                                        Data = eventsModel.AsPagination(options.Page, 4),
                                                        Options = options,
                                                        EventSearchCategory = "Classes"
                                                    };
            if (Request != null && Request.IsAjaxRequest())
                return PartialView("SearchResults", searchResults);

            return View(new EventClassesModel { SearchResults = searchResults });
        }