diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/Gallery.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/Gallery.cshtml
similarity index 57%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/Gallery.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/Gallery.cshtml
index 8388c7a90d..ee2162b56d 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/Gallery.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/Gallery.cshtml
@@ -1,10 +1,14 @@
@using Umbraco.Core.Models.PublishedContent
@using Umbraco.Web
@using Umbraco.Core
-@using Umbraco.Core.Media
-@using Umbraco.Web.Composing
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Core.Composing
+@using Umbraco.Core.PropertyEditors.ValueConverters
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedContentQuery PublishedContentQuery
+@inject IVariationContextAccessor VariationContextAccessor
+@inject IPublishedUrlProvider PublishedUrlProvider
+@inject IFactory Factory
@*
Macro to display a gallery of images from the Media section.
Works with either a 'Single Media Picker' or a 'Multiple Media Picker' macro parameter (see below).
@@ -26,28 +30,30 @@
@foreach (var mediaId in mediaIds.Split(','))
{
- var media = Current.PublishedContentQuery.Media(mediaId);
+ var media = PublishedContentQuery.Media(mediaId);
@* a single image *@
if (media.IsDocumentType("Image"))
{
- @Render(media)
+ Render(media);
}
@* a folder with images under it *@
- foreach (var image in media.Children(Current.VariationContextAccessor))
+ foreach (var image in media.Children(VariationContextAccessor))
{
- @Render(image)
+ Render(image);
}
}
}
-@helper Render(IPublishedContent item)
-{
-
+@{
+ void Render(IPublishedContent item)
+ {
+ /*@;*/
+ }
}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListAncestorsFromCurrentPage.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListAncestorsFromCurrentPage.cshtml
similarity index 77%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListAncestorsFromCurrentPage.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListAncestorsFromCurrentPage.cshtml
index 070f67ff23..2b2e04064b 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListAncestorsFromCurrentPage.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListAncestorsFromCurrentPage.cshtml
@@ -1,7 +1,7 @@
@using Umbraco.Core
-@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedUrlProvider PublishedUrlProvider
@*
This snippet makes a list of links to the of parents of the current page using an unordered HTML list.
@@ -18,7 +18,7 @@
@* For each page in the ancestors collection which have been ordered by Level (so we start with the highest top node first) *@
@foreach (var item in selection.OrderBy(x => x.Level))
{
- @item.Name »
+ @item.Name »
}
@* Display the current page as the last item in the list *@
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesFromChangeableSource.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesFromChangeableSource.cshtml
similarity index 57%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesFromChangeableSource.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesFromChangeableSource.cshtml
index ec41d45c0c..0cc090fd9e 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesFromChangeableSource.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesFromChangeableSource.cshtml
@@ -1,7 +1,11 @@
+@using Umbraco.Core
+@using Umbraco.Core.Models.PublishedContent
@using Umbraco.Web
-@using Umbraco.Web.Composing
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedContentQuery PublishedContentQuery
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
@*
Macro to list all child pages under a specific page in the content tree.
@@ -19,15 +23,15 @@
@if (startNodeId != null)
{
@* Get the starting page *@
- var startNode = Current.PublishedContentQuery.Content(startNodeId);
- var selection = startNode.Children.Where(x => x.IsVisible()).ToArray();
+ var startNode = PublishedContentQuery.Content(startNodeId);
+ var selection = startNode.Children.Where(x => x.IsVisible(PublishedValueFallback)).ToArray();
if (selection.Length > 0)
{
}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesFromCurrentPage.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesFromCurrentPage.cshtml
similarity index 56%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesFromCurrentPage.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesFromCurrentPage.cshtml
index e6606d6204..1b3c04beb1 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesFromCurrentPage.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesFromCurrentPage.cshtml
@@ -1,6 +1,9 @@
-@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Core
+@using Umbraco.Core.Models.PublishedContent
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
@*
This snippet makes a list of links to the of children of the current page using an unordered HTML list.
@@ -9,7 +12,7 @@
- It then generates links so the visitor can go to each page
*@
-@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).ToArray(); }
+@{ var selection = Model.Content.Children.Where(x => x.IsVisible(PublishedValueFallback)).ToArray(); }
@if (selection.Length > 0)
{
@@ -17,7 +20,7 @@
@foreach (var item in selection)
{
- @item.Name
+ @item.Name
}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByDate.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByDate.cshtml
similarity index 57%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByDate.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByDate.cshtml
index 2c2cc4422b..896fdda614 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByDate.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByDate.cshtml
@@ -1,6 +1,9 @@
-@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Core
+@using Umbraco.Core.Models.PublishedContent
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
@*
This snippet makes a list of links to the of children of the current page using an unordered HTML list.
@@ -10,14 +13,14 @@
- It then generates links so the visitor can go to each page
*@
-@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).OrderByDescending(x => x.CreateDate).ToArray(); }
+@{ var selection = Model.Content.Children.Where(x => x.IsVisible(PublishedValueFallback)).OrderByDescending(x => x.CreateDate).ToArray(); }
@if (selection.Length > 0)
{
}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByName.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByName.cshtml
similarity index 57%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByName.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByName.cshtml
index d0398e7272..b80ff6ead7 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByName.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByName.cshtml
@@ -1,6 +1,9 @@
-@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Core
+@using Umbraco.Core.Models.PublishedContent
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
@*
This snippet makes a list of links to the of children of the current page using an unordered HTML list.
@@ -10,14 +13,14 @@
- It then generates links so the visitor can go to each page
*@
-@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).OrderBy(x => x.Name).ToArray(); }
+@{ var selection = Model.Content.Children.Where(x => x.IsVisible(PublishedValueFallback)).OrderBy(x => x.Name).ToArray(); }
@if (selection.Length > 0)
{
}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByProperty.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByProperty.cshtml
similarity index 64%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByProperty.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByProperty.cshtml
index 1bffae04c4..fe121d8a36 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByProperty.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesOrderedByProperty.cshtml
@@ -1,6 +1,10 @@
+@using Umbraco.Core
+@using Umbraco.Core.Models.PublishedContent
@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
@*
Macro to list all child pages with a specific property, sorted by the value of that property.
@@ -17,14 +21,14 @@
@if (propertyAlias != null)
{
- var selection = Model.Content.Children.Where(x => x.IsVisible()).OrderBy(x => x.Value(propertyAlias.ToString())).ToArray();
+ var selection = Model.Content.Children.Where(x => x.IsVisible(PublishedValueFallback)).OrderBy(x => x.Value(PublishedValueFallback, propertyAlias.ToString())).ToArray();
if (selection.Length > 0)
{
}
diff --git a/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesWithDoctype.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesWithDoctype.cshtml
new file mode 100644
index 0000000000..6aa3771fd3
--- /dev/null
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListChildPagesWithDoctype.cshtml
@@ -0,0 +1,25 @@
+@using Umbraco.Core
+@using Umbraco.Core.Models.PublishedContent
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IVariationContextAccessor VariationContextAccessor
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
+@*
+ This snippet shows how simple it is to fetch only children of a certain Document Type.
+
+ Be sure to change "IPublishedContent" below to match your needs, such as "TextPage" or "NewsItem".
+ (You can find the alias of your Document Type by editing it in the Settings section)
+*@
+
+@{ var selection = Model.Content.Children(VariationContextAccessor).Where(x => x.IsVisible(PublishedValueFallback)).ToArray(); }
+
+@if (selection.Length > 0)
+{
+
+ @foreach (var item in selection)
+ {
+ - @item.Name
+ }
+
+}
diff --git a/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListDescendantsFromCurrentPage.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListDescendantsFromCurrentPage.cshtml
new file mode 100644
index 0000000000..a891839cec
--- /dev/null
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListDescendantsFromCurrentPage.cshtml
@@ -0,0 +1,72 @@
+@using Umbraco.Core
+@using Umbraco.Core.Models.PublishedContent
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
+@*
+ This snippet creates links for every single page (no matter how deep) below
+ the page currently being viewed by the website visitor, displayed as nested unordered HTML lists.
+*@
+
+@{ var selection = Model.Content.Children.Where(x => x.IsVisible(PublishedValueFallback)).ToArray(); }
+
+@* Ensure that the Current Page has children *@
+@if (selection.Length > 0)
+{
+ @* Get the first page in the children, where the property umbracoNaviHide is not True *@
+ var naviLevel = selection[0].Level;
+
+ @* Add in level for a CSS hook *@
+
+ @* Loop through the selection *@
+ @foreach (var item in selection)
+ {
+ -
+ @item.Name
+
+ @* if this child page has any children, where the property umbracoNaviHide is not True *@
+ @{
+ var children = item.Children.Where(x => x.IsVisible(PublishedValueFallback)).ToArray();
+ if (children.Length > 0)
+ {
+ @* Call a local method to display the children *@
+ ChildPages(children);
+ }
+ }
+
+ }
+
+}
+
+@{
+ void ChildPages(IPublishedContent[] selection)
+ {
+ //Ensure that we have a collection of pages
+ if (selection.Length > 0)
+ {
+ // Get the first page in pages and get the level
+ var naviLevel = selection[0].Level;
+
+ // Add in level for a CSS hook
+
+ @foreach (var item in selection)
+ {
+ -
+ @item.Name
+
+ @* if the page has any children, where the property umbracoNaviHide is not True *@
+ @{
+ var children = item.Children.Where(x => x.IsVisible(PublishedValueFallback)).ToArray();
+ if (children.Length > 0)
+ {
+ @* Recurse and call the ChildPages method to display the children *@
+ ChildPages(children);
+ }
+ }
+
+ }
+
+ }
+ }
+}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListImagesFromMediaFolder.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListImagesFromMediaFolder.cshtml
similarity index 71%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListImagesFromMediaFolder.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListImagesFromMediaFolder.cshtml
index 386bc824df..93bde0a1c4 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListImagesFromMediaFolder.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/ListImagesFromMediaFolder.cshtml
@@ -1,7 +1,9 @@
+@using Umbraco.Core
@using Umbraco.Web
-@using Umbraco.Web.Composing
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedContentQuery PublishedContentQuery
+@inject IPublishedUrlProvider PublishedUrlProvider
@*
Macro to display a series of images from a media folder.
@@ -19,7 +21,7 @@
@if (mediaId != null)
{
@* Get the media item associated with the id passed in *@
- var media = Current.PublishedContentQuery.Media(mediaId);
+ var media = PublishedContentQuery.Media(mediaId);
var selection = media.Children.ToArray();
if (selection.Length > 0)
@@ -28,7 +30,7 @@
@foreach (var item in selection)
{
-
+
}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/MultinodeTree-picker.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/MultinodeTree-picker.cshtml
similarity index 63%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/MultinodeTree-picker.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/MultinodeTree-picker.cshtml
index d845e699e0..c8f0d9c52f 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/MultinodeTree-picker.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/MultinodeTree-picker.cshtml
@@ -1,7 +1,9 @@
+@using Umbraco.Core
@using Umbraco.Core.Models.PublishedContent
-@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
@*
This snippet lists the items from a Multinode tree picker, using the picker's default settings.
Content Values stored as XML.
@@ -10,7 +12,7 @@
multinode treepicker (so: replace "PropertyWithPicker" with the alias of your property).
*@
-@{ var selection = Model.Content.Value>("PropertyWithPicker").ToArray(); }
+@{ var selection = Model.Content.Value>(PublishedValueFallback, "PropertyWithPicker").ToArray(); }
@if (selection.Length > 0)
{
@@ -18,7 +20,7 @@
@foreach (var item in selection)
{
- @item.Name
+ @item.Name
}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/Navigation.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/Navigation.cshtml
similarity index 61%
rename from src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/Navigation.cshtml
rename to src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/Navigation.cshtml
index 15427f4b3c..5476a3af61 100644
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/Navigation.cshtml
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/Navigation.cshtml
@@ -1,14 +1,16 @@
@using Umbraco.Core
-@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
+@using Umbraco.Core.Models.PublishedContent
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
@*
This snippet displays a list of links of the pages immediately under the top-most page in the content tree.
This is the home page for a standard website.
It also highlights the current active page/section in the navigation with the CSS class "current".
*@
-@{ var selection = Model.Content.Root().Children.Where(x => x.IsVisible()).ToArray(); }
+@{ var selection = Model.Content.Root().Children.Where(x => x.IsVisible(PublishedValueFallback)).ToArray(); }
@if (selection.Length > 0)
{
@@ -16,7 +18,7 @@
@foreach (var item in selection)
{
- @item.Name
+ @item.Name
}
diff --git a/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/SiteMap.cshtml b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/SiteMap.cshtml
new file mode 100644
index 0000000000..e6ad50d200
--- /dev/null
+++ b/src/Umbraco.Web.UI.NetCore/Umbraco/PartialViewMacros/Templates/SiteMap.cshtml
@@ -0,0 +1,47 @@
+@using Umbraco.Core
+@using Umbraco.Core.Models.PublishedContent
+@using Umbraco.Web.Routing
+@inherits Umbraco.Web.Common.Macros.PartialViewMacroPage
+@inject IPublishedValueFallback PublishedValueFallback
+@inject IPublishedUrlProvider PublishedUrlProvider
+@*
+ This snippet makes a list of links of all visible pages of the site, as nested unordered HTML lists.
+
+ How it works:
+ - It uses a local method called Traverse() to select and display the markup and links.
+*@
+
+@{ var selection = Model.Content.Root(); }
+
+
+ @* Render the sitemap by passing the root node to the traverse method, below *@
+ @{ Traverse(selection); }
+
+
+@* Helper method to traverse through all descendants *@
+@{
+ void Traverse(IPublishedContent node)
+ {
+ //Update the level to reflect how deep you want the sitemap to go
+ const int maxLevelForSitemap = 4;
+
+ @* Select visible children *@
+ var selection = node.Children.Where(x => x.IsVisible(PublishedValueFallback) && x.Level <= maxLevelForSitemap).ToArray();
+
+ @* If any items are returned, render a list *@
+ if (selection.Length > 0)
+ {
+
+ @foreach (var item in selection)
+ {
+ -
+ @item.Name
+
+ @* Run the traverse method again for any child pages *@
+ @{ Traverse(item); }
+
+ }
+
+ }
+ }
+}
diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
index 88ba56b9a4..8e0d7177cf 100644
--- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
+++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
@@ -190,46 +190,6 @@
true
PreserveNewest
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
true
PreserveNewest
@@ -238,22 +198,10 @@
true
PreserveNewest
-
- true
- PreserveNewest
-
-
- true
- PreserveNewest
-
true
PreserveNewest
-
- true
- PreserveNewest
-
@@ -409,4 +357,4 @@
-
+
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesWithDoctype.cshtml b/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesWithDoctype.cshtml
deleted file mode 100644
index c90e419903..0000000000
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListChildPagesWithDoctype.cshtml
+++ /dev/null
@@ -1,22 +0,0 @@
-@using Umbraco.Core.Models.PublishedContent
-@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
-@*
- This snippet shows how simple it is to fetch only children of a certain Document Type.
-
- Be sure to change "IPublishedContent" below to match your needs, such as "TextPage" or "NewsItem".
- (You can find the alias of your Document Type by editing it in the Settings section)
-*@
-
-@{ var selection = Model.Content.Children().Where(x => x.IsVisible()).ToArray(); }
-
-@if (selection.Length > 0)
-{
-
- @foreach (var item in selection)
- {
- - @item.Name
- }
-
-}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListDescendantsFromCurrentPage.cshtml b/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListDescendantsFromCurrentPage.cshtml
deleted file mode 100644
index 7ae917b41d..0000000000
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/ListDescendantsFromCurrentPage.cshtml
+++ /dev/null
@@ -1,68 +0,0 @@
-@using Umbraco.Core.Models.PublishedContent
-@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
-@*
- This snippet creates links for every single page (no matter how deep) below
- the page currently being viewed by the website visitor, displayed as nested unordered HTML lists.
-*@
-
-@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).ToArray(); }
-
-@* Ensure that the Current Page has children *@
-@if (selection.Length > 0)
-{
- @* Get the first page in the children, where the property umbracoNaviHide is not True *@
- var naviLevel = selection[0].Level;
-
- @* Add in level for a CSS hook *@
-
- @* Loop through the selection *@
- @foreach (var item in selection)
- {
- -
- @item.Name
-
- @* if this child page has any children, where the property umbracoNaviHide is not True *@
- @{
- var children = item.Children.Where(x => x.IsVisible()).ToArray();
- if (children.Length > 0)
- {
- @* Call our helper to display the children *@
- @ChildPages(children)
- }
- }
-
- }
-
-}
-
-@helper ChildPages(IPublishedContent[] selection)
-{
- @* Ensure that we have a collection of pages *@
- if (selection.Length > 0)
- {
- @* Get the first page in pages and get the level *@
- var naviLevel = selection[0].Level;
-
- @* Add in level for a CSS hook *@
-
- @foreach (var item in selection)
- {
- -
- @item.Name
-
- @* if the page has any children, where the property umbracoNaviHide is not True *@
- @{
- var children = item.Children.Where(x => x.IsVisible()).ToArray();
- if (children.Length > 0)
- {
- @* Recurse and call our helper to display the children *@
- @ChildPages(children)
- }
- }
-
- }
-
- }
-}
diff --git a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/SiteMap.cshtml b/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/SiteMap.cshtml
deleted file mode 100644
index a4127a9636..0000000000
--- a/src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/SiteMap.cshtml
+++ /dev/null
@@ -1,44 +0,0 @@
-@using Umbraco.Core
-@using Umbraco.Core.Models.PublishedContent
-@using Umbraco.Web
-@inherits Umbraco.Web.Macros.PartialViewMacroPage
-
-@*
- This snippet makes a list of links of all visible pages of the site, as nested unordered HTML lists.
-
- How it works:
- - It uses a custom Razor helper called Traverse() to select and display the markup and links.
-*@
-
-@{ var selection = Model.Content.Root(); }
-
-
- @* Render the sitemap by passing the root node to the traverse helper, below *@
- @Traverse(selection)
-
-
-@* Helper method to traverse through all descendants *@
-@helper Traverse(IPublishedContent node)
-{
- @* Update the level to reflect how deep you want the sitemap to go *@
- const int maxLevelForSitemap = 4;
-
- @* Select visible children *@
- var selection = node.Children.Where(x => x.IsVisible() && x.Level <= maxLevelForSitemap).ToArray();
-
- @* If any items are returned, render a list *@
- if (selection.Length > 0)
- {
-
- @foreach (var item in selection)
- {
- -
- @item.Name
-
- @* Run the traverse helper again for any child pages *@
- @Traverse(item)
-
- }
-
- }
-}