Migrate to bootstrap 4 in LeafWeb

This commit is contained in:
2019-12-06 22:29:15 -05:00
parent f9a452045f
commit 88469b19be
248 changed files with 20293 additions and 21639 deletions
+58 -54
View File
@@ -1,36 +1,54 @@
@inherits UmbracoTemplatePage
@{ var home = CurrentPage.Site(); }
@{
var home = CurrentPage.Site();
var loginStatus = Members.GetCurrentLoginStatus();
}
@if (home.Children.Any())
{
@* Get the first page in the children *@
var naviLevel = home.Children.First().Level;
@* Add in level for a CSS hook *@
<ul class="level-@naviLevel">
@* For each child page under the home node *@
@foreach (var childPage in home.Children.Where("Visible"))
{
if (childPage.Children.Where("Visible").Any())
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav mr-auto">
@* For each child page under the home node *@
@foreach (var childPage in home.Children.Where("Visible"))
{
<li class="has-child @(childPage.IsAncestorOrSelf(CurrentPage) ? "selected" : null)">
@if(childPage.DocumentTypeAlias == "LandingPage")
{
<span>@childPage.Name</span>
@childPages(childPage.Children)
} else {
<a href="@childPage.Url">@childPage.Name</a>
}
</li>
}
else
if (childPage.Children.Where("Visible").Any())
{
<li class="nav-item dropdown @(childPage.IsAncestorOrSelf(CurrentPage) ? "active" : null)">
@if (childPage.DocumentTypeAlias == "LandingPage")
{
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
@childPage.Name
</a>
@childPages(childPage.Children)
}
else
{
<a class="nav-link" href="@childPage.Url">@childPage.Name</a>
}
</li>
}
else
{
<li class="nav-item @(childPage.IsAncestorOrSelf(CurrentPage) ? "active" : null)">
<a class="nav-link" href="@childPage.Url">@childPage.Name</a>
</li>
}
}
</ul>
<div class="navbar-text text-light text-left">
@Html.Partial("LoginStatus")
@if (loginStatus.IsLoggedIn)
{
<li class="@(childPage.IsAncestorOrSelf(CurrentPage) ? "selected" : null)">
<a href="@childPage.Url">@childPage.Name</a>
</li>
}
}
</ul>
<div class="align-items-center">
<a href="~/umbraco#"><span class="fa fa-cog"></span> Site Editor</a>
<i class="fa fa-lock fa-fw text-danger" aria-hidden="true"></i>
</div>
}
</div>
</div>
}
@helper childPages(dynamic pages)
@@ -38,35 +56,21 @@
@* Ensure that we have a collection of pages *@
if (pages.Where("Visible").Any())
{
@* Get the first page in pages and get the level *@
var naviLevel = pages.First().Level;
@* Add in level for a CSS hook *@
<ul class="sublevel level-@(naviLevel)">
@foreach (var page in pages.Where("Visible"))
<div class="dropdown-menu bg-dark" aria-labelledby="navbarDropdown">
@foreach (var page in pages.Where("Visible"))
{
if (library.IsProtected(page.id, page.path)
&& !library.HasAccess(page.id, page.path))
{
if (library.IsProtected(page.id, page.path)
&& !library.HasAccess(page.id, page.path))
{
continue;
}
<li>
<a href="@page.Url">
@page.Name
@if (library.IsProtected(page.id, page.path)) {
<i class="fa fa-lock fa-fw text-danger" aria-hidden="true"></i>
}
</a>
@* if the current page has any children *@
@if (page.Children.Where("Visible").Any())
{
@* Call our helper to display the children *@
@childPages(page.Children)
}
</li>
continue;
}
</ul>
<a class="dropdown-item text-light" href="@page.Url">
@page.Name
@if (library.IsProtected(page.id, page.path)) {
<i class="fa fa-lock fa-fw text-danger" aria-hidden="true"></i>
}
</a>
}
</div>
}
}