1/* 2PAGELAYER 3http://pagelayer.com/ 4(c) Pagelayer Team 5*/ 6 7var pagelayer_doc_width; 8 9// Things to do on document load 10jQuery(document).ready(function(){ 11 12 // Current width 13 pagelayer_doc_width = jQuery(document).width(); 14 15 // Rows 16 jQuery('.pagelayer-row-stretch-full').each(function(){ 17 pagelayer_pl_row_full(jQuery(this)); 18 }); 19 20 jQuery('.pagelayer-anim_heading').each(function(){ 21 pagelayer_anim_heading(jQuery(this)); 22 }); 23 24 // Setup any sliders 25 jQuery('.pagelayer-image_slider').each(function(){ 26 pagelayer_pl_image_slider(jQuery(this)); 27 }); 28 29 jQuery('.pagelayer-accordion').each(function(){ 30 pagelayer_pl_accordion(jQuery(this)); 31 }); 32 33 jQuery('.pagelayer-collapse').each(function(){ 34 pagelayer_pl_collapse(jQuery(this)); 35 }); 36 37 jQuery('.pagelayer-tabs').each(function(){ 38 pagelayer_pl_tabs(jQuery(this)); 39 }); 40 41 jQuery('.pagelayer-video').each(function(){ 42 pagelayer_pl_video(jQuery(this)); 43 }); 44 45 jQuery('.pagelayer-image').each(function(){ 46 pagelayer_pl_image(jQuery(this)); 47 }); 48 49 jQuery('.pagelayer-grid_gallery').each(function(){ 50 pagelayer_pl_grid_lightbox(jQuery(this)); 51 }); 52 53 jQuery('.pagelayer-row, .pagelayer-inner_row, .pagelayer-col').each(function(){ 54 pagelayer_pl_row_video(jQuery(this)); 55 }); 56 57 jQuery('.pagelayer-parallax-window img').each(function(){ 58 pagelayer_pl_row_parallax(jQuery(this)); 59 }); 60 61 jQuery('.pagelayer-recaptcha, .pagelayer-g-recaptcha-v3-token').each(function(){ 62 pagelayer_recaptcha_loader(jQuery(this)); 63 }); 64 65 jQuery('.pagelayer-wp_menu').each(function(){ 66 pagelayer_primary_menu(jQuery(this)); 67 }); 68 69 jQuery('.pagelayer-contact').each(function(){ 70 pagelayer_contact_form(jQuery(this)); 71 }); 72 73 jQuery('.pagelayer-countdown').each(function(){ 74 pagelayer_countdown(jQuery(this)); 75 }); 76 77 jQuery('.pagelayer-testimonial_slider').each(function(){ 78 pagelayer_pl_testimonial_slider(jQuery(this)); 79 }); 80 81 jQuery('.pagelayer-social_grp').each(function(){ 82 pagelayer_pl_social_profile(jQuery(this)); 83 }); 84 85 jQuery('.pagelayer-scroll-to-element').each(function () { 86 pagelayer_button_element_scroll(jQuery(this)); 87 }); 88 89 jQuery('.pagelayer-bgimg-slider').each(function () { 90 pagelayer_pl_row_slider(jQuery(this)); 91 }); 92 93 jQuery('.pagelayer-stars-container').each(function(){ 94 pagelayer_stars(jQuery(this)); 95 }); 96 97 jQuery('.pagelayer-infinite-posts').each(function(){ 98 pagelayer_infinite_posts(jQuery(this)); 99 }); 100 101 jQuery('.pagelayer-youtube-video').each(function(){ 102 pagelayer_create_yt_player(jQuery(this)); 103 }); 104 105 // We need to call the is visible thing to show the widgets loading effect 106 if(jQuery('.pagelayer-counter-content,.pagelayer-progress-container').length > 0){ 107 108 // First Call 109 pagelayer_counter(); 110 pagelayer_progress(); 111 112 jQuery(window).scroll(function() { 113 pagelayer_progress(); 114 pagelayer_counter(); 115 }); 116 } 117 118 new WOW({boxClass:'pagelayer-wow'}).init(); 119 120 // Remove pagelayer-wow temporary style after wow init added from wp_head 121 jQuery('#pagelayer-wow-animation-style').remove(); 122 123}); 124 125// For automatic row change 126jQuery(window).resize(function() { 127 128 // Primary Menu 129 jQuery('.pagelayer-wp_menu').each(function(){ 130 pagelayer_primary_menu(jQuery(this)); 131 }); 132 133 var new_vw = jQuery(document).width(); 134 135 if(new_vw == pagelayer_doc_width){ 136 return false; 137 } 138 139 pagelayer_doc_width = new_vw; 140 141 // Remove style 142 jQuery('.pagelayer-row-stretch-full').removeAttr('style'); 143 144 // Set a timeout to prevent bubbling 145 setTimeout(function(){ 146 147 jQuery('.pagelayer-row-stretch-full').each(function(){ 148 pagelayer_pl_row_full(jQuery(this)); 149 }); 150 151 }, 200); 152 153}); 154 155// Get document for gutenberg 156function pagelayerGetDocumentElement(){ 157 158 // Find the iframe element with the name "editor-canvas". 159 const editorIframe = document.querySelectorAll( 'iframe[name="editor-canvas"]' ); 160 161 if(! editorIframe?.[ 0 ]){ 162 return document; 163 } 164 165 // Get the document of the iframe. 166 const iframeDocument = editorIframe[ 0 ]?.contentWindow?.document || editorIframe[ 0 ]?.contentDocument; 167 168 if ( ! iframeDocument ) { 169 return document; 170 } 171 172 // Set the root element to the iframe document. 173 return iframeDocument; 174}; 175 176// Get Window for gutenberg 177function pagelayerGetCurrentWindow(){ 178 var doc = pagelayerGetDocumentElement(); 179 return doc.defaultView || window; 180} 181 182// Modify jQuery for gutenberg tablet and mobile 183function pagelayer_query(sel, doc) { 184 doc = doc || pagelayerGetDocumentElement(); 185 return jQuery(sel, doc);
186} 187 188// Check if element is visible 189function pagelayer_isVisible(ele) { 190 191 var win = pagelayerGetCurrentWindow(); 192 193 var offset = win.innerHeight; 194 var viewTop = win.pageYOffset; 195 var viewBottom = viewTop + offset - Math.min(ele.height(), ele.innerHeight()); 196 var top = ele.offset().top; 197 var bottom = top + ele.innerHeight(); 198 199 if(top <= viewBottom && bottom >= viewTop){ 200 return true; 201 } 202 203 return false; 204} 205 206// Get media mode 207function pagelayer_get_media_mode(){ 208 209 var win = pagelayerGetCurrentWindow(); 210 211 if(win.matchMedia("(min-width: "+ (pagelayer_settings['tablet_breakpoint'] + 1) +"px)").matches){ 212 return 'desktop'; 213 } 214 215 if(win.matchMedia("(max-width: "+ pagelayer_settings['tablet_breakpoint'] +"px) and (min-width: "+ (pagelayer_settings['mobile_breakpoint'] + 1) +"px)").matches){ 216 return 'tablet'; 217 } 218 219 if(win.matchMedia("(max-width: "+ pagelayer_settings['mobile_breakpoint'] +"px)").matches){ 220 return 'mobile'; 221 } 222 223 return 'desktop'; 224} 225 226// Row background video and parallax 227function pagelayer_pl_row_video(jEle){ 228 229 var vEle = jEle.children('.pagelayer-background-video'); 230 231 // Not a video in the element 232 if(vEle.length < 1){ 233 return true; 234 } 235 236 var setup = vEle.attr('pagelayer-setup'); 237 if(setup && setup.length > 0){ 238 return true; 239 } 240 241 var frame_width = vEle.width(); 242 var frame_height = (frame_width/100)*56.25; 243 var height = vEle.height(); 244 245 if(frame_height < height){ 246 frame_height = height; 247 } 248 249 vEle.children().css({'width':frame_width+'px','height':frame_height+'px'}); 250 251 if(vEle.find('.pagelayer-youtube-video').length > 0){ 252 pagelayer_create_yt_player(vEle.find('.pagelayer-youtube-video')); 253 } 254 255 vEle.attr('pagelayer-setup', 1); 256 257} 258 259function pagelayer_create_yt_player(jEle){ 260 261 var pEle = jEle.parent(), 262 aspectRatioSetting = '16:9', 263 containerWidth = pEle.outerWidth(), 264 containerHeight = pEle.outerHeight(), 265 aspectRatioArray = aspectRatioSetting.split(':'), 266 aspectRatio = aspectRatioArray[0] / aspectRatioArray[1], 267 isWidthFixed = containerWidth / containerHeight > aspectRatio, 268 width= isWidthFixed ? containerWidth : containerHeight * aspectRatio, 269 height= isWidthFixed ? containerWidth / aspectRatio : containerHeight; 270 271 var yt_api_interval = setInterval(function(){ 272 273 if(!(window.YT && YT.loaded)){ 274 return 275 } 276 277 clearInterval(yt_api_interval); 278 279 var settings ={}; 280 settings.loop = jEle.attr('data-loop'); 281 settings.videoid = jEle.attr('data-videoid'); 282 settings.mute = jEle.attr('data-mute'); 283 284 var player; 285 286 var onPlayerReady = function(event) { 287 event.target.playVideo(); 288 } 289 290 player = new YT.Player(jEle[0], { 291 width: width, 292 height: height, 293 videoId: settings.videoid, 294 playerVars: { 295 controls: 0, 296 rel: 0, 297 loop: settings.loop, 298 mute:settings.mute, 299 playsinline: 1, 300 playlist: settings.videoid, 301 }, 302 events: { 303 'onReady': onPlayerReady, 304 } 305 }); 306 307 }, 500); 308 309} 310 311// Row background parallax 312function pagelayer_pl_row_parallax(jEle){ 313 314 //Parallax background 315 var setup = jEle.attr('pagelayer-setup'); 316 if(setup && setup.length > 0){ 317 return true; 318 } 319 320 new pagelayerParallax(jEle); 321 jEle.attr('pagelayer-setup', 1); 322} 323 324// Adjust rows 325function pagelayer_pl_row_full(jEle, html){ 326 327 html = html || pagelayer_query('html'); 328 329 // Get current width 330 var vw = html[0].clientWidth; 331 332 // Now give the row the width 333 jEle.css({'width': vw, 'max-width': '100vw'}); 334 335 // Set the offset 336 jEle.offset({left: 0}); 337 338 // Set a timeout as well as some themes can interfere with us 339 setTimeout(function(){ 340 jEle.offset({left: 0}); 341 }, 500); 342 343}; 344 345// Modal open 346function pagelayer_render_pl_modal(e){ 347 jQuery(e.target).closest('.pagelayer-modal-container').find('.pagelayer-modal-content').show(); 348}; 349 350// Modal close 351function pagelayer_pl_modal_close(e){ 352 jQuery(e.target).closest('.pagelayer-modal-content').hide(); 353} 354 355// Setup the image slider 356function pagelayer_pl_image_slider(jEle){ 357 358 var ul = jEle.find('.pagelayer-image-slider-ul'); 359 360 // Build the options
361 var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); 362 363 pagelayer_owl_init(jEle, ul, options); 364 365} 366 367function pagelayer_get_tab_ele(temp_tabCont){ 368 369 if(!pagelayer_empty(temp_tabCont.children('.pagelayer-ele-wrap').length)){ 370 return temp_tabCont.children('.pagelayer-ele-wrap').children('.pagelayer-tab'); 371 }else{ 372 return temp_tabCont.children('.pagelayer-tab'); 373 } 374} 375 376function pagelayer_tab_show(el, pl_id) { 377 378 var parent_id = jQuery(el).closest('.pagelayer-tabs').attr('pagelayer-id'); 379 380 var temp_tabCont = pagelayer_query('[pagelayer-id='+pl_id+']').closest('.pagelayer-tabcontainer'); 381 pagelayer_get_tab_ele(temp_tabCont).hide(); 382 383 pagelayer_query('[pagelayer-id='+pl_id+']').show(); 384 385 jQuery(el).parent().find('.pagelayer-tablinks').each(function(){ 386 jQuery(this).removeClass('active'); 387 }); 388 389 jQuery(el).addClass("active"); 390} 391 392var pagelayer_tab_timers = {}; 393 394function pagelayer_pl_tabs(jEle) { 395 396 var default_active = ''; 397 var jEle_id = jEle.attr('pagelayer-id'); 398 var hashTabId = ''; 399 400 var tabCont = jEle.children('.pagelayer-tabcontainer'); 401 var children = pagelayer_get_tab_ele(tabCont); 402 403 // Loop thru 404 children.each(function(){ 405 var tEle = jQuery(this); 406 var pl_id = tEle.attr('pagelayer-id'); 407 408 var title = tEle.attr('pagelayer-tab-title') || 'Tab'; 409 var id = tEle.attr('id'); 410 var func = "pagelayer_tab_show(this, '"+pl_id+"')"; 411 412 var icon = ''; 413 if(tEle.attr('pagelayer-tab-icon')){ 414 icon = tEle.attr('pagelayer-tab-icon'); 415 } 416 417 // Set the default tab 418 if(tEle.attr('pagelayer-default_active') && !pagelayer_empty(pl_id)){ 419 default_active = pl_id; 420 } 421 422 var editable = ''; 423 if(!pagelayer_empty(pagelayer_is_live)){ 424 editable += ' pagelayer-ref-id="'+pl_id+'"'; 425 editable += ' pagelayer-editable="title"'; 426 editable += ' contenteditable="true"'; 427 } 428 429 jEle.children('.pagelayer-tabs-holder').append('<span tab-id="' + pl_id + '" id="' + id + '" class="pagelayer-tablinks" onclick="' + func + '"> <i class="' + icon + '"></i> <span class="pl-tab-title" ' + editable + '>'+title+'</span></span>'); 430 431 }); 432 433 // Default Active by Hash 434 var hash = location.hash.slice(1); 435 if (!pagelayer_empty(hash)) { 436 var hashTab = jEle.find('#' + hash); 437 438 if (!pagelayer_empty(hashTab) && hashTab.length > 0) { 439 var currentTab = hashTab.closest('.pagelayer-tablinks'); 440 if (currentTab.length > 0) { 441 var currentTabId = currentTab.attr('tab-id'); 442 hashTabId = currentTabId; 443 } 444 } 445 } 446 447 if(hashTabId.length > 0){ 448 pagelayer_tab_show(jEle.find('[tab-id=' + hashTabId + ']'), hashTabId); 449 // Set the default tab 450 }else if(default_active.length > 0){ 451 pagelayer_tab_show(jEle.find('[tab-id='+default_active+']'), default_active); 452 // Set the first tab as active 453 }else{ 454 var first_tab = jEle.find('[tab-id]').first(); 455 pagelayer_tab_show(first_tab, first_tab.attr('tab-id')); 456 } 457 458 try{ 459 clearInterval(pagelayer_tab_timers[jEle_id]); 460 }catch(e){}; 461 462 var rotate = parseInt(jEle.attr('pagelayer-tabs-rotate')); 463 464 // Are we to rotate 465 if(rotate > 0){ 466 467 var i= 0; 468 pagelayer_tab_timers[jEle_id] = setInterval(function () { 469 470 if(i >= children.length){ 471 i = 0; 472 } 473 474 var tabCont = jEle.children('.pagelayer-tabcontainer'); 475 var tmp_pl_ele = pagelayer_get_tab_ele(tabCont)[i]; 476 477 var tmp_btn_ele = jEle.find('.pagelayer-tablinks')[i] 478 var tmp_pl_id = jQuery(tmp_pl_ele).attr('pagelayer-id'); 479 480 jEle.find('.pagelayer-tablinks').each(function(){ 481 jQuery(this).removeClass('active'); 482 }); 483 484 jQuery(tmp_btn_ele).addClass("active"); 485 pagelayer_tab_show(tmp_btn_ele, tmp_pl_id); 486 487 i++; 488 489 }, rotate); 490 } 491 492} 493 494// Setup the Accordion 495function pagelayer_pl_accordion(jEle){ 496 497 var holder = jEle.find('.pagelayer-accordion-holder'); 498 var accHolder = jEle.find('.pagelayer-accordion_item'); 499 var scrolltop = false; 500 501 if(accHolder.length < 1){ 502 return false; 503 } 504 505 var icon = holder.attr('data-icon'); 506 var active_icon = holder.attr('data-active_icon'); 507 508 accHolder.find('.pagelayer-accordion-tabs span i').attr('class', icon);
509 var currentActiveTab = jEle.find('.pagelayer-accordion_item.active').first(); 510 511 // Any URL HASH ? 512 var hash = location.hash.slice(1); 513 if(!pagelayer_empty(hash)){ 514 var scrollTab = jEle.find('#'+hash); 515 516 if(!pagelayer_empty(scrollTab) && scrollTab.length > 0){ 517 currentActiveTab = scrollTab.closest('.pagelayer-accordion_item'); 518 } 519 } 520 521 var not_tabs = accHolder.find('.pagelayer-accordion_item .pagelayer-accordion-tabs'); 522 var tabs = accHolder.find('.pagelayer-accordion-tabs').not(not_tabs); 523 524 tabs.off('click'); 525 tabs.on('click', function(e) { 526 527 e.stopPropagation(); // Prevent bubbling up to parent accordions 528 529 var currentTab = jQuery(this).closest('.pagelayer-accordion_item'); 530 var accHolder = currentTab.closest('.pagelayer-accordion-holder'); // Only the current group 531 532 if (currentTab.hasClass('active') && currentTab.children('.pagelayer-accordion-panel').is(':visible')) { 533 currentTab.removeClass('active').children('.pagelayer-accordion-panel').slideUp('slow'); 534 currentTab.find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', icon); 535 return; 536 } 537 538 // Close only siblings inside the same accordion group 539 accHolder.find('.pagelayer-accordion_item').not(accHolder.find('.pagelayer-accordion_item .pagelayer-accordion_item')).not(currentTab).not(currentTab.find('.pagelayer-accordion_item')).removeClass('active') 540 .children('.pagelayer-accordion-panel').slideUp('slow') 541 .end().find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', icon); 542 543 // Open the clicked one 544 currentTab.addClass('active').children('.pagelayer-accordion-panel').slideDown('slow'); 545 currentTab.find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', active_icon); 546 547 }); 548 549 // To prevent default active click in gutenberg 550 var setup = jEle.attr('pagelayer-setup'); 551 552 // Already setup ? 553 if(setup && setup.length > 0){ 554 return; 555 } 556 557 jEle.attr('pagelayer-setup', 1); 558 559 // If active first tab from all active tabs 560 currentActiveTab.removeClass('active'); 561 currentActiveTab.find('.pagelayer-accordion-tabs').click(); 562} 563 564// Setup the Collapse 565function pagelayer_pl_collapse(jEle){ 566 567 var holder = jEle.find('.pagelayer-collapse-holder'); 568 var tabs = jEle.find('.pagelayer-accordion_item'); 569 570 if(tabs.length < 1){ 571 return false; 572 } 573 574 var setup = tabs.attr('pagelayer-setup'); 575 var icon = holder.attr('data-icon'); 576 var active_icon = holder.attr('data-active_icon'); 577 578 // Any URL HASH ? 579 var hash = location.hash.slice(1); 580 if(!pagelayer_empty(hash)){ 581 var scrollTab = jEle.find('#'+hash); 582 583 if(!pagelayer_empty(scrollTab) && scrollTab.length > 0){ 584 scrollTab.closest('.pagelayer-accordion_item').addClass('active'); 585 } 586 } 587 588 var activeTabs = jEle.find('.pagelayer-accordion_item.active'); 589 590 tabs.find('.pagelayer-accordion-tabs span i').attr('class', icon); 591 jQuery(activeTabs).addClass('active').children('.pagelayer-accordion-panel').slideDown('slow'); 592 jQuery(activeTabs).find('.pagelayer-accordion-tabs span i').attr('class', active_icon); 593 594 var not_tabs = tabs.find('.pagelayer-accordion_item .pagelayer-accordion-tabs'); 595 var _tabs = tabs.find('.pagelayer-accordion-tabs').not(not_tabs); 596 597 // Already setup ? 598 if(setup && setup.length > 0){ 599 _tabs.off('click'); 600 } 601 602 _tabs.on('click', function(e){ 603 e.preventDefault(); 604 605 var currentTab = jQuery(this).closest('.pagelayer-accordion_item'); 606 607 if(currentTab.hasClass('active')){ 608 currentTab.removeClass('active').children('.pagelayer-accordion-panel').slideUp('slow'); 609 currentTab.find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', icon); 610 return true; 611 } 612 613 currentTab.addClass('active').children('.pagelayer-accordion-panel').slideDown('slow'); 614 currentTab.find('.pagelayer-accordion-tabs').not(not_tabs).find('span i').attr('class', active_icon); 615 616 }); 617 618 // Set that we have setup everything 619 tabs.attr('pagelayer-setup', 1); 620 621} 622 623// Counter 624function pagelayer_counter(){ 625 626 pagelayer_query('.pagelayer-counter-content').each(function(){ 627 628 var jEle = jQuery(this); 629 630 if(pagelayer_isVisible(jEle)){ 631 632 var setup = jEle.attr('pagelayer-setup'); 633 634 // Already setup ? 635 if(setup && setup.length > 0){ 636 return true; 637 } 638 639 var options = {}; 640 options['duration'] = jEle.children('.pagelayer-counter-display').attr('pagelayer-counter-animation-duration'); 641 options['delimiter'] = jEle.children('.pagelayer-counter-display').attr('pagelayer-counter-seperator-type'); 642 options['toValue'] = jEle.children('.pagelayer-counter-display').attr('pagelayer-counter-last-value'); 643 jEle.children('.pagelayer-counter-display').numerator( options ); 644 645 // Set that we have setup everything 646 jEle.attr('pagelayer-setup', 1); 647 648 } 649 }); 650} 651 652function pagelayer_progress(){ 653 pagelayer_query('.pagelayer-progress-container').each(function(){ 654 var jEle = jQuery(this); 655 656 if(pagelayer_isVisible(jEle)){ 657 658 var setup = jEle.attr('pagelayer-setup'); 659 if(setup && setup.length > 0){ 660 return true; 661 } 662 663 var progress_width = jEle.children('.pagelayer-progress-bar').attr('pagelayer-progress-width'); 664 if(progress_width == undefined){ 665 progress_width = "1"; 666 } 667 668 var width = 0; 669 var interval; 670 671 var progress = function(){ 672 if (width >= progress_width) { 673 clearInterval(interval); 674 } else { 675 width++;
676 jEle.children('.pagelayer-progress-bar').css('width', width + '%'); 677 jEle.find('.pagelayer-progress-percent').text(width * 1 + '%'); 678 } 679 } 680 interval = setInterval(progress, 30); 681 jEle.attr('pagelayer-setup', 1); 682 683 } 684 }); 685} 686 687// Dismiss Alert Function 688function pagelayer_dismiss_alert(x){ 689 690 if(!pagelayer_empty(pagelayer_is_live)){ 691 return; 692 } 693 694 jQuery(x).parent().parent().fadeOut(); 695} 696 697// Video light box handler 698function pagelayer_pl_video(jEle){ 699 var videoIframe = jEle.find('.pagelayer-video-iframe'); 700 // Adding loop, autoplay and mute properties on video before loading 701 videoIframe.on('load', function() { 702 703 // Checking of video source if it is youtube or vimeo because 704 // TODO: Need to check, if this is not local file then return 705 if(jQuery(this)[0].src.indexOf('youtube.com') != -1 || jQuery(this)[0].src.indexOf('vimeo.com') != -1){ 706 return; 707 } 708 709 var vidElm = jQuery(this).contents().find('video'); 710 var vidSrc = (pagelayer_empty(vidElm[0].src)) ? vidElm.children()[0].src : vidElm[0].src; 711 712 if(vidSrc[vidSrc.indexOf('&loop=')+6] == 1){ 713 vidElm.attr('loop','loop'); 714 } 715 if(vidSrc[vidSrc.indexOf('&autoplay=')+10] == 0){ 716 vidElm.removeAttr('autoplay'); 717 vidElm[0].pause(); 718 }else if(vidSrc[vidSrc.indexOf('&autoplay=')+10] == 1){ 719 vidElm.attr('autoplay',''); 720 vidElm.attr('playsinline',''); 721 } 722 if(vidSrc[vidSrc.indexOf('&mute=')+6] == 1){ 723 vidElm[0].muted = "muted"; 724 vidElm.attr('muted',''); 725 } 726 }); 727 728 // A tag will be there ONLY if the lightbox is on 729 var overlayval = jEle.find('.pagelayer-video-overlay'); 730 var a = jEle.find(".pagelayer-video-holder a"); 731 732 // No lightbox 733 if(a.length < 1 && pagelayer_empty(overlayval)){ 734 return; 735 } 736 737 a.nivoLightbox({ 738 effect: "fadeScale", 739 }); 740 741 jEle.find(".pagelayer-video-holder .pagelayer-video-overlay").on("click", function(ev) { 742 743 var target = jQuery(ev.target); 744 745 if (!target.parent("a").length) { 746 videoIframe[0].src = videoIframe[0].src.replace("&autoplay=0", "rel=0&autoplay=1"); 747 jQuery(this).hide(); 748 } 749 }); 750 751} 752 753// Image light box handler 754function pagelayer_pl_image(jEle){ 755 756 // Drag and Drop function for image 757 if (typeof pagelayer_preDAndD_image !== "undefined") { 758 pagelayer_preDAndD_image(jEle); 759 } 760 761 // A tag will be there ONLY if the lightbox is on 762 var a = jEle.find("[pagelayer-image-link-type=lightbox]"); 763 764 // No lightbox 765 if(a.length < 1){ 766 return; 767 } 768 769 a.nivoLightbox({ 770 effect: "fadeScale", 771 }); 772} 773 774function pagelayer_stars(jEle){ 775 776 var setup = jEle.attr('pagelayer-setup'); 777 if(setup && setup.length > 0){ 778 return true; 779 } 780 var count = jEle.attr('pagelayer-stars-count'); 781 782 if (isNaN(count)) { 783 count = '0'; 784 } 785 786 i = 0; 787 var stars = ""; 788 while(i < count){ 789 stars +='<div class="pagelayer-stars-icon pagelayer-stars-empty"><i class="fas fa-star" aria-hidden="true"></i></div>'; 790 i++; 791 } 792 793 jEle.empty(); 794 jEle.append(stars); 795 var starsval = jEle.attr('pagelayer-stars-value'); 796 797 if (isNaN(starsval)) { 798 starsval = count; 799 } 800 801 starsval = starsval.split('.'); 802 var fullstars = starsval[0]; 803 var value = starsval[1]; 804 var halfstar = parseInt(fullstars) + 1; 805 var emptystars = parseInt(fullstars) + 2; 806 jEle.children('.pagelayer-stars-icon').attr("class","pagelayer-stars-icon"); 807 jEle.children('.pagelayer-stars-icon:nth-child(-n+'+ fullstars +')').addClass('pagelayer-stars-full'); 808 if(value != undefined){ 809 jEle.children('.pagelayer-stars-icon:nth-child('+ halfstar +')').addClass('pagelayer-stars-'+value); 810 }else{ 811 jEle.children('.pagelayer-stars-icon:nth-child('+ halfstar +')').addClass('pagelayer-stars-empty'); 812 } 813 jEle.children('.pagelayer-stars-icon:nth-child(n+'+ emptystars +')').addClass('pagelayer-stars-empty'); 814 jEle.attr('pagelayer-setup', 1); 815} 816 817// Grid Gallery pagination Off On function 818function pagelayer_pl_grid_paginate(gridCont, pagination, pageValue, gridValue){ 819 gridCont.hide(); 820 pagination.removeClass('active'); 821 pagination.eq(pageValue).addClass('active'); 822 gridCont.eq(gridValue).show(); 823} 824 825//Grid Gallery Lightbox 826function pagelayer_pl_grid_lightbox(jEle){ 827 828 // Grid Gallery pagination settings 829 var gridCont = jEle.find('.pagelayer-grid-gallery-container').children();
830 var pagination = jEle.find('.pagelayer-grid-gallery-pagination ul').children(); 831 gridCont.hide(); 832 gridCont.eq(0).show(); 833 // Adding event listners to pagination 834 jEle.find('.pagelayer-grid-page-item').each(function(){ 835 jQuery(this).on('click', function(event){ 836 var text = jQuery(this).text(); 837 switch(text){ 838 case '«': 839 pagelayer_pl_grid_paginate(gridCont, pagination, 1, 0); 840 break; 841 case '»': 842 pagelayer_pl_grid_paginate(gridCont, pagination, (pagination.length-2), (gridCont.length-1)); 843 break; 844 default: 845 pagelayer_pl_grid_paginate(gridCont, pagination, text, text-1); 846 break; 847 } 848 }); 849 }); 850 851 // A tag will be there ONLY if the lightbox is on 852 var a = jEle.find("[pagelayer-grid-gallery-type=lightbox]"); 853 854 // No lightbox 855 if(a.length < 1){ 856 return; 857 } 858 859 a.nivoLightbox({ 860 effect: "fadeScale", 861 keyboardNav: true, 862 clickImgToClose: false, 863 clickOverlayToClose: true, 864 }); 865} 866 867// Is string? 868function pagelayer_is_string(str){ 869 870 if(typeof str == 'string'){ 871 return true; 872 } 873 874 return false; 875} 876 877// PHP equivalent empty() 878function pagelayer_empty(mixed_var) { 879 880 var undef, key, i, len; 881 var emptyValues = [undef, null, false, 0, '', '0']; 882 883 for (i = 0, len = emptyValues.length; i < len; i++) { 884 if (mixed_var === emptyValues[i]) { 885 return true; 886 } 887 } 888 889 if (typeof mixed_var === 'object') { 890 for (key in mixed_var) { 891 // TODO: should we check for own properties only? 892 //if (mixed_var.hasOwnProperty(key)) { 893 return false; 894 //} 895 } 896 return true; 897 } 898 899 return false; 900}; 901 902function pagelayer_fetch_dataAttrs(ele, prefix){ 903 904 var options = {}; 905 906 jQuery.each(ele.get(0).attributes, function(i, attrib){ 907 908 //console.log(attrib); 909 if(attrib.name.includes(prefix)){ 910 911 var opt_name = attrib.name.substring(prefix.length); 912 913 // Check for any Uppercase attribute 914 if(opt_name.includes('-')){ 915 916 opt_name = opt_name.split('-'); 917 //console.log(opt_name); 918 var opt_arr = []; 919 jQuery.each(opt_name, function(key, value) { 920 if(key != 0){ 921 opt_arr.push(value.charAt(0).toUpperCase() + value.slice(1)); 922 }else{ 923 opt_arr.push(value); 924 } 925 }); 926 //console.log(opt_arr); 927 opt_name = opt_arr.join(''); 928 } 929 930 // Make the values correct 931 var val = attrib.value; 932 if(val == 'true') val = true; 933 if(val == 'false') val = false; 934 if(jQuery.isNumeric(val)) val = parseInt(val); 935 936 options[opt_name] = val; 937 } 938 }); 939 940 //console.log(options); 941 942 if(options['controls']){ 943 switch(options['controls']){ 944 case 'arrows': 945 options['nav'] = true; 946 options['dots'] = false; 947 break; 948 case 'pager': 949 options['dots'] = true; 950 options['nav'] = false; 951 break; 952 case 'none': 953 options['nav'] = false; 954 options['dots'] = false; 955 break; 956 } 957 }else{ 958 options['nav'] = true; 959 options['dots'] = true; 960 } 961 962 if(options['animateIn']){ 963 switch(options['controls']){ 964 case 'horizontal': 965 options['animateIn'] = 'slideInLeft'; 966 break; 967 case 'vertical': 968 options['animateIn'] = 'slideInDown'; 969 break; 970 case 'kenburns': 971 options['animateIn'] = 'zoomIn'; 972 break; 973 default: 974 options['animateIn'] = options['animateIn']; 975 } 976 } 977 978 if(!options['items']){ 979 options['items'] = 1; 980 } 981 982 options['responsive'] = { 983 0:{items: 1}, 984 500:{items: options['items']} 985 } 986 987 options['responsiveRefreshRate'] = 1000; 988 989 // If we are in editor don't loop the Owl items 990 if (window.location.href.indexOf('pagelayer-live=1') > -1) { 991 //console.log('here'); 992 options['loop'] = false; 993 } 994 995 return options; 996} 997 998function pagelayer_owl_init(jEle, ul, options){ 999 1000 //console.log(options); 1001 var setup = jEle.attr('pagelayer-setup'); 1002 var id = jEle.closest('[pagelayer-id]').attr('[pagelayer-id]'); 1003 1004 if( options.navtext ) { 1005 var right = options.navtext.replace('left','right'); 1006 options.navText = [`<i class="${options.navtext}"></i>`, `<i class="${right}"></i>`]; 1007 } 1008 1009 // Already setup ? 1010 if(setup && setup.length > 0){ 1011 return true; 1012 } 1013 1014 const wind = pagelayerGetCurrentWindow(); 1015 options['responsiveBaseElement'] = wind; 1016 1017 var owlCar = ul.pagelayerOwlCarousel(options); 1018 1019 // Refreshing Image slider after first load of page. 1020 var referrerOwl = function(){ 1021 setTimeout(function(){ 1022 owlCar.trigger('refresh.owl.carousel'); 1023 },700); 1024 } 1025 1026 referrerOwl(); 1027 1028 // To prevent slider drag inside the editable area 1029 jEle.on('mousedown', function(e){
1030 var target = e.target; 1031 1032 var isEditable = jQuery(target).closest('[contenteditable="true"]'); 1033 1034 if(isEditable.length < 1){ 1035 return; 1036 } 1037 1038 isEditable.on('mousedown.owl.core dragstart.owl.core selectstart.owl.core touchstart.owl.core touchcancel.owl.core', function(e){ 1039 e.stopPropagation(); 1040 }); 1041 1042 }); 1043 1044 // Gutenberg responsive Handler 1045 if(wind != window){ 1046 jQuery(wind).unbind('resize.pl_'+id, referrerOwl); 1047 jQuery(wind).on('resize.pl_'+id, referrerOwl); 1048 } 1049 1050 // Set that we have setup everything 1051 jEle.attr('pagelayer-setup', 1); 1052 1053} 1054 1055// recaptcha handler 1056function pagelayer_recaptcha_loader(jEle, loadScript){ 1057 1058 loadScript = loadScript || false; 1059 1060 // Render recaptcha 1061 var reParam = ''; 1062 var sitekey = jEle.data("sitekey"); 1063 1064 if(!pagelayer_empty(pagelayer_recaptch_lang)){ 1065 reParam = '&hl='+pagelayer_recaptch_lang; 1066 } 1067 1068 // Add recaptcha script 1069 if(pagelayer_empty(window.grecaptcha) && !pagelayer_empty(loadScript)){ 1070 var render = (pagelayer_recaptch_version == 'v3') ? sitekey : 'explicit'; 1071 pagelayer_query('body').append('
vendor: 101 bytes, line 1071
1071<script src="https://www.google.com/recaptcha/api.js?render='+render+reParam+'" async defer></script>
1071'); 1072 } 1073 1074 // Render recaptcha 1075 var recaptcha_interval = setInterval(function(){ 1076 1077 if(!pagelayer_empty(window.grecaptcha)){ 1078 grecaptcha.ready(function() { 1079 try{ 1080 // Call grecaptcha.execute() to trigger reCAPTCHA v3 and get a token 1081 if(pagelayer_recaptch_version == 'v3'){ 1082 var form = jEle.closest('form'); 1083 form.find('[type="submit"]').off('click').on('click', function(e){ 1084 e.preventDefault(); 1085 grecaptcha.execute(sitekey, { action: 'submit' }).then(function (token) { 1086 // Append the token to the form or element to be submitted 1087 form.find('input.pagelayer-g-recaptcha-v3-token').val(token); 1088 if(form[0].requestSubmit){ 1089 form[0].requestSubmit(); 1090 }else{ 1091 form.submit(); 1092 } 1093 }); 1094 }); 1095 }else{ 1096 var widgetID = grecaptcha.render(jEle.get(0), {'sitekey' : sitekey}); 1097 jEle.attr('recaptcha-widget-id', widgetID); 1098 } 1099 }catch(e){ 1100 console.log("There is some issue in rendering reCaptcha. Please check your recaptcha site-key !"); 1101 } 1102 1103 }); 1104 clearInterval(recaptcha_interval); 1105 } 1106 1107 }, 500); 1108 1109} 1110 1111// Scroll to element button effect 1112function pagelayer_button_element_scroll(jEle) { 1113 1114 var speed = parseInt(jEle.attr('pagelayer_scrollto_speed') * 1000); 1115 var idspacing = 0; 1116 var scrollId = jEle.attr('pagelayer_scrollto_id'); 1117 1118 if(jEle.attr('pagelayer_scrollto_type') == 'toid'){ 1119 1120 var scrolltoEle = pagelayer_query('#' + scrollId); 1121 1122 if(pagelayer_empty(scrollId) || scrolltoEle.length < 1){ 1123 return; 1124 } 1125 1126 var idpos = parseInt(scrolltoEle.offset().top); 1127 var spacing = parseInt(jEle.attr('pagelayer_scrollto_id_viewport')); 1128 1129 if (isNaN(spacing)) { 1130 spacing = 0; 1131 } 1132 1133 idspacing = idpos + spacing; 1134 1135 } 1136 1137 jEle.on('click', function (e) { 1138 e.preventDefault(); 1139 pagelayer_query('html, body').animate({ scrollTop: idspacing }, speed); 1140 }); 1141 1142} 1143 1144//////////// 1145// Freemium 1146//////////// 1147 1148// Contact Form handler - Premium 1149function pagelayer_contact_form(jEle){ 1150 1151 jEle = jQuery(jEle); 1152 var id = jEle.attr('pagelayer-id'); 1153 1154 // Set pagelayer id to input field 1155 jEle.find('form input[name="cfa-pagelayer-id"]').val(id); 1156 1157} 1158 1159// Contact Form Submit handler - Premium 1160function pagelayer_contact_submit(jEle, e){ 1161 e.preventDefault(); 1162 1163 // Checking for required checkboxes. 1164 for(var checkbox_div of jQuery(jEle).find('.pagelayer-contact-checkbox')){ 1165 checkbox_div = jQuery(checkbox_div); 1166 if(checkbox_div.attr('required') == 'required'){ 1167 if(pagelayer_empty(checkbox_div.find('input:checked').length)){ 1168 alert('Kindly select the required checkbox'); 1169 return; 1170 } 1171 } 1172 } 1173 1174 // Trigger an action 1175 jQuery(document).trigger('pagelayer_contact_submit', e, jEle); 1176 1177 // Disabling submit button with loading animation. 1178 jQuery(jEle).find('.pagelayer-contact-submit-btn').prop('disabled', true); 1179 jQuery(jEle).find('.pagelayer-contact-submit-btn .fa-spin').show('0.6'); 1180 1181 //var fdata = jQuery(jEle).closest('form').serialize(); 1182 var redirect = jQuery(jEle).find('input[name="cfa-redirect"]'); 1183 var formData = new FormData( jQuery(jEle)[0] ); 1184 var par = jQuery(jEle).parent(); 1185 1186 // Append the nonce 1187 formData.append('pagelayer_nonce', pagelayer_global_nonce); 1188 1189 // Hide any message 1190 par.find(".pagelayer-message-box").hide(); 1191 1192 // Message pos to use ? 1193 var msg_pos = 'top'; 1194 if(par.parent().hasClass('pagelayer-message-box-bottom')){ 1195 msg_pos = 'bottom'; 1196 } 1197 1198 par.find(".pagelayer-message-box").removeClass('pagelayer-cf-msg-err pagelayer-cf-msg-suc'); 1199 1200 jQuery.ajax({ 1201 url: pagelayer_ajaxurl+'action=pagelayer_contact_submit', 1202 type: "POST", 1203 data: formData, 1204 processData: false, 1205 contentType: false, 1206 cache:false, 1207 success:function(result){ 1208 var json = jQuery.parseJSON(result); 1209 1210 jQuery(jEle).find('.pagelayer-contact-submit-btn').prop('disabled', false); 1211 jQuery(jEle).find('.pagelayer-contact-submit-btn .fa-spin').hide('0.6'); 1212 1213 if('success' in json){ 1214 par.find(".pagelayer-message-"+msg_pos).addClass('pagelayer-cf-msg-suc').html(json['success']).fadeIn(); 1215 1216 if(redirect.length > 0 && !pagelayer_empty(redirect.val())){ 1217 window.location.href = redirect.val(); 1218 } 1219 }else{ 1220 par.find(".pagelayer-message-"+msg_pos).addClass('pagelayer-cf-msg-err').html(json['failed']).fadeIn(); 1221 } 1222 }, 1223 error:function(result){ 1224 par.find(".pagelayer-message-"+msg_pos).addClass('pagelayer-cf-msg-err').html(json['failed']).fadeIn(); 1225 } 1226 }); 1227 jEle.reset(); 1228 1229 jQuery(jEle).find('.pagelayer-recaptcha').each(function(){ 1230 var widgetID = jQuery(this).attr('recaptcha-widget-id'); 1231 1232 if(!pagelayer_empty(window.grecaptcha)){ 1233 grecaptcha.reset(widgetID); 1234 } 1235 }); 1236 1237 return false; 1238} 1239 1240// Primary Menu Handler - Premium 1241function pagelayer_primary_menu(jEle){ 1242 1243 var container = jEle.find('.pagelayer-wp-menu-container'); 1244 var menu_bar = jEle.find('.pagelayer-primary-menu-bar i'); 1245 var menu_holder = jEle.find('.pagelayer-wp-menu-holder'); 1246 var layout = menu_holder.attr('data-layout'); 1247 var submenu_ind = menu_holder.attr('data-submenu_ind'); 1248 var responsive = menu_holder.attr('data-responsive'); 1249 var drop_breakpoint = menu_holder.attr('data-drop_breakpoint'); 1250 var close = jEle.find('.pagelayer-wp_menu-close'); 1251 1252 var media_mode = pagelayer_get_media_mode(); 1253 1254 if( (drop_breakpoint == 'tablet' && (media_mode == 'tablet' || media_mode == 'mobile')) || (drop_breakpoint == 'mobile' && media_mode == 'mobile') ){ 1255 1256 menu_holder.addClass('pagelayer-wp-menu-dropdown');
1257 container.addClass('pagelayer-menu-type-dropdown'); 1258 container.removeClass('pagelayer-menu-type-'+layout); 1259 layout = 'dropdown'; 1260 1261 }else{ 1262 menu_holder.removeClass('pagelayer-wp-menu-dropdown'); 1263 container.removeClass('pagelayer-menu-type-dropdown'); 1264 container.addClass('pagelayer-menu-type-'+layout); 1265 } 1266 1267 // Set mega menu width 1268 // Wait for all other animations to finish 1269 setTimeout(function(){ 1270 1271 container.find('.pagelayer-mega-menu-item, .pagelayer-mega-column-item').each(function(){ 1272 1273 var liEle = jQuery(this), 1274 lEle = liEle.find('.pagelayer-nav_menu_item').first(), 1275 megaHolder = lEle.closest('.pagelayer-mega-menu'), 1276 setClass = 'pagelayer-set-position'; 1277 1278 if(liEle.hasClass('pagelayer-mega-column-item')){ 1279 megaHolder = liEle.children('.sub-menu'); 1280 } 1281 1282 if(megaHolder.length < 1){ 1283 return; 1284 } 1285 1286 var Css = {}; 1287 1288 // Remove all css settings 1289 jQuery(document).unbind('scroll.megaMenu'); 1290 megaHolder.css({'width' : '', 'left' : '', 'max-width' : '', 'max-height' : ''}); 1291 1292 if(layout == 'dropdown'){ 1293 return; 1294 } 1295 1296 // Set active to get position 1297 megaHolder.addClass(setClass); 1298 1299 var megaLeft = megaHolder.offset().left, 1300 megaWidth = lEle.attr('pagelayer-mega-width'), 1301 wContainer = lEle.closest('.pagelayer-wp-menu-container'), 1302 megaCustomWidth = lEle.attr('pagelayer-mega-custom-width') || '', 1303 widthEle; 1304 1305 // Is vertical menu? 1306 if(layout == 'vertical'){ 1307 var docWidth = jQuery('body').width(); 1308 var vWidth = docWidth - megaLeft; 1309 1310 Css['max-width'] = vWidth; 1311 Css['width'] = vWidth; 1312 1313 if(megaWidth == 'custom'){ 1314 Css['width'] = megaCustomWidth; 1315 } 1316 1317 megaHolder.css(Css); 1318 megaHolder.removeClass(setClass); 1319 return; 1320 } 1321 1322 var megaMenuHeight = function(e){ 1323 1324 if(!pagelayer_empty(e) && megaHolder.is(':visible')){ 1325 return; 1326 } 1327 1328 var windowHeight = jQuery(window).height(); 1329 var ulBottom = megaHolder.closest('.pagelayer-wp_menu-ul')[0].getBoundingClientRect().bottom; 1330 megaHolder.css('max-height', windowHeight - ulBottom); 1331 }; 1332 1333 megaMenuHeight(); 1334 jQuery(document).on('scroll.megaMenu', megaMenuHeight); 1335 1336 switch(megaWidth){ 1337 case 'row_container': 1338 widthEle = lEle.closest('.pagelayer-row[pagelayer-id]'); 1339 Css['width'] = widthEle.width(); 1340 break; 1341 case 'custom': 1342 widthEle = lEle.closest('li'); 1343 Css['width'] = megaCustomWidth; 1344 break; 1345 default : 1346 widthEle = wContainer; 1347 Css['width'] = widthEle.width(); 1348 } 1349 1350 if(widthEle.length > 0){ 1351 var wLeft = widthEle.offset().left; 1352 1353 if( wLeft < megaLeft ){ 1354 Css['left'] = (wLeft) - (megaLeft); 1355 } 1356 1357 } 1358 1359 megaHolder.css(Css); 1360 var mRect = megaHolder[0].getBoundingClientRect(); 1361 var wRect = wContainer[0].getBoundingClientRect(); 1362 1363 // Set mega menu position 1364 if(megaWidth != 'custom' || mRect.right < wRect.right){ 1365 megaHolder.removeClass(setClass); 1366 return; 1367 } 1368 1369 var left = parseInt(megaHolder.css('left')); 1370 var moveLeft = mRect.right - wRect.right; 1371 1372 if(mRect.left < moveLeft){ 1373 moveLeft = moveLeft - (moveLeft - mRect.left); 1374 } 1375 1376 left = left - moveLeft; 1377 megaHolder.css({'left': left}); 1378 megaHolder.removeClass(setClass); 1379 }); 1380 1381 }, 500); 1382 1383 // Menu toggle 1384 var toggle_class; 1385 jQuery(menu_bar).unbind('click'); 1386 jQuery(menu_bar).click(function(){ 1387 jQuery(container).toggleClass('pagelayer-togglt-on'); 1388 1389 toggle_class = jQuery(this).data('icon'); 1390 toggle_class = ( pagelayer_empty(toggle_class) ? 'fas fa-bars' : toggle_class ); 1391 1392 if(jQuery(container).hasClass('pagelayer-togglt-on')){ 1393 jQuery(this).removeClass(toggle_class); 1394 jQuery(this).addClass('fas fa-times'); 1395 }else{ 1396 jQuery(this).removeClass('fas fa-times'); 1397 jQuery(this).addClass(toggle_class); 1398 } 1399 }); 1400 1401 // If has sub-menu the as icon 1402 var sub_menuEle = jQuery(container).find('.pagelayer-wp_menu-ul li.menu-item-has-children:not(.pagelayer-mega-menu-item), .pagelayer-wp_menu-ul li.pagelayer-mega-menu-item'); 1403 1404 var aEle_sub_menu = sub_menuEle.children('a'); 1405 var afterIconSpan = aEle_sub_menu.children('.after-icon') 1406 if (aEle_sub_menu.children('.after-icon').length < 1) { 1407 aEle_sub_menu.append('<span class="after-icon fa fa-' + submenu_ind + '"></span>'); 1408 }else{ 1409 // For gutenberg 1410 afterIconSpan.attr('class', 'after-icon fa fa-' + submenu_ind); 1411 } 1412 1413 // Toggle Sub nav 1414 var after_icon = jQuery(container).find('.pagelayer-wp_menu-ul li.menu-item-has-children .after-icon, .pagelayer-wp_menu-ul li.pagelayer-mega-menu-item .after-icon'); 1415 1416 after_icon.unbind('click'); 1417 after_icon.click(function(e){
1418 e.preventDefault(); 1419 if(window.matchMedia("(max-width: "+pagelayer_settings['tablet_breakpoint']+"px)").matches || layout != 'horizontal'){ 1420 jQuery(this).closest('li').toggleClass('pagelayer-active-sub-menu'); 1421 1422 }else{ 1423 jQuery(this).closest('li').removeClass('pagelayer-active-sub-menu'); 1424 } 1425 }); 1426 1427 close.unbind('click'); 1428 close.click(function(){ 1429 jQuery(container).toggleClass('pagelayer-togglt-on'); 1430 jQuery(menu_bar).removeClass('fas fa-times'); 1431 jQuery(menu_bar).addClass(toggle_class); 1432 }); 1433 1434 // To edit the mega menu in live editor 1435 jQuery(document).trigger('pagelayer_primary_menu_setup_end', [jEle]); 1436} 1437 1438var count_int ={}; 1439// Show countdown render 1440function pagelayer_countdown(jEle){ 1441 1442 var expiry_date = jEle.find('.pagelayer-countdown-container').attr('pagelayer-expiry-date'); 1443 var timetype = jEle.find('.pagelayer-countdown-container').attr('pagelayer-time-type'); 1444 var jEle_id = jEle.attr('pagelayer-id'); 1445 1446 if(pagelayer_empty(expiry_date) || expiry_date == "{{date}}"){ 1447 var expiry_date = new Date(new Date().getTime() + 24 * 60 * 60 * 1000); 1448 } 1449 1450 var now; 1451 if(timetype == "server"){ 1452 now = new Date(pagelayer_server_time*1000).getTime(); 1453 }else{ 1454 now = new Date().getTime(); 1455 } 1456 1457 var countDownDate = new Date(expiry_date).getTime(); 1458 var distance = countDownDate - now; 1459 1460 clearInterval(count_int[jEle_id]); 1461 count_int[jEle_id] = setInterval(function() { 1462 1463 // Time calculations for days, hours, minutes and seconds 1464 var days = Math.floor(distance / (1000 * 60 * 60 * 24)); 1465 var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); 1466 var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); 1467 var seconds = Math.floor((distance % (1000 * 60)) / 1000); 1468 1469 jEle.find('.pagelayer-days-count').html(days); 1470 jEle.find('.pagelayer-hours-count').html(hours); 1471 jEle.find('.pagelayer-minutes-count').html(minutes); 1472 jEle.find('.pagelayer-seconds-count').html(seconds); 1473 1474 // If the count down is over, write some text 1475 if(distance < 0) { 1476 clearInterval(count_int[jEle_id]); 1477 jEle.find('.pagelayer-countdown-expired').show(); 1478 jEle.find('.pagelayer-countdown-counter').hide(); 1479 } 1480 1481 distance = distance - 1000; 1482 1483 }, 1000); 1484} 1485 1486function pagelayer_pl_testimonial_slider(jEle){ 1487 var ul = jEle.find('.pagelayer-testimonials-holder'); 1488 1489 // Build the options 1490 var options = pagelayer_fetch_dataAttrs(ul, 'data-slides-'); 1491 1492 pagelayer_owl_init(jEle, ul, options); 1493} 1494 1495var pagelayerAnimTimer = {}; 1496function pagelayer_anim_heading(jEle){ 1497 var animationDelay = 2500, 1498 //loading bar effect 1499 barAnimationDelay = 3800, 1500 barWaiting = barAnimationDelay - 3000, //3000 is the duration of the transition on the loading bar - set in the scss/css file 1501 //letters effect 1502 lettersDelay = 50, 1503 //type effect 1504 typeLettersDelay = 150, 1505 selectionDuration = 500, 1506 typeAnimationDelay = selectionDuration + 800, 1507 //clip effect 1508 revealDuration = 600, 1509 revealAnimationDelay = 1500; 1510 1511 var id = jEle.attr('pagelayer-id'); 1512 1513 if(pagelayer_empty(pagelayerAnimTimer[id])){ 1514 pagelayerAnimTimer[id] = {}; 1515 } 1516 1517 // Clear the previous animations 1518 for( var time in pagelayerAnimTimer[id] ){ 1519 clearTimeout(pagelayerAnimTimer[id][time]); 1520 } 1521 1522 initHeadline(); 1523 1524 function initHeadline(){ 1525 1526 // Re-set styles 1527 jEle.find('.pagelayer-aheading-holder').find('span').css('opacity', ''); 1528 1529 //insert <i> element for each letter of a changing word 1530 singleLetters(jEle.find('.pagelayer-aheading-holder.letters').find('span')); 1531 //initialise headline animation 1532 animateHeadline(jEle.find('.pagelayer-aheading-holder')); 1533 } 1534 1535 function singleLetters($words){ 1536 $words.each(function(){ 1537 var word = jQuery(this),
1538 letters = word.text().split(''), 1539 selected = word.hasClass('pagelayer-is-visible'); 1540 for (i in letters) { 1541 if(word.parents('.pagelayer-aheading-rotate2').length > 0) letters[i] = '<b>' + letters[i] + '</b>'; 1542 letters[i] = (selected) ? '<strong class="pagelayer-aheading-in">' + letters[i] + '</strong>': '<strong>' + letters[i] + '</strong>'; 1543 } 1544 var newLetters = letters.join(''); 1545 word.html(newLetters).css('opacity', 1); 1546 }); 1547 } 1548 1549 function animateHeadline($headlines){ 1550 var duration = animationDelay; 1551 $headlines.each(function(){ 1552 var headline = jQuery(this); 1553 1554 if(headline.hasClass('pagelayer-aheading-loading-bar')){ 1555 duration = barAnimationDelay; 1556 setTimeout(function(){ headline.find('.pagelayer-words-wrapper').addClass('pagelayer-is-loading') }, barWaiting); 1557 }else if(headline.hasClass('pagelayer-aheading-clip')){ 1558 var spanWrapper = headline.find('.pagelayer-words-wrapper'), 1559 newWidth = spanWrapper.width() + 10; 1560 spanWrapper.css('width', newWidth); 1561 } else if (!headline.hasClass('type') ){ 1562 var words = headline.find('.pagelayer-words-wrapper span'), 1563 width = 0; 1564 words.each(function(){ 1565 var wordWidth = jQuery(this).width(); 1566 if (wordWidth > width) width = wordWidth; 1567 }); 1568 headline.find('.pagelayer-words-wrapper').css('width', width); 1569 }; 1570 1571 //trigger animation 1572 setTimeout(function(){ 1573 hideWord( headline.find('.pagelayer-is-visible').eq(0) ); 1574 }, duration); 1575 }); 1576 } 1577 1578 function hideWord($word){ 1579 var nextWord = takeNext($word); 1580 1581 if($word.parents('.pagelayer-aheading-holder').hasClass('letters')){ 1582 var bool = ($word.children('strong').length >= nextWord.children('strong').length) ? true : false; 1583 hideLetter($word.find('strong').eq(0), $word, bool, lettersDelay); 1584 showLetter(nextWord.find('strong').eq(0), nextWord, bool, lettersDelay); 1585 1586 }else if($word.parents('.pagelayer-aheading-holder').hasClass('pagelayer-aheading-clip')){ 1587 $word.parents('.pagelayer-words-wrapper').animate({ width : '2px' }, revealDuration, function(){ 1588 switchWord($word, nextWord); 1589 showWord(nextWord); 1590 }); 1591 1592 }else if($word.parents('.pagelayer-aheading-holder').hasClass('pagelayer-aheading-loading-bar')){ 1593 $word.parents('.pagelayer-words-wrapper').removeClass('pagelayer-is-loading'); 1594 switchWord($word, nextWord); 1595 1596 clearTimeout(pagelayerAnimTimer[id][0]); 1597 pagelayerAnimTimer[id][0] = setTimeout(function(){ 1598 hideWord(nextWord); 1599 }, barAnimationDelay); 1600 clearTimeout(pagelayerAnimTimer[id][1]); 1601 pagelayerAnimTimer[id][1] = setTimeout(function(){ 1602 $word.parents('.pagelayer-words-wrapper').addClass('pagelayer-is-loading'); 1603 }, barWaiting); 1604 1605 }else{ 1606 switchWord($word, nextWord); 1607 clearTimeout(pagelayerAnimTimer[id][2]); 1608 pagelayerAnimTimer[id][2] = setTimeout(function(){ 1609 hideWord(nextWord) ; 1610 }, animationDelay); 1611 } 1612 } 1613 1614 function showWord($word, $duration){ 1615 if($word.parents('.pagelayer-aheading-holder').hasClass('pagelayer-aheading-clip')){ 1616 $word.parents('.pagelayer-words-wrapper').animate({ 'width' : $word.width() + 10 }, revealDuration, function(){ 1617 clearTimeout(pagelayerAnimTimer[id][3]); 1618 pagelayerAnimTimer[id][3] = setTimeout(function(){ 1619 hideWord($word); 1620 }, revealAnimationDelay); 1621 }); 1622 } 1623 } 1624 1625 function hideLetter($letter, $word, $bool, $duration){ 1626 $letter.removeClass('pagelayer-aheading-in').addClass('pagelayer-aheading-out'); 1627 1628 if(!$letter.is(':last-child')){ 1629 clearTimeout(pagelayerAnimTimer[id][4]); 1630 pagelayerAnimTimer[id][4] = setTimeout(function(){ 1631 hideLetter($letter.next(), $word, $bool, $duration); 1632 }, $duration); 1633 }else if($bool){ 1634 clearTimeout(pagelayerAnimTimer[id][5]); 1635 pagelayerAnimTimer[id][5] = setTimeout(function(){ 1636 hideWord(takeNext($word)); 1637 }, animationDelay); 1638 } 1639 1640 if($letter.is(':last-child') && pagelayer_query('html').hasClass('pagelayer-no-csstransitions')){ 1641 var nextWord = takeNext($word); 1642 switchWord($word, nextWord); 1643 } 1644 } 1645 1646 function showLetter($letter, $word, $bool, $duration){ 1647 $letter.addClass('pagelayer-aheading-in').removeClass('pagelayer-aheading-out'); 1648 1649 if(!$word.hasClass('pagelayer-is-visible')){ 1650 $word.parent().children().removeClass('pagelayer-is-visible'); 1651 $word.addClass('pagelayer-is-visible'); 1652 } 1653 1654 if(!$letter.is(':last-child')){ 1655 clearTimeout(pagelayerAnimTimer[id][6]); 1656 pagelayerAnimTimer[id][6] = setTimeout(function(){ 1657 showLetter($letter.next(), $word, $bool, $duration); 1658 }, $duration); 1659 }else{ 1660 if(!$bool) { 1661 clearTimeout(pagelayerAnimTimer[id][7]); 1662 pagelayerAnimTimer[id][7] = setTimeout(function(){ 1663 hideWord($word); 1664 }, animationDelay) 1665 } 1666 } 1667 } 1668 1669 function takeNext($word){ 1670 return (!$word.is(':last-child')) ? $word.next() : $word.parent().children().eq(0); 1671 } 1672 1673 function switchWord($oldWord, $newWord){ 1674 $oldWord.removeClass('pagelayer-is-visible').addClass('pagelayer-is-hidden'); 1675 if(!$newWord.hasClass('pagelayer-is-visible')){ 1676 $newWord.removeClass('pagelayer-is-hidden').addClass('pagelayer-is-visible'); 1677 } 1678 } 1679} 1680 1681var pagelayerSetInterval = {}; 1682function pagelayer_pl_row_slider(jEle){ 1683 var index = 0; 1684 1685 var id = jEle.closest('[pagelayer-id]').attr('pagelayer-id'); 1686 var imageEls = jEle.find('.pagelayer-bgimg-slide'); // Get the images to be cycled. 1687 var speed = parseFloat(jEle.attr('data-speed')); // Get the speed of loop. 1688 imageEls.first().addClass('pagelayer-slide-show'); 1689 1690 clearInterval(pagelayerSetInterval[id]); 1691 pagelayerSetInterval[id] = setInterval(function (){ 1692 // Get the next index. If at end, restart to the beginning. 1693 index = index + 1 < imageEls.length ? index + 1 : 0; 1694 1695 // Show the next 1696 imageEls.eq(index).addClass('pagelayer-slide-show'); 1697 1698 // Hide the previous 1699 imageEls.eq(index - 1).removeClass('pagelayer-slide-show'); 1700 }, speed); 1701} 1702 1703function pagelayer_pl_social_profile(jEle){ 1704 var icon_holder = jEle.find('.pagelayer-icon-holder'); 1705 1706 // Assigning animation classes to icon holder 1707 if(!pagelayer_empty(jEle.attr('pagelayer-animation'))){ 1708 icon_holder.addClass('pagelayer-animation-'+jEle.attr('pagelayer-animation')); 1709 } 1710} 1711 1712// Post infinite scroll handler 1713function pagelayer_infinite_posts(jEle) { 1714 1715 var loader = jEle.find('.pagelayer-btn-load'); 1716 var autoScroll = jEle.find('.pagelayer-infinite-scroll-auto').length < 1; 1717 1718 loader.on('click', function(){ 1719 1720 var bEle = jQuery(this); 1721 var loaded = jEle.attr('pagelayer-post-data-loading'); 1722 1723 // Is loading? 1724 if(!pagelayer_empty(loaded)){ 1725 return; 1726 } 1727 1728 jEle.attr('pagelayer-post-data-loading', 1); 1729 1730 var current = bEle.attr('data-current') || 1; 1731 var nextPage = parseInt(current) + 1; 1732 var load_btn = jEle.find('.pagelayer_load_button'); 1733 1734 bEle.hide(); 1735 load_btn.find('.pagelayer-loader-holder').show(); 1736 1737 if(jEle.find('.pagelayer-post-max').attr('data-max') <= 1) { 1738 load_btn.text(load_btn.data('text'));
1739 return; 1740 } 1741 1742 // Get Data from local variable 1743 var data = window['pagelayer_local_scripts']['pagelayer_post_' + jEle.attr("pagelayer-id")]; 1744 1745 // Add next page number to load 1746 if(!pagelayer_empty(data.atts)){ 1747 data.atts['paged'] = nextPage; 1748 } 1749 1750 // Get the Posts 1751 jQuery.ajax({ 1752 url: pagelayer_ajaxurl + 'action=pagelayer_infinite_posts', 1753 type: 'POST', 1754 data: { 1755 pagelayer_nonce: pagelayer_global_nonce, 1756 data: data, 1757 }, 1758 success: function(result){ 1759 1760 var json = jQuery.parseJSON(result); 1761 var content = jQuery(json['posts']).find('.pagelayer-posts-container').html(); 1762 1763 jEle.find('.pagelayer-posts-container').append(content); 1764 1765 load_btn.find('.pagelayer-loader-holder').hide(); 1766 1767 if (jEle.find('.pagelayer-post-max').attr('data-max') == nextPage) { 1768 load_btn.text(load_btn.data('text')); 1769 }else if(autoScroll){ 1770 bEle.show(); 1771 } 1772 1773 bEle.attr('data-current', nextPage); 1774 }, 1775 complete: function(){ 1776 jEle.removeAttr('pagelayer-post-data-loading'); 1777 } 1778 }); 1779 1780 }); 1781 1782 // If already scrolled 1783 if(pagelayer_isVisible(loader)){ 1784 loader.click(); 1785 } 1786 1787 // Auto scroll? 1788 if(autoScroll){ 1789 return; 1790 } 1791 1792 var win = jQuery(pagelayerGetCurrentWindow()); 1793 1794 win.on('scroll.archive_posts', function(){ 1795 var current = parseInt(loader.attr('data-current')) || 1; 1796 var total = loader.attr('data-max'); 1797 1798 if(win.scrollTop() + win.height() < jEle.height() || current >= total) { 1799 return; 1800 } 1801 1802 loader.click(); 1803 }); 1804 1805} 1806 1807//////////////// 1808// Freemium End 1809//////////////// 1810 1811 1812/* 1813 * Nivo Lightbox v1.3.1 1814 * http://dev7studios.com/nivo-lightbox 1815 * 1816 * Copyright 2013, Dev7studios 1817 * Free to use and abuse under the MIT license. 1818 * http://www.opensource.org/licenses/mit-license.php 1819 */ 1820!function(t,i,o,e){function n(i,o){this.el=i,this.$el=t(this.el),this.options=t.extend({},l,o),this._defaults=l,this._name=a,this.init()}var a="nivoLightbox",l={effect:"fade",theme:"default",keyboardNav:!0,clickImgToClose:!1,clickOverlayToClose:!0,onInit:function(){},beforeShowLightbox:function(){},afterShowLightbox:function(t){},beforeHideLightbox:function(){},afterHideLightbox:function(){},beforePrev:function(t){},onPrev:function(t){},beforeNext:function(t){},onNext:function(t){},errorMessage:"The requested content cannot be loaded. Please try again later."};n.prototype={init:function(){var i=this;t("html").hasClass("nivo-lightbox-notouch")||t("html").addClass("nivo-lightbox-notouch"),"ontouchstart"in o&&t("html").removeClass("nivo-lightbox-notouch"),this.$el.on("click",function(t){i.showLightbox(t)}),this.options.keyboardNav&&t("body").off("keyup").on("keyup",function(o){var e=o.keyCode?o.keyCode:o.which;27==e&&i.destructLightbox(),37==e&&t(".nivo-lightbox-prev").trigger("click"),39==e&&t(".nivo-lightbox-next").trigger("click")}),this.options.onInit.call(this)},showLightbox:function(i){var o=this,e=this.$el,n=this.checkContent(e);if(n){i.preventDefault(),this.options.beforeShowLightbox.call(this);var a=this.constructLightbox();if(a){var l=a.find(".nivo-lightbox-content");if(l){if(t("body").addClass("nivo-lightbox-body-effect-"+this.options.effect),this.processContent(l,e),this.$el.attr("data-lightbox-gallery")){var h=t('[data-lightbox-gallery="'+this.$el.attr("data-lightbox-gallery")+'"]');t(".nivo-lightbox-nav").show(),t(".nivo-lightbox-prev").off("click").on("click",function(i){i.preventDefault();var n=h.index(e);e=h.eq(n-1),t(e).length||(e=h.last()),t.when(o.options.beforePrev.call(this,[e])).done(function(){o.processContent(l,e),o.options.onPrev.call(this,[e])})}),t(".nivo-lightbox-next").off("click").on("click",function(i){i.preventDefault();var n=h.index(e);e=h.eq(n+1),t(e).length||(e=h.first()),t.when(o.options.beforeNext.call(this,[e])).done(function(){o.processContent(l,e),o.options.onNext.call(this,[e])})})}setTimeout(function(){a.addClass("nivo-lightbox-open"),o.options.afterShowLightbox.call(this,[a])},1)}}}},checkContent:function(t){var i=t.attr("href"),o=i.match(/(youtube|youtube-nocookie|youtu|vimeo)\.(com|be)\/(video\/(.)+|watch\?v=([\w-]+)|([\w-]+))/);return null!==i.match(/\.(jpeg|jpg|gif|png)$/i)||(!!o||("ajax"==t.attr("data-lightbox-type")||("#"==i.substring(0,1)&&"inline"==t.attr("data-lightbox-type")||"iframe"==t.attr("data-lightbox-type"))))},processContent:function(o,e){var n=this,a=e.attr("href"),l=a.match(/(youtube|youtube-nocookie|youtu|vimeo)\.(com|be)\/(video\/(.)+|watch\?v=([\w-]+)|([\w-]+))/);if(o.html("").addClass("nivo-lightbox-loading"),this.isHidpi()&&e.attr("data-lightbox-hidpi")&&(a=e.attr("data-lightbox-hidpi")),null!==a.match(/\.(jpeg|jpg|gif|png)$/i)){var h=t("<img>",{src:a,class:"nivo-lightbox-image-display"});h.one("load",function(){var e=t('<div class="nivo-lightbox-image" />');e.append(h),o.html(e).removeClass("nivo-lightbox-loading"),e.css({"line-height":t(".nivo-lightbox-content").height()+"px",height:t(".nivo-lightbox-content").height()+"px"}),t(i).resize(function(){e.css({"line-height":t(".nivo-lightbox-content").height()+"px",height:t(".nivo-lightbox-content").height()+"px"})})}).each(function(){this.complete&&t(this).load()}),h.error(function(){var i=t('<div class="nivo-lightbox-error"><p>'+n.options.errorMessage+"</p></div>");o.html(i).removeClass("nivo-lightbox-loading")})}else if(l){var s="",r="nivo-lightbox-video";if("youtube"==l[1]&&(s="//www.youtube.com/embed/"+l[5],r="nivo-lightbox-youtube"),"youtube-nocookie"==l[1]&&(s=a,r="nivo-lightbox-youtube"),"youtu"==l[1]&&(s="//www.youtube.com/embed/"+l[3],r="nivo-lightbox-youtube"),"vimeo"==l[1]&&(s="//player.vimeo.com/video/"+(l[3].replace('video/','')),r="nivo-lightbox-vimeo"),s){var c=t("<iframe>",{src:s,class:r,frameborder:0,vspace:0,hspace:0,scrolling:"auto"});o.html(c),c.load(function(){o.removeClass("nivo-lightbox-loading")})}}else if("ajax"==e.attr("data-lightbox-type"))t.ajax({url:a,cache:!1,success:function(e){var n=t('<div class="nivo-lightbox-ajax" />');n.append(e),o.html(n).removeClass("nivo-lightbox-loading"),n.outerHeight()<o.height()&&n.css({position:"relative",top:"50%","margin-top":-(n.outerHeight()/2)+"px"}),t(i).resize(function(){n.outerHeight()<o.height()&&n.css({position:"relative",top:"50%","margin-top":-(n.outerHeight()/2)+"px"})})},error:function(){var i=t('<div class="nivo-lightbox-error"><p>'+n.options.errorMessage+"</p></div>");o.html(i).removeClass("nivo-lightbox-loading")}});else if("#"==a.substring(0,1)&&"inline"==e.attr("data-lightbox-type"))if(t(a).length){var g=t('<div class="nivo-lightbox-inline" />');g.append(t(a).clone().show()),o.html(g).removeClass("nivo-lightbox-loading"),g.outerHeight()<o.height()&&g.css({position:"relative",top:"50%","margin-top":-(g.outerHeight()/2)+"px"}),t(i).resize(function(){g.outerHeight()<o.height()&&g.css({position:"relative",top:"50%","margin-top":-(g.outerHeight()/2)+"px"})})}else{var v=t('<div class="nivo-lightbox-error"><p>'+n.options.errorMessage+"</p></div>");o.html(v).removeClass("nivo-lightbox-loading")}else{if("iframe"!=e.attr("data-lightbox-type"))return!1;var b=t("<iframe>",{src:a,class:"nivo-lightbox-item",frameborder:0,vspace:0,hspace:0,scrolling:"auto"});o.html(b),b.load(function(){o.removeClass("nivo-lightbox-loading")})}if(e.attr("title")){var x=t("<span>",{class:"nivo-lightbox-title"});x.text(e.attr("title")),t(".nivo-lightbox-title-wrap").html(x)}else t(".nivo-lightbox-title-wrap").html("")}
1820,constructLightbox:function(){if(t(".nivo-lightbox-overlay").length)return t(".nivo-lightbox-overlay");var i=t("<div>",{class:"nivo-lightbox-overlay nivo-lightbox-theme-"+this.options.theme+" nivo-lightbox-effect-"+this.options.effect}),o=t("<div>",{class:"nivo-lightbox-wrap"}),e=t("<div>",{class:"nivo-lightbox-content"}),n=t('<a href="#" class="nivo-lightbox-nav nivo-lightbox-prev">Previous</a><a href="#" class="nivo-lightbox-nav nivo-lightbox-next">Next</a>'),a=t('<a href="#" class="nivo-lightbox-close" title="Close">Close</a>'),l=t("<div>",{class:"nivo-lightbox-title-wrap"}),h=/*@cc_on!@*/0;h&&i.addClass("nivo-lightbox-ie"),o.append(e),o.append(l),i.append(o),i.append(n),i.append(a),t("body").append(i);var s=this;return s.options.clickOverlayToClose&&i.on("click",function(i){(i.target===this||t(i.target).hasClass("nivo-lightbox-content")||t(i.target).hasClass("nivo-lightbox-image"))&&s.destructLightbox()}),s.options.clickImgToClose&&i.on("click",function(i){(i.target===this||t(i.target).hasClass("nivo-lightbox-image-display"))&&s.destructLightbox()}),a.on("click",function(t){t.preventDefault(),s.destructLightbox()}),i},destructLightbox:function(){var i=this;this.options.beforeHideLightbox.call(this),t(".nivo-lightbox-overlay").removeClass("nivo-lightbox-open"),t(".nivo-lightbox-nav").hide(),t("body").removeClass("nivo-lightbox-body-effect-"+i.options.effect);var o=/*@cc_on!@*/0;o&&(t(".nivo-lightbox-overlay iframe").attr("src"," "),t(".nivo-lightbox-overlay iframe").remove()),t(".nivo-lightbox-prev").off("click"),t(".nivo-lightbox-next").off("click"),t(".nivo-lightbox-content").empty(),this.options.afterHideLightbox.call(this)},isHidpi:function(){var t="(-webkit-min-device-pixel-ratio: 1.5), (min--moz-device-pixel-ratio: 1.5), (-o-min-device-pixel-ratio: 3/2), (min-resolution: 1.5dppx)";return i.devicePixelRatio>1||!(!i.matchMedia||!i.matchMedia(t).matches)}},t.fn[a]=function(i){return this.each(function(){t.data(this,a)||t.data(this,a,new n(this,i))})}}(jQuery,window,document); 1821 1822/*! WOW wow.js - v1.3.0 - 2016-10-04 1823* https://wowjs.uk 1824* Copyright (c) 2016 Thomas Grainger; Licensed MIT */!function(a,b){if("function"==typeof define&&define.amd)define(["module","exports"],b);else if("undefined"!=typeof exports)b(module,exports);else{var c={exports:{}};b(c,c.exports),a.WOW=c.exports}}(this,function(a,b){"use strict";function c(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}function d(a,b){return b.indexOf(a)>=0}function e(a,b){for(var c in b)if(null==a[c]){var d=b[c];a[c]=d}return a}function f(a){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(a)}function g(a){var b=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],c=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],d=arguments.length<=3||void 0===arguments[3]?null:arguments[3],e=void 0;return null!=document.createEvent?(e=document.createEvent("CustomEvent"),e.initCustomEvent(a,b,c,d)):null!=document.createEventObject?(e=document.createEventObject(),e.eventType=a):e.eventName=a,e}function h(a,b){null!=a.dispatchEvent?a.dispatchEvent(b):b in(null!=a)?a[b]():"on"+b in(null!=a)&&a["on"+b]()}function i(a,b,c){null!=a.addEventListener?a.addEventListener(b,c,!1):null!=a.attachEvent?a.attachEvent("on"+b,c):a[b]=c}function j(a,b,c){null!=a.removeEventListener?a.removeEventListener(b,c,!1):null!=a.detachEvent?a.detachEvent("on"+b,c):delete a[b]}function k(){return"innerHeight"in window?window.innerHeight:document.documentElement.clientHeight}Object.defineProperty(b,"__esModule",{value:!0});var l,m,n=function(){function a(a,b){for(var c=0;c<b.length;c++){var d=b[c];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(a,d.key,d)}}return function(b,c,d){return c&&a(b.prototype,c),d&&a(b,d),b}}(),o=window.WeakMap||window.MozWeakMap||function(){function a(){c(this,a),this.keys=[],this.values=[]}return n(a,[{key:"get",value:function(a){for(var b=0;b<this.keys.length;b++){var c=this.keys[b];
1824if(c===a)return this.values[b]}}},{key:"set",value:function(a,b){for(var c=0;c<this.keys.length;c++){var d=this.keys[c];if(d===a)return this.values[c]=b,this}return this.keys.push(a),this.values.push(b),this}}]),a}(),p=window.MutationObserver||window.WebkitMutationObserver||window.MozMutationObserver||(m=l=function(){function a(){c(this,a),"undefined"!=typeof console&&null!==console&&(console.warn("MutationObserver is not supported by your browser."),console.warn("WOW.js cannot detect dom mutations, please call .sync() after loading new content."))}return n(a,[{key:"observe",value:function(){}}]),a}(),l.notSupported=!0,m),q=window.getComputedStyle||function(a){var b=/(\-([a-z]){1})/g;return{getPropertyValue:function(c){"float"===c&&(c="styleFloat"),b.test(c)&&c.replace(b,function(a,b){return b.toUpperCase()});var d=a.currentStyle;return(null!=d?d[c]:void 0)||null}}},r=function(){function a(){var b=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];c(this,a),this.defaults={boxClass:"wow",animateClass:"animated",offset:0,mobile:!0,live:!0,callback:null,scrollContainer:null,resetAnimation:!0},this.animate=function(){return"requestAnimationFrame"in window?function(a){return window.requestAnimationFrame(a)}:function(a){return a()}}(),this.vendors=["moz","webkit"],this.start=this.start.bind(this),this.resetAnimation=this.resetAnimation.bind(this),this.scrollHandler=this.scrollHandler.bind(this),this.scrollCallback=this.scrollCallback.bind(this),this.scrolled=!0,this.config=e(b,this.defaults),null!=b.scrollContainer&&(this.config.scrollContainer=document.querySelector(b.scrollContainer)),this.animationNameCache=new o,this.wowEvent=g(this.config.boxClass)}return n(a,[{key:"init",value:function(){this.element=window.document.documentElement,d(document.readyState,["interactive","complete"])?this.start():i(document,"DOMContentLoaded",this.start),this.finished=[]}},{key:"start",value:function(){var a=this;if(this.stopped=!1,this.boxes=[].slice.call(this.element.querySelectorAll("."+this.config.boxClass)),this.all=this.boxes.slice(0),this.boxes.length)if(this.disabled())this.resetStyle();else for(var b=0;b<this.boxes.length;b++){var c=this.boxes[b];this.applyStyle(c,!0)}if(this.disabled()||(i(this.config.scrollContainer||window,"scroll",this.scrollHandler),i(window,"resize",this.scrollHandler),this.interval=setInterval(this.scrollCallback,50)),this.config.live){var d=new p(function(b){for(var c=0;c<b.length;c++)for(var d=b[c],e=0;e<d.addedNodes.length;e++){var f=d.addedNodes[e];a.doSync(f)}});d.observe(document.body,{childList:!0,subtree:!0})}}},{key:"stop",value:function(){this.stopped=!0,j(this.config.scrollContainer||window,"scroll",this.scrollHandler),j(window,"resize",this.scrollHandler),null!=this.interval&&clearInterval(this.interval)}},{key:"sync",value:function(){p.notSupported&&this.doSync(this.element)}},{key:"doSync",value:function(a){if("undefined"!=typeof a&&null!==a||(a=this.element),1===a.nodeType){a=a.parentNode||a;for(var b=a.querySelectorAll("."+this.config.boxClass),c=0;c<b.length;c++){var e=b[c];d(e,this.all)||(this.boxes.push(e),this.all.push(e),this.stopped||this.disabled()?this.resetStyle():this.applyStyle(e,!0),this.scrolled=!0)}}}},{key:"show",value:function(a){return this.applyStyle(a),a.className=a.className+" "+this.config.animateClass,null!=this.config.callback&&this.config.callback(a),h(a,this.wowEvent),this.config.resetAnimation&&(i(a,"animationend",this.resetAnimation),i(a,"oanimationend",this.resetAnimation),i(a,"webkitAnimationEnd",this.resetAnimation),i(a,"MSAnimationEnd",this.resetAnimation)),a}},{key:"applyStyle",value:function(a,b){var c=this,d=a.getAttribute("data-wow-duration"),e=a.getAttribute("data-wow-delay"),f=a.getAttribute("data-wow-iteration");return this.animate(function(){return c.customStyle(a,b,d,e,f)})}},{key:"resetStyle",value:function(){for(var a=0;a<this.boxes.length;a++){var b=this.boxes[a];b.style.visibility="visible"}}},{key:"resetAnimation",value:function(a){if(a.type.toLowerCase().indexOf("animationend")>=0){var b=a.target||a.srcElement;b.className=b.className.replace(this.config.animateClass,"").trim()}}},{key:"customStyle",value:function(a,b,c,d,e){return b&&this.cacheAnimationName(a),a.style.visibility=b?"hidden":"visible",c&&this.vendorSet(a.style,{animationDuration:c}),d&&this.vendorSet(a.style,{animationDelay:d}),e&&this.vendorSet(a.style,{animationIterationCount:e}),this.vendorSet(a.style,{animationName:b?"none":this.cachedAnimationName(a)}),a}},{key:"vendorSet",value:function(a,b){for(var c in b)if(b.hasOwnProperty(c)){var d=b[c];a[""+c]=d;for(var e=0;e<this.vendors.length;e++){var f=this.vendors[e];a[""+f+c.charAt(0).toUpperCase()+c.substr(1)]=d}}}},{key:"vendorCSS",value:function(a,b){for(var c=q(a),d=c.getPropertyCSSValue(b),e=0;e<this.vendors.length;e++){var f=this.vendors[e];d=d||c.getPropertyCSSValue("-"+f+"-"+b)}return d}},{key:"animationName",value:function(a){var b=void 0;try{b=this.vendorCSS(a,"animation-name").cssText}catch(c){b=q(a).getPropertyValue("animation-name")}return"none"===b?"":b}},{key:"cacheAnimationName",value:function(a){return this.animationNameCache.set(a,this.animationName(a))}},{key:"cachedAnimationName",value:function(a){return this.animationNameCache.get(a)}},{key:"scrollHandler",value:function(){this.scrolled=!0}},{key:"scrollCallback",value:function(){if(this.scrolled){this.scrolled=!1;for(var a=[],b=0;b<this.boxes.length;b++){var c=this.boxes[b];if(c){if(this.isVisible(c)){this.show(c);continue}a.push(c)}}this.boxes=a,this.boxes.length||this.config.live||this.stop()}}},{key:"offsetTop",value:function(a){for(;void 0===a.offsetTop;)a=a.parentNode;for(var b=a.offsetTop;a.offsetParent;)a=a.offsetParent,b+=a.offsetTop;return b}},{key:"isVisible",value:function(a){var b=a.getAttribute("data-wow-offset")||this.config.offset,c=this.config.scrollC
1824ontainer&&this.config.scrollContainer.scrollTop||window.pageYOffset,d=c+Math.min(this.element.clientHeight,k())-b,e=this.offsetTop(a),f=e+a.clientHeight;return d>=e&&f>=c}},{key:"disabled",value:function(){return!this.config.mobile&&f(navigator.userAgent)}}]),a}();b["default"]=r,a.exports=b["default"]}); 1825 1826/* 1827 * jQuery Numerator Plugin 0.2.1 1828 * https://github.com/garethdn/jquery-numerator 1829 * 1830 * Copyright 2015, Gareth Nolan 1831 * http://ie.linkedin.com/in/garethnolan/ 1832 1833 * Based on jQuery Boilerplate by Zeno Rocha with the help of Addy Osmani 1834 * http://jqueryboilerplate.com 1835 * 1836 * Licensed under the MIT license: 1837 * http://www.opensource.org/licenses/MIT 1838 */ 1839 1840;(function (factory) { 1841 'use strict'; 1842 if (typeof define === 'function' && define.amd) { 1843 // AMD is used - Register as an anonymous module. 1844 define(['jquery'], factory); 1845 } else if (typeof exports === 'object') { 1846 factory(require('jquery')); 1847 } else { 1848 // Neither AMD nor CommonJS used. Use global variables. 1849 if (typeof jQuery === 'undefined') { 1850 throw 'jquery-numerator requires jQuery to be loaded first'; 1851 } 1852 factory(jQuery); 1853 } 1854}(function ($) { 1855 1856 var pluginName = "numerator", 1857 defaults = { 1858 easing: 'swing', 1859 duration: 500, 1860 delimiter: undefined, 1861 rounding: 0, 1862 toValue: undefined, 1863 fromValue: undefined, 1864 queue: false, 1865 onStart: function(){}, 1866 onStep: function(){}, 1867 onProgress: function(){}, 1868 onComplete: function(){} 1869 }; 1870 1871 function Plugin ( element, options ) { 1872 this.element = element; 1873 this.settings = $.extend( {}, defaults, options ); 1874 this._defaults = defaults; 1875 this._name = pluginName; 1876 this.init(); 1877 } 1878 1879 Plugin.prototype = { 1880 1881 init: function () { 1882 this.parseElement(); 1883 this.setValue(); 1884 }, 1885 1886 parseElement: function () { 1887 var elText = $.trim($(this.element).text()); 1888 1889 this.settings.fromValue = this.settings.fromValue || this.format(elText); 1890 }, 1891 1892 setValue: function() { 1893 var self = this; 1894 1895 $({value: self.settings.fromValue}).animate({value: self.settings.toValue}, { 1896 1897 duration: parseInt(self.settings.duration, 10), 1898 1899 easing: self.settings.easing, 1900 1901 start: self.settings.onStart, 1902 1903 step: function(now, fx) { 1904 $(self.element).text(self.format(now)); 1905 // accepts two params - (now, fx) 1906 self.settings.onStep(now, fx); 1907 }, 1908 1909 // accepts three params - (animation object, progress ratio, time remaining(ms)) 1910 progress: self.settings.onProgress, 1911 1912 complete: self.settings.onComplete 1913 }); 1914 }, 1915 1916 format: function(value){ 1917 var self = this; 1918 1919 if ( parseInt(this.settings.rounding ) < 1) { 1920 value = parseInt(value, 10); 1921 } else { 1922 value = parseFloat(value).toFixed( parseInt(this.settings.rounding) ); 1923 } 1924 1925 if (self.settings.delimiter) { 1926 return this.delimit(value) 1927 } else { 1928 return value; 1929 } 1930 }, 1931 1932 // TODO: Add comments to this function 1933 delimit: function(value){ 1934 var self = this; 1935 1936 value = value.toString(); 1937 1938 if (self.settings.rounding && parseInt(self.settings.rounding, 10) > 0) { 1939 var decimals = value.substring( (value.length - (self.settings.rounding + 1)), value.length ), 1940 wholeValue = value.substring( 0, (value.length - (self.settings.rounding + 1))); 1941 1942 return self.addDelimiter(wholeValue) + decimals; 1943 } else { 1944 return self.addDelimiter(value); 1945 } 1946 }, 1947 1948 addDelimiter: function(value){ 1949 return value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, this.settings.delimiter); 1950 } 1951 }; 1952 1953 $.fn[ pluginName ] = function ( options ) { 1954 return this.each(function() { 1955 if ( $.data( this, "plugin_" + pluginName ) ) { 1956 $.data(this, 'plugin_' + pluginName, null); 1957 } 1958 $.data( this, "plugin_" + pluginName, new Plugin( this, options ) ); 1959 }); 1960 }; 1961 1962})); 1963 1964/** 1965 * simple-parallax-js - simpleParallax is a simple and lightweight JS plugin that gives your website parallax animations on the images 1966 * @version v4.2.1 1967 * @date: 09-03-2019 17:4:39 1968 * @link https://simpleparallax.com/ 1969 */ 1970"use strict";var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},_createClass=function(){function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e}}(),_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}!function(e,t){"function"==typeof define&&define.amd?define([],function(){return t(e)}):"object"===("undefined"==typeof exports?"undefined":_typeof(exports))?module.exports=t(e):e.pagelayerParallax=t(e)}("undefined"!=typeof global?global:"undefined"!=typeof window?window:void 0,function(o){var i=function(){for(var e,t="transform webkitTransform mozTransform oTransform msTransform".split(" "),n=0;void 0===e;)e=null!=document.createElement("div").style[t[n]]?t[n]:void 0,n++;return e}();
1970!function(){for(var a=0,e=["ms","moz","webkit","o"],t=0;t<e.length&&!o.requestAnimationFrame;++t)o.requestAnimationFrame=o[e[t]+"RequestAnimationFrame"],o.cancelAnimationFrame=o[e[t]+"CancelAnimationFrame"]||o[e[t]+"CancelRequestAnimationFrame"];o.requestAnimationFrame||(o.requestAnimationFrame=function(e,t){var n=(new Date).getTime(),i=Math.max(0,16-(n-a)),s=o.setTimeout(function(){e(n+i)},i);return a=n+i,s}),o.cancelAnimationFrame||(o.cancelAnimationFrame=function(e){clearTimeout(e)})}(),Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector),Element.prototype.closest||(Element.prototype.closest=function(e){var t=this;if(!document.documentElement.contains(t))return null;do{if(t.matches(e))return t;t=t.parentElement||t.parentNode}while(null!==t&&1===t.nodeType);return null});var s=[],t=-1,a=void 0,r=void 0,l=void 0,h=void 0,m=!1,u=function(){function n(e,t){_classCallCheck(this,n),this.element=e,this.elementContainer=e,this.defaults={delay:.6,orientation:"up",scale:1.3,overflow:!1,transition:"cubic-bezier(0,0,0,1)",breakpoint:!1},this.settings=_extends(this.defaults,t),this.settings.breakpoint&&document.documentElement.clientWidth<=this.settings.breakpoint||(this.init=this.init.bind(this),this.animationFrame=this.animationFrame.bind(this),this.handleResize=this.handleResize.bind(this),this.isImageLoaded(this.element)?this.init():this.element.addEventListener("load",this.init),s.push(this),m||(m=!0,this.getViewportOffsetHeight(),this.animationFrame()))}return _createClass(n,[{key:"init",value:function(){this.isInit||(!1===this.settings.overflow&&this.wrapElement(),this.setStyle(),this.getElementOffset(),this.getTranslateValue(),this.animate(),o.addEventListener("resize",this.handleResize),this.isInit=!0)}},{key:"isImageLoaded",value:function(){return!!this.element.complete&&(void 0===this.element.naturalWidth||0!==this.element.naturalWidth)}},{key:"isVisible",value:function(){return this.elementBottomX>a&&this.elementTopX<r}},{key:"wrapElement",value:function(){var e=this.element.closest("picture")||this.element,t=document.createElement("div");t.classList.add("pagelayerParallax"),t.style.overflow="hidden",e.parentNode.insertBefore(t,e),t.appendChild(e),this.elementContainer=t}},{key:"unWrapElement",value:function(){var e=this.elementContainer.parentNode;if(e){for(;this.elementContainer.firstChild;)e.insertBefore(this.elementContainer.firstChild,this.elementContainer);e.removeChild(this.elementContainer)}}},{key:"setStyle",value:function(){!1===this.settings.overflow&&(this.element.style[i]="scale("+this.settings.scale+")"),0<this.settings.delay&&(this.element.style.transition="transform "+this.settings.delay+"s "+this.settings.transition),this.element.style.willChange="transform"}},{key:"unSetStyle",value:function(){this.element.style.willChange="",this.element.style[i]="",this.element.style.transition=""}},{key:"getElementOffset",value:function(){var e=this.elementContainer.getBoundingClientRect();this.elementHeight=e.height,this.elementTopX=e.top+o.pageYOffset,this.elementBottomX=this.elementHeight+this.elementTopX}},{key:"getViewportOffsetTop",value:function(){a=o.pageYOffset}},{key:"getViewportOffsetHeight",value:function(){l=document.documentElement.clientHeight}},{key:"getViewportOffsetBottom",value:function(){r=a+l}},{key:"handleResize",value:function(){this.getViewportOffsetHeight(),this.getElementOffset(),this.getRangeMax()}},{key:"getRangeMax",value:function(){var e=this.element.clientHeight;this.rangeMax=e*this.settings.scale-e,"down"!==this.settings.orientation&&"right"!==this.settings.orientation||(this.rangeMax*=-1)}},{key:"getTranslateValue",value:function(){var e=((r-this.elementTopX)/((l+this.elementHeight)/100)).toFixed(1);return e=Math.min(100,Math.max(0,e)),this.oldPercentage!==e&&(this.rangeMax||this.getRangeMax(),this.translateValue=(e/100*this.rangeMax-this.rangeMax/2).toFixed(0),this.oldTranslateValue!==this.translateValue&&(this.oldPercentage=e,this.oldTranslateValue=this.translateValue,!0))}},{key:"animate",value:function(){var e=0,t=0,n=void 0;"left"===this.settings.orientation||"right"===this.settings.orientation?t=this.translateValue+"px":e=this.translateValue+"px",n=!1===this.settings.overflow?"translate3d("+t+", "+e+", 0) scale("+this.settings.scale+")":"translate3d("+t+", "+e+", 0)",this.element.style[i]=n}},{key:"proceedElement",value:function(e){e.isVisible()&&e.getTranslateValue()&&e.animate()}},{key:"animationFrame",value:function(){if(this.getViewportOffsetTop(),t!==a){this.getViewportOffsetBottom();for(var e=0;e<s.length;e++)this.proceedElement(s[e]);h=o.requestAnimationFrame(this.animationFrame),t=a}else h=o.requestAnimationFrame(this.animationFrame)}},{key:"destroy",value:function(){this.isDestroyed||(this.unSetStyle(),!1===this.settings.overflow&&this.unWrapElement(),s.splice(s.indexOf(this),1),s.length||(m=!1,o.cancelAnimationFrame(h)),o.removeEventListener("resize",this.handleResize))}},{key:"isDestroyed",get:function(){return-1===s.indexOf(this)}}]),n}();return function(e,t){var n=[];if(e.length)for(var i=0;i<e.length;i++)n.push(new u(e[i],t));else n.push(new u(e,t));return n}}); 1971 1972/** 1973 * Owl Carousel v2.3.4 1974 * Copyright 2013-2018 David Deutsch 1975 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE 1976 */ 1977!function(a,b,c,d){function e(b,c){this.settings=null,this.options=a.extend({},e.Defaults,c),this.$element=a(b),this._handlers={},this._plugins={},this._supress={},this._current=null,this._speed=null,this._coordinates=[],this._breakpoint=null,this._width=null,this._items=[],this._clones=[],this._mergers=[],this._widths=[],this._invalidated={},this._pipe=[],this._drag={time:null,target:null,pointer:null,stage:{start:null,current:null},direction:null},this._states={current:{},tags:{initializing:["busy"],animating:["busy"],dragging:["interacting"]}},a.each(["onResize","onThrottledResize"],a.proxy(function(b,c){this._handlers[c]=a.proxy(this[c],this)},this)),a.each(e.Plugins,a.proxy(function(a,b){this._plugins[a.charAt(0).toLowerCase()+a.slice(1)]=new b(this)},this)),a.each(e.Workers,a.proxy(function(b,c){this._pipe.push({filter:c.filter,run:a.proxy(c.run,this)})},this)),this.setup(),this.initialize()}e.Defaults={items:3,loop:!1,center:!1,rewind:!1,checkVisibility:!0,mouseDrag:!0,touchDrag:!0,pullDrag:!0,freeDrag:!1,margin:0,stagePadding:0,merge:!1,mergeFit:!0,autoWidth:!1,startPosition:0,rtl:!1,smartSpeed:250,fluidSpeed:!1,dragEndSpeed:!1,responsive:{},responsiveRefreshRate:200,responsiveBaseElement:b,fallbackEasing:"swing",slideTransition:"",info:!1,nestedItemSelector:!1,itemElement:"div",stageElement:"div",refreshClass:"pagelayer-owl-refresh",loadedClass:"pagelayer-owl-loaded",loadingClass:"pagelayer-owl-loading",rtlClass:"pagelayer-owl-rtl",responsiveClass:"pagelayer-owl-responsive",dragClass:"pagelayer-owl-drag",itemClass:"pagelayer-owl-item",stageClass:"pagelayer-owl-stage",stageOuterClass:"pagelayer-owl-stage-outer",grabClass:"pagelayer-owl-grab"},e.Width={Default:"default",Inner:"inner",Outer:"outer"},e.Type={Event:"event",State:"state"},e.Plugins={},e.Workers=[{filter:["width","settings"],run:function(){this._width=this.$element.width()}},{filter:["width","items","settings"],run:function(a){a.current=this._items&&this._items[this.relative(this._current)]}},{filter:["items","settings"],run:function(){this.$stage.children(".cloned").remove()}},{filter:["width","items","settings"],run:function(a){var b=this.settings.margin||"",c=!this.settings.autoWidth,d=this.settings.rtl,e={width:"auto","margin-left":d?b:"","margin-right":d?"":b};!c&&this.$stage.children().css(e),a.css=e}},{filter:["width","items","settings"],run:function(a){var b=(this.width()/this.settings.items).toFixed(3)-this.settings.margin,c=null,d=this._items.length,e=!this.settings.autoWidth,f=[];for(a.items={merge:!1,width:b};d--;)c=this._mergers[d],c=this.settings.mergeFit&&Math.min(c,this.settings.items)||c,a.items.merge=c>1||a.items.merge,f[d]=e?b*c:this._items[d].width();this._widths=f}},{filter:["items","settings"],run:function(){var b=[],c=this._items,d=this.settings,e=Math.max(2*d.items,4),f=2*Math.ceil(c.length/2),g=d.loop&&c.length?d.rewind?e:Math.max(e,f):0,h="",i="";for(g/=2;g>0;)b.push(this.normalize(b.length/2,!0)),h+=c[b[b.length-1]][0].outerHTML,b.push(this.normalize(c.length-1-(b.length-1)/2,!0)),i=c[b[b.length-1]][0].outerHTML+i,g-=1;this._clones=b,a(h).addClass("cloned").appendTo(this.$stage),a(i).addClass("cloned").prependTo(this.$stage)}},{filter:["width","items","settings"],run:function(){for(var a=this.settings.rtl?1:-1,b=this._clones.length+this._items.length,c=-1,d=0,e=0,f=[];++c<b;)d=f[c-1]||0,e=this._widths[this.relative(c)]+this.settings.margin,f.push(d+e*a);this._coordinates=f}},{filter:["width","items","settings"],run:function(){var a=this.settings.stagePadding,b=this._coordinates,c={width:Math.ceil(Math.abs(b[b.length-1]))+2*a,"padding-left":a||"","padding-right":a||""};this.$stage.css(c)}},{filter:["width","items","settings"],run:function(a){var b=this._coordinates.length,c=!this.settings.autoWidth,d=this.$stage.children();if(c&&a.items.merge)for(;b--;)a.css.width=this._widths[this.relative(b)],d.eq(b).css(a.css);else c&&(a.css.width=a.items.width,d.css(a.css))}},{filter:["items"],run:function(){this._coordinates.length<1&&this.$stage.removeAttr("style")}},{filter:["width","items","settings"],run:function(a){a.current=a.current?this.$stage.children().index(a.current):0,a.current=Math.max(this.minimum(),Math.min(this.maximum(),a.current)),this.reset(a.current)}},{filter:["position"],run:function(){this.animate(this.coordinates(this._current))}},{filter:["width","position","items","settings"],run:function(){var a,b,c,d,e=this.settings.rtl?1:-1,f=2*this.settings.stagePadding,g=this.coordinates(this.current())+f,h=g+this.width()*e,i=[];for(c=0,d=this._coordinates.length;c<d;c++)a=this._coordinates[c-1]||0,b=Math.abs(this._coordinates[c])+f*e,(this.op(a,"<=",g)&&this.op(a,">",h)||this.op(b,"<",g)&&this.op(b,">",h))&&i.push(c);this.$stage.children(".active").removeClass("active"),this.$stage.children(":eq("+i.join("), :eq(")+")").addClass("active"),this.$stage.children(".center").removeClass("center"),this.settings.center&&this.$stage.children().eq(this.current()).addClass("center")}}],e.prototype.initializeStage=function(){this.$stage=this.$element.find("."+this.settings.stageClass),this.$stage.length||(this.$element.addClass(this.options.loadingClass),this.$stage=a("<"+this.settings.stageElement+">",{class:this.settings.stageClass}).wrap(a("<div/>",{class:this.settings.stageOuterClass})),this.$element.append(this.$stage.parent()))},e.prototype.initializeItems=function(){var b=this.$element.find(".pagelayer-owl-item");if(b.length)return this._items=b.get().map(function(b){return a(b)}),this._mergers=this._items.map(function(){return 1}),void this.refresh();this.replace(this.$element.children().not(this.$stage.parent())),this.isVisible()?this.refresh():this.invalidate("width"),this.$element.removeClass(this.options.loadingClass).addClass(this.options.loadedClass)},e.prototype.initialize=function(){if(this.enter("initializing"),this.trigger("initialize"),this.$element.toggleClass(this.settings.rtlClass,this.settings.rtl),this.settings.autoWidth&&!this.is("pre-loading")){var a,b,c;a=this.$element.find("img"),b=this.settings.nestedItemSelector?"."+this.settings.nestedItemSelector:d,c=this.$element.children(b).width(),a.length&&c<=0&&this.preloadAutoWidthImages(a)}this.initializeStage(),this.initializeItems(),this.registerEventHandlers(),this.leave("initializing"),this.trigger("initialized")},e.prototype.isVisible=function(){return!this.settings.checkVisibility||this.$element.is(":visible")},e.prototype.setup=function(){var b=this.viewport(),c=this.options.responsive,d=-1,e=null;c?(a.each(c,function(a){a<=b&&a>d&&(d=Number(a))}),e=a.extend({},this.options,c[d]),"function"==typeof e.stagePadding&&(e.stagePadding=e.stagePadding()),delete e.responsive,e.responsiveClass&&this.$element.attr("class",this.$element.attr("class").replace(new RegExp("("+this.options.responsiveClass+"-)\\S+\\s","g"),"$1"+d))):e=a.extend({},this.options),this.trigger("change",{property:{name:"settings",value:e}}),this._breakpoint=d,this.settings=e,this.invalidate("settings"),this.trigger("changed",{property:{name:"settings",value:this.settings}})},e.prototype.optionsLogic=function(){this.settings.autoWidth&&(this.settings.stagePadding=!1,this.settings.merge=!1)},e.prototype.prepare=function(b){var c=this.trigger("prepare",{content:b});return c.data||(c.data=a("<"+this.settings.itemElement+"/>").addClass(this.options.itemClass).append(b)),this.trigger("prepared",{content:c.data}),c.data},e.prototype.update=function(){for(var b=0,c=this._pipe.length,d=a.proxy(function(a){return this[a]},this._invalidated),e={};b<c;)(this._invalidated.all||a.grep(this._pipe[b].filter,d).length>0)&&this._pipe[b].run(e),b++;this._invalidated={},!this.is("valid")&&this.enter("valid")},e.prototype.width=function(a){switch(a=a||e.Width.Default){case e.Width.Inner:case e.Width.Outer:return this._width;default:return this._width-2*this.settings.stagePadding+this.settings.margin}},e.prototype.refresh=function(){this.enter("refreshing"),this.trigger("refresh"),this.setup(),this.optionsLogic(),this.$element.addClass(this.options.refreshClass),this.update(),this.$element.removeClass(this.options.refreshClass),this.leave("refreshing"),this.trigger("refreshed")},e.prototype.onThrottledResize=function(){b.clearTimeout(this.resizeTimer),this.resizeTimer=b.setTimeout(this._handlers.onResize,this.settings.responsiveRefreshRate)},e.prototype.onResize=function(){return!!this._items.length&&(this._width!==this.$element.width()&&(!!this.isVisible()&&(this.enter("resizing"),this.trigger("resize").isDefaultPrevented()?(this.leave("resizing"),!1):(this.invalidate("width"),this.refresh(),this.leave("resizing"),void this.trigger("resized")))))},e.prototype.registerEventHandlers=function(){a.support.transition&&this.$stage.on(a.support.transition.end+".owl.core",a.proxy(this.onTransitionEnd,this)),!1!==this.settings.responsive&&this.on(b,"resize",this._handlers.onThrottledResize),this.settings.mouseDrag&&(this.$element.addClass(this.options.dragClass),this.$stage.on("mousedown.owl.core",a.proxy(this.onDragStart,this)),this.$stage.on("dragstart.owl.core selectstart.owl.core",function(){return!1})),this.settings.touchDrag&&(this.$stage.on("touchstart.owl.core",a.proxy(this.onDragStart,this)),this.$stage.on("touchcancel.owl.core",a.proxy(this.onDragEnd,this)))},e.prototype.onDragStart=function(b){var d=null;3!==b.which&&(a.support.transform?(d=this.$stage.css("transform").replace(/.*\(|\)| /g,"").split(","),d={x:d[16===d.length?12:4],y:d[16===d.length?13:5]}):(d=this.$stage.position(),d={x:this.settings.rtl?d.left+this.$stage.width()-this.width()+this.settings.margin:d.left,y:d.top}),this.is("animating")&&(a.support.transform?this.animate(d.x):this.$stage.stop(),this.invalidate("position")),this.$element.toggleClass(this.options.grabClass,"mousedown"===b.type),this.speed(0),this._drag.time=(new Date).getTime(),this._drag.target=a(b.target),this._drag.stage.start=d,this._drag.stage.current=d,this._drag.pointer=this.pointer(b),a(c).on("mouseup.owl.core touchend.owl.core",a.proxy(this.onDragEnd,this)),a(c).one("mousemove.owl.core touchmove.owl.core",a.proxy(function(b){var d=this.difference(this._drag.pointer,this.pointer(b));a(c).on("mousemove.owl.core touchmove.owl.core",a.proxy(this.onDragMove,this)),Math.abs(d.x)<Math.abs(d.y)&&this.is("valid")||(b.preventDefault(),this.enter("dragging"),this.trigger("drag"))},this)))},e.prototype.onDragMove=function(a){var b=null,c=null,d=null,e=this.difference(this._drag.pointer,this.pointer(a)),f=this.difference(this._drag.stage.start,e);this.is("dragging")&&(a.preventDefault(),this.settings.loop?(b=this.coordinates(this.minimum()),c=this.coordinates(this.maximum()+1)-b,f.x=((f.x-b)%c+c)%c+b):(b=this.settings.rtl?this.coordinates(this.maximum()):this.coordinates(this.minimum()),c=this.settings.rtl?this.coordinates(this.minimum()):this.coordinates(this.maximum()),d=this.settings.pullDrag?-1*e.x/5:0,f.x=Math.max(Math.min(f.x,b+d),c+d)),this._drag.stage.current=f,this.animate(f.x))},e.prototype.onDragEnd=function(b){var d=this.difference(this._drag.pointer,this.pointer
vendor: 33,616 bytes, lines 1977-1979
1977(b)),e=this._drag.stage.current,f=d.x>0^this.settings.rtl?"left":"right";a(c).off(".owl.core"),this.$element.removeClass(this.options.grabClass),(0!==d.x&&this.is("dragging")||!this.is("valid"))&&(this.speed(this.settings.dragEndSpeed||this.settings.smartSpeed),this.current(this.closest(e.x,0!==d.x?f:this._drag.direction)),this.invalidate("position"),this.update(),this._drag.direction=f,(Math.abs(d.x)>3||(new Date).getTime()-this._drag.time>300)&&this._drag.target.one("click.owl.core",function(){return!1})),this.is("dragging")&&(this.leave("dragging"),this.trigger("dragged"))},e.prototype.closest=function(b,c){var e=-1,f=30,g=this.width(),h=this.coordinates();return this.settings.freeDrag||a.each(h,a.proxy(function(a,i){return"left"===c&&b>i-f&&b<i+f?e=a:"right"===c&&b>i-g-f&&b<i-g+f?e=a+1:this.op(b,"<",i)&&this.op(b,">",h[a+1]!==d?h[a+1]:i-g)&&(e="left"===c?a+1:a),-1===e},this)),this.settings.loop||(this.op(b,">",h[this.minimum()])?e=b=this.minimum():this.op(b,"<",h[this.maximum()])&&(e=b=this.maximum())),e},e.prototype.animate=function(b){var c=this.speed()>0;this.is("animating")&&this.onTransitionEnd(),c&&(this.enter("animating"),this.trigger("translate")),a.support.transform3d&&a.support.transition?this.$stage.css({transform:"translate3d("+b+"px,0px,0px)",transition:this.speed()/1e3+"s"+(this.settings.slideTransition?" "+this.settings.slideTransition:"")}):c?this.$stage.animate({left:b+"px"},this.speed(),this.settings.fallbackEasing,a.proxy(this.onTransitionEnd,this)):this.$stage.css({left:b+"px"})},e.prototype.is=function(a){return this._states.current[a]&&this._states.current[a]>0},e.prototype.current=function(a){if(a===d)return this._current;if(0===this._items.length)return d;if(a=this.normalize(a),this._current!==a){var b=this.trigger("change",{property:{name:"position",value:a}});b.data!==d&&(a=this.normalize(b.data)),this._current=a,this.invalidate("position"),this.trigger("changed",{property:{name:"position",value:this._current}})}return this._current},e.prototype.invalidate=function(b){return"string"===a.type(b)&&(this._invalidated[b]=!0,this.is("valid")&&this.leave("valid")),a.map(this._invalidated,function(a,b){return b})},e.prototype.reset=function(a){(a=this.normalize(a))!==d&&(this._speed=0,this._current=a,this.suppress(["translate","translated"]),this.animate(this.coordinates(a)),this.release(["translate","translated"]))},e.prototype.normalize=function(a,b){var c=this._items.length,e=b?0:this._clones.length;return!this.isNumeric(a)||c<1?a=d:(a<0||a>=c+e)&&(a=((a-e/2)%c+c)%c+e/2),a},e.prototype.relative=function(a){return a-=this._clones.length/2,this.normalize(a,!0)},e.prototype.maximum=function(a){var b,c,d,e=this.settings,f=this._coordinates.length;if(e.loop)f=this._clones.length/2+this._items.length-1;else if(e.autoWidth||e.merge){if(b=this._items.length)for(c=this._items[--b].width(),d=this.$element.width();b--&&!((c+=this._items[b].width()+this.settings.margin)>d););f=b+1}else f=e.center?this._items.length-1:this._items.length-e.items;return a&&(f-=this._clones.length/2),Math.max(f,0)},e.prototype.minimum=function(a){return a?0:this._clones.length/2},e.prototype.items=function(a){return a===d?this._items.slice():(a=this.normalize(a,!0),this._items[a])},e.prototype.mergers=function(a){return a===d?this._mergers.slice():(a=this.normalize(a,!0),this._mergers[a])},e.prototype.clones=function(b){var c=this._clones.length/2,e=c+this._items.length,f=function(a){return a%2==0?e+a/2:c-(a+1)/2};return b===d?a.map(this._clones,function(a,b){return f(b)}):a.map(this._clones,function(a,c){return a===b?f(c):null})},e.prototype.speed=function(a){return a!==d&&(this._speed=a),this._speed},e.prototype.coordinates=function(b){var c,e=1,f=b-1;return b===d?a.map(this._coordinates,a.proxy(function(a,b){return this.coordinates(b)},this)):(this.settings.center?(this.settings.rtl&&(e=-1,f=b+1),c=this._coordinates[b],c+=(this.width()-c+(this._coordinates[f]||0))/2*e):c=this._coordinates[f]||0,c=Math.ceil(c))},e.prototype.duration=function(a,b,c){return 0===c?0:Math.min(Math.max(Math.abs(b-a),1),6)*Math.abs(c||this.settings.smartSpeed)},e.prototype.to=function(a,b){var c=this.current(),d=null,e=a-this.relative(c),f=(e>0)-(e<0),g=this._items.length,h=this.minimum(),i=this.maximum();this.settings.loop?(!this.settings.rewind&&Math.abs(e)>g/2&&(e+=-1*f*g),a=c+e,(d=((a-h)%g+g)%g+h)!==a&&d-e<=i&&d-e>0&&(c=d-e,a=d,this.reset(c))):this.settings.rewind?(i+=1,a=(a%i+i)%i):a=Math.max(h,Math.min(i,a)),this.speed(this.duration(c,a,b)),this.current(a),this.isVisible()&&this.update()},e.prototype.next=function(a){a=a||!1,this.to(this.relative(this.current())+1,a)},e.prototype.prev=function(a){a=a||!1,this.to(this.relative(this.current())-1,a)},e.prototype.onTransitionEnd=function(a){if(a!==d&&(a.stopPropagation(),(a.target||a.srcElement||a.originalTarget)!==this.$stage.get(0)))return!1;this.leave("animating"),this.trigger("translated")},e.prototype.viewport=function(){var d;return this.options.responsiveBaseElement!==b?d=a(this.options.responsiveBaseElement).width():b.innerWidth?d=b.innerWidth:c.documentElement&&c.documentElement.clientWidth?d=c.documentElement.clientWidth:console.warn("Can not detect viewport width."),d},e.prototype.replace=function(b){this.$stage.empty(),this._items=[],b&&(b=b instanceof jQuery?b:a(b)),this.settings.nestedItemSelector&&(b=b.find("."+this.settings.nestedItemSelector)),b.filter(function(){return 1===this.nodeType}).each(a.proxy(function(a,b){b=this.prepare(b),this.$stage.append(b),this._items.push(b),this._mergers.push(1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)},this)),this.reset(this.isNumeric(this.settings.startPosition)?this.settings.startPosition:0),this.invalidate("items")},e.prototype.add=function(b,c){var e=this.relative(this._current);c=c===d?this._items.length:this.normalize(c,!0),b=b instanceof jQuery?b:a(b),this.trigger("add",{content:b,position:c}),b=this.prepare(b),0===this._items.length||c===this._items.length?(0===this._items.length&&this.$stage.append(b),0!==this._items.length&&this._items[c-1].after(b),this._items.push(b),this._mergers.push(1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)):(this._items[c].before(b),this._items.splice(c,0,b),this._mergers.splice(c,0,1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)),this._items[e]&&this.reset(this._items[e].index()),this.invalidate("items"),this.trigger("added",{content:b,position:c})},e.prototype.remove=function(a){(a=this.normalize(a,!0))!==d&&(this.trigger("remove",{content:this._items[a],position:a}),this._items[a].remove(),this._items.splice(a,1),this._mergers.splice(a,1),this.invalidate("items"),this.trigger("removed",{content:null,position:a}))},e.prototype.preloadAutoWidthImages=function(b){b.each(a.proxy(function(b,c){this.enter("pre-loading"),c=a(c),a(new Image).one("load",a.proxy(function(a){c.attr("src",a.target.src),c.css("opacity",1),this.leave("pre-loading"),!this.is("pre-loading")&&!this.is("initializing")&&this.refresh()},this)).attr("src",c.attr("src")||c.attr("data-src")||c.attr("data-src-retina"))},this))},e.prototype.destroy=function(){this.$element.off(".owl.core"),this.$stage.off(".owl.core"),a(c).off(".owl.core"),!1!==this.settings.responsive&&(b.clearTimeout(this.resizeTimer),this.off(b,"resize",this._handlers.onThrottledResize));for(var d in this._plugins)this._plugins[d].destroy();this.$stage.children(".cloned").remove(),this.$stage.unwrap(),this.$stage.children().contents().unwrap(),this.$stage.children().unwrap(),this.$stage.remove(),this.$element.removeClass(this.options.refreshClass).removeClass(this.options.loadingClass).removeClass(this.options.loadedClass).removeClass(this.options.rtlClass).removeClass(this.options.dragClass).removeClass(this.options.grabClass).attr("class",this.$element.attr("class").replace(new RegExp(this.options.responsiveClass+"-\\S+\\s","g"),"")).removeData("owl.carousel")},e.prototype.op=function(a,b,c){var d=this.settings.rtl;switch(b){case"<":return d?a>c:a<c;case">":return d?a<c:a>c;case">=":return d?a<=c:a>=c;case"<=":return d?a>=c:a<=c}},e.prototype.on=function(a,b,c,d){a.addEventListener?a.addEventListener(b,c,d):a.attachEvent&&a.attachEvent("on"+b,c)},e.prototype.off=function(a,b,c,d){a.removeEventListener?a.removeEventListener(b,c,d):a.detachEvent&&a.detachEvent("on"+b,c)},e.prototype.trigger=function(b,c,d,f,g){var h={item:{count:this._items.length,index:this.current()}},i=a.camelCase(a.grep(["on",b,d],function(a){return a}).join("-").toLowerCase()),j=a.Event([b,"owl",d||"carousel"].join(".").toLowerCase(),a.extend({relatedTarget:this},h,c));return this._supress[b]||(a.each(this._plugins,function(a,b){b.onTrigger&&b.onTrigger(j)}),this.register({type:e.Type.Event,name:b}),this.$element.trigger(j),this.settings&&"function"==typeof this.settings[i]&&this.settings[i].call(this,j)),j},e.prototype.enter=function(b){a.each([b].concat(this._states.tags[b]||[]),a.proxy(function(a,b){this._states.current[b]===d&&(this._states.current[b]=0),this._states.current[b]++},this))},e.prototype.leave=function(b){a.each([b].concat(this._states.tags[b]||[]),a.proxy(function(a,b){this._states.current[b]--},this))},e.prototype.register=function(b){if(b.type===e.Type.Event){if(a.event.special[b.name]||(a.event.special[b.name]={}),!a.event.special[b.name].owl){var c=a.event.special[b.name]._default;a.event.special[b.name]._default=function(a){return!c||!c.apply||a.namespace&&-1!==a.namespace.indexOf("owl")?a.namespace&&a.namespace.indexOf("owl")>-1:c.apply(this,arguments)},a.event.special[b.name].owl=!0}}else b.type===e.Type.State&&(this._states.tags[b.name]?this._states.tags[b.name]=this._states.tags[b.name].concat(b.tags):this._states.tags[b.name]=b.tags,this._states.tags[b.name]=a.grep(this._states.tags[b.name],a.proxy(function(c,d){return a.inArray(c,this._states.tags[b.name])===d},this)))},e.prototype.suppress=function(b){a.each(b,a.proxy(function(a,b){this._supress[b]=!0},this))},e.prototype.release=function(b){a.each(b,a.proxy(function(a,b){delete this._supress[b]},this))},e.prototype.pointer=function(a){var c={x:null,y:null};return a=a.originalEvent||a||b.event,a=a.touches&&a.touches.length?a.touches[0]:a.changedTouches&&a.changedTouches.length?a.changedTouches[0]:a,a.pageX?(c.x=a.pageX,c.y=a.pageY):(c.x=a.clientX,c.y=a.clientY),c},e.prototype.isNumeric=function(a){return!isNaN(parseFloat(a))},e.prototype.difference=function(a,b){return{x:a.x-b.x,y:a.y-b.y}},a.fn.pagelayerOwlCarousel=function(b){var c=Array.prototype.slice.call(arguments,1);return this.each(function(){var d=a(this),f=d.data("owl.carousel");f||(f=new e(this,"object"==typeof b&&b),d.data("owl.carousel",f),a.each(["next","prev","to","destroy","refresh","replace","add","remove"],function(b,c){f.register({type:e.Type.Event,name:c}),f.$element.on(c+".owl.carousel.core",a.proxy(function(a){a.namespace&&a.relatedTarget!==this&&(this.suppress([c]),f[c].apply(this,[].slice.call(arguments,1)),this.release([c]))},f))})),"string"==typeof b&&"_"!==b.charAt(0)&&f[b].apply(f,c)})},a.fn.pagelayerOwlCarousel.Constructor=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._interval=null,this._visible=null,this._handlers={"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoRefresh&&this.watch()},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={autoRefresh:!0,autoRefreshInterval:500},e.prototype.watch=function(){this._interval||(this._visible=this._core.isVisible(),this._interval=b.setInterval(a.proxy(this.refresh,this),this._core.settings.autoRefreshInterval))},e.prototype.refresh=function(){this._core.isVisible()!==this._visible&&(this._visible=!this._visible,this._core.$element.toggleClass("pagelayer-owl-hidden",!this._visible),this._visible&&this._core.invalidate("width")&&this._core.refresh())},e.prototype.destroy=function(){var a,c;b.clearInterval(this._interval);for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(c in Object.getOwnPropertyNames(this))"function"!=typeof this[c]&&(this[c]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.AutoRefresh=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._loaded=[],this._handlers={"initialized.owl.carousel change.owl.carousel resized.owl.carousel":a.proxy(function(b){if(b.namespace&&this._core.settings&&this._core.settings.lazyLoad&&(b.property&&"position"==b.property.name||"initialized"==b.type)){var c=this._core.settings,e=c.center&&Math.ceil(c.items/2)||c.items,f=c.center&&-1*e||0,g=(b.property&&b.property.value!==d?b.property.value:this._core.current())+f,h=this._core.clones().length,i=a.proxy(function(a,b){this.load(b)},this);for(c.lazyLoadEager>0&&(e+=c.lazyLoadEager,c.loop&&(g-=c.lazyLoadEager,e++));f++<e;)this.load(h/2+this._core.relative(g)),h&&a.each(this._core.clones(this._core.relative(g)),i),g++}},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={lazyLoad:!1,lazyLoadEager:0},e.prototype.load=function(c){var d=this._core.$stage.children().eq(c),e=d&&d.find(".pagelayer-owl-lazy");!e||a.inArray(d.get(0),this._loaded)>-1||(e.each(a.proxy(function(c,d){var e,f=a(d),g=b.devicePixelRatio>1&&f.attr("data-src-retina")||f.attr("data-src")||f.attr("data-srcset");this._core.trigger("load",{element:f,url:g},"lazy"),f.is("img")?f.one("load.owl.lazy",a.proxy(function(){f.css("opacity",1),this._core.trigger("loaded",{element:f,url:g},"lazy")},this)).attr("src",g):f.is("source")?f.one("load.owl.lazy",a.proxy(function(){this._core.trigger("loaded",{element:f,url:g},"lazy")},this)).attr("srcset",g):(e=new Image,e.onload=a.proxy(function(){f.css({"background-image":'url("'+g+'")',opacity:"1"}),this._core.trigger("loaded",{element:f,url:g},"lazy")},this),e.src=g)},this)),this._loaded.push(d.get(0)))},e.prototype.destroy=function(){var a,b;for(a in this.handlers)this._core.$element.off(a,this.handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.Lazy=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(c){this._core=c,this._previousHeight=null,this._handlers={"initialized.owl.carousel refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&this.update()},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&"position"===a.property.name&&this.update()},this),"loaded.owl.lazy":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&a.element.closest("."+this._core.settings.itemClass).index()===this._core.current()&&this.update()},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers),this._intervalId=null;var d=this;a(b).on("load",function(){d._core.settings.autoHeight&&d.update()}),a(b).resize(function(){d._core.settings.autoHeight&&(null!=d._intervalId&&clearTimeout(d._intervalId),d._intervalId=setTimeout(function(){d.update()},250))})};e.Defaults={autoHeight:!1,autoHeightClass:"pagelayer-owl-height"},e.prototype.update=function(){var b=this._core._current,c=b+this._core.settings.items,d=this._core.settings.lazyLoad,e=this._core.$stage.children().toArray().slice(b,c),f=[],g=0;a.each(e,function(b,c){f.push(a(c).height())}),g=Math.max.apply(null,f),g<=1&&d&&this._previousHeight&&(g=this._previousHeight),this._previousHeight=g,this._core.$stage.parent().height(g).addClass(this._core.settings.autoHeightClass)},e.prototype.destroy=function(){var a,b;for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.AutoHeight=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._videos={},this._playing=null,this._handlers={"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.register({type:"state",name:"playing",tags:["interacting"]})},this),"resize.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.video&&this.isInFullScreen()&&a.preventDefault()},this),"refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.is("resizing")&&this._core.$stage.find(".cloned .pagelayer-owl-video-frame").remove()},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&"position"===a.property.name&&this._playing&&this.stop()},this),"prepared.owl.carousel":a.proxy(function(b){if(b.namespace){var c=a(b.content).find(".pagelayer-owl-video");c.length&&(c.css("display","none"),this.fetch(c,a(b.content)))}},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers),this._core.$element.on("click.owl.video",".pagelayer-owl-video-play-icon",a.proxy(function(a){this.play(a)},this))};e.Defaults={video:!1,videoHeight:!1,videoWidth:!1},e.prototype.fetch=function(a,b){var c=function(){return a.attr("data-vimeo-id")?"vimeo":a.attr("data-vzaar-id")?"vzaar":"youtube"}(),d=a.attr("data-vimeo-id")||a.attr("data-youtube-id")||a.attr("data-vzaar-id"),e=a.attr("data-width")||this._core.settings.videoWidth,f=a.attr("data-height")||this._core.settings.videoHeight,g=a.attr("href");if(!g)throw new Error("Missing video URL.");if(d=g.match(/(http:|https:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com|be\-nocookie\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/),d[3].indexOf("youtu")>-1)c="youtube";else if(d[3].indexOf("vimeo")>-1)c="vimeo";else{if(!(d[3].indexOf("vzaar")>-1))throw new Error("Video URL not supported.");c="vzaar"}d=d[6],this._videos[g]={type:c,id:d,width:e,height:f},b.attr("data-video",g),this.thumbnail(a,this._videos[g])},e.prototype.thumbnail=function(b,c){var d,e,f,g=c.width&&c.height?"width:"+c.width+"px;height:"+c.height+"px;":"",h=b.find("img"),i="src",j="",k=this._core.settings,l=function(c){e='<div class="pagelayer-owl-video-play-icon"></div>',d=k.lazyLoad?a("<div/>",{class:"pagelayer-owl-video-tn "+j,srcType:c}):a("<div/>",{class:"pagelayer-owl-video-tn",style:"opacity:1;background-image:url("+c+")"}),b.after(d),b.after(e)};if(b.wrap(a("<div/>",{class:"pagelayer-owl-video-wrapper",style:g})),this._core.settings.lazyLoad&&(i="data-src",j="pagelayer-owl-lazy"),h.length)return l(h.attr(i)),h.remove(),!1;"youtube"===c.type?(f="//img.youtube.com/vi/"+c.id+"/hqdefault.jpg",l(f)):"vimeo"===c.type?a.ajax({type:"GET",url:"//vimeo.com/api/v2/video/"+c.id+".json",jsonp:"callback",dataType:"jsonp",success:function(a){f=a[0].thumbnail_large,l(f)}}):"vzaar"===c.type&&a.ajax({type:"GET",url:"//vzaar.com/api/videos/"+c.id+".json",jsonp:"callback",dataType:"jsonp",success:function(a){f=a.framegrab_url,l(f)}})},e.prototype.stop=function(){this._core.trigger("stop",null,"video"),this._playing.find(".pagelayer-owl-video-frame").remove(),this._playing.removeClass("pagelayer-owl-video-playing"),this._playing=null,this._core.leave("playing"),this._core.trigger("stopped",null,"video")},e.prototype.play=function(b){var c,d=a(b.target),e=d.closest("."+this._core.settings.itemClass),f=this._videos[e.attr("data-video")],g=f.width||"100%",h=f.height||this._core.$stage.height();this._playing||(this._core.enter("playing"),this._core.trigger("play",null,"video"),e=this._core.items(this._core.relative(e.index())),this._core.reset(e.index()),c=a('<iframe frameborder="0" allowfullscreen mozallowfullscreen webkitAllowFullScreen ></iframe>'),c.attr("height",h),c.attr("width",g),"youtube"===f.type?c.attr("src","//www.youtube.com/embed/"+f.id+"?autoplay=1&rel=0&v="+f.id):"vimeo"===f.type?c.attr("src","//player.vimeo.com/video/"+f.id+"?autoplay=1"):"vzaar"===f.type&&c.attr("src","//view.vzaar.com/"+f.id+"/player?autoplay=true"),a(c).wrap('<div class="pagelayer-owl-video-frame" />').insertAfter(e.find(".pagelayer-owl-video")),this._playing=e.addClass("pagelayer-owl-video-playing"))},e.prototype.isInFullScreen=function(){var b=c.fullscreenElement||c.mozFullScreenElement||c.webkitFullscreenElement;return b&&a(b).parent().hasClass("pagelayer-owl-video-frame")},e.prototype.destroy=function(){var a,b;this._core.$element.off("click.owl.video");for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.Video=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this.core=b,this.core.options=a.extend({},e.Defaults,this.core.options),this.swapping=!0,this.previous=d,this.next=d,this.handlers={"change.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&(this.previous=this.core.current(),this.next=a.property.value)},this),"drag.owl.carousel dragged.owl.carousel translated.owl.carousel":a.proxy(function(a){a.namespace&&(this.swapping="translated"==a.type)},this),"translate.owl.carousel":a.proxy(function(a){a.namespace&&this.swapping&&(this.core.options.animateOut||this.core.options.animateIn)&&this.swap()},this)},this.core.$element.on(this.handlers)};e.Defaults={animateOut:!1, 1978animateIn:!1},e.prototype.swap=function(){if(1===this.core.settings.items&&a.support.animation&&a.support.transition){this.core.speed(0);var b,c=a.proxy(this.clear,this),d=this.core.$stage.children().eq(this.previous),e=this.core.$stage.children().eq(this.next),f=this.core.settings.animateIn,g=this.core.settings.animateOut;this.core.current()!==this.previous&&(g&&(b=this.core.coordinates(this.previous)-this.core.coordinates(this.next),d.one(a.support.animation.end,c).css({left:b+"px"}).addClass("animated pagelayer-owl-animated-out").addClass(g)),f&&e.one(a.support.animation.end,c).addClass("animated pagelayer-owl-animated-in").addClass(f))}},e.prototype.clear=function(b){a(b.target).css({left:""}).removeClass("animated pagelayer-owl-animated-out pagelayer-owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut),this.core.onTransitionEnd()},e.prototype.destroy=function(){var a,b;for(a in this.handlers)this.core.$element.off(a,this.handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.Animate=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._call=null,this._time=0,this._timeout=0,this._paused=!0,this._handlers={"changed.owl.carousel":a.proxy(function(a){a.namespace&&"settings"===a.property.name?this._core.settings.autoplay?this.play():this.stop():a.namespace&&"position"===a.property.name&&this._paused&&(this._time=0)},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoplay&&this.play()},this),"play.owl.autoplay":a.proxy(function(a,b,c){a.namespace&&this.play(b,c)},this),"stop.owl.autoplay":a.proxy(function(a){a.namespace&&this.stop()},this),"mouseover.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"mouseleave.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.play()},this),"touchstart.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"touchend.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this.play()},this)},this._core.$element.on(this._handlers),this._core.options=a.extend({},e.Defaults,this._core.options)};e.Defaults={autoplay:!1,autoplayTimeout:5e3,autoplayHoverPause:!1,autoplaySpeed:!1},e.prototype._next=function(d){this._call=b.setTimeout(a.proxy(this._next,this,d),this._timeout*(Math.round(this.read()/this._timeout)+1)-this.read()),this._core.is("interacting")||c.hidden||this._core.next(d||this._core.settings.autoplaySpeed)},e.prototype.read=function(){return(new Date).getTime()-this._time},e.prototype.play=function(c,d){var e;this._core.is("rotating")||this._core.enter("rotating"),c=c||this._core.settings.autoplayTimeout,e=Math.min(this._time%(this._timeout||c),c),this._paused?(this._time=this.read(),this._paused=!1):b.clearTimeout(this._call),this._time+=this.read()%c-e,this._timeout=c,this._call=b.setTimeout(a.proxy(this._next,this,d),c-e)},e.prototype.stop=function(){this._core.is("rotating")&&(this._time=0,this._paused=!0,b.clearTimeout(this._call),this._core.leave("rotating"))},e.prototype.pause=function(){this._core.is("rotating")&&!this._paused&&(this._time=this.read(),this._paused=!0,b.clearTimeout(this._call))},e.prototype.destroy=function(){var a,b;this.stop();for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.autoplay=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){"use strict";var e=function(b){this._core=b,this._initialized=!1,this._pages=[],this._controls={},this._templates=[],this.$element=this._core.$element,this._overrides={next:this._core.next,prev:this._core.prev,to:this._core.to},this._handlers={"prepared.owl.carousel":a.proxy(function(b){b.namespace&&this._core.settings.dotsData&&this._templates.push('<div class="'+this._core.settings.dotClass+'">'+a(b.content).find("[data-dot]").addBack("[data-dot]").attr("data-dot")+"</div>")},this),"added.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,0,this._templates.pop())},this),"remove.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,1)},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&this.draw()},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&!this._initialized&&(this._core.trigger("initialize",null,"navigation"),this.initialize(),this.update(),this.draw(),this._initialized=!0,this._core.trigger("initialized",null,"navigation"))},this),"refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._initialized&&(this._core.trigger("refresh",null,"navigation"),this.update(),this.draw(),this._core.trigger("refreshed",null,"navigation"))},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this.$element.on(this._handlers)};e.Defaults={nav:!1,navText:['<span aria-label="Previous">‹</span>','<span aria-label="Next">›</span>'],navSpeed:!1,navElement:'button type="button" role="presentation"',navContainer:!1,navContainerClass:"pagelayer-owl-nav",navClass:["pagelayer-owl-prev","pagelayer-owl-next"],slideBy:1,dotClass:"pagelayer-owl-dot",dotsClass:"pagelayer-owl-dots",dots:!0,dotsEach:!1,dotsData:!1,dotsSpeed:!1,dotsContainer:!1},e.prototype.initialize=function(){var b,c=this._core.settings;this._controls.$relative=(c.navContainer?a(c.navContainer):a("<div>").addClass(c.navContainerClass).appendTo(this.$element)).addClass("disabled"),this._controls.$previous=a("<"+c.navElement+">").addClass(c.navClass[0]).html(c.navText[0]).prependTo(this._controls.$relative).on("click",a.proxy(function(a){this.prev(c.navSpeed)},this)),this._controls.$next=a("<"+c.navElement+">").addClass(c.navClass[1]).html(c.navText[1]).appendTo(this._controls.$relative).on("click",a.proxy(function(a){this.next(c.navSpeed)},this)),c.dotsData||(this._templates=[a('<button role="button">').addClass(c.dotClass).append(a("<span>")).prop("outerHTML")]),this._controls.$absolute=(c.dotsContainer?a(c.dotsContainer):a("<div>").addClass(c.dotsClass).appendTo(this.$element)).addClass("disabled"),this._controls.$absolute.on("click","button",a.proxy(function(b){var d=a(b.target).parent().is(this._controls.$absolute)?a(b.target).index():a(b.target).parent().index();b.preventDefault(),this.to(d,c.dotsSpeed)},this));for(b in this._overrides)this._core[b]=a.proxy(this[b],this)},e.prototype.destroy=function(){var a,b,c,d,e;e=this._core.settings;for(a in this._handlers)this.$element.off(a,this._handlers[a]);for(b in this._controls)"$relative"===b&&e.navContainer?this._controls[b].html(""):this._controls[b].remove();for(d in this.overides)this._core[d]=this._overrides[d];for(c in Object.getOwnPropertyNames(this))"function"!=typeof this[c]&&(this[c]=null)},e.prototype.update=function(){var a,b,c,d=this._core.clones().length/2,e=d+this._core.items().length,f=this._core.maximum(!0),g=this._core.settings,h=g.center||g.autoWidth||g.dotsData?1:g.dotsEach||g.items;if("page"!==g.slideBy&&(g.slideBy=Math.min(g.slideBy,g.items)),g.dots||"page"==g.slideBy)for(this._pages=[],a=d,b=0,c=0;a<e;a++){if(b>=h||0===b){if(this._pages.push({start:Math.min(f,a-d),end:a-d+h-1}),Math.min(f,a-d)===f)break;b=0,++c}b+=this._core.mergers(this._core.relative(a))}},e.prototype.draw=function(){var b,c=this._core.settings,d=this._core.items().length<=c.items,e=this._core.relative(this._core.current()),f=c.loop||c.rewind;this._controls.$relative.toggleClass("disabled",!c.nav||d),c.nav&&(this._controls.$previous.toggleClass("disabled",!f&&e<=this._core.minimum(!0)),this._controls.$next.toggleClass("disabled",!f&&e>=this._core.maximum(!0))),this._controls.$absolute.toggleClass("disabled",!c.dots||d),c.dots&&(b=this._pages.length-this._controls.$absolute.children().length,c.dotsData&&0!==b?this._controls.$absolute.html(this._templates.join("")):b>0?this._controls.$absolute.append(new Array(b+1).join(this._templates[0])):b<0&&this._controls.$absolute.children().slice(b).remove(),this._controls.$absolute.find(".active").removeClass("active"),this._controls.$absolute.children().eq(a.inArray(this.current(),this._pages)).addClass("active"))},e.prototype.onTrigger=function(b){var c=this._core.settings;b.page={index:a.inArray(this.current(),this._pages),count:this._pages.length,size:c&&(c.center||c.autoWidth||c.dotsData?1:c.dotsEach||c.items)}},e.prototype.current=function(){var b=this._core.relative(this._core.current());return a.grep(this._pages,a.proxy(function(a,c){return a.start<=b&&a.end>=b},this)).pop()},e.prototype.getPosition=function(b){var c,d,e=this._core.settings;return"page"==e.slideBy?(c=a.inArray(this.current(),this._pages),d=this._pages.length,b?++c:--c,c=this._pages[(c%d+d)%d].start):(c=this._core.relative(this._core.current()),d=this._core.items().length,b?c+=e.slideBy:c-=e.slideBy),c},e.prototype.next=function(b){a.proxy(this._overrides.to,this._core)(this.getPosition(!0),b)},e.prototype.prev=function(b){a.proxy(this._overrides.to,this._core)(this.getPosition(!1),b)},e.prototype.to=function(b,c,d){var e;!d&&this._pages.length?(e=this._pages.length,a.proxy(this._overrides.to,this._core)(this._pages[(b%e+e)%e].start,c)):a.proxy(this._overrides.to,this._core)(b,c)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.Navigation=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){"use strict";var e=function(c){this._core=c,this._hashes={},this.$element=this._core.$element,this._handlers={"initialized.owl.carousel":a.proxy(function(c){c.namespace&&"URLHash"===this._core.settings.startPosition&&a(b).trigger("hashchange.owl.navigation")},this),"prepared.owl.carousel":a.proxy(function(b){if(b.namespace){var c=a(b.content).find("[data-hash]").addBack("[data-hash]").attr("data-hash");if(!c)return;this._hashes[c]=b.content}},this),"changed.owl.carousel":a.proxy(function(c){if(c.namespace&&"position"===c.property.name){var d=this._core.items(this._core.relative(this._core.current())),e=a.map(this._hashes,function(a,b){return a===d?b:null}).join();if(!e||b.location.hash.slice(1)===e)return;b.location.hash=e}},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this.$element.on(this._handlers),a(b).on("hashchange.owl.navigation",a.proxy(function(a){var c=b.location.hash.substring(1),e=this._core.$stage.children(),f=this._hashes[c]&&e.index(this._hashes[c]);f!==d&&f!==this._core.current()&&this._core.to(this._core.relative(f),!1,!0)},this))};e.Defaults={URLhashListener:!1},e.prototype.destroy=function(){var c,d;a(b).off("hashchange.owl.navigation");for(c in this._handlers)this._core.$element.off(c,this._handlers[c]);for(d in Object.getOwnPropertyNames(this))"function"!=typeof this[d]&&(this[d]=null)},a.fn.pagelayerOwlCarousel.Constructor.Plugins.Hash=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){function e(b,c){var e=!1,f=b.charAt(0).toUpperCase()+b.slice(1);return a.each((b+" "+h.join(f+" ")+f).split(" "),function(a,b){if(g[b]!==d)return e=!c||b,!1}),e}function f(a){return e(a,!0)}var g=a("<support>").get(0).style,h="Webkit Moz O ms".split(" "),i={transition:{end:{WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"}},animation:{end:{WebkitAnimation:"webkitAnimationEnd",MozAnimation:"animationend",OAnimation:"oAnimationEnd",animation:"animationend"}}},j={csstransforms:function(){return!!e("transform")},csstransforms3d:function(){return!!e("perspective")},csstransitions:function(){return!!e("transition")},cssanimations:function(){return!!e("animation")}};j.csstransitions()&&(a.support.transition=new String(f("transition")),a.support.transition.end=i.transition.end[a.support.transition]),j.cssanimations()&&(a.support.animation=new String(f("animation")),a.support.animation.end=i.animation.end[a.support.animation]),j.csstransforms()&&(a.support.transform=new String(f("transform")),a.support.transform3d=j.csstransforms3d())}(window.Zepto||window.jQuery,window,document); 1979
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.