예제 #1
0
        public Entities.Event GetEventByName(string eventName)
        {
            var eventNameFilter = new SearchFilter<Entities.Event>
                                      {
                                          Conditional = SearchConditional.Equals,
                                          PropertyName = "Name",
                                          PropertyValue = eventName
                                      };

            var eventSearchCriteria = new EventsSearchCriteria
                                          {
                                              Filters = new List<SearchFilter<Entities.Event>> {eventNameFilter}
                                          };
            return Repository.List<Entities.Event>(eventSearchCriteria.BuildCriteria()).FirstOrDefault();
        }
예제 #2
0
        public ActionResult Index(GridOptionsModel options)
        {
            options.Column = options.Column == "Id" ? "Name" : options.Column;
            var searchCriteria = new EventsSearchCriteria
                                     {
                                         OnlyCurrent = false,//true,
                                         OrderByProperty = options.Column,
                                         Ascending = options.Ascending
                                     };

            var events = _eventService.FindEvents(searchCriteria);
            var model = new EventsModel
                            {
                                Data = Mapper.Map<IEnumerable<Event>, IEnumerable<EventModel>>(events).AsPagination(options.Page, 10),
                                Options = options
                            };
            return View(model);
        }
예제 #3
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 });
        }
예제 #4
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 });
        }
예제 #5
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 });
        }
예제 #6
0
 public IEnumerable<Entities.Event> FindEvents(EventsSearchCriteria searchCriteria)
 {
     return Repository.List<Entities.Event>(searchCriteria.BuildCriteria());
 }