j1m_nav 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.md +21 -0
  3. data/README.md +41 -0
  4. data/_data/modules/default/j1_nav-0.0.1/j1_bootsnav.yml +337 -0
  5. data/_data/modules/default/j1_nav-0.0.1/j1_bootsnav_mainmenu.yml +266 -0
  6. data/_data/resources/default/j1_nav-0.0.1/resource.yml +25 -0
  7. data/_includes/themes/j1/modules/adapter/bootsnav/bootsnav.html +102 -0
  8. data/_includes/themes/j1/modules/adapter/bootsnav/procedures/mainmenu.proc +268 -0
  9. data/_includes/themes/j1/modules/adapter/bootsnav/procedures/quicklinks.proc +93 -0
  10. data/_includes/themes/j1/modules/adapter/bootsnav/procedures/sidebar.proc +123 -0
  11. data/_includes/themes/j1/modules/adapter/bootsnav/procedures/topsearch.proc +126 -0
  12. data/assets/themes/j1/bs_bootsnav/LICENSE.md +21 -0
  13. data/assets/themes/j1/bs_bootsnav/README.md +44 -0
  14. data/assets/themes/j1/bs_bootsnav/css/bootsnav.css +1570 -0
  15. data/assets/themes/j1/bs_bootsnav/css/bootsnav.min.css +28 -0
  16. data/assets/themes/j1/bs_bootsnav/css/skins/j1_template.css +394 -0
  17. data/assets/themes/j1/bs_bootsnav/css/style.css +503 -0
  18. data/assets/themes/j1/bs_bootsnav/css/style.min.css +20 -0
  19. data/assets/themes/j1/bs_bootsnav/images/brand/logo-black.png +0 -0
  20. data/assets/themes/j1/bs_bootsnav/images/brand/logo-white.png +0 -0
  21. data/assets/themes/j1/bs_bootsnav/images/thumb/thumb01.jpg +0 -0
  22. data/assets/themes/j1/bs_bootsnav/images/thumb/thumb02.jpg +0 -0
  23. data/assets/themes/j1/bs_bootsnav/images/thumb/thumb03.jpg +0 -0
  24. data/assets/themes/j1/bs_bootsnav/js/bootsnav.js +586 -0
  25. data/assets/themes/j1/bs_bootsnav/js/bootsnav.min.js +26 -0
  26. data/exe/console +14 -0
  27. data/exe/setup +8 -0
  28. data/lib/j1m_nav.rb +5 -0
  29. data/lib/j1m_nav/version.rb +3 -0
  30. metadata +118 -0
