|
24 | 24 | <div class="collapse navbar-collapse" id="navbarNav"> |
25 | 25 | <ul class="navbar-nav ms-auto"> |
26 | 26 | {% for nav in site.data.navbar %} |
| 27 | + {% assign is_active = false %} |
| 28 | + {% if nav.href %} |
| 29 | + {% assign clean_nav_href = nav.href |
| 30 | + | remove: '.html' |
| 31 | + | remove: '/' |
| 32 | + %} |
| 33 | + {% if page.url == nav.href |
| 34 | + or page.permalink == nav.href |
| 35 | + or clean_page_url == clean_nav_href |
| 36 | + or page.url contains nav.href |
| 37 | + %} |
| 38 | + {% assign is_active = true %} |
| 39 | + {% endif %} |
| 40 | + {% endif %} |
| 41 | + |
27 | 42 | {% if nav.children %} |
| 43 | + {% comment %} Check if any child is active {% endcomment %} |
| 44 | + {% for child in nav.children %} |
| 45 | + {% assign clean_child_href = child.href |
| 46 | + | remove: '.html' |
| 47 | + | remove: '/' |
| 48 | + %} |
| 49 | + {% if page.url == child.href |
| 50 | + or page.permalink == child.href |
| 51 | + or clean_page_url == clean_child_href |
| 52 | + or page.url contains child.href |
| 53 | + %} |
| 54 | + {% assign is_active = true %} |
| 55 | + {% endif %} |
| 56 | + {% endfor %} |
28 | 57 | <li class="nav-item dropdown"> |
29 | 58 | <a |
30 | | - class="nav-link dropdown-toggle" |
| 59 | + class="nav-link dropdown-toggle {% if is_active %}active{% endif %}" |
31 | 60 | href="#" |
32 | | - id="dropdown{{ forloop.index }}" |
33 | 61 | role="button" |
34 | 62 | data-bs-toggle="dropdown" |
35 | 63 | aria-expanded="false" |
36 | 64 | > |
37 | 65 | {{ nav.name }} |
38 | 66 | </a> |
39 | | - <ul |
40 | | - class="dropdown-menu" |
41 | | - aria-labelledby="dropdown{{ forloop.index }}" |
42 | | - > |
| 67 | + <ul class="dropdown-menu"> |
43 | 68 | {% for child in nav.children %} |
| 69 | + {% assign clean_child_href = child.href |
| 70 | + | remove: '.html' |
| 71 | + | remove: '/' |
| 72 | + %} |
44 | 73 | <li> |
45 | 74 | <a |
46 | | - class="dropdown-item {% assign clean_child_href = child.href | remove: '.html' | remove: '/' %}{% if page.url == child.href or page.permalink == child.href or clean_page_url == clean_child_href or page.url contains child.href %}active{% endif %}" |
| 75 | + class="dropdown-item {% if page.url == child.href or page.permalink == child.href or clean_page_url == clean_child_href or page.url contains child.href %}active{% endif %}" |
47 | 76 | href="{{ child.href }}" |
48 | 77 | > |
49 | 78 | {{ child.name }} |
50 | | - {% if child.href == '/apprenticeship.html' %} |
51 | | - {% include apprenticeship-badge.html %} |
52 | | - {% endif %} |
| 79 | + {% if child.href == '/apprenticeship' -%} |
| 80 | + {%- include apprenticeship-badge.html -%} |
| 81 | + {%- endif %} |
53 | 82 | </a> |
54 | 83 | </li> |
55 | 84 | {% endfor %} |
56 | 85 | </ul> |
57 | 86 | </li> |
| 87 | + {% elsif nav.cta %} |
| 88 | + <li class="nav-item ms-lg-2"> |
| 89 | + <a class="btn btn-primary btn-sm px-3" href="{{ nav.href }}"> |
| 90 | + {{- nav.name -}} |
| 91 | + </a> |
| 92 | + </li> |
58 | 93 | {% else %} |
59 | 94 | <li class="nav-item"> |
60 | 95 | <a |
61 | | - class="nav-link {% assign clean_nav_href = nav.href | remove: '.html' | remove: '/' %}{% if page.url == nav.href or page.permalink == nav.href or clean_page_url == clean_nav_href or page.url contains nav.href %}active{% endif %}" |
| 96 | + class="nav-link {% if is_active %}active{% endif %}" |
62 | 97 | href="{{ nav.href }}" |
63 | 98 | > |
64 | | - {{ nav.name }} |
| 99 | + {{- nav.name -}} |
65 | 100 | </a> |
66 | 101 | </li> |
67 | 102 | {% endif %} |
|
0 commit comments