1var App; 2(function ($) { 3 function section7_inside() { 4 var $section = $(".section.s7"); 5 var $slideshow = $section.find(".carousel"); 6 $slideshow.owlCarousel({ 7 pagination: true, 8 navigation: false, 9 autoPlay: $slideshow.find(".item").length > 1 ? 7000 : false, 10 singleItem: true, 11 transitionStyle: "fade" 12 }); 13 } 14 15 App = { 16 /** 17 * @type Boolean 18 */ 19 isHome: false, 20 21 tplDir: "", 22 ajaxUrl: "", 23 24 heightEqualizationNeeded: "", 25 26 init: function () { 27 var me = App; 28 var home = $("body.home"); 29 me.isHome = home.length > 0; 30 if (typeof theme !== "undefined") { 31 me.tplDir = theme.tplDir; 32 me.ajaxUrl = theme.ajaxUrl; 33 } 34 35 // init Masonry 36 /* 37 var $masonryGrid = $('.masonry-grid').masonry({ 38 // options 39 itemSelector: '.item', 40 columnWidth: 200 41 }); 42 $masonryGrid.imagesLoaded().progress( function() { 43 $masonryGrid.masonry('layout'); 44 }); 45 */ 46 47 // init Isotope 48 var $grid = $('.isotope-grid').isotope({ 49 itemSelector: '.item', 50 layoutMode: 'fitRows', 51 masonry: { 52 columnWidth: 2, 53 isFitWidth: true 54 }, 55 getSortData: { 56 name: '.name', 57 symbol: '.type', 58 category: '[data-category]' 59 } 60 }); 61 // bind filter button click 62 $('#isotope-filters').on( 'click', 'button', function() { 63 var filterValue = $( this ).attr('data-filter'); 64 // use filterFn if matches value 65 //filterValue = filterFns[ filterValue ] || filterValue; 66 $grid.isotope({ filter: filterValue }); 67 }); 68 // bind sort button click 69 $('#isotope-sorts').on( 'click', 'button', function() { 70 var sortByValue = $(this).attr('data-sort-by'); 71 $grid.isotope({ sortBy: sortByValue }); 72 }); 73 // change is-checked class on buttons 74 $('.button-group').each( function( i, buttonGroup ) { 75 var $buttonGroup = $( buttonGroup ); 76 $buttonGroup.on( 'click', 'button', function() { 77 $buttonGroup.find('.is-checked').removeClass('is-checked'); 78 $( this ).addClass('is-checked'); 79 }); 80 }); 81 82 83 $("[data-action=toggle]") 84 .on("click", function (e) { 85 e.preventDefault(); 86 var trigger = $(e.currentTarget); 87 var target = $(trigger.data("target")); 88 target.each( 89 function (index, item) { 90 var $item = $(item); 91 var effect = target.attr("data-effect"); 92 var hidden = $item.css("display") === "none" || $item.hasClass("off"); 93 switch (effect) { 94 case "slide": 95 if (hidden) { 96 $item.slideDown(200); 97 } 98 else { 99 $item.slideUp(200); 100 } 101 break; 102 default: 103 if (hidden) { 104 $item 105 .removeClass("off") 106 .addClass("on"); 107 108 } else { 109 $item 110 .removeClass("on") 111 .addClass("off"); 112 } 113 } 114 115 if (hidden) { 116 trigger.addClass("active"); 117 } 118 else { 119 trigger.removeClass("active"); 120 } 121 122 } 123 ) 124 125 }); 126 127 $("body") 128 .on("click", function (e) { 129 var $target = $(e.target); 130 var selector = "#mobile-nav"; 131 var mobileNav = $(selector); 132 if (mobileNav.hasClass("on") && $target.data("target") !== selector 133 && $target.parents("[data-target]").data("target") !== selector 134 && $target.prop("id") !== mobileNav.prop("id") 135 && $target.parents(selector).length === 0) { 136 mobileNav.removeClass("on") 137 .addClass("off"); 138 $("body").removeClass("mobile-nav-on"); 139 } 140 }); 141 142 $("a.tab") 143 .on("click", function (e) { 144 e.preventDefault(); 145 var $tab = $(e.currentTarget); 146 var $activeTab = $tab.parents(".tabs").find(".tab.active"); 147 var $activeTarget = $($activeTab.attr("data-target")); 148 var targetID = $tab.attr("data-target"); 149 var $target = $(targetID); 150 $activeTab.removeClass("active"); 151 $activeTarget.removeClass("active"); 152 $tab.addClass("active"); 153 $target.addClass("active"); 154 if (App.heightEqualizationNeeded !== "") { 155 App.equalizeHeights($(App.heightEqualizationNeeded)); 156 } 157 }); 158 159 $(".accordion .header") 160 .on("click", function (e) { 161 e.preventDefault(); 162 var $this = $(e.currentTarget); 163 var $li = $this.parents("li"); 164 var $content = $li.children(".content"); 165 var currentlyActive = $li.hasClass("active"); 166 167 $(".accordion li.active") 168 .removeClass("active") 169 .children(".content").slideUp(); 170 171 if (currentlyActive) { 172 $li.removeClass("active"); 173 $content.slideUp(); 174 } 175 else { 176 $li.addClass("active"); 177 $content.slideDown(); 178 } 179 }); 180 181 $("a.collapse").on("click", function (e) { 182 e.preventDefault(); 183 var $this = $(e.currentTarget); 184 var $collapsible = $this.parent().parent().find(".collapsible"); 185 if ($collapsible.is(":visible")) { 186 $collapsible.slideUp(); 187 } 188 else { 189 $collapsible.slideDown(); 190 } 191 }); 192 193 $("ul.tabs").children().first().children("a").trigger("click"); 194 195 $(".gallery a, a.fancybox").fancybox(); 196 197 $(".post-content a:has(img)").fancybox({ 198 fitToView: false 199 }); 200 201 $("a:has(button)").addClass("unstyled"); 202 203 $("#map").on("click", function (e) { 204 $(".map-overlay").addClass("disabled"); 205 }) 206 .on("mouseleave", function (e) { 207 $(".map-overlay").removeClass("disabled"); 208 }); 209 210 // disable wheel on page scroll on google map 211 $('.map').click(function () { 212 $('.map iframe').css("pointer-events", "auto"); 213 }); 214 $( ".map" ).mouseleave(function() { 215 $('.map iframe').css("pointer-events", "none"); 216 }); 217 $('.map iframe').css("pointer-events", "none"); 218 219 $('[data-target="#mobile-nav"]').on("click", function (e) { 220 var $this = $(e.currentTarget); 221 var $target = $($this.attr("data-target")); 222 var $body = $(document.body); 223 if ($target.hasClass("on")) { 224 $body.addClass("mobile-nav-on"); 225 } 226 else { 227 $body.removeClass("mobile-nav-on"); 228 } 229 }); 230 231 $("a#searchsubmit").click(function(e) { 232 e.preventDefault(); 233 $(this).closest("form").submit(); 234 }) 235 236 App.initMobileNav(); 237 238 App.onResize(); 239 240 return App; 241 }, 242 243 paralaxScrolling: function ($obj) { 244 var $win = $(window); 245 if ($obj.length > 0) { 246 var dataEase = $obj.attr("data-ease"); 247 var ease = dataEase ? parseFloat(dataEase) : .5; 248 var $container = $obj.parents(".scroll-container"); 249 var abh = $("#wpadminbar").height(); 250 251 $win.on("scroll pseudo-scroll", function (e) { 252 var matrix = [1, 0, 0, 1, 0, 0]; 253 var $win = $(e.currentTarget); 254 var scrollTop = $win.scrollTop(); 255 var trans = $obj.css("transform"); 256 if (trans !== "none") { 257 var pattern = /matrix\(([^)]*)\)/; 258 var match = trans.match(pattern); 259 if (match[1]) { 260 matrix = match[1].split(", "); 261 for (var i = 0; i < matrix.length; i++) { 262 matrix[i] = parseFloat(matrix[i]); 263 } 264 } 265 } 266 267 /* 268 if ($win.width() > 780) { 269 var goal = (scrollTop + abh) * ease; 270 if ($container.length > 0) { 271 goal = ((scrollTop + abh - $container.offset().top) * ease) ; 272 } 273 matrix[5] = goal; 274 } 275 else { 276 matrix[5] = 0; 277 } 278 */ 279 // dont move it up!!! 280 matrix[5] = 0; 281
282 var transform = "matrix(" + matrix.join(", ") + ")"; 283 284 $obj.css({ 285 transform: transform 286 }); 287 }); 288 } 289 }, 290 291 isMobileView: function () { 292 return $(window).width() <= 780; 293 }, 294 295 equalizeHeights: function ($selector) { 296 var max = 0; 297 if ($selector.css("float") !== "none") { 298 $selector.each( 299 function (index, item) { 300 var $item = $(item); 301 $item.css("height", ""); 302 var h = $item.height(); 303 if (h > max) { 304 max = h; 305 } 306 } 307 ).height(max); 308 $selector.trigger("height-equalized"); 309 } 310 else { 311 $selector.css("height", ""); 312 } 313 314 return $selector; 315 }, 316 317 initMobileNav: function () { 318 var $nav = $("#mobile-nav"); 319 $nav.find(".sub-toggle").on("click", function (e) { 320 e.preventDefault(); 321 var $this = $(e.currentTarget); 322 var $li = $this.parent().parent(); 323 var $sub = $li.find("> .sub-menu"); 324 if ($sub.is(":visible")) { 325 $li.removeClass("open"); 326 $sub.slideUp(400, function () { 327 $nav.trigger("mobile-nav-item-close", $li); 328 }); 329 } 330 else { 331 $li.addClass("open"); 332 $sub.slideDown(400, function () { 333 $nav.trigger("mobile-nav-item-open", $li); 334 }); 335 } 336 }) 337 }, 338 339 resizeHandler: function () { 340 // App.setHeroContentBlock(); 341 if (App.heightEqualizationNeeded !== "") { 342 App.equalizeHeights($(App.heightEqualizationNeeded)); 343 } 344 345 // iframes in content 346 var $iframe = $(".post-content iframe, .video iframe"); 347 if ($iframe.length > 0) { 348 $iframe.each( 349 function (index, item) { 350 var $item = $(item); 351 var w = parseInt($item.attr("width")); 352 var h = parseInt($item.attr("height")); 353 if (!isNaN(w) && !isNaN(h) && $item.css("display") === "block") { 354 var currW = $item.width(); 355 if (currW !== w) { 356 var ar = w / h; 357 $item.height(currW / ar); 358 } 359 else { 360 $item.css("height", ""); 361 } 362 } 363 } 364 ) 365 } 366 }, 367 368 onHashChange: function () { 369 var hash = window.location.hash.substr(1); 370 if (hash !== "") { 371 var parts = hash.split("/"); 372 if (parts[0] === "tab") { 373 var target = "#".concat(parts[1]); 374 var $target = $(target); 375 if ($target.length > 0) { 376 $("ul.tabs").find("a[data-target='" + target + "']").trigger("click"); 377 $("body, html").animate({ 378 scrollTop: $target.offset().top - $(".the-header").height() 379 }, 1000) 380 } 381 } 382 } 383 }, 384 /** 385 * Window resize event handler 386 */ 387 onResize: function () { 388 App.resizeHandler(); 389 }, 390 391 onScroll: function () { 392 var $body = $("body"); 393 if ($(document).scrollTop() > $(".the-header").height()) { 394 $body.addClass("scrolled"); 395 } 396 else { 397 $body.removeClass("scrolled"); 398 } 399 } 400 }; 401 402 $(window) 403 .on("load", function () { 404 App.init(); 405 App.resizeHandler(); 406 407 if (window.location.hash !== "") { 408 App.onHashChange(); 409 } 410 }) 411 .on("hashchange", function () { 412 App.onHashChange(); 413 }) 414 .on("resize", function () { 415 App.onResize(); 416 }) 417 .on("scroll", function () { 418 App.onScroll(); 419 }); 420 421 $(document) 422 .on("ready", function () { 423 if(!$("body").hasClass("page-id-104")) section7_inside(); 424 }); 425 426})(jQuery);
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.