@@ -0,0 +1,20 @@
1
+ /*
2
+ # -----------------------------------------------------------------------------
3
+ # J1: ~/assets/themes/j1/bootsnav/css/style.min.css
4
+ # Provides custom CSS styles for Bootsnav and Bootstrap
5
+ #
6
+ # Product/Info:
7
+ # https://jekyll.one
8
+ # https://github.com/adamnurdin01/bootsnav
9
+ #
10
+ # Copyright (C) 2017 Juergen Adams
11
+ # Copyright (C) 2016 adamnurdin01
12
+ #
13
+ # J1 Template is licensed under the MIT License.
14
+ # For details, see https://jekyll.one
15
+ # Bootsnav is licensed under the MIT License.
16
+ # For details, see https://github.com/adamnurdin01/bootsnav
17
+ # -----------------------------------------------------------------------------
18
+ */
19
+
20
+ html,body{width:100%;height:auto;margin:0;padding:0;overflow-x:hidden}body{font-family:'Open Sans',sans-serif;position:relative;font-size:14px;line-height:24px;color:#6f6f6f}a{color:#6f6f6f}a,a:active,a:focus,a:hover{outline:0;-webkit-transition:all .3s ease-in-out;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-ms-transition:all .3s ease-in-out;transition:all .3s ease-in-out}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{color:#3f3f3f;margin:0 0 15px 0;letter-spacing:1px;font-weight:bold}h1{font-size:48px;line-height:52px}h2{font-size:36px;line-height:48px}h3{font-size:30px;line-height:36px}h4{font-size:24px;line-height:30px}h5{font-size:18px;line-height:24px}h6{font-size:14px;line-height:18px}p{margin-bottom:20px}.section{padding:70px 0;position:relative}.attr-nav>ul>li>a{padding:28px 15px}ul.cart-list>li.total>.btn{border-bottom:solid 1px #cfcfcf!important;color:#fff!important;padding:10px 15px}@media(min-width:1024px){nav.navbar ul.nav>li>a{padding:30px 15px;font-weight:600}nav.navbar .navbar-brand{margin-top:0}nav.navbar .navbar-brand img.logo{width:50px}nav.navbar .navbar-brand{margin-top:0}nav.navbar .navbar-brand img.logo{width:50px}nav.navbar li.dropdown ul.dropdown-menu{border-top:solid 5px}nav.navbar-center .navbar-brand{margin:0!important}nav.navbar-brand-top .navbar-brand{margin:10px!important}nav.navbar-full .navbar-brand{position:relative;top:-15px}nav.navbar-sidebar ul.nav,nav.navbar-sidebar .navbar-brand{margin-bottom:50px}nav.navbar-sidebar ul.nav>li>a{padding:10px 15px;font-weight:bold}nav.navbar.bootsnav.navbar-transparent.white{background-color:rgba(255,255,255,0.3);border-bottom:solid 1px #bbb}nav.navbar.navbar-inverse.bootsnav.navbar-transparent.dark,nav.navbar.bootsnav.navbar-transparent.dark{background-color:rgba(0,0,0,0.3);border-bottom:solid 1px #555}nav.navbar.bootsnav.navbar-transparent.white .attr-nav{border-left:solid 1px #bbb}nav.navbar.navbar-inverse.bootsnav.navbar-transparent.dark .attr-nav,nav.navbar.bootsnav.navbar-transparent.dark .attr-nav{border-left:solid 1px #555}nav.navbar.bootsnav.no-background.white .attr-nav>ul>li>a,nav.navbar.bootsnav.navbar-transparent.white .attr-nav>ul>li>a,nav.navbar.bootsnav.navbar-transparent.white ul.nav>li>a,nav.navbar.bootsnav.no-background.white ul.nav>li>a{color:#fff}nav.navbar.bootsnav.navbar-transparent.dark .attr-nav>ul>li>a,nav.navbar.bootsnav.navbar-transparent.dark ul.nav>li>a{color:#eee}}@media(max-width:992px){nav.navbar .navbar-brand{margin-top:0;position:relative;top:-2px}nav.navbar .navbar-brand img.logo{width:30px}.attr-nav>ul>li>a{padding:16px 15px 15px}nav.navbar.navbar-mobile ul.nav>li>a{padding:15px 15px}nav.navbar.navbar-mobile ul.nav ul.dropdown-menu>li>a{padding-right:15px!important;padding-top:15px!important;padding-bottom:15px!important}nav.navbar.navbar-mobile ul.nav ul.dropdown-menu .col-menu .title{padding-right:30px!important;padding-top:13px!important;padding-bottom:13px!important}nav.navbar.navbar-mobile ul.nav ul.dropdown-menu .col-menu ul.menu-col li a{padding-top:13px!important;padding-bottom:13px!important}nav.navbar-full .navbar-brand{top:0;padding-top:10px}}nav.navbar.navbar-inverse{background-color:#222;border-bottom:solid 1px #303030}nav.navbar.navbar-inverse ul.cart-list>li.total>.btn{border-bottom:solid 1px #222!important}nav.navbar.navbar-inverse ul.cart-list>li.total .pull-right{color:#fff}nav.navbar.navbar-inverse.megamenu ul.dropdown-menu.megamenu-content .content ul.menu-col li a,nav.navbar.navbar-inverse ul.nav>li>a{color:#eee}nav.navbar.navbar-inverse ul.nav>li.dropdown>a{background-color:#222}nav.navbar.navbar-inverse li.dropdown ul.dropdown-menu>li>a{color:#999}nav.navbar.navbar-inverse ul.nav .dropdown-menu h1,nav.navbar.navbar-inverse ul.nav .dropdown-menu h2,nav.navbar.navbar-inverse ul.nav .dropdown-menu h3,nav.navbar.navbar-inverse ul.nav .dropdown-menu h4,nav.navbar.navbar-inverse ul.nav .dropdown-menu h5,nav.navbar.navbar-inverse ul.nav .dropdown-menu h6{color:#fff}nav.navbar.navbar-inverse .form-control{background-color:#333;border-color:#303030;color:#fff}nav.navbar.navbar-inverse .attr-nav>ul>li>a{color:#eee}nav.navbar.navbar-inverse .attr-nav>ul>li.dropdown ul.dropdown-menu{background-color:#222;border-left:solid 1px #303030;border-bottom:solid 1px #303030;border-right:solid 1px #303030}nav.navbar.navbar-inverse ul.cart-list>li{border-bottom:solid 1px #303030;color:#eee}nav.navbar.navbar-inverse ul.cart-list>li img{border:solid 1px #303030}nav.navbar.navbar-inverse ul.cart-list>li.total{background-color:#333}nav.navbar.navbar-inverse .share ul>li>a{background-color:#555}nav.navbar.navbar-inverse .dropdown-tabs .tab-menu{border-right:solid 1px #303030}nav.navbar.navbar-inverse .dropdown-tabs .tab-menu>ul>li>a{border-bottom:solid 1px #303030}nav.navbar.navbar-inverse .dropdown-tabs .tab-content{border-left:solid 1px #303030}nav.navbar.navbar-inverse .dropdown-tabs .tab-menu>ul>li>a:hover,nav.navbar.navbar-inverse .dropdown-tabs .tab-menu>ul>li>a:focus,nav.navbar.navbar-inverse .dropdown-tabs .tab-menu>ul>li.active>a{background-color:#333!important}nav.navbar-inverse.navbar-full ul.nav>li>a{border:0}nav.navbar-inverse.navbar-full .navbar-collapse .wrap-full-menu{background-color:#222}nav.navbar-inverse.navbar-full .navbar-toggle{background-color:#222!important;color:#6f6f6f}@media(min-width:1024px){nav.navbar.navbar-inverse ul.nav .dropdown-menu{background-color:#222!important;border-left:solid 1px #303030!important;border-bottom:solid 1px #303030!important;border-right:solid 1px #303030!important}nav.navbar.navbar-inverse li.dropdown ul.dropdown-menu>li>a{border-bottom:solid 1px #303030}nav.navbar.navbar-inverse ul.dropdown-menu.megamenu-content .col-menu{border-left:solid 1px #303030;border-right:solid 1px #303030}nav.navbar.navbar-inverse.navbar-transparent.dark{background-color:rgba(0,0,0,0.3);border-bottom:solid 1px #999}nav.navbar.navbar-inverse.navbar-transparent.dark .attr-nav{border-left:solid 1px #999}nav.navbar.navbar-inverse.no-background.white .attr-nav>ul>li>a,nav.navbar.navbar-inverse.navbar-transparent.dark .attr-nav>ul>li>a,nav.navbar.navbar-inverse.navbar-transparent.dark ul.nav>li>a,nav.navbar.navbar-inverse.no-background.white ul.nav>li>a{color:#fff}nav.navbar.navbar-inverse.no-background.dark .attr-nav>ul>li>a,nav.navbar.navbar-inverse.no-background.dark .attr-nav>ul>li>a,nav.navbar.navbar-inverse.no-background.dark ul.nav>li>a,nav.navbar.navbar-inverse.no-background.dark ul.nav>li>a{color:#3f3f3f}}@media(max-width:992px){nav.navbar.navbar-inverse .navbar-toggle{color:#eee;background-color:#222!important}nav.navbar.navbar-inverse .navbar-nav>li>a{border-top:solid 1px #303030;border-bottom:solid 1px #303030}nav.navbar.navbar-inverse ul.nav li.dropdown ul.dropdown-menu>li>a{color:#999;border-bottom:solid 1px #303030}nav.navbar.navbar-inverse .dropdown .megamenu-content .col-menu .title{border-bottom:solid 1px #303030;color:#eee}nav.navbar.navbar-inverse .dropdown .megamenu-content .col-menu ul>li>a{border-bottom:solid 1px #303030;color:#999!important}nav.navbar.navbar-inverse .dropdown .megamenu-content .col-menu.on:last-child .title{border-bottom:solid 1px #303030}nav.navbar.navbar-inverse .dropdown-tabs .tab-menu>ul{border-top:solid 1px #303030}nav.navbar.navbar-inverse.navbar-mobile .navbar-collapse{background-color:#222}}@media(max-width:767px){nav.navbar.navbar-inverse.navbar-mobile ul.nav{border-top:solid 1px #222}}nav.navbar.bootsnav ul.dropdown-menu.megamenu-content .content ul.menu-col li a:hover,.side .widget ul.link li a:hover,.side .widget ul.link li a:focus,.check-list li:before,ul.cart-list>li>h6>a,.attr-nav>ul>li>a:hover,.attr-nav>ul>li>a:focus,nav.navbar-sidebar ul.nav li.dropdown.on>a,nav.navbar-sidebar .dropdown .megamenu-content .col-menu.on .title,nav.navbar-sidebar ul.nav li.dropdown ul.dropdown-menu li a:hover,nav.navbar ul.nav li.dropdown.on>a,nav.navbar.navbar-inverse ul.nav li.dropdown.on>a,nav.navbar-sidebar ul.nav li.dropdown.on ul.dropdown-menu li.dropdown.on>a,nav.navbar .dropdown .megamenu-content .col-menu.on .title,nav.navbar ul.nav>li>a:hover,nav.navbar ul.nav>li.active>a:hover,nav.navbar ul.nav li.active>a,nav.navbar li.dropdown ul.dropdown-menu>li a:hover{color:#f43438}nav.navbar.navbar-transparent ul.nav>li>a:hover,nav.navbar.no-background ul.nav>li>a:hover,nav.navbar ul.nav li.scroll.active>a,nav.navbar.navbar-dark ul.nav li.dropdown ul.dropdown-menu>li>a:hover,nav.navbar ul.nav li.dropdown.on>a,nav.navbar-dark ul.nav li.dropdown.on>a{color:#f43438!important}@media(max-width:920px){nav.navbar .dropdown .megamenu-content .col-menu ul>li>a:hover,nav.navbar.navbar-dark .dropdown .megamenu-content .col-menu .title:hover{color:#f43438!important}}ul.cart-list>li.total>.btn{border-color:#f43438}nav.navbar li.dropdown ul.dropdown-menu{border-top-color:#f43438!important}ul.cart-list>li.total>.btn,.attr-nav>ul>li>a span.badge,nav.navbar .share ul>li>a:hover,nav.navbar .share ul>li>a:focus{background-color:#f43438}ul.cart-list>li.total>.btn:hover,ul.cart-list>li.total>.btn:focus{background-color:#dc3236!important}
@@ -0,0 +1,586 @@
1
+ /*
2
+ # -----------------------------------------------------------------------------
3
+ # J1: ~/assets/themes/j1/bootsnav/js/bootsnav.js
4
+ # Provides all JavaScript core functions for Bootsnav
5
+ #
6
+ # Product/Info:
7
+ # http://jekyll.one
8
+ # https://github.com/adamnurdin01/bootsnav
9
+ #
10
+ # Copyright (C) 2016 Juergen Adams
11
+ # Copyright (c) 2016 adamnurdin01
12
+ #
13
+ # J1 Template is licensed under the MIT License.
14
+ # For details, see https://jekyll.one
15
+ # Bootsnav is licensed under the MIT License.
16
+ # For details, https://github.com/adamnurdin01/bootsnav
17
+ #
18
+ # -----------------------------------------------------------------------------
19
+ # Author: adamnurdin01
20
+ # Version: v.1.1
21
+ # Created: 2016-06-02
22
+ # Last update: 2016-06-11
23
+ # -----------------------------------------------------------------------------
24
+ */
25
+ var bootsnav = (function ( options ) {
26
+
27
+ // This is the easiest way to have default options.
28
+ var settings = $.extend({
29
+ // These are the defaults.
30
+ foo_color: "#556b2f",
31
+ bar_backgroundColor: "white"
32
+ }, options );
33
+
34
+ return {
35
+ initialize: function( settings ) {
36
+ this.event();
37
+ this.hoverDropdown();
38
+ this.navbarSticky();
39
+ this.navbarScrollspy();
40
+ },
41
+ event : function(){
42
+
43
+ // ---------------------------------------------------------------- //
44
+ // Variable
45
+ // ---------------------------------------------------------------- //
46
+ var getNav = $("nav.navbar.bootsnav");
47
+
48
+ // ---------------------------------------------------------------- //
49
+ // Navbar Sticky
50
+ // ---------------------------------------------------------------- //
51
+ var navSticky = getNav.hasClass("navbar-sticky");
52
+ if( navSticky ){
53
+ // Wraped navigation
54
+ getNav.wrap("<div class='wrap-sticky'></div>");
55
+ }
56
+
57
+ // ---------------------------------------------------------------- //
58
+ // Navbar Center
59
+ // ---------------------------------------------------------------- //
60
+ if( getNav.hasClass("brand-center")){
61
+ var postsArr = new Array(),
62
+ index = $("nav.brand-center"),
63
+ $postsList = index.find('ul.navbar-nav');
64
+
65
+ //Create array of all posts in lists
66
+ index.find('ul.navbar-nav > li').each(function(){
67
+ postsArr.push($(this).html());
68
+ });
69
+
70
+ //Split the array at this point. The original array is altered.
71
+ var firstList = postsArr.splice(0, Math.round(postsArr.length / 2)),
72
+ secondList = postsArr,
73
+ ListHTML = '';
74
+
75
+ var createHTML = function(list){
76
+ ListHTML = '';
77
+ for (var i = 0; i < list.length; i++) {
78
+ ListHTML += '<li>' + list[i] + '</li>'
79
+ }
80
+ }
81
+
82
+ //Generate HTML for first list
83
+ createHTML(firstList);
84
+ $postsList.html(ListHTML);
85
+ index.find("ul.nav").first().addClass("navbar-left");
86
+
87
+ //Generate HTML for second list
88
+ createHTML(secondList);
89
+ //Create new list after original one
90
+ $postsList.after('<ul class="nav navbar-nav"></ul>').next().html(ListHTML);
91
+ index.find("ul.nav").last().addClass("navbar-right");
92
+
93
+ //Wrap navigation menu
94
+ index.find("ul.nav.navbar-left").wrap("<div class='col-half left'></div>");
95
+ index.find("ul.nav.navbar-right").wrap("<div class='col-half right'></div>");
96
+
97
+ //Selection Class
98
+ index.find('ul.navbar-nav > li').each(function(){
99
+ var dropDown = $("ul.dropdown-menu", this),
100
+ megaMenu = $("ul.megamenu-content", this);
101
+ dropDown.closest("li").addClass("dropdown");
102
+ megaMenu.closest("li").addClass("megamenu-fw");
103
+ });
104
+ }
105
+
106
+
107
+ // ---------------------------------------------------------------- //
108
+ // Navbar Sidebar
109
+ // ---------------------------------------------------------------- //
110
+ if( getNav.hasClass("navbar-sidebar")){
111
+ // Add Class to body
112
+ $("body").addClass("wrap-nav-sidebar");
113
+ getNav.wrapInner("<div class='scroller'></div>");
114
+ }else{
115
+ $(".bootsnav").addClass("on");
116
+ }
117
+
118
+ // ---------------------------------------------------------------- //
119
+ // Menu Center
120
+ // ---------------------------------------------------------------- //
121
+ if( getNav.find("ul.nav").hasClass("navbar-center")){
122
+ getNav.addClass("menu-center");
123
+ }
124
+
125
+ // ---------------------------------------------------------------- //
126
+ // Navbar Full
127
+ // ---------------------------------------------------------------- //
128
+ if( getNav.hasClass("navbar-full")){
129
+ // Add Class to body
130
+ $("nav.navbar.bootsnav").find("ul.nav").wrap("<div class='wrap-full-menu'></div>");
131
+ $(".wrap-full-menu").wrap("<div class='nav-full'></div>");
132
+ $("ul.nav.navbar-nav").prepend("<li class='close-full-menu'><a href='#'><i class='mdi mdi-close'></i></a></li>");
133
+ }else if( getNav.hasClass("navbar-mobile")){
134
+ getNav.removeClass("no-full");
135
+ }else{
136
+ getNav.addClass("no-full");
137
+ }
138
+
139
+ // ---------------------------------------------------------------- //
140
+ // Navbar Mobile
141
+ // ---------------------------------------------------------------- //
142
+ if( getNav.hasClass("navbar-mobile")){
143
+ // Add Class to body
144
+ $('.navbar-collapse').on('shown.bs.collapse', function() {
145
+ $("body").addClass("side-right");
146
+ });
147
+ $('.navbar-collapse').on('hide.bs.collapse', function() {
148
+ $("body").removeClass("side-right");
149
+ });
150
+
151
+ $(window).on("resize", function(){
152
+ $("body").removeClass("side-right");
153
+ });
154
+ }
155
+
156
+ // ---------------------------------------------------------------- //
157
+ // Navbar Fixed
158
+ // ---------------------------------------------------------------- //
159
+ if( getNav.hasClass("no-background")){
160
+ $(window).on("scroll", function(){
161
+ var scrollTop = $(window).scrollTop();
162
+ if(scrollTop >34){
163
+ $(".navbar-fixed").removeClass("no-background");
164
+ }else {
165
+ $(".navbar-fixed").addClass("no-background");
166
+ }
167
+ });
168
+ }
169
+
170
+ // ---------------------------------------------------------------- //
171
+ // Navbar Fixed
172
+ // ---------------------------------------------------------------- //
173
+ if( getNav.hasClass("navbar-transparent")){
174
+ $(window).on("scroll", function(){
175
+ var scrollTop = $(window).scrollTop();
176
+ if(scrollTop >34){
177
+ $(".navbar-fixed").removeClass("navbar-transparent");
178
+ $(".navbar-fixed").addClass("navbar-scrolled");
179
+ }else {
180
+ $(".navbar-fixed").removeClass("navbar-scrolled");
181
+ $(".navbar-fixed").addClass("navbar-transparent");
182
+ }
183
+ });
184
+ }
185
+
186
+ // ---------------------------------------------------------------- //
187
+ // Button Cart
188
+ // ---------------------------------------------------------------- //
189
+ $(".btn-cart").on("click", function(e){
190
+ e.stopPropagation();
191
+ });
192
+
193
+ // ---------------------------------------------------------------- //
194
+ // Toggle Search
195
+ // ---------------------------------------------------------------- //
196
+ $("nav.navbar.bootsnav .attr-nav").each(function(){
197
+ $("li.search > a", this).on("click", function(e){
198
+ e.preventDefault();
199
+ $(".top-search").slideToggle();
200
+ });
201
+ });
202
+ $(".input-group-addon.close-search").on("click", function(){
203
+ $(".top-search").slideUp();
204
+ });
205
+
206
+ // ---------------------------------------------------------------- //
207
+ // Toggle Side Menu
208
+ // ---------------------------------------------------------------- //
209
+ $("nav.navbar.bootsnav .attr-nav").each(function(){
210
+ $("li.side-menu > a", this).on("click", function(e){
211
+ e.preventDefault();
212
+ $("nav.navbar.bootsnav > .side").toggleClass("on");
213
+ $("body").toggleClass("on-side");
214
+ });
215
+ });
216
+ $(".side .close-side").on("click", function(e){
217
+ e.preventDefault();
218
+ $("nav.navbar.bootsnav > .side").removeClass("on");
219
+ $("body").removeClass("on-side");
220
+ });
221
+
222
+
223
+
224
+ // ---------------------------------------------------------------- //
225
+ // Wrapper
226
+ // ---------------------------------------------------------------- //
227
+ $("body").wrapInner( "<div class='wrapper'></div>");
228
+ },
229
+
230
+
231
+ // ---------------------------------------------------------------- //
232
+ // Change dropdown to hover on dekstop
233
+ // ---------------------------------------------------------------- //
234
+ hoverDropdown : function(){
235
+ var getNav = $("nav.navbar.bootsnav"),
236
+ getWindow = $(window).width(),
237
+ getNavWidth = $("nav").width(),
238
+ getHeight = $(window).height(),
239
+ getIn = getNav.find("ul.nav").data("in"),
240
+ getOut = getNav.find("ul.nav").data("out");
241
+
242
+ if( getWindow < 981 ){
243
+
244
+ // Height of scroll navigation sidebar
245
+ $(".scroller").css("height", "auto");
246
+
247
+ // Disable mouseenter event
248
+ $("nav.navbar.bootsnav ul.nav").find("li.dropdown").off("mouseenter");
249
+ $("nav.navbar.bootsnav ul.nav").find("li.dropdown").off("mouseleave");
250
+ $("nav.navbar.bootsnav ul.nav").find(".title").off("mouseenter");
251
+ $("nav.navbar.bootsnav ul.nav").off("mouseleave");
252
+ $(".navbar-collapse").removeClass("animated");
253
+
254
+ // Enable click event
255
+ $("nav.navbar.bootsnav ul.nav").each(function(){
256
+ $(".dropdown-menu", this).addClass("animated");
257
+ $(".dropdown-menu", this).removeClass(getOut);
258
+
259
+ // Dropdown Fade Toggle
260
+ $("a.dropdown-toggle", this).off('click');
261
+ $("a.dropdown-toggle", this).on('click', function (e) {
262
+ e.stopPropagation();
263
+ $(this).closest("li.dropdown").find(".dropdown-menu").first().stop().fadeToggle().toggleClass(getIn);
264
+ $(this).closest("li.dropdown").first().toggleClass("on");
265
+ return false;
266
+ });
267
+
268
+ // Hidden dropdown action
269
+ $('li.dropdown', this).each(function () {
270
+ $(this).find(".dropdown-menu").stop().fadeOut();
271
+ $(this).on('hidden.bs.dropdown', function () {
272
+ $(this).find(".dropdown-menu").stop().fadeOut();
273
+ });
274
+ return false;
275
+ });
276
+
277
+ // Megamenu style
278
+ $(".megamenu-fw", this).each(function(){
279
+ $(".col-menu", this).each(function(){
280
+ $(".content", this).addClass("animated");
281
+ $(".content", this).stop().fadeOut();
282
+ $(".title", this).off("click");
283
+ $(".title", this).on("click", function(){
284
+ $(this).closest(".col-menu").find(".content").stop().fadeToggle().addClass(getIn);
285
+ $(this).closest(".col-menu").toggleClass("on");
286
+ return false;
287
+ });
288
+
289
+ $(".content", this).on("click", function(e){
290
+ e.stopPropagation();
291
+ });
292
+ });
293
+ });
294
+ });
295
+
296
+ // Hidden dropdown
297
+ var cleanOpen = function(){
298
+ $('li.dropdown', this).removeClass("on");
299
+ $(".dropdown-menu", this).stop().fadeOut();
300
+ $(".dropdown-menu", this).removeClass(getIn);
301
+ $(".col-menu", this).removeClass("on");
302
+ $(".col-menu .content", this).stop().fadeOut();
303
+ $(".col-menu .content", this).removeClass(getIn);
304
+ }
305
+
306
+ // Hidden om mouse leave
307
+ $("nav.navbar.bootsnav").on("mouseleave", function(){
308
+ cleanOpen();
309
+ });
310
+
311
+ // Enable click atribute navigation
312
+ $("nav.navbar.bootsnav .attr-nav").each(function(){
313
+ $(".dropdown-menu", this).removeClass("animated");
314
+ $("li.dropdown", this).off("mouseenter");
315
+ $("li.dropdown", this).off("mouseleave");
316
+ $("a.dropdown-toggle", this).off('click');
317
+ $("a.dropdown-toggle", this).on('click', function (e) {
318
+ e.stopPropagation();
319
+ $(this).closest("li.dropdown").find(".dropdown-menu").first().stop().fadeToggle();
320
+ $(".navbar-toggle").each(function(){
321
+ $(".mdi", this).removeClass("mdi-close");
322
+ $(".mdi", this).addClass("mdi-menu");
323
+ $(".navbar-collapse").removeClass("in");
324
+ $(".navbar-collapse").removeClass("on");
325
+ });
326
+ });
327
+
328
+ $(this).on("mouseleave", function(){
329
+ $(".dropdown-menu", this).stop().fadeOut();
330
+ $("li.dropdown", this).removeClass("on");
331
+ return false;
332
+ });
333
+ });
334
+
335
+ // Toggle Bars
336
+ $(".navbar-toggle").each(function(){
337
+ $(this).off("click");
338
+ $(this).on("click", function(){
339
+ $(".mdi", this).toggleClass("mdi-menu");
340
+ $(".mdi", this).toggleClass("mdi-close");
341
+ cleanOpen();
342
+ });
343
+ });
344
+
345
+ } else if( getWindow > 981 ){
346
+ // Height of scroll navigation sidebar
347
+ $(".scroller").css("height", getHeight + "px");
348
+
349
+ // Navbar Sidebar
350
+ if( getNav.hasClass("navbar-sidebar")){
351
+ // Hover effect Sidebar Menu
352
+ $("nav.navbar.bootsnav ul.nav").each(function(){
353
+ $("a.dropdown-toggle", this).off('click');
354
+ $("a.dropdown-toggle", this).on('click', function (e) {
355
+ e.stopPropagation();
356
+ });
357
+
358
+ $(".dropdown-menu", this).addClass("animated");
359
+ $("li.dropdown", this).on("mouseenter", function(){
360
+ $(".dropdown-menu", this).eq(0).removeClass(getOut);
361
+ $(".dropdown-menu", this).eq(0).stop().fadeIn().addClass(getIn);
362
+ $(this).addClass("on");
363
+ return false;
364
+ });
365
+
366
+ $(".col-menu").each(function(){
367
+ $(".content", this).addClass("animated");
368
+ $(".title", this).on("mouseenter", function(){
369
+ $(this).closest(".col-menu").find(".content").stop().fadeIn().addClass(getIn);
370
+ $(this).closest(".col-menu").addClass("on");
371
+ return false;
372
+ });
373
+ });
374
+
375
+ $(this).on("mouseleave", function(){
376
+ $(".dropdown-menu", this).stop().removeClass(getIn);
377
+ $(".dropdown-menu", this).stop().addClass(getOut).fadeOut();
378
+ $(".col-menu", this).find(".content").stop().fadeOut().removeClass(getIn);
379
+ $(".col-menu", this).removeClass("on");
380
+ $("li.dropdown", this).removeClass("on");
381
+ return false;
382
+ });
383
+ });
384
+ }else{
385
+ // Hover effect Default Menu
386
+ $("nav.navbar.bootsnav ul.nav").each(function(){
387
+ $("a.dropdown-toggle", this).off('click');
388
+ $("a.dropdown-toggle", this).on('click', function (e) {
389
+ e.stopPropagation();
390
+ });
391
+
392
+ $(".megamenu-fw", this).each(function(){
393
+ $(".title", this).off("click");
394
+ $("a.dropdown-toggle", this).off("click");
395
+ $(".content").removeClass("animated");
396
+ });
397
+
398
+ $(".dropdown-menu", this).addClass("animated");
399
+ $("li.dropdown", this).on("mouseenter", function(){
400
+ $(".dropdown-menu", this).eq(0).removeClass(getOut);
401
+ $(".dropdown-menu", this).eq(0).stop().fadeIn().addClass(getIn);
402
+ $(this).addClass("on");
403
+ return false;
404
+ });
405
+
406
+ $("li.dropdown", this).on("mouseleave", function(){
407
+ $(".dropdown-menu", this).eq(0).removeClass(getIn);
408
+ $(".dropdown-menu", this).eq(0).stop().fadeOut().addClass(getOut);
409
+ $(this).removeClass("on");
410
+ });
411
+
412
+ $(this).on("mouseleave", function(){
413
+ $(".dropdown-menu", this).removeClass(getIn);
414
+ $(".dropdown-menu", this).eq(0).stop().fadeOut().addClass(getOut);
415
+ $("li.dropdown", this).removeClass("on");
416
+ return false;
417
+ });
418
+ });
419
+ }
420
+
421
+ // ---------------------------------------------------------------- //
422
+ // Hover effect Atribute Navigation
423
+ // ---------------------------------------------------------------- //
424
+ $("nav.navbar.bootsnav .attr-nav").each(function(){
425
+ $("a.dropdown-toggle", this).off('click');
426
+ $("a.dropdown-toggle", this).on('click', function (e) {
427
+ e.stopPropagation();
428
+ });
429
+
430
+ $(".dropdown-menu", this).addClass("animated");
431
+ $("li.dropdown", this).on("mouseenter", function(){
432
+ $(".dropdown-menu", this).eq(0).removeClass(getOut);
433
+ $(".dropdown-menu", this).eq(0).stop().fadeIn().addClass(getIn);
434
+ $(this).addClass("on");
435
+ return false;
436
+ });
437
+
438
+ $("li.dropdown", this).on("mouseleave", function(){
439
+ $(".dropdown-menu", this).eq(0).removeClass(getIn);
440
+ $(".dropdown-menu", this).eq(0).stop().fadeOut().addClass(getOut);
441
+ $(this).removeClass("on");
442
+ });
443
+
444
+ $(this).on("mouseleave", function(){
445
+ $(".dropdown-menu", this).removeClass(getIn);
446
+ $(".dropdown-menu", this).eq(0).stop().fadeOut().addClass(getOut);
447
+ $("li.dropdown", this).removeClass("on");
448
+ return false;
449
+ });
450
+ });
451
+ }
452
+
453
+ // ---------------------------------------------------------------- //
454
+ // Menu Fullscreen
455
+ // ---------------------------------------------------------------- //
456
+ if( getNav.hasClass("navbar-full")){
457
+ var windowHeight = $(window).height(),
458
+ windowWidth = $(window).width();
459
+
460
+ $(".nav-full").css("height", windowHeight + "px");
461
+ $(".wrap-full-menu").css("height", windowHeight + "px");
462
+ $(".wrap-full-menu").css("width", windowWidth + "px");
463
+
464
+ $(".navbar-collapse").addClass("animated");
465
+ $(".navbar-toggle").each(function(){
466
+ var getId = $(this).data("target");
467
+ $(this).off("click");
468
+ $(this).on("click", function(e){
469
+ e.preventDefault();
470
+ $(getId).removeClass(getOut);
471
+ $(getId).addClass("in");
472
+ $(getId).addClass(getIn);
473
+ return false;
474
+ });
475
+
476
+ $("li.close-full-menu").on("click", function(e){
477
+ e.preventDefault();
478
+ $(getId).addClass(getOut);
479
+ setTimeout(function(){
480
+ $(getId).removeClass("in");
481
+ $(getId).removeClass(getIn);
482
+ }, 500);
483
+ return false;
484
+ });
485
+ });
486
+ }
487
+ },
488
+
489
+ // ---------------------------------------------------------------- //
490
+ // Navbar Sticky
491
+ // ---------------------------------------------------------------- //
492
+ navbarSticky : function(){
493
+ var getNav = $("nav.navbar.bootsnav"),
494
+ navSticky = getNav.hasClass("navbar-sticky");
495
+
496
+ if( navSticky ){
497
+
498
+ // Set Height Navigation
499
+ var getHeight = getNav.height();
500
+ $(".wrap-sticky").height(getHeight);
501
+
502
+ // Windown on scroll
503
+ var getOffset = $(".wrap-sticky").offset().top;
504
+ $(window).on("scroll", function(){
505
+ var scrollTop = $(window).scrollTop();
506
+ if(scrollTop > getOffset){
507
+ getNav.addClass("sticked");
508
+ }else {
509
+ getNav.removeClass("sticked");
510
+ }
511
+ });
512
+ }
513
+ },
514
+
515
+ // ---------------------------------------------------------------- //
516
+ // Navbar Scrollspy
517
+ // ---------------------------------------------------------------- //
518
+ navbarScrollspy : function(){
519
+ var navScrollSpy = $(".navbar-scrollspy"),
520
+ $body = $('body'),
521
+ getNav = $('nav.navbar.bootsnav'),
522
+ offset = getNav.outerHeight();
523
+
524
+ if( navScrollSpy.length ){
525
+ $body.scrollspy({target: '.navbar', offset: offset });
526
+
527
+ // Animation Scrollspy
528
+ $('.scroll').on('click', function(event) {
529
+ event.preventDefault();
530
+
531
+ // Active link
532
+ $('.scroll').removeClass("active");
533
+ $(this).addClass("active");
534
+
535
+ // Remove navbar collapse
536
+ $(".navbar-collapse").removeClass("in");
537
+
538
+ // Toggle Bars
539
+ $(".navbar-toggle").each(function(){
540
+ $(".mdi", this).removeClass("mdi-close");
541
+ $(".mdi", this).addClass("mdi-menu");
542
+ });
543
+
544
+ // Scroll
545
+ var scrollTop = $(window).scrollTop(),
546
+ $anchor = $(this).find('a'),
547
+ $section = $($anchor.attr('href')).offset().top,
548
+ $window = $(window).width(),
549
+ $minusDesktop = getNav.data("minus-value-desktop"),
550
+ $minusMobile = getNav.data("minus-value-mobile"),
551
+ $speed = getNav.data("speed");
552
+
553
+ if( $window > 992 ){
554
+ var $position = $section - $minusDesktop;
555
+ }else{
556
+ var $position = $section - $minusMobile;
557
+ }
558
+
559
+ $('html, body').stop().animate({
560
+ scrollTop: $position
561
+ }, $speed);
562
+ });
563
+
564
+ // Activate Navigation
565
+ var fixSpy = function() {
566
+ var data = $body.data('bs.scrollspy');
567
+ if (data) {
568
+ offset = getNav.outerHeight();
569
+ data.options.offset = offset;
570
+ $body.data('bs.scrollspy', data);
571
+ $body.scrollspy('refresh');
572
+ }
573
+ }
574
+
575
+ // Activate Navigation on resize
576
+ var resizeTimer;
577
+ $(window).on('resize', function() {
578
+ clearTimeout(resizeTimer);
579
+ var resizeTimer = setTimeout(fixSpy, 200);
580
+ });
581
+ }
582
+ }
583
+
584
+ };
585
+
586
+ }( jQuery ));