Added checks to ensure if paged requests for content are made they have valid page parameter values

This commit is contained in:
AndyButland
2014-08-24 23:37:10 +02:00
parent 3a4d0a02eb
commit 274e2c18e1
2 changed files with 12 additions and 1 deletions

View File

@@ -486,6 +486,8 @@ namespace Umbraco.Core.Services
public IEnumerable<IContent> GetPagedChildren(int id, int pageNumber, int pageSize, out int totalChildren,
string orderBy, Direction orderDirection, string filter = "")
{
Mandate.ParameterCondition(pageNumber > 0, "pageSize");
Mandate.ParameterCondition(pageSize > 0, "pageSize");
using (var repository = _repositoryFactory.CreateContentRepository(_uowProvider.GetUnitOfWork()))
{
var query = Query<IContent>.Builder.Where(x => x.ParentId == id);

View File

@@ -158,7 +158,16 @@ namespace Umbraco.Web.Editors
string filter = "")
{
int totalChildren;
var children = Services.ContentService.GetPagedChildren(id, pageNumber, pageSize, out totalChildren, orderBy, orderDirection, filter).ToArray();
IContent[] children;
if (pageNumber > 0 && pageSize > 0)
{
children = Services.ContentService.GetPagedChildren(id, pageNumber, pageSize, out totalChildren, orderBy, orderDirection, filter).ToArray();
}
else
{
children = Services.ContentService.GetChildren(id).ToArray();
totalChildren = children.Length;
}
if (totalChildren == 0)
{