Advertisement
Guest User

Untitled

a guest
Aug 22nd, 2017
470
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.44 KB | None | 0 0
  1. @inherits Umbraco.Web.Mvc.UmbracoTemplatePage
  2.  
  3. @{
  4. var homeActive = "active";
  5. var homeUrl = @Model.Content.AncestorOrSelf(1);
  6. }
  7.  
  8. <nav class="navbar navbar-expand-lg navbar-light bg-light" id="mainNav">
  9.  
  10. <button type="button" class="navbar-toggler" data-toggle="collapse" data-target="#ba-nav" aria-controls="ba-nav" aria-expanded="false" aria-label="Toggle navigation">
  11. <span class="navbar-toggler-icon"></span> Menu
  12. </button>
  13.  
  14. <div class="collapse navbar-collapse" id="ba-nav">
  15. <ul class="navbar-nav mr-auto">
  16. <li class="nav-item @if(@Model.Content.Id == 1054 || @Model.Content.Id== 1844){@Html.Raw(@homeActive)}"><a href="@homeUrl.Url" class="nav-link"><i class="fa fa-home"></i> @Umbraco.Field("#Home")</a></li>
  17. @traverse(@homeUrl)
  18. </ul>
  19. </div>
  20. </div>
  21. </nav>
  22.  
  23. @helper subNodes(IPublishedContent node)
  24. {
  25. var items = node.Children.Where(x => x.IsVisible());
  26.  
  27. <div class="dropdown-menu" aria-labelledby="navDrop-@node.Id">
  28. @foreach (var item in items)
  29. {
  30. var selected = Model.Content.Path.Contains(@item.Id.ToString()) ? "active" : "";
  31. var navText = item.HasValue("navText") ? item.GetPropertyValue("navText") : item.Name;
  32. <a class="dropdown-item" href="@item.Url">
  33. @Html.Raw(@navText)
  34. </a>
  35. }
  36. </div>
  37. }
  38.  
  39. @helper traverse(IPublishedContent node)
  40. {
  41. var maxLevelForSitemap = 2;
  42. var items = node.Children.Where("Visible").Where("Level <= " + maxLevelForSitemap);
  43.  
  44.  
  45. if (items.Any())
  46. {
  47. foreach (var item in items)
  48. {
  49. var selected = Model.Content.Path.Contains(@item.Id.ToString()) ? "active" : null;
  50. var dropdown = item.Children().Where("Visible").Count() > 0 ? "dropdown" : "";
  51. <li class="nav-item @(selected) @(dropdown)">
  52. @if(@item.Children().Where("Visible").Count() > 0 ){
  53. <a class="nav-link dropdown-toggle" href="#" id="navDrop-@(item.Id)" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
  54. @if(@item.HasValue("navText")){
  55. @Html.Raw(@item.GetPropertyValue("navText"))
  56. } else {
  57. @Html.Raw(@item.Name)
  58. }
  59. </a>
  60. @subNodes(item)
  61. } else {
  62. <a href="@item.Url" class="nav-link">
  63. @if(@item.HasValue("navText")){
  64. @Html.Raw(@item.GetPropertyValue("navText"))
  65. } else {
  66. @item.Name
  67. }
  68. </a>
  69. }
  70. </li>
  71. }
  72. }
  73.  
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement