private IEnumerable <PageData> Sort(IEnumerable <PageData> pages, FilterSortOrder sortOrder)
        {
            var sortFilter = new FilterSort(sortOrder);

            sortFilter.Sort(new PageDataCollection(pages.ToList()));
            return(pages);
        }
예제 #2
0
        public static SortField CreateSortField(FilterSortOrder filterSortOrder)
        {
            switch (filterSortOrder)
            {
            case FilterSortOrder.Alphabetical:
                return(new SortField(SearchSettings.Config.IndexingServiceFieldNameTitle, SortField.STRING, false));

            case FilterSortOrder.Index:
                return(new SortField(SortIndexField.FieldName, SortField.INT, false));

            case FilterSortOrder.CreatedAscending:
                return(new SortField(SearchSettings.Config.IndexingServiceFieldNameCreated, SortField.LONG, false));

            case FilterSortOrder.CreatedDescending:
                return(new SortField(SearchSettings.Config.IndexingServiceFieldNameCreated, SortField.LONG, true));

            case FilterSortOrder.ChangedDescending:
                return(new SortField(SearchSettings.Config.IndexingServiceFieldNameModified, SortField.LONG, true));

            case FilterSortOrder.PublishedAscending:
                return(new SortField(StartPublishedField.FieldName, SortField.LONG, false));

            case FilterSortOrder.PublishedDescending:
                return(new SortField(StartPublishedField.FieldName, SortField.LONG, true));
            }

            return(new SortField(SearchSettings.Config.IndexingServiceFieldNameDefault, SortField.STRING, false));
        }
예제 #3
0
        private IEnumerable <PageData> Sort(IEnumerable <PageData> pages, FilterSortOrder sortOrder)
        {
            var asCollection = new PageDataCollection(pages);
            var sortFilter   = new FilterSort(sortOrder);

            sortFilter.Sort(asCollection);
            return(asCollection);
        }
예제 #4
0
        /// <summary>
        /// Sets the default property values on the content data.
        /// </summary>
        /// <param name="contentType">Type of the content.</param>
        public override void SetDefaultValues(ContentType contentType)
        {
            base.SetDefaultValues(contentType);

            /*
             * Count = 3;
             * IncludeIntroduction = true;
             * IncludePublishDate = true;
             */
            SortOrder = FilterSortOrder.PublishedDescending;
            //Recursive = true;
        }
예제 #5
0
        /// <summary>
        /// Sets the default property values on the content data.
        /// </summary>
        /// <param name="contentType">Type of the content.</param>
        public override void SetDefaultValues(ContentType contentType)
        {
            base.SetDefaultValues(contentType);

            Count = 3;
            IncludeIntroduction = true;
            IncludePublishDate = false;
            SortOrder = FilterSortOrder.PublishedDescending;
        }
        public void GivenFilterSortOrder_WhenUpdatePageTypeCalled_UpdatesPageTypeDefaultChildOrderRule(FilterSortOrder sortOrder)
        {
            PageTypeAttribute attribute = new PageTypeAttribute();
            attribute.DefaultChildSortOrder = sortOrder;
            IPageType pageType = new NativePageType();
            pageType.DefaultChildOrderRule = FilterSortOrder.PublishedAscending;
            PageTypeUpdater pageTypeUpdater = CreatePageTypeUpdater();

            pageTypeUpdater.UpdateDefaultChildOrderRule(pageType, attribute);

            Assert.Equal<FilterSortOrder>(sortOrder, pageType.DefaultChildOrderRule);
        }
예제 #7
0
        public void GivenFilterSortOrder_WhenUpdatePageTypeCalled_UpdatesPageTypeDefaultChildOrderRule(FilterSortOrder sortOrder)
        {
            PageTypeAttribute attribute = new PageTypeAttribute();

            attribute.DefaultChildSortOrder = sortOrder;
            IPageType pageType = new NativePageType();

            pageType.DefaultChildOrderRule = FilterSortOrder.PublishedAscending;
            PageTypeUpdater pageTypeUpdater = CreatePageTypeUpdater();

            pageTypeUpdater.UpdateDefaultChildOrderRule(pageType, attribute);

            Assert.Equal <FilterSortOrder>(sortOrder, pageType.DefaultChildOrderRule);
        }