1var App = (function () { 2 3 var config = {//Basic Config 4 animate: false, 5 popover: true, 6 assetsPath: 'assets', 7 imgPath: 'img', 8 jsPath: 'js', 9 libsPath: 'lib', 10 tooltip: true 11 }; 12 13 function toggleSideBar(_this){ 14 var b = $("#sidebar-collapse")[0]; 15 var w = $("#cl-wrapper"); 16 var s = $(".cl-sidebar"); 17 18 if(w.hasClass("sb-collapsed")){ 19 $(".fa",b).addClass("fa-angle-left").removeClass("fa-angle-right"); 20 w.removeClass("sb-collapsed"); 21 }else{ 22 $(".fa",b).removeClass("fa-angle-left").addClass("fa-angle-right"); 23 w.addClass("sb-collapsed"); 24 } 25 } 26 27 function updateHeight(){ 28 if(!$("#cl-wrapper").hasClass("fixed-menu")){ 29 var button = $("#cl-wrapper .collapse-button").outerHeight(); 30 var navH = $("#head-nav").height(); 31 var cont = $("#pcont").height(); 32 var sidebar = ($(window).width() > 755 && $(window).width() < 963)?0:$("#cl-wrapper .menu-space .content").height(); 33 var windowH = $(window).height(); 34 35 if(sidebar < windowH && cont < windowH){ 36 if(($(window).width() > 755 && $(window).width() < 963)){ 37 var height = windowH; 38 }else{ 39 var height = windowH - button - navH; 40 } 41 }else if((sidebar < cont && sidebar > windowH) || (sidebar < windowH && sidebar < cont)){ 42 var height = cont + button + navH; 43 }else if(sidebar > windowH && sidebar > cont){ 44 var height = sidebar + button; 45 } 46 47 $("#cl-wrapper .menu-space").css("min-height",height); 48 }else{ 49 $("#cl-wrapper .nscroller").nanoScroller({ preventPageScrolling: true }); 50 } 51 } 52 53 return { 54 conf: config, 55 init: function (options) { 56 //Extends basic config with options 57 $.extend( config, options ); 58 59 /*VERTICAL MENU*/ 60 $(".cl-vnavigation li ul").each(function(){ 61 $(this).parent().addClass("parent"); 62 }); 63 64 $(".cl-vnavigation li ul li.active").each(function(){ 65 $(this).parent().show().parent().addClass("open"); 66 }); 67 68 $(".cl-vnavigation").delegate(".parent > a","click",function(e){ 69 $(".cl-vnavigation .parent.open > ul").not($(this).parent().find("ul")).slideUp(300, 'swing',function(){ 70 $(this).parent().removeClass("open"); 71 }); 72 73 var ul = $(this).parent().find("ul"); 74 ul.slideToggle(300, 'swing', function () { 75 var p = $(this).parent(); 76 if(p.hasClass("open")){ 77 p.removeClass("open"); 78 }else{ 79 p.addClass("open"); 80 } 81 82 $("#cl-wrapper .nscroller").nanoScroller({ preventPageScrolling: true }); 83 }); 84 e.preventDefault(); 85 }); 86 87 /*Small devices toggle*/ 88 $(".cl-toggle").click(function(e){ 89 var ul = $(".cl-vnavigation"); 90 ul.slideToggle(300, 'swing', function () { 91 }); 92 e.preventDefault(); 93 }); 94 95 /*Collapse sidebar*/ 96 $("#sidebar-collapse").click(function(){ 97 toggleSideBar(); 98 }); 99 100 101 if($("#cl-wrapper").hasClass("fixed-menu")){ 102 var scroll = $("#cl-wrapper .menu-space"); 103 scroll.addClass("nano nscroller"); 104 105 function update_height(){ 106 var button = $("#cl-wrapper .collapse-button"); 107 var collapseH = button.outerHeight(); 108 var navH = $("#head-nav").height(); 109 var height = $(window).height() - ((button.is(":visible"))?collapseH:0) - navH; 110 scroll.css("height",height); 111 $("#cl-wrapper .nscroller").nanoScroller({ preventPageScrolling: true }); 112 } 113 114 $(window).resize(function() { 115 update_height(); 116 }); 117 118 update_height(); 119 $("#cl-wrapper .nscroller").nanoScroller({ preventPageScrolling: true }); 120 121 } 122 123 /*SubMenu hover */ 124 var tool = $("<div id='sub-menu-nav' style='position:fixed;z-index:9999;'></div>"); 125 126 function showMenu(_this, e){ 127 if(($("#cl-wrapper").hasClass("sb-collapsed") || ($(window).width() > 755 && $(window).width() < 963)) && $("ul",_this).length > 0){ 128 $(_this).removeClass("ocult"); 129 var menu = $("ul",_this); 130 if(!$(".dropdown-header",_this).length){ 131 var head = '<li class="dropdown-header">' + $(_this).children().html() + "</li>" ; 132 menu.prepend(head); 133 } 134 135 tool.appendTo("body"); 136 var top = ($(_this).offset().top + 8) - $(window).scrollTop(); 137 var left = $(_this).width(); 138 139 tool.css({ 140 'top': top, 141 'left': left + 8 142 }); 143 tool.html('<ul class="sub-menu">' + menu.html() + '</ul>'); 144 tool.show(); 145 146 menu.css('top', top); 147 }else{ 148 tool.hide(); 149 } 150 } 151 152 $(".cl-vnavigation li").hover(function(e){
153 showMenu(this, e); 154 },function(e){ 155 tool.removeClass("over"); 156 setTimeout(function(){ 157 if(!tool.hasClass("over") && !$(".cl-vnavigation li:hover").length > 0){ 158 tool.hide(); 159 } 160 },500); 161 }); 162 163 tool.hover(function(e){ 164 $(this).addClass("over"); 165 },function(){ 166 $(this).removeClass("over"); 167 tool.fadeOut("fast"); 168 }); 169 170 171 $(document).click(function(){ 172 tool.hide(); 173 }); 174 175 $(document).on('touchstart click', function(e){ 176 tool.fadeOut("fast"); 177 }); 178 179 tool.click(function(e){ 180 e.stopPropagation(); 181 }); 182 183 $(".cl-vnavigation li").click(function(e){ 184 if((($("#cl-wrapper").hasClass("sb-collapsed") || ($(window).width() > 755 && $(window).width() < 963)) && $("ul",this).length > 0) && !($(window).width() < 755)){ 185 showMenu(this, e); 186 e.stopPropagation(); 187 } 188 }); 189 190 /*Return to top*/ 191 var offset = 220; 192 var duration = 500; 193 var button = $('<a href="#" class="back-to-top"><i class="fa fa-angle-up"></i></a>'); 194 button.appendTo("body"); 195 196 jQuery(window).scroll(function() { 197 if (jQuery(this).scrollTop() > offset) { 198 jQuery('.back-to-top').fadeIn(duration); 199 } else { 200 jQuery('.back-to-top').fadeOut(duration); 201 } 202 }); 203 204 jQuery('.back-to-top').click(function(event) { 205 event.preventDefault(); 206 jQuery('html, body').animate({scrollTop: 0}, duration); 207 return false; 208 }); 209 210 211 /*NanoScroller*/ 212 $(".nscroller").nanoScroller(); 213 214 /*Animate Entrance*/ 215 if( config.animate ){ 216 $("body").animate({opacity:1,'margin-left':0},400); 217 }else{ 218 $("body").css({opacity:1,'margin-left':0}); 219 } 220 221 /*Bind plugins on hidden elements*/ 222 /*Dropdown shown event*/ 223 $('.dropdown').on('shown.bs.dropdown', function () { 224 $(".nscroller").nanoScroller(); 225 }); 226 227 /*Tabs refresh hidden elements*/ 228 $('.nav-tabs').on('shown.bs.tab', function (e) { 229 $(".nscroller").nanoScroller(); 230 }); 231 232 /*Tooltips*/ 233 if(config.tooltip){ 234 $('.ttip, [data-toggle="tooltip"]').tooltip(); 235 } 236 237 /*Popover*/ 238 if(config.popover){ 239 $('[data-popover="popover"]').popover(); 240 } 241 242 } 243 }; 244 245})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.