Beispiel #1
0
        public async Task <IEnumerable <IPage> > GetChildPagesAsync(IPageCollectionReference pageCollectionReference, int offset, int limit)
        {
            var pageService = ViewContext.HttpContext.RequestServices.GetRequiredService <IPageService>();

            if (pageCollectionReference.CollectionId == Guid.Empty)
            {
                return(new IPage[0]);
            }

            var options = new GetPagesOptions(pageCollectionReference.CollectionId);

            if (offset >= 0 && limit > 0)
            {
                options.Pagination = new PagePaginationOptions(offset, limit);
            }

            var accessProvider = ViewContext.HttpContext.RequestServices.GetRequiredService <Identity.IAccessProvider>();

            if (await accessProvider.CheckAccessAsync())
            {
                options.IncludeDrafts = true;
            }

            var pages = await pageService.GetPagesAsync(options);

            return(pages);
        }
Beispiel #2
0
 public Task <IEnumerable <IPage> > GetChildPagesAsync(IPageCollectionReference pageCollectionReference, int limit)
 {
     return(GetChildPagesAsync(pageCollectionReference, 0, limit));
 }
Beispiel #3
0
 public Task <IEnumerable <IPage> > GetChildPagesAsync(IPageCollectionReference pageCollectionReference)
 {
     return(GetChildPagesAsync(pageCollectionReference, -1, -1));
 }