j1-template 2021.0.11 → 2021.0.16
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/themes/j1/layouts/content_generator_blog_archive.html +34 -12
- data/_includes/themes/j1/layouts/content_generator_post.html +7 -5
- data/_includes/themes/j1/modules/navigator/generator.html +6 -6
- data/_includes/themes/j1/procedures/global/create_bs_button.proc +1 -1
- data/_includes/themes/j1/procedures/posts/create_series_header.proc +2 -0
- data/assets/data/authclient.html +1 -1
- data/assets/data/carousel.json +1 -1
- data/assets/data/fam.html +2 -2
- data/assets/data/menu.1.html +505 -0
- data/assets/data/menu.html +15 -17
- data/assets/themes/j1/adapter/js/carousel.js +6 -1
- data/assets/themes/j1/adapter/js/fam.js +8 -0
- data/assets/themes/j1/adapter/js/j1.js +35 -3
- data/assets/themes/j1/adapter/js/mmenu.js +9 -4
- data/assets/themes/j1/adapter/js/navigator.js +14 -6
- data/assets/themes/j1/adapter/js/themer.js +32 -27
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +25 -7
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/js/template.js +2 -8
- data/assets/themes/j1/core/js/template.js.map +1 -1
- data/assets/themes/j1/core/js/template.min.js +2 -8
- data/assets/themes/j1/core/js/template.min.js.map +1 -0
- data/assets/themes/j1/modules/lightbox/js/lightbox.js +1 -1
- data/assets/themes/j1/modules/lightbox/js/lightbox.min.js +1 -1
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.js +9 -4
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +1 -1
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/Gemfile +2 -2
- data/lib/starter_web/_config.yml +2 -2
- data/lib/starter_web/_data/blocks/banner.yml +2 -2
- data/lib/starter_web/_data/blocks/defaults/banner.yml +5 -5
- data/lib/starter_web/_data/builder/blog_navigator.yml +4 -4
- data/lib/starter_web/_data/modules/defaults/quicksearch.yml +3 -24
- data/lib/starter_web/_data/modules/defaults/themer.yml +1 -0
- data/lib/starter_web/_data/modules/fam.yml +13 -2
- data/lib/starter_web/_data/modules/navigator_menu.yml +26 -26
- data/lib/starter_web/_data/modules/quicksearch.yml +3 -3
- data/lib/starter_web/_data/private.yml@localhost +199 -0
- data/lib/starter_web/_includes/attributes.asciidoc +4 -3
- data/lib/starter_web/_plugins/lunr_index.rb +8 -4
- data/lib/starter_web/assets/images/modules/attics/markus-spiske-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/markus-spiske.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/markus-spiske4-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/icons/d1/scalable/d1.svg +1 -1
- data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +1 -1
- data/lib/starter_web/collections/posts/public/featured/_posts/2020-05-01-top-site-generators.adoc +1 -1
- data/lib/starter_web/collections/posts/public/featured/_posts/2020-06-01-about-cookies.adoc +1 -1
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-test-series.adoc +8 -5
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-test-series.adoc +7 -4
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-test-series.adoc +7 -4
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-04-post-test-series.adoc +7 -4
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-20-minneapolis.adoc +1 -1
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-24-narcisse-snake-dens.adoc +1 -1
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-26-columbia-river.adoc +1 -1
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/about/about_site.adoc +1 -1
- data/lib/starter_web/pages/public/blog/navigator/archive.html +9 -7
- data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +9 -7
- data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +16 -11
- data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +9 -7
- data/lib/starter_web/pages/public/blog/navigator/index.html +9 -10
- data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +1 -1
- data/lib/starter_web/pages/public/previewer/_includes/tables/rouge/300_supported_languages.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/bootstrap_theme.adoc +161 -591
- data/lib/starter_web/pages/public/previewer/iframer.adoc +2 -1
- data/lib/starter_web/pages/public/previewer/justified_gallery.html +2 -2
- data/lib/starter_web/pages/public/previewer/md_color_palette.adoc +2450 -0
- data/lib/starter_web/pages/public/previewer/mdi_icons_preview.adoc +4 -4
- data/lib/starter_web/pages/public/previewer/rouge.adoc +3 -3
- data/lib/starter_web/pages/public/previewer/twitter_emoji_preview.adoc +3 -3
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +9 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4659d3d3e7e2ac9d5d2cec9f6a3fcfc1506f4c352353a11e46c64d782122ba3c
|
4
|
+
data.tar.gz: ba613e2cf7c07e5e21647630858ea418c476f4e08f9bb4d1d86713ab5a2b38a1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8c6766374c1cbb1e73ebecdc2fe62df4837009cc001a475aefd1936af2f86739ef36916a6454155cdc0b8ab15810be5ead5e92c8eda8e6d2f7c9e73fb3f4a1b0
|
7
|
+
data.tar.gz: 0fe00a99304f4b51827568a00a57f6c58495ba57588a412587a846437db7c42056644591c70e0d84e519c9b95204dcce36e2d433331bd8294746d857e37f14c4
|
@@ -104,10 +104,10 @@
|
|
104
104
|
<nav class="paginator">
|
105
105
|
<ul class="pagination raised-z0">
|
106
106
|
|
107
|
-
<li class="page-item"><a class="page-link
|
108
|
-
<li class="page-item"><a class="page-link
|
109
|
-
<!-- li class="page-item"><a class="page-link
|
110
|
-
<li class="page-item"><a class="page-link
|
107
|
+
<li class="page-item"><a class="page-link" href="{{category_view}}" title="View by Category">By Category</a></li>
|
108
|
+
<li class="page-item"><a class="page-link" href="{{date_view}}" title="View by Date">By Date</a></li>
|
109
|
+
<!-- li class="page-item"><a class="page-link" href="{{tag_view}}" title="View by Tag">By Tag</a></li -->
|
110
|
+
<li class="page-item"><a class="page-link" href="{{all_view}}" title="View All">All Posts</a></li>
|
111
111
|
|
112
112
|
</ul>
|
113
113
|
</nav> <!-- end paginator -->
|
@@ -133,8 +133,30 @@
|
|
133
133
|
<h2 id="previewer" class="mt-4">Preview</h2>
|
134
134
|
</div>
|
135
135
|
|
136
|
-
{%
|
137
|
-
|
136
|
+
{% if paginator.total_pages > 1 %}
|
137
|
+
<nav class="paginator mb-4">
|
138
|
+
<ul class="pagination raised-z0">
|
139
|
+
{% if paginator.previous_page %}
|
140
|
+
<li class="page-item">
|
141
|
+
<a class="page-link" href="{{ paginator.previous_page_path }}#article_navigator">Newer Posts</a>
|
142
|
+
</li>
|
143
|
+
{% else %}
|
144
|
+
<li class="page-item disabled"><a href="#" class="page-link">First Page</a></li>
|
145
|
+
{% endif %}
|
146
|
+
|
147
|
+
{% if paginator.next_page %}
|
148
|
+
<li class="page-item">
|
149
|
+
<a class="page-link" href="{{ paginator.next_page_path }}#article_navigator">Older Posts</a>
|
150
|
+
</li>
|
151
|
+
{% else %}
|
152
|
+
<li class="page-item disabled"><a href="#" class="page-link">Last Page</a></li>
|
153
|
+
{% endif %}
|
154
|
+
</ul>
|
155
|
+
</nav>
|
156
|
+
{% endif %}
|
157
|
+
|
158
|
+
{% comment %} Old (defect) preview paginator
|
159
|
+
----------------------------------------------------------------
|
138
160
|
{% if paginator.total_pages > 1 %}
|
139
161
|
<!-- nav class="paginator ml-3" -->
|
140
162
|
<nav class="paginator">
|
@@ -142,26 +164,27 @@
|
|
142
164
|
{% if paginator.previous_page %}
|
143
165
|
{% if paginator.previous_page > 1 %}
|
144
166
|
{% capture page_link %}{{paginator.previous_page_path}}#previewer{% endcapture %}
|
145
|
-
<li class="page-item"><a href="#" class="page-link
|
167
|
+
<li class="page-item"><a href="#" class="page-link" href="{{page_link}}" title="Previous page">Previous</a></li>
|
146
168
|
{% else %}
|
147
169
|
{% comment %} Back to FIRST page {% endcomment %}
|
148
170
|
{% assign navigator = page.url | remove_first:'page2/index.html' %}
|
149
171
|
{% capture page_link %}{{navigator}}#previewer{% endcapture %}
|
150
|
-
<li class="page-item"><a href="#" class="page-link
|
172
|
+
<li class="page-item"><a href="#" class="page-link" href="{{page_link}}" title="First page">Previous</a></li>
|
151
173
|
{% endif %}
|
152
174
|
{% else %}
|
153
|
-
<li class="page-item disabled"><a href="#" class="page-link
|
175
|
+
<li class="page-item disabled"><a href="#" class="page-link">First</a></li>
|
154
176
|
{% endif %}
|
155
177
|
|
156
178
|
{% if paginator.next_page %}
|
157
179
|
{% capture page_link %}{{paginator.next_page_path}}#previewer{% endcapture %}
|
158
|
-
<li class="page-item"><a class="page-link
|
180
|
+
<li class="page-item"><a class="page-link" href="{{page_link}}" title="Next page">Next</a></li>
|
159
181
|
{% else %}
|
160
|
-
<li class="page-item disabled"><a href="#" class="page-link
|
182
|
+
<li class="page-item disabled"><a href="#" class="page-link">Last</a>
|
161
183
|
{% endif %}
|
162
184
|
</ul>
|
163
185
|
</nav>
|
164
186
|
{% endif %}
|
187
|
+
---------------------------------------------------------------- {% endcomment %}
|
165
188
|
|
166
189
|
<!-- div class="view-description ml-3 mb-3" -->
|
167
190
|
<div class="view-description mb-3">
|
@@ -246,5 +269,4 @@
|
|
246
269
|
<!-- /div --> <!-- end row -->
|
247
270
|
<!-- /div --> <!-- end container -->
|
248
271
|
|
249
|
-
|
250
272
|
<!-- [INFO ] [j1.layout.content_generator_blog.html ] [ end content ] -->
|
@@ -77,8 +77,8 @@
|
|
77
77
|
------------------------------------------------------------------------ {% endcomment %}
|
78
78
|
{% if page.series %}
|
79
79
|
<header class="bmd-layout-header">
|
80
|
-
<!--
|
81
|
-
<div class="navbar navbar-dark bg-primary raised-z2">
|
80
|
+
<!-- jadams, 2021-02-28 added mb-3 to the navbar -->
|
81
|
+
<div class="navbar navbar-dark bg-primary raised-z2 mb-3">
|
82
82
|
<button class="bmd-drawer drawer-toggler animated fadeIn" type="button" data-toggle="drawer" data-target="#post_navigator">
|
83
83
|
<span class="mdi mdi-menu mdi-2x"></span>
|
84
84
|
</button>
|
@@ -90,11 +90,13 @@
|
|
90
90
|
</div>
|
91
91
|
</header>
|
92
92
|
|
93
|
-
|
93
|
+
<!-- jadams, 2021-02-28: added bmd-drawer-overlay to close nav -->
|
94
|
+
<!-- by click on overflow (as well as by toggle button) -->
|
95
|
+
<nav class="nav bmd-layout-container bmd-drawer-overlay custom-size-350 bmd-drawer-f-l">
|
94
96
|
<!-- Drawer content -->
|
95
97
|
<div id="post_navigator" class="bmd-layout-drawer bg-faded">
|
96
|
-
<!--
|
97
|
-
|
98
|
+
<!-- jadams, 2021-02-28: disabled header -->
|
99
|
+
<!-- header><a class="navbar-brand mb-3">{{page.title}}</a></header -->
|
98
100
|
<!-- Series Navigator -->
|
99
101
|
{% comment %}{% include {{create_series_header}} page=page post=post readmore=page.readmore %}{% endcomment %}
|
100
102
|
{% include {{create_series_header}} page=page post=post readmore=false %}
|
@@ -173,9 +173,9 @@
|
|
173
173
|
{% if brand_position == "left" %}
|
174
174
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place brand image to the: left ] -->
|
175
175
|
{% if site.brand.image %}
|
176
|
-
<a id="navbar-brand" class="navbar-brand"> <img src="{{ site.data.j1_config.image_path }}/{{ site.brand.image }}" height="{{ site.brand.image_height }}" alt="{{ site.brand.text }}"></a>
|
176
|
+
<a href="#" id="navbar-brand" class="navbar-brand"> <img src="{{ site.data.j1_config.image_path }}/{{ site.brand.image }}" height="{{ site.brand.image_height }}" alt="{{ site.brand.text }}"></a>
|
177
177
|
{% else %}
|
178
|
-
<a id="navbar-brand" class="navbar-brand"> <b><font color="{{site.brand.text_color}}">{{ site.brand.text }}</font></b></a>
|
178
|
+
<a href="#" id="navbar-brand" class="navbar-brand"> <b><font color="{{site.brand.text_color}}">{{ site.brand.text }}</font></b></a>
|
179
179
|
{% endif %}
|
180
180
|
<button id="navbar-toggler" type="button" class="navigator navbar-toggler animated fadeIn" data-toggle="collapse" data-target="#{{nav_menu_id}}" aria-controls="{{nav_menu_id}}" aria-expanded="false" aria-label="Toggle navigation">
|
181
181
|
<i class="mdi mdi-menu mdi-48px"></i>
|
@@ -183,9 +183,9 @@
|
|
183
183
|
{% elsif brand_position == "right" %}
|
184
184
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place brand to the: right ] -->
|
185
185
|
{% if site.brand.image %}
|
186
|
-
<a id="navbar-brand" class="navbar-brand"> <img src="{{ site.data.j1_config.image_path }}/{{ site.brand.image }}" height="{{ site.brand.image_height }}" alt="{{ site.brand.text }}"></a>
|
186
|
+
<a href="#" id="navbar-brand" class="navbar-brand"> <img src="{{ site.data.j1_config.image_path }}/{{ site.brand.image }}" height="{{ site.brand.image_height }}" alt="{{ site.brand.text }}"></a>
|
187
187
|
{% else %}
|
188
|
-
<a id="navbar-brand" class="navbar-brand"> <b><font color="{{site.brand.text_color}}">{{ site.brand.text }}</font></b></a>
|
188
|
+
<a href="#" id="navbar-brand" class="navbar-brand"> <b><font color="{{site.brand.text_color}}">{{ site.brand.text }}</font></b></a>
|
189
189
|
{% endif %}
|
190
190
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place mobile menu button to the: left ] -->
|
191
191
|
<button id="mmenu-button" type="button" class="navigator navbar-toggler animated fadeIn" data-toggle="collapse" data-target="#{{nav_menu_id}}" aria-controls="{{nav_menu_id}}" aria-expanded="false" aria-label="Toggle navigation">
|
@@ -194,9 +194,9 @@
|
|
194
194
|
{% else %}
|
195
195
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place brand to default position: left ] -->
|
196
196
|
{% if site.brand.image %}
|
197
|
-
<a id="navbar-brand" class="navbar-brand"> <img src="{{ site.data.j1_config.image_path }}/{{ site.brand.image }}" height="{{ site.brand.image_height }}" alt="{{ site.brand.text }}"></a>
|
197
|
+
<a href="#" id="navbar-brand" class="navbar-brand"> <img src="{{ site.data.j1_config.image_path }}/{{ site.brand.image }}" height="{{ site.brand.image_height }}" alt="{{ site.brand.text }}"></a>
|
198
198
|
{% else %}
|
199
|
-
<a id="navbar-brand" class="navbar-brand"> <b><font color="{{site.brand.text_color}}">{{ site.brand.text }}</font></b></a>
|
199
|
+
<a href="#" id="navbar-brand" class="navbar-brand"> <b><font color="{{site.brand.text_color}}">{{ site.brand.text }}</font></b></a>
|
200
200
|
{% endif %}
|
201
201
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place menu toggler to the: right ] -->
|
202
202
|
<button id="navbar-toggler" type="button" class="navigator navbar-toggler animated fadeIn" data-toggle="collapse" data-target="#{{nav_menu_id}}" aria-controls="{{nav_menu_id}}" aria-expanded="false" aria-label="Toggle navigation">
|
@@ -75,7 +75,7 @@
|
|
75
75
|
{% endfor %}
|
76
76
|
|
77
77
|
{% if button_href and button_target %}
|
78
|
-
{% capture bs_button_html %}<a href="{{button_href}}" target="{{ button_target }}" class="{{button_class}}" style="{{button_style}}"><i class="{{icon_family}} {{icon_family}}-{{button_icon}} {{icon_family}}-{{button_icon_size}} {{icon_family}}-{{button_icon_color}} mr-1"></i> {{button_text}} </a>{% endcapture %}
|
78
|
+
{% capture bs_button_html %}<a href="{{button_href}}" target="{{ button_target }}" rel="noopener" class="{{button_class}}" style="{{button_style}}"><i class="{{icon_family}} {{icon_family}}-{{button_icon}} {{icon_family}}-{{button_icon_size}} {{icon_family}}-{{button_icon_color}} mr-1"></i> {{button_text}} </a>{% endcapture %}
|
79
79
|
{% elsif button_href %}
|
80
80
|
{% capture bs_button_html %}<a href="{{button_href}}" class="{{button_class}}" style="{{button_style}}"><i class="{{icon_family}} {{icon_family}}-{{button_icon}} {{icon_family}}-{{button_icon_size}} {{icon_family}}-{{button_icon_color}} mr-1"></i> {{button_text}} </a>{% endcapture %}
|
81
81
|
{% else %}
|
@@ -52,6 +52,7 @@
|
|
52
52
|
{% capture open %}
|
53
53
|
<div id="post_series">
|
54
54
|
<!-- div class="series-navigator ml-3" -->
|
55
|
+
<!-- jadams, 2021-02-28: added ml-3 -->
|
55
56
|
<div class="series-navigator">
|
56
57
|
<div class="container content series-navigation">
|
57
58
|
|
@@ -78,6 +79,7 @@
|
|
78
79
|
</div>
|
79
80
|
|
80
81
|
<!-- div class="col-xs-12 col-md-12 col-lg-12 mt-2" -->
|
82
|
+
<!-- jadams, 2021-02-28: added mr-3 -->
|
81
83
|
<div class="mt-2">
|
82
84
|
<h5 class="notoc series-exerpt-title">{{excerpt_title}}</h5>
|
83
85
|
<!-- div class="series-exerpt mr-3" -->
|
data/assets/data/authclient.html
CHANGED
@@ -187,7 +187,7 @@ regenerate: true
|
|
187
187
|
{% if provider == 'github' and auth_github_enabled %}
|
188
188
|
<li class="nav-item">
|
189
189
|
<a class="nav-link{{active_flag}}" href="#h-tabs-{{ auth_github_id }}" role="tab" data-toggle="tab" aria-expanded="false" aria-selected="true">
|
190
|
-
<i class="mdi mdi-github
|
190
|
+
<i class="mdi mdi-github mt-1 mb-2"></i> {{ auth_github_title }}
|
191
191
|
</a>
|
192
192
|
</li>
|
193
193
|
{% endif %}
|
data/assets/data/carousel.json
CHANGED
@@ -71,7 +71,7 @@ regenerate: true
|
|
71
71
|
{% endfor %}
|
72
72
|
{% endif %}
|
73
73
|
"img" : "{{ image_full_path }}",
|
74
|
-
"alt" : "
|
74
|
+
"alt" : "Slider Image {{ forloop.index }}"{% if item.show.links %},{% endif %}
|
75
75
|
{% if item.show.links %}
|
76
76
|
{% for link in item.show.links %}
|
77
77
|
{% if forloop.index == image_no %}
|
data/assets/data/fam.html
CHANGED
@@ -100,10 +100,10 @@ regenerate: true
|
|
100
100
|
<div id="{{menu.id}}">
|
101
101
|
<div class="fam-btn" style="display: none">
|
102
102
|
<!-- [DEBUG ] [j1.modules.fam.html ] [jadams, 2020-11-15: set href|link text (Google optimisation)] -->
|
103
|
-
<a id="{{menu.id}}_button"
|
103
|
+
<a href="#void" id="{{menu.id}}_button" class="btn-fab-floating btn-large btn-{{menu.color}} raised-z{{fam_options.raised_level}}"><i id="fam-icon" class="mdi mdi-{{menu.icon}}"></i>FAM button</a>
|
104
104
|
<ul id="{{menu.id}}_items">
|
105
105
|
{% for item in menu.items %} {% if item.enabled %}
|
106
|
-
<li><a id="{{item.id}}"
|
106
|
+
<li><a href="#void" id="{{item.id}}" class="btn-fab-floating btn-{{item.color}} raised-z{{fam_options.raised_level}}" style="display: none"><i id="fam-icon" class="mdi mdi-{{item.icon}} mdi-{{item.icon_properties}}"></i>{{item.id}}</a></li>
|
107
107
|
{% endif %} {% endfor %}
|
108
108
|
</ul>
|
109
109
|
</div>
|
@@ -0,0 +1,505 @@
|
|
1
|
+
---
|
2
|
+
regenerate: true
|
3
|
+
---
|
4
|
+
|
5
|
+
{% capture cache %}
|
6
|
+
|
7
|
+
{% comment %}
|
8
|
+
# -----------------------------------------------------------------------------
|
9
|
+
# ~/assets/data/menu.html
|
10
|
+
# Liquid procedure to generate HTML portion of the main menu
|
11
|
+
# for the desktop version
|
12
|
+
# NOTE: Loaded dynamically by J1 NAV Manager module (AJAX)
|
13
|
+
#
|
14
|
+
# Product/Info:
|
15
|
+
# https://jekyll.one
|
16
|
+
#
|
17
|
+
# Copyright (C) 2021 Juergen Adams
|
18
|
+
#
|
19
|
+
# J1 Template is licensed under the MIT License.
|
20
|
+
# See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
|
21
|
+
# -----------------------------------------------------------------------------
|
22
|
+
# Test data:
|
23
|
+
# {{ variable | debug }}
|
24
|
+
# -----------------------------------------------------------------------------
|
25
|
+
{% endcomment %}
|
26
|
+
|
27
|
+
{% comment %} Liquid procedures
|
28
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
29
|
+
{% capture select_color %}themes/{{site.template.name}}/procedures/global/select_color.proc{% endcapture %}
|
30
|
+
{% capture select_icon_size %}themes/{{site.template.name}}/procedures/global/select_icon_size.proc{% endcapture %}
|
31
|
+
|
32
|
+
|
33
|
+
{% comment %} Liquid var initialization
|
34
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
35
|
+
|
36
|
+
{% comment %} Set config files
|
37
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
38
|
+
{% assign template_config = site.data.j1_config %}
|
39
|
+
{% assign modules = site.data.modules %}
|
40
|
+
|
41
|
+
{% comment %} Set config data
|
42
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
43
|
+
{% assign environment = site.environment %}
|
44
|
+
|
45
|
+
{% assign navigator_settings = modules.navigator.settings %}
|
46
|
+
{% assign navigator_defaults = modules.defaults.navigator.defaults %}
|
47
|
+
{% assign navigator_menu_config = modules.navigator_menu %}
|
48
|
+
|
49
|
+
{% assign themer_defaults = modules.defaults.themer.defaults %}
|
50
|
+
{% assign themer_settings = modules.themer.settings %}
|
51
|
+
|
52
|
+
{% assign nav_bar_defaults = navigator_defaults.nav_bar %}
|
53
|
+
{% assign nav_bar_settings = navigator_settings.nav_bar %}
|
54
|
+
{% assign nav_menu_defaults = navigator_defaults.nav_menu %}
|
55
|
+
{% assign nav_menu_settings = navigator_settings.nav_menu %}
|
56
|
+
|
57
|
+
{% comment %} Set config options
|
58
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
59
|
+
{% assign themer_options = themer_defaults | merge: themer_settings %}
|
60
|
+
{% assign nav_bar_options = nav_bar_defaults | merge: nav_bar_settings %}
|
61
|
+
{% assign nav_menu_options = nav_menu_defaults | merge: nav_menu_settings %}
|
62
|
+
{% assign theme_preview = themer_options.preview_page %}
|
63
|
+
{% assign nav_menu_id = nav_menu_options.id %}
|
64
|
+
|
65
|
+
{% assign production = false %}
|
66
|
+
{% if environment == 'prod' or environment == 'production' %}
|
67
|
+
{% assign production = true %}
|
68
|
+
{% endif %}
|
69
|
+
|
70
|
+
{% assign ext = '' %}
|
71
|
+
{% if site.permalink == 'none' %}
|
72
|
+
{% assign ext = '.html' %}
|
73
|
+
{% endif %}
|
74
|
+
|
75
|
+
<!-- [DEBUG ] [j1.modules.navigator.menu.html ] [detect bs type] -->
|
76
|
+
{% assign bs_type = 'bmd4' %}
|
77
|
+
{% if navigator_settings.bs_type == 'bs4' %}
|
78
|
+
{% assign bs_type = 'bs4' %}
|
79
|
+
{% endif %}
|
80
|
+
|
81
|
+
{% if bs_type == 'bmd4' %}
|
82
|
+
{% assign dropdown_collapse = 'collapse' %}
|
83
|
+
{% elsif bs_type == 'bs4' %}
|
84
|
+
{% assign dropdown_collapse = 'fake-class collapse' %}
|
85
|
+
{% endif %}
|
86
|
+
|
87
|
+
<!-- [DEBUG ] [j1.modules.navigator.menu.html ] [bs type detected: {{bs_type}}] -->
|
88
|
+
|
89
|
+
{% comment %} Set navBarOptions
|
90
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
91
|
+
{% assign nav_bar_position = nav_bar_options.position %}
|
92
|
+
|
93
|
+
{% comment %} Set navMenuOptions
|
94
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
95
|
+
{% assign nav_menu_animation = nav_menu_options.dropdown_animate %}
|
96
|
+
{% if nav_menu_animation %}
|
97
|
+
{% assign animate_in = nav_menu_options.dropdown_animate_in %}
|
98
|
+
{% assign animate_out = nav_menu_options.dropdown_animate_out %}
|
99
|
+
{% endif %}
|
100
|
+
|
101
|
+
{% comment %} Set base nav features
|
102
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
103
|
+
{% capture nav_menu_position %}dropdown-menu-{{nav_bar_position}}{% endcapture %}
|
104
|
+
{% unless nav_menu_animation %} {% assign nav_menu_animation = false %} {% endunless %}
|
105
|
+
|
106
|
+
<!-- [DEBUG ] [j1.modules.navigator.menu.html ] [initialize default menu properties] -->
|
107
|
+
{% if nav_menu_options.raised_level %}
|
108
|
+
{% assign raised_level = nav_menu_options.raised_level %}
|
109
|
+
{% else %}
|
110
|
+
{% assign raised_level = 0 %}
|
111
|
+
{% endif %}
|
112
|
+
|
113
|
+
{% comment %} Set base icons and sizes
|
114
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
115
|
+
<!-- [DEBUG ] [j1.modules.navigator.menu.html ] [initialize default menu icon properties] -->
|
116
|
+
{% assign nav_menu_icon_family = nav_menu_options.icon_family %}
|
117
|
+
{% assign nav_menu_icon_style = nav_menu_options.icon_style %}
|
118
|
+
{% assign nav_menu_icon_color = nav_menu_options.icon_color %}
|
119
|
+
{% assign nav_menu_icon_size = nav_menu_options.icon_size %}
|
120
|
+
|
121
|
+
{% assign icon_family = nav_menu_icon_family | strip | downcase %}
|
122
|
+
|
123
|
+
{% if icon_family == 'fontawesome' or icon_family == 'fontawesome5' %}
|
124
|
+
{% assign nav_menu_icon_family = 'fa' %}
|
125
|
+
{% assign nav_menu_icon_style = nav_menu_icon_style %}
|
126
|
+
{% elsif icon_family == 'mdi' %}
|
127
|
+
{% assign nav_menu_icon_family = 'mdi' %}
|
128
|
+
{% assign nav_menu_icon_style = nav_menu_icon_style %}
|
129
|
+
{% else %}
|
130
|
+
{% assign nav_menu_icon_family = 'mdi' %}
|
131
|
+
{% assign nav_menu_icon_style = nav_menu_icon_style %}
|
132
|
+
{% endif %}
|
133
|
+
|
134
|
+
{% include {{select_color}} color=nav_menu_icon_color fallback="#9E9E9E" %}
|
135
|
+
{% assign nav_menu_icon_color = color %}
|
136
|
+
|
137
|
+
{% include {{select_icon_size}} family=nav_menu_icon_family size=nav_menu_icon_size %}
|
138
|
+
{% assign nav_menu_icon_size = size %}
|
139
|
+
|
140
|
+
{% comment %} Main
|
141
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
142
|
+
|
143
|
+
<!-- [DEBUG ] [j1.modules.navigator.menu.html ] [collect all nav links for the navigation bar (navbar)] -->
|
144
|
+
<!-- div id="{{nav_menu_id}}" class="{{dropdown_collapse}}" -->
|
145
|
+
<!-- div class="{{dropdown_collapse}}" -->
|
146
|
+
{% if nav_menu_animation %}
|
147
|
+
<ul id="desktop_menu" class="nav navbar-nav navigator navbar-{{nav_bar_position}}" data-in="{{animate_in}}" data-out="{{animate_out}}">
|
148
|
+
{% else %}
|
149
|
+
<ul id="desktop_menu" class="nav navbar-nav navigator navbar-{{nav_bar_position}}" data-in="fadeIn" data-out="fadeOut">
|
150
|
+
{% endif %}
|
151
|
+
|
152
|
+
{% for menu in navigator_menu_config %}
|
153
|
+
|
154
|
+
{% comment %} Identify the menu (item) type
|
155
|
+
---------------------------------------------------------------------------- {% endcomment %}
|
156
|
+
|
157
|
+
{% if menu.sublevel %}
|
158
|
+
{% assign menu_type = 'sublevel_menu' %}
|
159
|
+
{% elsif menu.megamenu %}
|
160
|
+
{% assign menu_type = 'mega_menu' %}
|
161
|
+
{% elsif menu.auth_client %}
|
162
|
+
{% assign menu_type = 'auth_client' %}
|
163
|
+
{% elsif menu.theme_select %}
|
164
|
+
{% assign menu_type = 'theme_select' %}
|
165
|
+
{% elsif menu.sublevel == null and menu.megamenu == null and menu.login_menu == null and menu.theme_select == null %}
|
166
|
+
{% assign menu_type = 'top_level_item' %}
|
167
|
+
{% endif %}
|
168
|
+
|
169
|
+
|
170
|
+
{% comment %} Process all menu sections
|
171
|
+
---------------------------------------------------------------------------- {% endcomment %}
|
172
|
+
|
173
|
+
{% case menu_type %}
|
174
|
+
|
175
|
+
{% comment %} Collect items having a SUB menue
|
176
|
+
---------------------------------------------------------------------------- {% endcomment %}
|
177
|
+
{% when 'sublevel_menu' %}
|
178
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [found menu-type: sub-menue] -->
|
179
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [submenu level 1 detected] -->
|
180
|
+
<li class="dropdown nav-item">
|
181
|
+
{% if menu.icon == null %}
|
182
|
+
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" data-hover="dropdown">{{ menu.item }}</a>
|
183
|
+
{% else %}
|
184
|
+
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" data-hover="dropdown"> <i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{menu.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i>{{ menu.item }}</a>
|
185
|
+
{% endif %}
|
186
|
+
|
187
|
+
<!-- jadams, 2017-11-24: (3) ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}" style="opacity: 1; display: none;" -->
|
188
|
+
<!-- ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}" style="display: none;" -->
|
189
|
+
|
190
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [submenu detected, SKIP scrollable-menu ] -->
|
191
|
+
<ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}">
|
192
|
+
|
193
|
+
{% comment %} ????
|
194
|
+
------------------------------------------------------------------------
|
195
|
+
{% if level_1.dropdown %}
|
196
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [submenu level detected, SKIP scrollable-menu: {{level_2.dropdown}} ] -->
|
197
|
+
<ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}" style="max-height: unset;">
|
198
|
+
{% else %}
|
199
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [ NO submenu level 3 found, SET scrollable-menu: {{level_2.dropdown}} ] -->
|
200
|
+
<ul class="dropdown-menu scrollable-menu {{nav_menu_position}} raised-z{{raised_level}}">
|
201
|
+
{% endif %}
|
202
|
+
------------------------------------------------------------------------ {% endcomment %}
|
203
|
+
|
204
|
+
{% for level_1 in menu.sublevel %}
|
205
|
+
{% if level_1.dropdown == null %}
|
206
|
+
{% if level_1.icon == null %}
|
207
|
+
{% if level_1.target == null %}
|
208
|
+
<li class="dropdown-item"><a href="{{ level_1.href }}{{ext}}">{{ level_1.title }}</a></li>
|
209
|
+
{% else %}
|
210
|
+
<li class="dropdown-item"><a href="{{ level_1.href }}{{ext}}" target="{{ level_1.target }}" rel="noopener">{{ level_1.title }}</a></li>
|
211
|
+
{% endif %}
|
212
|
+
{% else %}
|
213
|
+
{% if level_1.target == null %}
|
214
|
+
<li class="dropdown-item"><a href="{{ level_1.href }}{{ext}}"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{level_1.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{ level_1.title }}</a></li>
|
215
|
+
{% else %}
|
216
|
+
<li class="dropdown-item"><a href="{{ level_1.href }}{{ext}}" target="{{ level_1.target }}" rel="noopener"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{level_1.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{ level_1.title }}</a></li>
|
217
|
+
{% endif %}
|
218
|
+
{% endif %}
|
219
|
+
{% endif %}
|
220
|
+
{% if level_1.divider %} <li class="divider"></li> {% endif %}
|
221
|
+
{% if level_1.dropdown %}
|
222
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [submenu level 2 (dropdown) detected ] -->
|
223
|
+
<li class="dropdown nav-item nav-sub-item">
|
224
|
+
{% if level_1.icon == null %}
|
225
|
+
<a href="#" class="dropdown-toggle" data-toggle="dropdown">{{ level_1.title }}</a>
|
226
|
+
{% else %}
|
227
|
+
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{level_1.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{ level_1.title }}</a>
|
228
|
+
{% endif %}
|
229
|
+
<!-- jadams, 2017-11-24: (4) ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}" style="opacity: 1;" -->
|
230
|
+
|
231
|
+
{% comment %} ????
|
232
|
+
-------------------------------------------------------------------
|
233
|
+
{% if level_1.dropdown %}
|
234
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [submenu level 2 detected, SKIP scrollable-menu: {{level_2.dropdown}} ] -->
|
235
|
+
<ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}" style="max-height: unset;">
|
236
|
+
{% else %}
|
237
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [ NO submenu level 3 found, SET scrollable-menu: {{level_2.dropdown}} ] -->
|
238
|
+
<ul class="dropdown-menu scrollable-menu {{nav_menu_position}} raised-z{{raised_level}}">
|
239
|
+
{% endif %}
|
240
|
+
------------------------------------------------------------------ {% endcomment %}
|
241
|
+
|
242
|
+
<ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}">
|
243
|
+
{% for level_2 in level_1.dropdown %}
|
244
|
+
{% if level_2.dropdown == null %}
|
245
|
+
{% if level_2.icon == null %}
|
246
|
+
{% if level_2.target == null %}
|
247
|
+
<li class="dropdown-item"><a href="{{ level_2.href }}{{ext}}">{{ level_2.title }}</a></li>
|
248
|
+
{% else %}
|
249
|
+
<li class="dropdown-item"><a href="{{ level_2.href }}{{ext}}" target="{{ level_2.target }}" rel="noopener">{{ level_2.title }}</a></li>
|
250
|
+
{% endif %}
|
251
|
+
{% else %}
|
252
|
+
{% if level_2.target == null %}
|
253
|
+
<li class="dropdown-item"><a href="{{ level_2.href }}{{ext}}"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{level_2.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{ level_2.title }}</a></li>
|
254
|
+
{% else %}
|
255
|
+
<li class="dropdown-item"><a href="{{ level_2.href }}{{ext}}" target="{{ level_2.target }}" rel="noopener"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{level_2.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{ level_2.title }}</a></li>
|
256
|
+
{% endif %}
|
257
|
+
{% endif %}
|
258
|
+
{% endif %}
|
259
|
+
{% if level_2.divider %} <li class="divider"></li> {% endif %}
|
260
|
+
{% if level_2.dropdown %}
|
261
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [submenu level 3 detected (last level supported)] -->
|
262
|
+
<li class="dropdown nav-item nav-sub-item">
|
263
|
+
{% if level_2.icon == null %}
|
264
|
+
<a href="#" class="dropdown-toggle" data-toggle="dropdown">{{ level_2.title }}</a>
|
265
|
+
{% else %}
|
266
|
+
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{level_2.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{ level_2.title }}</a>
|
267
|
+
{% endif %}
|
268
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [submenu level 3, SET scrollable-menu: {{level_2.dropdown}} ] -->
|
269
|
+
<!-- ul class="dropdown-menu scrollable-menu {{nav_menu_position}} raised-z{{raised_level}}" -->
|
270
|
+
<ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}">
|
271
|
+
{% for level_3 in level_2.dropdown %}
|
272
|
+
{% if level_2.icon == null %}
|
273
|
+
{% if level_3.target == null %}
|
274
|
+
<li class="dropdown-item"><a href="{{ level_3.href }}{{ext}}">{{ level_3.title }}</a></li>
|
275
|
+
{% else %}
|
276
|
+
<li class="dropdown-item"><a href="{{ level_3.href }}{{ext}}" target="{{ level_3.target }}" rel="noopener">{{ level_3.title }}</a></li>
|
277
|
+
{% endif %}
|
278
|
+
{% else %}
|
279
|
+
{% if level_3.target == null %}
|
280
|
+
<li class="dropdown-item"><a href="{{ level_3.href }}{{ext}}"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{level_3.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{ level_3.title }}</a></li>
|
281
|
+
{% else %}
|
282
|
+
<li class="dropdown-item"><a href="{{ level_3.href }}{{ext}}" target="{{ level_3.target }}" rel="noopener"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{level_3.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{ level_3.title }}</a></li>
|
283
|
+
{% endif %}
|
284
|
+
{% endif %}
|
285
|
+
{% if level_3.divider %} <li class="divider"></li> {% endif %}
|
286
|
+
{% endfor %} <!-- [INFO ] [j1.modules.navigator.menu.html ] [end processing: level 3] -->
|
287
|
+
</ul>
|
288
|
+
</li>
|
289
|
+
{% endif %}
|
290
|
+
{% endfor %} <!-- [INFO ] [j1.modules.navigator.menu.html ] [end processing: level 2] -->
|
291
|
+
</ul>
|
292
|
+
</li>
|
293
|
+
{% endif %}
|
294
|
+
{% endfor %} <!-- [INFO ] [j1.modules.navigator.menu.html ] [end processing: level 1] -->
|
295
|
+
</ul>
|
296
|
+
</li>
|
297
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [reset menu_type for next loop] -->
|
298
|
+
{% assign menu_type = '' %}
|
299
|
+
|
300
|
+
|
301
|
+
{% comment %} Collect items having a MEGA menu
|
302
|
+
---------------------------------------------------------------------------- {% endcomment %}
|
303
|
+
{% when 'mega_menu' %}
|
304
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [found menu-type: megamenu-menue] -->
|
305
|
+
<!-- calculate size of mm_columns -->
|
306
|
+
{% assign columns = menu.megamenu | size %}
|
307
|
+
{% assign columns_width_md = 12 | divided_by:columns %}
|
308
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [Calculated size of mm_columns: {{ columns_width_md }}] -->
|
309
|
+
|
310
|
+
<li class="dropdown nav-item megamenu-fw">
|
311
|
+
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown">{{menu.item}} </a>
|
312
|
+
<ul class="dropdown-menu megamenu-content raised-z{{raised_level}}" style="max-height: {{nav_menu_options.max_height}}px; overflow-x: hidden; overflow-y: auto;" role="menu">
|
313
|
+
<li>
|
314
|
+
<div class="row">
|
315
|
+
{% for megabox in menu.megamenu %}
|
316
|
+
<div class="col-menu col-md-{{columns_width_md}} col-sm-6">
|
317
|
+
{% if megabox.icon == null %}
|
318
|
+
<div class="post-headline mt-2 mb-3">
|
319
|
+
<h2 class="title" style="font-size:1.25em !important">{{megabox.title}}</h2>
|
320
|
+
</div>
|
321
|
+
{% else %}
|
322
|
+
<div class="post-headline mt-2 mb-3">
|
323
|
+
<h2 class="title" style="font-size:1.25em !important"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{megabox.icon}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{megabox.title}}</h2>
|
324
|
+
</div>
|
325
|
+
{% endif %}
|
326
|
+
<div class="content">
|
327
|
+
<ul class="menu-col">
|
328
|
+
{% for links in megabox.column %}
|
329
|
+
{% if links.icon == null %}
|
330
|
+
<li class="dropdown-megamenu-item"><a href="{{links.href}}{{ext}}" target="{{ links.target }}" rel="noopener">{{links.title}}</a></li>
|
331
|
+
{% else %}
|
332
|
+
<li class="dropdown-megamenu-item"><a href="{{links.href}}{{ext}}" target="{{ links.target }}" rel="noopener"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{links.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{links.title}}</a></li>
|
333
|
+
{% endif %}
|
334
|
+
{% endfor %}
|
335
|
+
</ul>
|
336
|
+
</div>
|
337
|
+
</div>
|
338
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [megamenu-menue: end megabox] -->
|
339
|
+
{% endfor %}
|
340
|
+
</div>
|
341
|
+
</li>
|
342
|
+
</ul>
|
343
|
+
</li>
|
344
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [megamenu-menue: end mega-menu] -->
|
345
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [reset menu_type for next loop] -->
|
346
|
+
{% assign menu_type = '' %}
|
347
|
+
|
348
|
+
|
349
|
+
{% comment %} Collect TOP-LEVEL items (NO sub-menu)
|
350
|
+
-------------------------------------------------------------------------- {% endcomment %}
|
351
|
+
{% when 'top_level_item' %}
|
352
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [found menu-type: menu-top-level-only] -->
|
353
|
+
{% if menu.icon == null %}
|
354
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [no icon for menu-item found -->
|
355
|
+
{% if menu.target == null %}
|
356
|
+
<li class="nav-item"> <a class="nav-link" href="{{ menu.href }}{{ext}}">{{ menu.item }}</a> </li>
|
357
|
+
{% else %}
|
358
|
+
<li class="nav-item"> <a class="nav-link" href="{{ menu.href }}{{ext}}" target="{{ menu.target }}" rel="noopener">{{ menu.item }}</a> </li>
|
359
|
+
{% endif %}
|
360
|
+
{% elsif menu.icon %}
|
361
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [no icon for menu-item found -->
|
362
|
+
{% if menu.target == null %}
|
363
|
+
<li> <a class="nav-link" href="{{ menu.href }}{{ext}}"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{menu.icon}} {{nav_menu_icon_size}}" style="color:{{nav_menu_icon_color}}"></i> {{ menu.item }}</a> </li>
|
364
|
+
{% else %}
|
365
|
+
<li> <a class="nav-link" href="{{ menu.href }}{{ext}}" target="{{ menu.target }}" rel="noopener"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{menu.icon}} {{nav_menu_icon_size}}" style="color:{{nav_menu_icon_color}}"></i> {{ menu.item }}</a> </li>
|
366
|
+
{% endif %}
|
367
|
+
{% else %}
|
368
|
+
<!-- [FATAL ] [nav_menu.menu-top-level-only ] [processing menu item failed] -->
|
369
|
+
{% endif %}
|
370
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [menu-top-level-only: end menu] -->
|
371
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [reset menu_type for next loop] -->
|
372
|
+
{% assign menu_type = '' %}
|
373
|
+
|
374
|
+
|
375
|
+
{% comment %} Collect items having a LOGIN menu
|
376
|
+
------------------------------------------------------------------------ {% endcomment %}
|
377
|
+
{% when 'auth_client' %}
|
378
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [found menu-type: auth_client] -->
|
379
|
+
<li id="menuBarSignInOut" class="dropdown nav-item">
|
380
|
+
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" data-hover="dropdown">{{menu.item}} </a>
|
381
|
+
|
382
|
+
{% if nav_menu_animation %}
|
383
|
+
<!-- jadams, 2017-11-24: (1) ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}" style="opacity: 1; display: none;" -->
|
384
|
+
<ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}" style="display: none;">
|
385
|
+
<!-- ul class="dropdown-menu data-in="{{nav_menu_animation}}" data-out="{{nav_menu_animation}}" -->
|
386
|
+
{% else %}
|
387
|
+
<!-- jadams, 2017-11-24: (2) ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}" style="opacity: 1; display: none;" -->
|
388
|
+
<ul class="dropdown-menu {{nav_menu_position}} raised-z{{raised_level}}" style="display: none;">
|
389
|
+
{% endif %}
|
390
|
+
|
391
|
+
{% assign item_found = 'false' %}
|
392
|
+
{% for item in menu.auth_client %}
|
393
|
+
|
394
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [START: check signin] -->
|
395
|
+
{% if item.mode == 'signin' %}
|
396
|
+
<li class="dropdown-item">
|
397
|
+
<a href="#" data-toggle="modal" data-target="#modalOmniSignIn"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{item.icon}} {{nav_menu_icon_size}}" style="color:{{nav_menu_icon_color}}"></i>{{item.title}}</a>
|
398
|
+
</li>
|
399
|
+
{% assign item_found = 'true' %}
|
400
|
+
{% endif %}
|
401
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [END: check signin] -->
|
402
|
+
|
403
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [START: check signout] -->
|
404
|
+
{% if item.mode == 'signout' %}
|
405
|
+
<li class="dropdown-item">
|
406
|
+
<a href="#" data-toggle="modal" data-target="#modalOmniSignOut"><i class="{{nav_menu_icon_style}} {{nav_menu_icon_family}}-{{item.icon}} {{nav_menu_icon_size}}" style="color:{{nav_menu_icon_color}}"></i>{{item.title}}</a>
|
407
|
+
</li>
|
408
|
+
{% assign item_found = 'true' %}
|
409
|
+
{% endif %}
|
410
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [END: check signout] -->
|
411
|
+
|
412
|
+
{% if item_found == 'false' %}
|
413
|
+
<!-- [FATAL ] [j1.modules.navigator.menu.html ] [no valid menu item config found] -->
|
414
|
+
<li class="dropdown-item">
|
415
|
+
{% if item.title %}
|
416
|
+
<a href="#" >Invalid: {{item.title}}</a>
|
417
|
+
{% else %}
|
418
|
+
<a href="#" >Item invalid</a>
|
419
|
+
{% endif %}
|
420
|
+
</li>
|
421
|
+
{% endif %}
|
422
|
+
|
423
|
+
{% endfor %}
|
424
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [login_menu: end menu] -->
|
425
|
+
</ul>
|
426
|
+
</li>
|
427
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [reset menu_type for next loop] -->
|
428
|
+
{% assign menu_type = '' %}
|
429
|
+
|
430
|
+
{% comment %} Collect items having a THEMES menu
|
431
|
+
---------------------------------------------------------------------- {% endcomment %}
|
432
|
+
{% when 'theme_select' %}
|
433
|
+
{% if themer_options.enabled %}
|
434
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [found menu-type: theme_select] -->
|
435
|
+
<li class="dropdown nav-item">
|
436
|
+
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" data-hover="dropdown">{{menu.item}} </a>
|
437
|
+
{% if nav_menu_animation %}
|
438
|
+
<ul class="dropdown-menu raised-z{{raised_level}}">
|
439
|
+
<!-- ul class="dropdown-menu data-in="{{nav_menu_animation}}" data-out="{{nav_menu_animation}}" -->
|
440
|
+
{% else %}
|
441
|
+
<ul class="dropdown-menu raised-z{{raised_level}}">
|
442
|
+
{% endif %}
|
443
|
+
{% assign item_found = 'false' %}
|
444
|
+
{% for item in menu.theme_select %}
|
445
|
+
<!-- check for locally loaded J1 Themes -->
|
446
|
+
{% if item.local_themes and item.local_themes == 'enabled' %}
|
447
|
+
<li class="dropdown nav-item nav-sub-item">
|
448
|
+
<a href="#" class="dropdown-toggle" data-toggle="dropdown" data-hover="dropdown"><i class="dropdown {{nav_menu_icon_family}} {{nav_menu_icon_family}}-{{item.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{item.title}}</a>
|
449
|
+
<ul id="local_themes" class="dropdown-menu raised-z{{raised_level}}"></ul>
|
450
|
+
</li>
|
451
|
+
{% assign item_found = 'true' %}
|
452
|
+
{% endif %} <!-- end J1 theme selector -->
|
453
|
+
<!-- check for remotely loaded (BootSwatch) Themes -->
|
454
|
+
{% if item.bootswatch_themes and item.bootswatch_themes == 'enabled' %}
|
455
|
+
<li class="dropdown nav-item nav-sub-item">
|
456
|
+
<a href="#" class="dropdown-toggle" data-toggle="dropdown" data-hover="dropdown"><i class="dropdown {{nav_menu_icon_family}} {{nav_menu_icon_family}}-{{item.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{item.title}}</a>
|
457
|
+
<ul id="remote_themes" class="dropdown-menu scrollable-menu raised-z{{raised_level}}"></ul>
|
458
|
+
</li>
|
459
|
+
{% assign item_found = 'true' %}
|
460
|
+
{% endif %} <!-- end BootSwatch theme selector -->
|
461
|
+
{% if item.preview and item.preview == 'enabled' %}
|
462
|
+
<li class="dropdown-item">
|
463
|
+
<a href="{{ theme_preview }}" ><i class="dropdown {{nav_menu_icon_family}} {{nav_menu_icon_family}}-{{item.icon}} {{nav_menu_icon_size}} mr-2" style="color:{{nav_menu_icon_color}}"></i> {{item.title}}</a>
|
464
|
+
</li>
|
465
|
+
{% assign item_found = 'true' %}
|
466
|
+
{% endif %} <!-- end theme preview -->
|
467
|
+
<!-- fallback if no valid config found -->
|
468
|
+
{% if item_found == 'false' %}
|
469
|
+
<li>
|
470
|
+
{% if item.title %}
|
471
|
+
<a href="#" >Invalid: {{item.title}}</a>
|
472
|
+
{% else %}
|
473
|
+
<a href="#" >Item invalid</a>
|
474
|
+
{% endif %}
|
475
|
+
</li>
|
476
|
+
{% endif %} <!-- end fallback -->
|
477
|
+
{% endfor %}
|
478
|
+
</ul>
|
479
|
+
</li>
|
480
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [reset menu_type for next loop] -->
|
481
|
+
{% endif %}
|
482
|
+
{% assign menu_type = '' %}
|
483
|
+
|
484
|
+
|
485
|
+
{% comment %} Collect items failed
|
486
|
+
---------------------------------------------------------------------- {% endcomment %}
|
487
|
+
{% else %}
|
488
|
+
<!-- [FATAL ] [j1.modules.navigator.menu.html ] [detecting menu items|type failed] -->
|
489
|
+
{% assign menu_type = '' %}
|
490
|
+
|
491
|
+
{% endcase %}
|
492
|
+
|
493
|
+
{% endfor %}
|
494
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [nav_menu_settings: end menu] -->
|
495
|
+
</ul>
|
496
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [nav_menu_settings: end navbar] -->
|
497
|
+
<!-- [INFO ] [j1.modules.navigator.menu.html ] [nav_menu_settings: end processing] -->
|
498
|
+
{% endcapture %}
|
499
|
+
|
500
|
+
{% if production %}
|
501
|
+
{% capture _LINE_FEED %}{% endcapture %}{% if site.compress_html.ignore.envs contains jekyll.environment %}{{ cache | strip_html_comments }}{% else %}{% capture _content %}{{ cache | strip_html_comments }}{% endcapture %}{% assign _profile = site.compress_html.profile %}{% if site.compress_html.endings == "all" %}{% assign _endings = "html head body li dt dd p rt rp optgroup option colgroup caption thead tbody tfoot tr td th" | split: " " %}{% else %}{% assign _endings = site.compress_html.endings %}{% endif %}{% for _element in _endings %}{% capture _end %}</{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _end %}{% endfor %}{% if _profile and _endings %}{% assign _profile_endings = _content | size | plus: 1 %}{% endif %}{% for _element in site.compress_html.startings %}{% capture _start %}<{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _start %}{% endfor %}{% if _profile and site.compress_html.startings %}{% assign _profile_startings = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.comments == "all" %}{% assign _comments = "<!-- -->" | split: " " %}{% else %}{% assign _comments = site.compress_html.comments %}{% endif %}{% if _comments.size == 2 %}{% capture _comment_befores %}.{{ _content }}{% endcapture %}{% assign _comment_befores = _comment_befores | split: _comments.first %}{% for _comment_before in _comment_befores %}{% if forloop.first %}{% continue %}{% endif %}{% capture _comment_outside %}{% if _carry %}{{ _comments.first }}{% endif %}{{ _comment_before }}{% endcapture %}{% capture _comment %}{% unless _carry %}{{ _comments.first }}{% endunless %}{{ _comment_outside | split: _comments.last | first }}{% if _comment_outside contains _comments.last %}{{ _comments.last }}{% assign _carry = false %}{% else %}{% assign _carry = true %}{% endif %}{% endcapture %}{% assign _content = _content | remove_first: _comment %}{% endfor %}{% if _profile %}{% assign _profile_comments = _content | size | plus: 1 %}{% endif %}{% endif %}{% assign _pre_befores = _content | split: "<pre" %}{% assign _content = "" %}{% for _pre_before in _pre_befores %}{% assign _pres = _pre_before | split: "</pre>" %}{% assign _pres_after = "" %}{% if _pres.size != 0 %}{% if site.compress_html.blanklines %}{% assign _lines = _pres.last | split: _LINE_FEED %}{% capture _pres_after %}{% for _line in _lines %}{% assign _trimmed = _line | split: " " | join: " " %}{% if _trimmed != empty or forloop.last %}{% unless forloop.first %}{{ _LINE_FEED }}{% endunless %}{{ _line }}{% endif %}{% endfor %}{% endcapture %}{% else %}{% assign _pres_after = _pres.last | split: " " | join: " " %}{% endif %}{% endif %}{% capture _content %}{{ _content }}{% if _pre_before contains "</pre>" %}<pre{{ _pres.first }}</pre>{% endif %}{% unless _pre_before contains "</pre>" and _pres.size == 1 %}{{ _pres_after }}{% endunless %}{% endcapture %}{% endfor %}{% if _profile %}{% assign _profile_collapse = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.clippings == "all" %}{% assign _clippings = "html head title base link meta style body article section nav aside h1 h2 h3 h4 h5 h6 hgroup header footer address p hr blockquote ol ul li dl dt dd figure figcaption main div table caption colgroup col tbody thead tfoot tr td th" | split: " " %}{% else %}{% assign _clippings = site.compress_html.clippings %}{% endif %}{% for _element in _clippings %}{% assign _edges = " <e;<e; </e>;</e>;</e> ;</e>" | replace: "e", _element | split: ";" %}{% assign _content = _content | replace: _edges[0], _edges[1] | replace: _edges[2], _edges[3] | replace: _edges[4], _edges[5] %}{% endfor %}{% if _profile and _clippings %}{% assign _profile_clippings = _content | size | plus: 1 %}{% endif %}{{ _content }}{% if _profile %} <table id="compress_html_profile_{{ site.time | date: "%Y%m%d" }}" class="compress_html_profile"> <thead> <tr> <td>Step <td>Bytes <tbody> <tr> <td>raw <td>{{ cache | strip_html_comments | size }}{% if _profile_endings %} <tr> <td>endings <td>{{ _profile_endings }}{% endif %}{% if _profile_startings %} <tr> <td>startings <td>{{ _profile_startings }}{% endif %}{% if _profile_comments %} <tr> <td>comments <td>{{ _profile_comments }}{% endif %}{% if _profile_collapse %} <tr> <td>collapse <td>{{ _profile_collapse }}{% endif %}{% if _profile_clippings %} <tr> <td>clippings <td>{{ _profile_clippings }}{% endif %} </table>{% endif %}{% endif %}
|
502
|
+
{% else %}
|
503
|
+
{{ cache | pretty_print | remove:'<html><body>' | remove:'</body></html>' | strip_empty_lines }}
|
504
|
+
{% endif %}
|
505
|
+
{% assign cache = nil %}
|