navbar-marketing.pug 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. nav.navbar.navbar-default.navbar-main
  2. .container-fluid
  3. .navbar-header
  4. button.navbar-toggle.collapsed(
  5. type="button",
  6. data-toggle="collapse",
  7. data-target="[data-ol-navbar-main-collapse]"
  8. aria-label="Toggle " + translate('navigation')
  9. )
  10. i.fa.fa-bars(aria-hidden="true")
  11. if settings.nav.custom_logo
  12. a(href='/', aria-label=settings.appName, style='background-image:url("'+settings.nav.custom_logo+'")').navbar-brand
  13. else if (nav.title)
  14. a(href='/', aria-label=settings.appName).navbar-title #{nav.title}
  15. else
  16. a(href='/', aria-label=settings.appName).navbar-brand
  17. .navbar-collapse.collapse(data-ol-navbar-main-collapse)
  18. ul.nav.navbar-nav.navbar-right
  19. if (getSessionUser() && getSessionUser().isAdmin)
  20. li.dropdown.subdued
  21. a.dropdown-toggle(
  22. href="#",
  23. role="button",
  24. aria-haspopup="true",
  25. aria-expanded="false",
  26. data-toggle="dropdown"
  27. )
  28. | Admin
  29. span.caret
  30. ul.dropdown-menu
  31. li
  32. a(href="/admin") Manage Site
  33. li
  34. a(href="/admin/user") Manage Users
  35. // loop over header_extras
  36. each item in nav.header_extras
  37. -
  38. if ((item.only_when_logged_in && getSessionUser())
  39. || (item.only_when_logged_out && (!getSessionUser()))
  40. || (!item.only_when_logged_out && !item.only_when_logged_in && !item.only_content_pages)
  41. || (item.only_content_pages && (typeof(suppressNavContentLinks) == "undefined" || !suppressNavContentLinks))
  42. ){
  43. var showNavItem = true
  44. } else {
  45. var showNavItem = false
  46. }
  47. if showNavItem
  48. if item.dropdown
  49. li.dropdown(class=item.class)
  50. a.dropdown-toggle(
  51. href="#",
  52. role="button",
  53. aria-haspopup="true",
  54. aria-expanded="false",
  55. data-toggle="dropdown"
  56. )
  57. | !{translate(item.text)}
  58. span.caret
  59. ul.dropdown-menu
  60. each child in item.dropdown
  61. if child.divider
  62. li.divider
  63. else
  64. li
  65. if child.url
  66. a(href=child.url, class=child.class) !{translate(child.text)}
  67. else
  68. | !{translate(child.text)}
  69. else
  70. li(class=item.class)
  71. if item.url
  72. a(href=item.url, class=item.class) !{translate(item.text)}
  73. else
  74. | !{translate(item.text)}
  75. // logged out
  76. if !getSessionUser()
  77. // register link
  78. if hasFeature('registration-page')
  79. li
  80. a(href="/register") #{translate('register')}
  81. // login link
  82. li
  83. a(href="/login") #{translate('log_in')}
  84. // projects link and account menu
  85. if getSessionUser()
  86. li
  87. a(href="/project") #{translate('Projects')}
  88. li.dropdown
  89. a.dropdown-toggle(
  90. href="#",
  91. role="button",
  92. aria-haspopup="true",
  93. aria-expanded="false",
  94. data-toggle="dropdown"
  95. )
  96. | #{translate('Account')}
  97. span.caret
  98. ul.dropdown-menu
  99. li
  100. div.subdued #{getSessionUser().email}
  101. li.divider.hidden-xs.hidden-sm
  102. li
  103. a(href="/user/settings") #{translate('Account Settings')}
  104. if nav.showSubscriptionLink
  105. li
  106. a(href="/user/subscription") #{translate('subscription')}
  107. li.divider.hidden-xs.hidden-sm
  108. li
  109. form(method="POST" action="/logout")
  110. input(name='_csrf', type='hidden', value=csrfToken)
  111. button.btn-link.text-left.dropdown-menu-button #{translate('log_out')}