diff --git a/src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs b/src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
index 203393391a..ce4f54b2b1 100644
--- a/src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
+++ b/src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
@@ -233,7 +233,7 @@ namespace Umbraco.Core.Persistence.Repositories
var processed = 0;
do
{
- var descendants = GetPagedResultsByQuery(query, pageIndex, pageSize, out total, "Path", Direction.Ascending);
+ var descendants = GetPagedResultsByQuery(query, pageIndex, pageSize, out total, "Path", Direction.Ascending, true);
var xmlItems = (from descendant in descendants
let xml = serializer(descendant)
@@ -713,10 +713,11 @@ namespace Umbraco.Core.Persistence.Repositories
/// Total records query would return without paging
/// Field to order by
/// Direction to order by
+ /// Flag to indicate when ordering by system field
/// Search text filter
/// An Enumerable list of objects
public IEnumerable GetPagedResultsByQuery(IQuery query, int pageIndex, int pageSize, out int totalRecords,
- string orderBy, Direction orderDirection, string filter = "")
+ string orderBy, Direction orderDirection, bool orderBySystemField, string filter = "")
{
//NOTE: This uses the GetBaseQuery method but that does not take into account the required 'newest' field which is
@@ -735,7 +736,7 @@ namespace Umbraco.Core.Persistence.Repositories
return GetPagedResultsByQuery(query, pageIndex, pageSize, out totalRecords,
new Tuple("cmsDocument", "nodeId"),
- ProcessQuery, orderBy, orderDirection,
+ ProcessQuery, orderBy, orderDirection, orderBySystemField,
filterCallback);
}
diff --git a/src/Umbraco.Core/Persistence/Repositories/Interfaces/IContentRepository.cs b/src/Umbraco.Core/Persistence/Repositories/Interfaces/IContentRepository.cs
index 5cb470b7cd..50adaadd73 100644
--- a/src/Umbraco.Core/Persistence/Repositories/Interfaces/IContentRepository.cs
+++ b/src/Umbraco.Core/Persistence/Repositories/Interfaces/IContentRepository.cs
@@ -92,9 +92,10 @@ namespace Umbraco.Core.Persistence.Repositories
/// Total records query would return without paging
/// Field to order by
/// Direction to order by
+ /// Flag to indicate when ordering by system field
/// Search text filter
/// An Enumerable list of objects
IEnumerable GetPagedResultsByQuery(IQuery query, int pageIndex, int pageSize, out int totalRecords,
- string orderBy, Direction orderDirection, string filter = "");
+ string orderBy, Direction orderDirection, bool orderBySystemField, string filter = "");
}
}
\ No newline at end of file
diff --git a/src/Umbraco.Core/Persistence/Repositories/Interfaces/IMediaRepository.cs b/src/Umbraco.Core/Persistence/Repositories/Interfaces/IMediaRepository.cs
index f84844c177..94ac1ed7cb 100644
--- a/src/Umbraco.Core/Persistence/Repositories/Interfaces/IMediaRepository.cs
+++ b/src/Umbraco.Core/Persistence/Repositories/Interfaces/IMediaRepository.cs
@@ -33,9 +33,10 @@ namespace Umbraco.Core.Persistence.Repositories
/// Total records query would return without paging
/// Field to order by
/// Direction to order by
+ /// Flag to indicate when ordering by system field
/// Search text filter
/// An Enumerable list of objects
IEnumerable GetPagedResultsByQuery(IQuery query, int pageIndex, int pageSize, out int totalRecords,
- string orderBy, Direction orderDirection, string filter = "");
+ string orderBy, Direction orderDirection, bool orderBySystemField, string filter = "");
}
}
\ No newline at end of file
diff --git a/src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs b/src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs
index 0538fe18fa..ece5e02ba0 100644
--- a/src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs
+++ b/src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs
@@ -44,16 +44,17 @@ namespace Umbraco.Core.Persistence.Repositories
///
/// Gets paged member results
///
- ///
- ///
- ///
- ///
- ///
- ///
- ///
+ /// The query.
+ /// Index of the page.
+ /// Size of the page.
+ /// The total records.
+ /// The order by column
+ /// The order direction.
+ /// Flag to indicate when ordering by system field
+ /// Search query
///
IEnumerable GetPagedResultsByQuery(IQuery query, int pageIndex, int pageSize, out int totalRecords,
- string orderBy, Direction orderDirection, string filter = "");
+ string orderBy, Direction orderDirection, bool orderBySystemField, string filter = "");
//IEnumerable GetPagedResultsByQuery(
// Sql sql, int pageIndex, int pageSize, out int totalRecords,
diff --git a/src/Umbraco.Core/Persistence/Repositories/MediaRepository.cs b/src/Umbraco.Core/Persistence/Repositories/MediaRepository.cs
index a6db5387f4..5c0be2c2e6 100644
--- a/src/Umbraco.Core/Persistence/Repositories/MediaRepository.cs
+++ b/src/Umbraco.Core/Persistence/Repositories/MediaRepository.cs
@@ -242,7 +242,7 @@ namespace Umbraco.Core.Persistence.Repositories
var processed = 0;
do
{
- var descendants = GetPagedResultsByQuery(query, pageIndex, pageSize, out total, "Path", Direction.Ascending);
+ var descendants = GetPagedResultsByQuery(query, pageIndex, pageSize, out total, "Path", Direction.Ascending, true);
var xmlItems = (from descendant in descendants
let xml = serializer(descendant)
@@ -451,10 +451,11 @@ namespace Umbraco.Core.Persistence.Repositories
/// Total records query would return without paging
/// Field to order by
/// Direction to order by
+ /// Flag to indicate when ordering by system field
/// Search text filter
/// An Enumerable list of objects
public IEnumerable GetPagedResultsByQuery(IQuery query, int pageIndex, int pageSize, out int totalRecords,
- string orderBy, Direction orderDirection, string filter = "")
+ string orderBy, Direction orderDirection, bool orderBySystemField, string filter = "")
{
var args = new List