j1-template 2020.0.2 → 2020.0.3
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/modules/navigator/generator.html +24 -18
- data/assets/data/menu.html +4 -4
- data/assets/data/mmenu.html +455 -0
- data/assets/themes/j1/core/css/bootstrap.css +116 -93
- data/assets/themes/j1/core/css/bootstrap.min.css +4 -4
- data/assets/themes/j1/core/css/theme_extensions.css +11 -22
- data/assets/themes/j1/core/css/theme_extensions.min.css +1 -1
- data/assets/themes/j1/core/css/uno.css +11 -22
- data/assets/themes/j1/core/css/uno.min.css +1 -1
- data/assets/themes/j1/core/css/vendor.css +130 -104
- data/assets/themes/j1/core/css/vendor.min.css +4 -4
- data/assets/themes/j1/core/js/template.js +296 -24
- data/assets/themes/j1/core/js/template.js.map +1 -1
- data/assets/themes/j1/core/js/template.min.js +1 -1
- data/lib/j1/version.rb +1 -1
- data/lib/j1_app/j1_auth_manager/auth_manager.rb +8 -0
- data/lib/starter_web/Gemfile +1 -1
- data/lib/starter_web/_config.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/navigator.yml +27 -4
- data/lib/starter_web/_data/modules/navigator.yml +7 -1
- data/lib/starter_web/_data/resources.yml +44 -5
- data/lib/starter_web/apps/public/{cc → cc/cc.yml} +0 -0
- data/lib/starter_web/apps/public/cc/index.adoc +107 -0
- data/lib/starter_web/assets/themes/j1/adapter/js/algolia.js +321 -0
- data/lib/starter_web/assets/themes/j1/adapter/js/mmenu.js +269 -0
- data/lib/starter_web/assets/themes/j1/adapter/js/navigator.js +21 -15
- data/lib/starter_web/assets/themes/j1/extensions/mmenu-light/css/mmenu-light.css +384 -0
- data/lib/starter_web/assets/themes/j1/extensions/mmenu-light/css/mmenu-light.min.css +10 -0
- data/lib/starter_web/assets/themes/j1/extensions/mmenu-light/js/mmenu-light.js +213 -0
- data/lib/starter_web/assets/themes/j1/extensions/mmenu-light/js/mmenu-light.min.js +205 -0
- data/lib/starter_web/assets/themes/j1/extensions/mmenu-light/js/mmenu-light.polyfills.js +118 -0
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/site_search.adoc +196 -0
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +13 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5d3711d432bcb8345139685cd06df4952544d74b98bcce348dc3a23435d023ac
|
4
|
+
data.tar.gz: b5a7e08cdff2b51c815d86cada41ac601c57a083465d1bee31883dae2596a520
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 17d0793bbc2f65a280e4447b5b8d5b2cfa47e9541c24be3d118fa51165fd50d576bc3ca428d32892201340562213b714dffe73b9d05715f611a44ad11dc2e78b
|
7
|
+
data.tar.gz: 908afd620d27216ce001e2861a8e110df0bf8fef04957df898ae37cc050f3767ed5cf55b7a82342bc2e3c908aa0e83368ca5de18a8ac74bf16cb80c413fd14af
|
@@ -1,7 +1,7 @@
|
|
1
|
-
{% comment %}
|
1
|
+
{% comment %}
|
2
2
|
# -----------------------------------------------------------------------------
|
3
3
|
# ~/_includes/themes/j1/modules/navigator/generator.html
|
4
|
-
# Liquid HTML template to create the Navigation System for J1 Template
|
4
|
+
# Liquid HTML template to create the Navigation System for J1 Template
|
5
5
|
#
|
6
6
|
# Product/Info:
|
7
7
|
# https://jekyll.one
|
@@ -41,7 +41,7 @@
|
|
41
41
|
{% assign template_config = site.data.template_settings %}
|
42
42
|
{% assign blocks = site.data.blocks %}
|
43
43
|
{% assign modules = site.data.modules %}
|
44
|
-
|
44
|
+
|
45
45
|
{% comment %} Set config files
|
46
46
|
-------------------------------------------------------------------------------- {% endcomment %}
|
47
47
|
{% assign authentication_defaults = modules.defaults.authentication.defaults %}
|
@@ -92,17 +92,18 @@
|
|
92
92
|
-------------------------------------------------------------------------------- {% endcomment %}
|
93
93
|
{% assign nav_bar_id = navigator_defaults.nav_bar.xhr_container_id %}
|
94
94
|
{% assign nav_menu_id = navigator_defaults.nav_menu.xhr_container_id %}
|
95
|
+
{% assign nav_mmenu_id = navigator_defaults.nav_mmenu.xhr_container_id %}
|
95
96
|
{% assign nav_sidebar_id = navigator_defaults.nav_sidebar.xhr_container_id %}
|
96
97
|
{% assign nav_quicklinks_id = navigator_defaults.nav_quicklinks.xhr_container_id %}
|
97
98
|
{% assign authclient_modals_id = authclient_options.xhr_container_id %}
|
98
99
|
{% assign nav_navbar_media_breakpoint = navigator_defaults.nav_bar.media_breakpoint %}
|
99
100
|
|
100
|
-
{% comment %} Set navBarProperties
|
101
|
+
{% comment %} Set navBarProperties
|
101
102
|
-------------------------------------------------------------------------------- {% endcomment %}
|
102
103
|
{% if nav_fixed %}
|
103
104
|
{% assign nav_bar_fixed = 'navbar-fixed' %}
|
104
105
|
{% if nav_style == 'overlay' %} {% assign nav_bar_style = 'navbar-transparent' %} {% endif %}
|
105
|
-
{% endif %}
|
106
|
+
{% endif %}
|
106
107
|
|
107
108
|
{% if nav_color == 'light' %}
|
108
109
|
{% assign nav_bar_color = 'light' %}
|
@@ -111,7 +112,6 @@
|
|
111
112
|
{% capture nav_bar_default_css_classes %}navbar navigator navbar-expand-{{nav_navbar_media_breakpoint}} navbar-default{% endcapture %}
|
112
113
|
|
113
114
|
|
114
|
-
|
115
115
|
{% comment %} Main
|
116
116
|
-------------------------------------------------------------------------------- {% endcomment %}
|
117
117
|
|
@@ -119,11 +119,17 @@
|
|
119
119
|
-------------------------------------------------------------------------------- {% endcomment %}
|
120
120
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ check for topsearch ] -->
|
121
121
|
{% if topsearch_options.enabled %}
|
122
|
-
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ start processing: topsearch ] -->
|
122
|
+
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ start processing: topsearch ] -->
|
123
123
|
{% include {{ topsearch_create }} options=topsearch_options %}
|
124
124
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ end processing: topsearch ] -->
|
125
125
|
{% endif %}
|
126
126
|
|
127
|
+
{% comment %} Place Mobile NAV menu container (HTML data loaded via AJAX)
|
128
|
+
------------------------------------------------------------------------------ {% endcomment %}
|
129
|
+
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ start processing: mmenu ] -->
|
130
|
+
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place nav menu container for AJAX load (mobile) ] -->
|
131
|
+
<nav id="{{nav_mmenu_id}}"></nav>
|
132
|
+
|
127
133
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ start processing: navigation ] -->
|
128
134
|
<nav id="{{nav_bar_id}}" class="{{nav_bar_default_css_classes}} {{nav_bar_color}} {{nav_bar_fixed}} {{nav_bar_style}}">
|
129
135
|
|
@@ -147,35 +153,37 @@
|
|
147
153
|
{% else %}
|
148
154
|
<a class="navbar-brand" href="{{home_path}}" "> <b><font color="{{site.brand.text_color}}">{{ site.brand.text }}</font></b></a>
|
149
155
|
{% endif %}
|
150
|
-
<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">
|
156
|
+
<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">
|
151
157
|
<i class="mdi mdi-menu mdi-48px"></i>
|
152
158
|
</button>
|
153
159
|
{% elsif brand_position == "right" %}
|
154
160
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place brand to the: right ] -->
|
155
|
-
<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">
|
156
|
-
<i class="mdi mdi-menu mdi-48px"></i>
|
157
|
-
</button>
|
158
161
|
{% if site.brand.image %}
|
159
162
|
<a class="navbar-brand" href="{{ home_path }}"> <img src="{{ site.data.template_settings.image_path }}/{{ site.brand.image }}" height="{{ site.brand.image_height }}" alt="{{ site.brand.text }}"></a>
|
160
163
|
{% else %}
|
161
164
|
<a class="navbar-brand" href="{{home_path}}" "> <b><font color="{{site.brand.text_color}}">{{ site.brand.text }}</font></b></a>
|
162
165
|
{% endif %}
|
163
|
-
|
164
|
-
|
165
|
-
<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">
|
166
|
+
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place menu toggler to the: left ] -->
|
167
|
+
<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">
|
166
168
|
<i class="mdi mdi-menu mdi-48px"></i>
|
167
169
|
</button>
|
170
|
+
{% else %}
|
171
|
+
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place brand to default position: left ] -->
|
168
172
|
{% if site.brand.image %}
|
169
173
|
<a class="navbar-brand" href="{{ home_path }}"> <img src="{{ site.data.template_settings.image_path }}/{{ site.brand.image }}" height="{{ site.brand.image_height }}" alt="{{ site.brand.text }}"></a>
|
170
174
|
{% else %}
|
171
175
|
<a class="navbar-brand" href="{{home_path}}" "> <b><font color="{{site.brand.text_color}}">{{ site.brand.text }}</font></b></a>
|
172
176
|
{% endif %}
|
177
|
+
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place menu toggler to the: right ] -->
|
178
|
+
<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">
|
179
|
+
<i class="mdi mdi-menu mdi-48px"></i>
|
180
|
+
</button>
|
173
181
|
{% endif %}
|
174
182
|
|
175
|
-
{% comment %} Place NAV menu container (HTML data loaded via AJAX)
|
183
|
+
{% comment %} Place Desktop NAV menu container (HTML data loaded via AJAX)
|
176
184
|
------------------------------------------------------------------------------ {% endcomment %}
|
177
185
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ start processing: nav bar ] -->
|
178
|
-
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place nav menu container for AJAX load ] -->
|
186
|
+
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ place nav menu container for AJAX load (desktop) ] -->
|
179
187
|
<div id="{{nav_menu_id}}" class="collapse"></div>
|
180
188
|
|
181
189
|
{% comment %} Place|Hide Quicklinks container (HTML data loaded via AJAX)
|
@@ -198,5 +206,3 @@
|
|
198
206
|
<div id="{{authclient_modals_id}}" class="authclient_modals"></div>
|
199
207
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ end processing: auth_client ] -->
|
200
208
|
<!-- [INFO ] [j1.modules.navigator.generator.html ] [ end processing: navigation ] -->
|
201
|
-
|
202
|
-
|
data/assets/data/menu.html
CHANGED
@@ -138,9 +138,9 @@ regenerate: true
|
|
138
138
|
<!-- div id="{{nav_menu_id}}" class="{{dropdown_collapse}}" -->
|
139
139
|
<!-- div class="{{dropdown_collapse}}" -->
|
140
140
|
{% if nav_menu_animation %}
|
141
|
-
<ul class="nav navbar-nav navigator navbar-{{nav_bar_position}}" data-in="{{animate_in}}" data-out="{{animate_out}}">
|
141
|
+
<ul id="desktop_menu" class="nav navbar-nav navigator navbar-{{nav_bar_position}}" data-in="{{animate_in}}" data-out="{{animate_out}}">
|
142
142
|
{% else %}
|
143
|
-
<ul class="nav navbar-nav navigator navbar-{{nav_bar_position}}" data-in="fadeIn" data-out="fadeOut">
|
143
|
+
<ul id="desktop_menu" class="nav navbar-nav navigator navbar-{{nav_bar_position}}" data-in="fadeIn" data-out="fadeOut">
|
144
144
|
{% endif %}
|
145
145
|
|
146
146
|
{% for menu in navigator_menu_config %}
|
@@ -460,10 +460,10 @@ regenerate: true
|
|
460
460
|
<!-- [INFO ] [j1.modules.navigator.menu.html ] [nav_menu_settings: end menu] -->
|
461
461
|
</ul>
|
462
462
|
<!-- [INFO ] [j1.modules.navigator.menu.html ] [nav_menu_settings: end navbar] -->
|
463
|
-
<!-- div -->
|
463
|
+
<!-- div -->
|
464
464
|
<!-- [INFO ] [j1.modules.navigator.menu.html ] [nav_menu_settings: end processing] -->
|
465
465
|
|
466
466
|
{% endcapture %}
|
467
467
|
|
468
468
|
{{ cache | pretty_print | remove:'<html><body>' | remove:'</body></html>' | strip_empty_lines }}
|
469
|
-
{% assign cache = nil %}
|
469
|
+
{% assign cache = nil %}
|
@@ -0,0 +1,455 @@
|
|
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 bar
|
11
|
+
# NOTE: Loaded dynamically by J1 NAV Manager module (AJAX)
|
12
|
+
#
|
13
|
+
# Product/Info:
|
14
|
+
# https://jekyll.one
|
15
|
+
#
|
16
|
+
# Copyright (C) 2020 Juergen Adams
|
17
|
+
#
|
18
|
+
# J1 Template is licensed under the MIT License.
|
19
|
+
# See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
|
20
|
+
# -----------------------------------------------------------------------------
|
21
|
+
# Test data:
|
22
|
+
# {{variable | debug}}
|
23
|
+
# -----------------------------------------------------------------------------
|
24
|
+
{% endcomment %}
|
25
|
+
|
26
|
+
{% comment %} Liquid procedures
|
27
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
28
|
+
{% capture select_color %}themes/{{site.template.name}}/procedures/global/select_color.proc{% endcapture %}
|
29
|
+
{% capture select_icon_size %}themes/{{site.template.name}}/procedures/global/select_icon_size.proc{% endcapture %}
|
30
|
+
|
31
|
+
|
32
|
+
{% comment %} Liquid var initialization
|
33
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
34
|
+
|
35
|
+
{% comment %} Set config files
|
36
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
37
|
+
{% assign site_config = site %}
|
38
|
+
{% assign template_config = site.data.template_settings %}
|
39
|
+
{% assign modules = site.data.modules %}
|
40
|
+
|
41
|
+
{% comment %} Set config data
|
42
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
43
|
+
{% assign navigator_settings = modules.navigator.settings %}
|
44
|
+
{% assign navigator_defaults = modules.defaults.navigator.defaults %}
|
45
|
+
{% assign navigator_menu_config = modules.navigator_menu %}
|
46
|
+
|
47
|
+
{% assign themer_defaults = modules.defaults.themer.defaults %}
|
48
|
+
{% assign themer_settings = modules.themer.settings %}
|
49
|
+
|
50
|
+
{% assign nav_bar_defaults = navigator_defaults.nav_bar %}
|
51
|
+
{% assign nav_bar_settings = navigator_settings.nav_bar %}
|
52
|
+
{% assign nav_menu_defaults = navigator_defaults.nav_menu %}
|
53
|
+
{% assign nav_menu_settings = navigator_settings.nav_menu %}
|
54
|
+
|
55
|
+
{% comment %} Set config options
|
56
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
57
|
+
{% assign themer_options = themer_defaults | merge: themer_settings %}
|
58
|
+
{% assign nav_bar_options = nav_bar_defaults | merge: nav_bar_settings %}
|
59
|
+
{% assign nav_menu_options = nav_menu_defaults | merge: nav_menu_settings %}
|
60
|
+
{% assign theme_preview = themer_options.preview_page %}
|
61
|
+
{% assign nav_menu_id = nav_menu_options.id %}
|
62
|
+
|
63
|
+
{% assign ext = '' %}
|
64
|
+
{% if site.permalink == 'none' %}
|
65
|
+
{% assign ext = '.html' %}
|
66
|
+
{% endif %}
|
67
|
+
|
68
|
+
<!-- [DEBUG ] [j1.modules.mmenu.html ] [detect bs type] -->
|
69
|
+
{% assign bs_type = 'bmd4' %}
|
70
|
+
{% if navigator_settings.bs_type == 'bs4' %}
|
71
|
+
{% assign bs_type = 'bs4' %}
|
72
|
+
{% endif %}
|
73
|
+
|
74
|
+
{% if bs_type == 'bmd4' %}
|
75
|
+
{% assign dropdown_collapse = 'collapse' %}
|
76
|
+
{% elsif bs_type == 'bs4' %}
|
77
|
+
{% assign dropdown_collapse = 'fake-class collapse' %}
|
78
|
+
{% endif %}
|
79
|
+
|
80
|
+
<!-- [DEBUG ] [j1.modules.mmenu.html ] [bs type detected: {{bs_type}}] -->
|
81
|
+
|
82
|
+
{% comment %} Set navBarOptions
|
83
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
84
|
+
{% assign nav_bar_position = nav_bar_options.position %}
|
85
|
+
|
86
|
+
{% comment %} Set navMenuOptions
|
87
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
88
|
+
{% assign nav_menu_animation = nav_menu_options.dropdown_animate %}
|
89
|
+
{% if nav_menu_animation %}
|
90
|
+
{% assign animate_in = nav_menu_options.dropdown_animate_in %}
|
91
|
+
{% assign animate_out = nav_menu_options.dropdown_animate_out %}
|
92
|
+
{% endif %}
|
93
|
+
|
94
|
+
{% comment %} Set base nav features
|
95
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
96
|
+
{% capture nav_menu_position %}dropdown-menu-{{nav_bar_position}}{% endcapture %}
|
97
|
+
{% unless nav_menu_animation %} {% assign nav_menu_animation = false %} {% endunless %}
|
98
|
+
|
99
|
+
<!-- [DEBUG ] [j1.modules.mmenu.html ] [initialize default menu properties] -->
|
100
|
+
{% if nav_menu_options.raised_level %}
|
101
|
+
{% assign raised_level = nav_menu_options.raised_level %}
|
102
|
+
{% else %}
|
103
|
+
{% assign raised_level = 0 %}
|
104
|
+
{% endif %}
|
105
|
+
|
106
|
+
{% comment %} Set base icons and sizes
|
107
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
108
|
+
<!-- [DEBUG ] [j1.modules.mmenu.html ] [initialize default menu icon properties] -->
|
109
|
+
{% assign nav_menu_icon_family = nav_menu_options.icon_family %}
|
110
|
+
{% assign nav_menu_icon_style = nav_menu_options.icon_style %}
|
111
|
+
{% assign nav_menu_icon_color = nav_menu_options.icon_color %}
|
112
|
+
{% assign nav_menu_icon_size = nav_menu_options.icon_size %}
|
113
|
+
|
114
|
+
{% assign icon_family = nav_menu_icon_family | strip | downcase %}
|
115
|
+
|
116
|
+
{% if icon_family == 'fontawesome' or icon_family == 'fontawesome5' %}
|
117
|
+
{% assign nav_menu_icon_family = 'fa' %}
|
118
|
+
{% assign nav_menu_icon_style = nav_menu_icon_style %}
|
119
|
+
{% elsif icon_family == 'mdi' %}
|
120
|
+
{% assign nav_menu_icon_family = 'mdi' %}
|
121
|
+
{% assign nav_menu_icon_style = nav_menu_icon_style %}
|
122
|
+
{% else %}
|
123
|
+
{% assign nav_menu_icon_family = 'mdi' %}
|
124
|
+
{% assign nav_menu_icon_style = nav_menu_icon_style %}
|
125
|
+
{% endif %}
|
126
|
+
|
127
|
+
{% include {{select_color}} color=nav_menu_icon_color fallback="#9E9E9E" %}
|
128
|
+
{% assign nav_menu_icon_color = color %}
|
129
|
+
|
130
|
+
{% include {{select_icon_size}} family=nav_menu_icon_family size=nav_menu_icon_size %}
|
131
|
+
{% assign nav_menu_icon_size = size %}
|
132
|
+
|
133
|
+
|
134
|
+
{% comment %} Main
|
135
|
+
-------------------------------------------------------------------------------- {% endcomment %}
|
136
|
+
|
137
|
+
<!-- [DEBUG ] [j1.modules.mmenu.html ] [collect all nav links for the navigation bar (navbar)] -->
|
138
|
+
<!-- div id="{{nav_menu_id}}" class="{{dropdown_collapse}}" -->
|
139
|
+
<!-- div class="{{dropdown_collapse}}" -->
|
140
|
+
<ul id="mobile_menu">
|
141
|
+
|
142
|
+
{% for menu in navigator_menu_config %}
|
143
|
+
|
144
|
+
{% comment %} Identify the menu (item) type
|
145
|
+
---------------------------------------------------------------------------- {% endcomment %}
|
146
|
+
|
147
|
+
{% if menu.sublevel %}
|
148
|
+
{% assign menu_type = 'sublevel_menu' %}
|
149
|
+
{% elsif menu.megamenu %}
|
150
|
+
{% assign menu_type = 'mega_menu' %}
|
151
|
+
{% elsif menu.auth_client %}
|
152
|
+
{% assign menu_type = 'auth_client' %}
|
153
|
+
{% elsif menu.theme_select %}
|
154
|
+
{% assign menu_type = 'theme_select' %}
|
155
|
+
{% elsif menu.sublevel == null and menu.megamenu == null and menu.login_menu == null and menu.theme_select == null %}
|
156
|
+
{% assign menu_type = 'top_level_item' %}
|
157
|
+
{% endif %}
|
158
|
+
|
159
|
+
|
160
|
+
{% comment %} Process all menu sections
|
161
|
+
---------------------------------------------------------------------------- {% endcomment %}
|
162
|
+
|
163
|
+
{% case menu_type %}
|
164
|
+
|
165
|
+
{% comment %} Collect items having a SUB menue
|
166
|
+
---------------------------------------------------------------------------- {% endcomment %}
|
167
|
+
{% when 'sublevel_menu' %}
|
168
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [found menu-type: sub-menue] -->
|
169
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [submenu level 1 detected] -->
|
170
|
+
<li>
|
171
|
+
{% if menu.icon == null %}
|
172
|
+
<a href="#">{{menu.item}}</a>
|
173
|
+
{% else %}
|
174
|
+
<a href="#"> <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>
|
175
|
+
{% endif %}
|
176
|
+
|
177
|
+
<ul>
|
178
|
+
{% for level_1 in menu.sublevel %}
|
179
|
+
{% if level_1.dropdown == null %}
|
180
|
+
{% if level_1.icon == null %}
|
181
|
+
{% if level_1.target == null %}
|
182
|
+
<li><a href="{{level_1.href}}{{ext}}">{{level_1.title}}</a></li>
|
183
|
+
{% else %}
|
184
|
+
<li><a href="{{level_1.href}}{{ext}}" target="{{level_1.target}}">{{level_1.title}}</a></li>
|
185
|
+
{% endif %}
|
186
|
+
{% else %}
|
187
|
+
{% if level_1.target == null %}
|
188
|
+
<li><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>
|
189
|
+
{% else %}
|
190
|
+
<li><a href="{{level_1.href}}{{ext}}" target="{{level_1.target}}"><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>
|
191
|
+
{% endif %}
|
192
|
+
{% endif %}
|
193
|
+
{% endif %}
|
194
|
+
|
195
|
+
{% if level_1.dropdown %}
|
196
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [submenu level 2 (dropdown) detected] -->
|
197
|
+
<li>
|
198
|
+
{% if level_1.icon == null %}
|
199
|
+
<a href="#">{{level_1.title}}</a>
|
200
|
+
{% else %}
|
201
|
+
<a href="#"><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>
|
202
|
+
{% endif %}
|
203
|
+
|
204
|
+
<ul>
|
205
|
+
{% for level_2 in level_1.dropdown %}
|
206
|
+
{% if level_2.dropdown == null %}
|
207
|
+
{% if level_2.icon == null %}
|
208
|
+
{% if level_2.target == null %}
|
209
|
+
<li><a href="{{level_2.href}}{{ext}}">{{level_2.title}}</a></li>
|
210
|
+
{% else %}
|
211
|
+
<li><a href="{{level_2.href}}{{ext}}" target="{{level_2.target}}">{{level_2.title}}</a></li>
|
212
|
+
{% endif %}
|
213
|
+
{% else %}
|
214
|
+
{% if level_2.target == null %}
|
215
|
+
<li><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>
|
216
|
+
{% else %}
|
217
|
+
<li><a href="{{level_2.href}}{{ext}}" target="{{level_2.target}}"><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>
|
218
|
+
{% endif %}
|
219
|
+
{% endif %}
|
220
|
+
{% endif %}
|
221
|
+
{% if level_2.dropdown %}
|
222
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [submenu level 3 detected (last level supported)] -->
|
223
|
+
<li>
|
224
|
+
{% if level_2.icon == null %}
|
225
|
+
<a href="#" >{{level_2.title}}</a>
|
226
|
+
{% else %}
|
227
|
+
<a href="#" ><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>
|
228
|
+
{% endif %}
|
229
|
+
|
230
|
+
<ul>
|
231
|
+
{% for level_3 in level_2.dropdown %}
|
232
|
+
{% if level_2.icon == null %}
|
233
|
+
{% if level_3.target == null %}
|
234
|
+
<li><a href="{{level_3.href}}{{ext}}">{{level_3.title}}</a></li>
|
235
|
+
{% else %}
|
236
|
+
<li><a href="{{level_3.href}}{{ext}}" target="{{level_3.target}}">{{level_3.title}}</a></li>
|
237
|
+
{% endif %}
|
238
|
+
{% else %}
|
239
|
+
{% if level_3.target == null %}
|
240
|
+
<li><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>
|
241
|
+
{% else %}
|
242
|
+
<li><a href="{{level_3.href}}{{ext}}" target="{{level_3.target}}"><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>
|
243
|
+
{% endif %}
|
244
|
+
{% endif %}
|
245
|
+
{% if level_3.divider %} <li class="divider"></li> {% endif %}
|
246
|
+
{% endfor %} <!-- [INFO ] [j1.modules.mmenu.html ] [end processing: level 3] -->
|
247
|
+
</ul>
|
248
|
+
</li>
|
249
|
+
{% endif %}
|
250
|
+
{% endfor %} <!-- [INFO ] [j1.modules.mmenu.html ] [end processing: level 2] -->
|
251
|
+
</ul>
|
252
|
+
</li>
|
253
|
+
{% endif %}
|
254
|
+
{% endfor %} <!-- [INFO ] [j1.modules.mmenu.html ] [end processing: level 1] -->
|
255
|
+
</ul>
|
256
|
+
</li>
|
257
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [reset menu_type for next loop] -->
|
258
|
+
{% assign menu_type = '' %}
|
259
|
+
|
260
|
+
|
261
|
+
{% comment %} Collect items having a MEGA menu (disabled for now)
|
262
|
+
---------------------------------------------------------------------------- {% endcomment %}
|
263
|
+
{% when 'mmmmmmmega_menu' %}
|
264
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [found menu-type: megamenu-menue] -->
|
265
|
+
<!-- calculate size of mm_columns -->
|
266
|
+
{% assign columns = menu.megamenu | size %}
|
267
|
+
{% assign columns_width_md = 12 | divided_by:columns %}
|
268
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [Calculated size of mm_columns: {{columns_width_md}}] -->
|
269
|
+
|
270
|
+
<li>
|
271
|
+
<a href="#" >{{menu.item}} </a>
|
272
|
+
<ul>
|
273
|
+
<li>
|
274
|
+
<div class="row">
|
275
|
+
{% for megabox in menu.megamenu %}
|
276
|
+
<div class="col-menu col-md-{{columns_width_md}} col-sm-6">
|
277
|
+
{% if megabox.icon == null %}
|
278
|
+
<div class="post-headline mt-2 mb-3">
|
279
|
+
<h2 class="title" style="font-size:1.25em !important">{{megabox.title}}</h2>
|
280
|
+
</div>
|
281
|
+
{% else %}
|
282
|
+
<div class="post-headline mt-2 mb-3">
|
283
|
+
<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>
|
284
|
+
</div>
|
285
|
+
{% endif %}
|
286
|
+
<div class="content">
|
287
|
+
<ul class="menu-col">
|
288
|
+
{% for links in megabox.column %}
|
289
|
+
{% if links.icon == null %}
|
290
|
+
<li class="dropdown-megamenu-item"><a href="{{links.href}}{{ext}}" target="{{links.target}}">{{links.title}}</a></li>
|
291
|
+
{% else %}
|
292
|
+
<li class="dropdown-megamenu-item"><a href="{{links.href}}{{ext}}" target="{{links.target}}"><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>
|
293
|
+
{% endif %}
|
294
|
+
{% endfor %}
|
295
|
+
</ul>
|
296
|
+
</div>
|
297
|
+
</div>
|
298
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [megamenu-menue: end megabox] -->
|
299
|
+
{% endfor %}
|
300
|
+
</div>
|
301
|
+
</li>
|
302
|
+
</ul>
|
303
|
+
</li>
|
304
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [megamenu-menue: end mega-menu] -->
|
305
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [reset menu_type for next loop] -->
|
306
|
+
{% assign menu_type = '' %}
|
307
|
+
|
308
|
+
|
309
|
+
{% comment %} Collect TOP-LEVEL items (NO sub-menu)
|
310
|
+
-------------------------------------------------------------------------- {% endcomment %}
|
311
|
+
{% when 'top_level_item' %}
|
312
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [found menu-type: menu-top-level-only] -->
|
313
|
+
{% if menu.icon == null %}
|
314
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [no icon for menu-item found -->
|
315
|
+
{% if menu.target == null %}
|
316
|
+
<li> <a href="{{menu.href}}{{ext}}">{{menu.item}}</a> </li>
|
317
|
+
{% else %}
|
318
|
+
<li> <a href="{{menu.href}}{{ext}}" target="{{menu.target}}">{{menu.item}}</a> </li>
|
319
|
+
{% endif %}
|
320
|
+
{% elsif menu.icon %}
|
321
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [no icon for menu-item found -->
|
322
|
+
{% if menu.target == null %}
|
323
|
+
<li> <a 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>
|
324
|
+
{% else %}
|
325
|
+
<li> <a href="{{menu.href}}{{ext}}" target="{{menu.target}}"><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>
|
326
|
+
{% endif %}
|
327
|
+
{% else %}
|
328
|
+
<!-- [FATAL ] [nav_menu.menu-top-level-only ] [processing menu item failed] -->
|
329
|
+
{% endif %}
|
330
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [menu-top-level-only: end menu] -->
|
331
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [reset menu_type for next loop] -->
|
332
|
+
{% assign menu_type = '' %}
|
333
|
+
|
334
|
+
|
335
|
+
{% comment %} Collect items having a LOGIN menu (disabled for now)
|
336
|
+
------------------------------------------------------------------------ {% endcomment %}
|
337
|
+
{% when 'aaaaaaauth_client' %}
|
338
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [found menu-type: auth_client] -->
|
339
|
+
<li id="menuBarSignInOut" class="dropdown nav-item">
|
340
|
+
<a href="#">{{menu.item}} </a>
|
341
|
+
|
342
|
+
<ul>
|
343
|
+
{% assign item_found = 'false' %}
|
344
|
+
{% for item in menu.auth_client %}
|
345
|
+
|
346
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [START: check signin] -->
|
347
|
+
{% if item.mode == 'signin' %}
|
348
|
+
<li>
|
349
|
+
<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>
|
350
|
+
</li>
|
351
|
+
{% assign item_found = 'true' %}
|
352
|
+
{% endif %}
|
353
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [END: check signin] -->
|
354
|
+
|
355
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [START: check signout] -->
|
356
|
+
{% if item.mode == 'signout' %}
|
357
|
+
<li>
|
358
|
+
<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>
|
359
|
+
</li>
|
360
|
+
{% assign item_found = 'true' %}
|
361
|
+
{% endif %}
|
362
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [END: check signout] -->
|
363
|
+
|
364
|
+
{% if item_found == 'false' %}
|
365
|
+
<!-- [FATAL ] [j1.modules.mmenu.html ] [no valid menu item config found] -->
|
366
|
+
<li>
|
367
|
+
{% if item.title %}
|
368
|
+
<a href="#" >Invalid: {{item.title}}</a>
|
369
|
+
{% else %}
|
370
|
+
<a href="#" >Item invalid</a>
|
371
|
+
{% endif %}
|
372
|
+
</li>
|
373
|
+
{% endif %}
|
374
|
+
|
375
|
+
{% endfor %}
|
376
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [login_menu: end menu] -->
|
377
|
+
</ul>
|
378
|
+
</li>
|
379
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [reset menu_type for next loop] -->
|
380
|
+
{% assign menu_type = '' %}
|
381
|
+
|
382
|
+
{% comment %} Collect items having a THEMES menu (disabled for now)
|
383
|
+
---------------------------------------------------------------------- {% endcomment %}
|
384
|
+
{% when 'ttttttttheme_select' %}
|
385
|
+
{% if themer_options.enabled %}
|
386
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [found menu-type: theme_select] -->
|
387
|
+
<li>
|
388
|
+
<a href="#">{{menu.item}} </a>
|
389
|
+
{% if nav_menu_animation %}
|
390
|
+
<ul>
|
391
|
+
<!-- ul class="dropdown-menu data-in="{{nav_menu_animation}}" data-out="{{nav_menu_animation}}" -->
|
392
|
+
{% else %}
|
393
|
+
<ul>
|
394
|
+
{% endif %}
|
395
|
+
{% assign item_found = 'false' %}
|
396
|
+
{% for item in menu.theme_select %}
|
397
|
+
<!-- check for J1 Theme selector -->
|
398
|
+
{% if item.local_themes and item.local_themes == 'enabled' %}
|
399
|
+
<li>
|
400
|
+
<a href="#"><i class="{{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>
|
401
|
+
<ul id="ThemeSelect"> </ul>
|
402
|
+
</li>
|
403
|
+
{% assign item_found = 'true' %}
|
404
|
+
{% endif %} <!-- end J1 theme selector -->
|
405
|
+
<!-- check for BootSwatch theme selector -->
|
406
|
+
{% if item.bootswatch_themes and item.bootswatch_themes == 'enabled' %}
|
407
|
+
<li>
|
408
|
+
<a href="#"><i class="{{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>
|
409
|
+
<ul id="ThemeList"> </ul>
|
410
|
+
</li>
|
411
|
+
{% assign item_found = 'true' %}
|
412
|
+
{% endif %} <!-- end BootSwatch theme selector -->
|
413
|
+
{% if item.preview and item.preview == 'enabled' %}
|
414
|
+
<li>
|
415
|
+
<a href="{{theme_preview}}" ><i class="{{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>
|
416
|
+
</li>
|
417
|
+
{% assign item_found = 'true' %}
|
418
|
+
{% endif %} <!-- end theme preview -->
|
419
|
+
<!-- fallback if no valid config found -->
|
420
|
+
{% if item_found == 'false' %}
|
421
|
+
<li>
|
422
|
+
{% if item.title %}
|
423
|
+
<a href="#" >Invalid: {{item.title}}</a>
|
424
|
+
{% else %}
|
425
|
+
<a href="#" >Item invalid</a>
|
426
|
+
{% endif %}
|
427
|
+
</li>
|
428
|
+
{% endif %} <!-- end fallback -->
|
429
|
+
{% endfor %}
|
430
|
+
</ul>
|
431
|
+
</li>
|
432
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [reset menu_type for next loop] -->
|
433
|
+
{% endif %}
|
434
|
+
{% assign menu_type = '' %}
|
435
|
+
|
436
|
+
|
437
|
+
{% comment %} Collect items failed
|
438
|
+
---------------------------------------------------------------------- {% endcomment %}
|
439
|
+
{% else %}
|
440
|
+
<!-- [FATAL ] [j1.modules.mmenu.html ] [detecting menu items|type failed] -->
|
441
|
+
{% assign menu_type = '' %}
|
442
|
+
|
443
|
+
{% endcase %}
|
444
|
+
|
445
|
+
{% endfor %}
|
446
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [nav_menu_settings: end menu] -->
|
447
|
+
</ul>
|
448
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [nav_menu_settings: end navbar] -->
|
449
|
+
<!-- div -->
|
450
|
+
<!-- [INFO ] [j1.modules.mmenu.html ] [nav_menu_settings: end processing] -->
|
451
|
+
|
452
|
+
{% endcapture %}
|
453
|
+
|
454
|
+
{{cache | pretty_print | remove:'<html><body>' | remove:'</body></html>' | strip_empty_lines}}
|
455
|
+
{% assign cache = nil %}
|