public IPageOfItems <ScheduleItem> GetScheduleItems(Event evnt, ScheduleItemFilterCriteria scheduleItemFilterCriteria) { int pageIndex = 0; int pageSize = 50; if (context.RequestDataFormat == RequestDataFormat.Web) { pageIndex = scheduleItemFilterCriteria.PageIndex; pageSize = scheduleItemFilterCriteria.PageSize; } IPageOfItems <ScheduleItem> scheduleItems = cache.GetItems <IPageOfItems <ScheduleItem>, ScheduleItem>( string.Format("GetScheduleItems-FilterCriteria:{0}", scheduleItemFilterCriteria), new CachePartition(pageIndex, pageSize), () => repository.GetScheduleItems(new PagingInfo(pageIndex, pageSize), evnt, context.User.IsAuthenticated && context.User.Cast <User>() != null ? context.User.Cast <User>().ID : Guid.Empty, scheduleItemFilterCriteria).FillTags(tagService), si => si.GetDependencies() ); if (context.RequestDataFormat.IsFeed()) { scheduleItems = scheduleItems.Since(si => si.Modified, context.HttpContext.Request.IfModifiedSince()); } return(scheduleItems); }
public IPageOfItems <Exhibitor> GetExhibitors(EventAddress eventAddress, ExhibitorFilterCriteria exhibitorFilterCriteria) { var pageIndex = 0; var pageSize = 50; if (context.RequestDataFormat == RequestDataFormat.Web) { pageIndex = exhibitorFilterCriteria.PageIndex; pageSize = exhibitorFilterCriteria.PageSize; } var varyBy = string.Join(",", exhibitorFilterCriteria.ParticipantLevels.ToArray()).Trim(); if (!string.IsNullOrEmpty(exhibitorFilterCriteria.Term)) { varyBy = exhibitorFilterCriteria.Term.Trim(); } return (cache.GetItems <IPageOfItems <Exhibitor>, Exhibitor>( string.Format("GetExhibitors-Event:{0}-{1}", eventAddress != null ? eventAddress.EventName ?? "" : "", varyBy), new CachePartition(pageIndex, pageSize), () => repository.GetExhibitors(eventAddress, exhibitorFilterCriteria).GetPage(pageIndex, pageSize), e => e.GetDependencies() )); }
public IPageOfItems <PostComment> GetComments(int pageIndex, int pageSize, bool includePending, bool sortDescending) { return(cache.GetItems <IPageOfItems <PostComment>, PostComment>( string.Format("GetComments-IncludePending:{0},SortDescending{1}", includePending, sortDescending), new CachePartition(pageIndex, pageSize), () => processDisplayOfComments(() => getComments(blogsCommentRepository.GetComments(context.Site.ID, includePending, sortDescending).GetPage(pageIndex, pageSize))), c => getCommentDependencies(c, new SiteSmall(context.Site.ID)) )); }
public IPageOfItems <ScheduleItem> GetScheduleItems(EventAddress eventAddress, ScheduleItemFilterCriteria scheduleItemFilterCriteria) { string dataFormat = context.RequestContext.RouteData.Values["dataFormat"] as String; int pageIndex = scheduleItemFilterCriteria.PageIndex; int pageSize = scheduleItemFilterCriteria.PageSize; if (dataFormat != null) { dataFormat = dataFormat.ToLower(); if (dataFormat == "rss" || dataFormat == "atom" || dataFormat == "sign" || dataFormat == "ics") { pageIndex = 0; pageSize = 1000; } } var cacheKey = string.Format("GetScheduleItems-FilterCriteria:{0}", scheduleItemFilterCriteria); var authenticatedUser = context.User.IsAuthenticated && context.User.Cast <UserAuthenticated>() != null; var userId = Guid.Empty; if (authenticatedUser) { userId = context.User.Cast <UserAuthenticated>().ID; cacheKey += String.Concat("-UserID:", userId); } IPageOfItems <ScheduleItem> scheduleItems = cache.GetItems <IPageOfItems <ScheduleItem>, ScheduleItem>( cacheKey, new CachePartition(pageIndex, pageSize), () => repository.GetScheduleItems(eventAddress, userId, scheduleItemFilterCriteria).GetPage(pageIndex, pageSize).FillTags(tagService), si => si.GetDependencies() ); SetScheduleItemUsers(scheduleItems); return(scheduleItems); }
public IPageOfItems<ISearchResult> GetSearchResults(PagingInfo pagingInfo, SearchCriteria criteria) { IPageOfItems<ISearchResult> searchResults = cache.GetItems<IPageOfItems<ISearchResult>, ISearchResult>( string.Format("GetPosts-SearchTerm:{0}", criteria.Term), pagingInfo.ToCachePartition(), () => repository.GetSearchResults(pagingInfo, criteria), null ); //if (context.RequestDataFormat.IsFeed()) // searchResults = searchResults.Since(context.RequestContext.HttpContext.Request.IfModifiedSince()); pluginEngine.ExecuteAll("UserSearched", new { context, criteria }); return searchResults; }
public IPageOfItems <ISearchResult> GetSearchResults(int pageIndex, int pageSize, SearchCriteria criteria) { IPageOfItems <ISearchResult> searchResults = cache.GetItems <IPageOfItems <ISearchResult>, ISearchResult>( string.Format("GetPosts-SearchTerm:{0}", criteria.Term), new CachePartition(pageIndex, pageSize), () => repository.GetSearchResults(context.Site.ID, criteria).GetPage(pageIndex, pageSize), null ); //if (context.RequestDataFormat.IsFeed()) // searchResults = searchResults.Since(context.RequestContext.HttpContext.Request.IfModifiedSince()); pluginEngine.ExecuteAll("UserSearched", new { context, criteria }); return(searchResults); }
public IPageOfItems <Post> GetPosts(PagingInfo pagingInfo) { bool includeDrafts = context.RequestDataFormat == RequestDataFormat.Web && context.User.IsAuthenticated && context.User.IsInRole("Admin"); IPageOfItems <Post> posts = cache.GetItems <IPageOfItems <Post>, Post>( string.Format("GetPosts-IncludeDrafts:{0}", includeDrafts), pagingInfo.ToCachePartition(), () => pluginEngine.ProcessDisplayOfPosts(context, () => repository.GetPosts(pagingInfo, includeDrafts).FillTags(tagService).FillComments(commentService)), p => p.GetDependencies() ); if (!includeDrafts) { posts = posts.Since(p => p.Published.Value, context.HttpContext.Request.IfModifiedSince()); } return(posts); }