diff --git a/src/Orchard.Web/Core/Contents/Controllers/AdminController.cs b/src/Orchard.Web/Core/Contents/Controllers/AdminController.cs index d9be03902..46a5c5b6c 100644 --- a/src/Orchard.Web/Core/Contents/Controllers/AdminController.cs +++ b/src/Orchard.Web/Core/Contents/Controllers/AdminController.cs @@ -65,44 +65,20 @@ namespace Orchard.Core.Contents.Controllers { if (model.ContainerId != null) query = query.Join().Where(cr => cr.Container.Id == model.ContainerId); - // Ordering - //-- want something like - //switch (model.Options.OrderBy) { - // case ContentsOrder.Modified: - // query = query.OrderByDescending(cr => cr.ModifiedUtc); - // break; - // case ContentsOrder.Published: - // query = query.OrderByDescending(cr => cr.PublishedUtc); - // break; - // case ContentsOrder.Created: - // query = query.OrderByDescending(cr => cr.CreatedUtc); - // break; - //} - - //-- but resorting to - var contentItems = query.List(); switch (model.Options.OrderBy) { case ContentsOrder.Modified: - contentItems = contentItems.OrderByDescending(ci => ci.VersionRecord.Id); + query = query.OrderByDescending(cr => cr.ModifiedUtc); + break; + case ContentsOrder.Published: + query = query.OrderByDescending(cr => cr.PublishedUtc); break; - //case ContentsOrder.Published: - // would be lying w/out a published date instead of a bool but that only comes with the common aspect - // contentItems = contentItems.OrderByDescending(ci => ci.VersionRecord.Published/*Date*/); - // break; case ContentsOrder.Created: - contentItems = contentItems.OrderByDescending(ci => ci.Id); + query = query.OrderByDescending(cr => cr.CreatedUtc); break; } - //-- for the moment - //-- because I'd rather do this - - //var contentItems = query.Slice(skip, pageSize); - - //-- instead of this (having the ordering and skip/take after the query) - - var pageOfContentItems = contentItems.Skip(pager.GetStartIndex()).Take(pager.PageSize).ToList(); + var pageOfContentItems = query.Slice(pager.GetStartIndex(), pager.PageSize).ToList(); model.Options.SelectedFilter = model.TypeName; model.Options.FilterOptions = GetCreatableTypes() diff --git a/src/Orchard.Web/Core/Contents/Views/Admin/List.cshtml b/src/Orchard.Web/Core/Contents/Views/Admin/List.cshtml index 8d0a06c0d..4253ff3fe 100644 --- a/src/Orchard.Web/Core/Contents/Views/Admin/List.cshtml +++ b/src/Orchard.Web/Core/Contents/Views/Admin/List.cshtml @@ -35,6 +35,7 @@