示例#1
0
        public async Task <IActionResult> EventsAll(string searchText, string searchCriteria, int page = 1, int countPerPage = PerPageDefaultValue)
        {
            var model = new EventsListAllViewModel <EventListViewModel>()
            {
                CurrentPage  = page,
                PagesCount   = 0,
                SearchType   = searchCriteria,
                SearchString = searchText,
            };

            int allEventsCount = await this.eventService.GetAllEventsCountAsync(null, searchCriteria, searchText);

            if (allEventsCount > 0)
            {
                var events = await this.eventService.GetAllPerPage <EventListViewModel>(page, countPerPage, null, searchCriteria, searchText);

                var timeZoneIana = this.Request.Cookies[GlobalConstants.Coockies.TimeZoneIana];
                foreach (var @event in events)
                {
                    @event.Duration  = this.dateTimeConverter.GetDurationString(@event.ActivationDateAndTime, @event.DurationOfActivity, timeZoneIana);
                    @event.StartDate = this.dateTimeConverter.GetDate(@event.ActivationDateAndTime, timeZoneIana);
                }

                model.PagesCount = (int)Math.Ceiling(allEventsCount / (decimal)countPerPage);
                model.Events     = events;
            }

            return(this.View(model));
        }
示例#2
0
        public async Task <IActionResult> ActiveEventsAll(string searchText, string searchCriteria, int page = 1, int countPerPage = PerPageDefaultValue)
        {
            var userId = this.userManager.GetUserId(this.User);

            var model = new EventsListAllViewModel <EventSimpleViewModel>()
            {
                CurrentPage  = page,
                PagesCount   = 0,
                SearchType   = searchCriteria,
                SearchString = searchText,
            };

            var allActiveEventsCreatedByTeacher = await this.service.GetEventsCountByCreatorIdAndStatusAsync(Status.Active, userId, searchCriteria, searchText);

            if (allActiveEventsCreatedByTeacher > 0)
            {
                var events = await this.service
                             .GetAllPerPageByCreatorIdAndStatus <EventSimpleViewModel>(page, countPerPage, Status.Active, userId, searchCriteria, searchText);

                model.Events     = events;
                model.PagesCount = (int)Math.Ceiling(allActiveEventsCreatedByTeacher / (decimal)countPerPage);
            }

            return(this.View(model));
        }
示例#3
0
        public async Task <IActionResult> ResultsAll(string searchText, string searchCriteria, int page = 1, int countPerPage = PerPageDefaultValue)
        {
            var model = new EventsListAllViewModel <EventSimpleViewModel>()
            {
                CurrentPage  = page,
                PagesCount   = 0,
                SearchType   = searchCriteria,
                SearchString = searchText,
            };

            int allEventsCount = await this.eventService.GetAllEventsCountAsync(null, searchCriteria, searchText);

            if (allEventsCount > 0)
            {
                var events = await this.eventService.GetAllPerPage <EventSimpleViewModel>(page, countPerPage, null, searchCriteria, searchText);

                model.PagesCount = (int)Math.Ceiling(allEventsCount / (decimal)countPerPage);
                model.Events     = events;
            }

            return(this.View(model));
        }
示例#4
0
        public async Task <IActionResult> AllEventsCreatedByTeacher(string searchCriteria, string searchText, int page = 1, int countPerPage = DefaultCountPerPage)
        {
            var userId = this.userManager.GetUserId(this.User);

            var model = new EventsListAllViewModel <EventListViewModel>
            {
                CurrentPage  = page,
                PagesCount   = 0,
                SearchType   = searchCriteria,
                SearchString = searchText,
            };

            var allEventsCount = await this.eventsService.GetAllEventsCountAsync(userId, searchCriteria, searchText);

            if (allEventsCount > 0)
            {
                var events = await this.eventsService.GetAllPerPage <EventListViewModel>(page, countPerPage, userId, searchCriteria, searchText);

                model.Events     = events;
                model.PagesCount = (int)Math.Ceiling(allEventsCount / (decimal)countPerPage);
            }

            return(this.View(model));
        }