public static void Filter(IList <ContentItem> items, string zoneName) { ItemFilter.Filter(items, new ZoneFilter(zoneName)); }
/// <summary>Siblings of the current item.</summary> /// <param name="item"></param> /// <param name="filter"></param> /// <returns></returns> public IEnumerable <ContentItem> Siblings(ItemFilter filter) { return(Siblings(null, filter)); }
/// <summary>Ancestors of a given item.</summary> /// <param name="item"></param> /// <param name="filter"></param> /// <returns></returns> public IEnumerable <ContentItem> Ancestors(ContentItem item = null, ItemFilter filter = null) { TryMasterVersion(ref item); return(N2.Find.EnumerateParents(item ?? CurrentItem, StartPage, true).Where(filter ?? DefaultFilter)); }
/// <summary>Descendant pages of a given item.</summary> /// <param name="ancestor"></param> /// <param name="filter"></param> /// <returns></returns> public IEnumerable <ContentItem> DescendantPages(ContentItem ancestor, ItemFilter filter = null) { TryMasterVersion(ref ancestor); return(N2.Find.EnumerateChildren(ancestor).Where(Content.Is.Page()).Where(filter ?? DefaultFilter)); }
/// <summary>Children of the current item.</summary> /// <param name="filter"></param> /// <returns></returns> public IEnumerable <ContentItem> Children(ItemFilter filter) { return(Children(CurrentItem, filter ?? DefaultFilter)); }
/// <summary>Inverses the given filter.</summary> /// <param name="itemFilter">The filter to inverse.</param> /// <returns>A filter that does the inverse of the given filter.</returns> public ItemFilter Not(ItemFilter filterToInverse) { return(new InverseFilter(filterToInverse)); }
/// <summary>Descendant pages of a given item.</summary> /// <param name="ancestor"></param> /// <param name="filter"></param> /// <returns></returns> public IEnumerable <ContentItem> DescendantPages(ContentItem ancestor = null, ItemFilter filter = null) { if (!TryCurrentPage(ref ancestor)) { return(Enumerable.Empty <ContentItem>()); } TryMasterVersion(ref ancestor); return(N2.Find.EnumerateChildren(ancestor).Where(this.filterIs.Page()).Where(filter ?? DefaultFilter)); }
/// <summary>Removes duplicate items.</summary> /// <param name="items">The items whose duplicate items should be deleted.</param> public static void FilterDuplicates(IList <ContentItem> items) { ItemFilter.Filter(items, new DuplicateFilter()); }