diff --git a/config/alfresco/templates/webscripts/org/alfresco/repository/blogs/blogpost.lib.ftl b/config/alfresco/templates/webscripts/org/alfresco/repository/blogs/blogpost.lib.ftl index b8757165a7..e56121b762 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/repository/blogs/blogpost.lib.ftl +++ b/config/alfresco/templates/webscripts/org/alfresco/repository/blogs/blogpost.lib.ftl @@ -91,6 +91,7 @@ }, "externalBlogConfig": ${externalBlogConfig?string} }, + "totalRecordsUpper": ${data.totalRecordsUpper?string("true","false")}, <@gen.pagedResults data=data ; item> <@blogpostJSON item=item /> diff --git a/source/java/org/alfresco/repo/web/scripts/blogs/posts/AbstractGetBlogWebScript.java b/source/java/org/alfresco/repo/web/scripts/blogs/posts/AbstractGetBlogWebScript.java index c2543dccc9..b92691da71 100644 --- a/source/java/org/alfresco/repo/web/scripts/blogs/posts/AbstractGetBlogWebScript.java +++ b/source/java/org/alfresco/repo/web/scripts/blogs/posts/AbstractGetBlogWebScript.java @@ -60,6 +60,7 @@ public abstract class AbstractGetBlogWebScript extends AbstractBlogWebScript // process additional parameters. PagingRequest pagingReq = parsePagingParams(req); + pagingReq.setRequestTotalCountMax(pagingReq.getSkipCount() + pagingReq.getRequestTotalCountMax()); // begin and end date. // Legacy note: these dates are URL query parameters in int form. @@ -126,12 +127,26 @@ public abstract class AbstractGetBlogWebScript extends AbstractBlogWebScript Map blogPostsData = new HashMap(); final Pair totalResultCount = blogPostList.getTotalResultCount(); + int total = blogPostList.getPage().size(); + if (totalResultCount != null && totalResultCount.getFirst() != null) + { + total = totalResultCount.getFirst(); + } //FIXME What to do? null - blogPostsData.put("total", totalResultCount.getFirst()); + blogPostsData.put("total", total); blogPostsData.put("pageSize", pagingReq.getMaxItems()); blogPostsData.put("startIndex", pagingReq.getSkipCount()); blogPostsData.put("itemCount", blogPostList.getPage().size()); + if (total == pagingReq.getRequestTotalCountMax()) + { + blogPostsData.put("totalRecordsUpper", true); + } + else + { + blogPostsData.put("totalRecordsUpper", false); + } + List> blogPostDataSets = new ArrayList>(blogPostList.getPage().size()); for (BlogPostInfo postInfo : blogPostList.getPage()) {