public static void Filter(IList <ContentItem> items, string zoneName)
 {
     ItemFilter.Filter(items, new ZoneFilter(zoneName));
 }
Beispiel #2
0
 /// <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));
 }
Beispiel #3
0
 /// <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));
 }
Beispiel #4
0
 /// <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));
 }
Beispiel #5
0
 /// <summary>Children of the current item.</summary>
 /// <param name="filter"></param>
 /// <returns></returns>
 public IEnumerable <ContentItem> Children(ItemFilter filter)
 {
     return(Children(CurrentItem, filter ?? DefaultFilter));
 }
Beispiel #6
0
 /// <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));
 }
Beispiel #7
0
 /// <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));
 }
Beispiel #8
0
 /// <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());
 }