1/* 2 Responsive framework javascript collection 3 Version 2.4 2019-03-27 4*/ 5var framework_ver = '2.4 (cms R12.0+)'; 6 7function iv(element, ggroup) 8{ 9 if(typeof(hs) == 'undefined') return true; 10 11 if(typeof(ggroup) == "undefined") ggroup = 'ghs'; 12 /* 0 - desktop, 1 - tablet, 2 - mobile */ 13 if(!jQuery('.rscale').length) return true; // No rule, we have no idea where we are, allow the image to be opened directly 14 if(jQuery('.rscale').width() == 2) return false; 15 16 return hs.expand(element, { slideshowGroup: ggroup }); 17} 18 19function ive(element) 20{ 21 if(typeof(hs) == 'undefined') return true; 22 23 /* 0 - desktop, 1 - tablet, 2 - mobile */ 24 if(jQuery('.rscale').width() == 2) return true; 25 26 return hs.htmlExpand(element, {objectType: 'iframe'}); 27} 28 29/* ****************************************************************** */ 30/* jQuery / extra functions */ 31/* ****************************************************************** */ 32$.fn.hasAttr = function(name) { 33 return this.attr(name) !== undefined; 34}; 35function utf8_decode(a){var c=[],e=0,g=0,f=0,d=0,b=0;a+="";while(e<a.length){f=a.charCodeAt(e);if(f<128){c[g++]=String.fromCharCode(f);e++}else{if((f>191)&&(f<224)){d=a.charCodeAt(e+1);c[g++]=String.fromCharCode(((f&31)<<6)|(d&63));e+=2}else{d=a.charCodeAt(e+1);
35b=a.charCodeAt(e+2);c[g++]=String.fromCharCode(((f&15)<<12)|((d&63)<<6)|(b&63));e+=3}}}return c.join("")} 36function utf8_encode(a){var h=(a+"");var i="";var b,e;var c=0;b=e=0;c=h.length;for(var d=0;d<c;d++){var g=h.charCodeAt(d);var f=null;if(g<128){e++}else{if(g>127&&g<2048){f=String.fromCharCode((g>>6)|192)+String.fromCharCode((g&63)|128)}else{f=String.fromCharCode((g>>12)|224)+String.fromCharCode(((g>>6)&63)|128)+String.fromCharCode((g&63)|128)}}if(f!==null){if(e>b){i+=h.substring(b,e)}i+=f;b=e=d+1}}if(e>b){i+=h.substring(b,h.length)}return i} 37function unserialize(f){var c=this;var a=function(h){var i=h.charCodeAt(0);if(i<128){return 0}if(i<2048){return 1}return 2};var b=function(j,k,i,h){throw new c.window[j](k,i,h)};var g=function(l,n,m){var h=[];var k=l.slice(n,n+1);var j=2;while(k!=m){if((j+n)>l.length){b("Error","Invalid")}h.push(k);k=l.slice(n+(j-1),n+j);j+=1}return[h.length,h.join("")]};var e=function(m,n,l){var h;h=[];for(var j=0;j<l;j++){var k=m.slice(n+(j-1),n+j);h.push(k);l-=a(k)}return[h.length,h.join("")]};var d=function(z,l){var y;var j;var q=0;var m;var h;var v;var p;if(!l){l=0}var x=(z.slice(l,l+1)).toLowerCase();var o=l+2;var w=function(i){return i};switch(x){case"i":w=function(i){return parseInt(i,10)};j=g(z,o,";");q=j[0];y=j[1];o+=q+1;break;case"b":w=function(i){return parseInt(i,10)!==0};j=g(z,o,";");q=j[0];y=j[1];o+=q+1;break;case"d":w=function(i){return parseFloat(i)};j=g(z,o,";");q=j[0];y=j[1];o+=q+1;break;case"n":y=null;break;case"s":m=g(z,o,":");q=m[0];h=m[1];o+=q+2;j=e(z,o+1,parseInt(h,10));q=j[0];y=j[1];o+=q+2;if(q!=parseInt(h,10)&&q!=y.length){b("SyntaxError","String length mismatch")}y=c.utf8_decode(y);break;case"a":y={};v=g(z,o,":");q=v[0];p=v[1];o+=q+2;for(var u=0;u<parseInt(p,10);u++){var k=d(z,o);var r=k[1];var A=k[2];o+=r;var t=d(z,o);var n=t[1];var s=t[2];o+=n;y[A]=s}o+=1;break;default:b("SyntaxError","Unknown / Unhandled data type(s): "+x);break}return[x,o-l,w(y)]};return d((f+""),0)[2]} 38function serialize(c){var h=function(o){var n=typeof o,k;var m;if(n=="object"&&!o){return"null"}if(n=="object"){if(!o.constructor){return"object"}var j=o.constructor.toString();k=j.match(/(\w+)\(/);if(k){j=k[1].toLowerCase()}var l=["boolean","number","string","array"];for(m in l){if(j==l[m]){n=l[m];break}}}return n};var e=h(c);var a,b="";switch(e){case"function":a="";break;case"boolean":a="b:"+(c?"1":"0");break;case"number":a=(Math.round(c)==c?"i":"d")+":"+c;break;case"string":c=this.utf8_encode(c);a="s:"+encodeURIComponent(c).replace(/%../g,"x").length+':"'+c+'"';break;case"array":case"object":a="a";var d=0;var f="";var i;var g;for(g in c){b=h(c[g]);if(b=="function"){continue}i=(g.match(/^[0-9]+$/)?parseInt(g,10):g);f+=this.serialize(i)+this.serialize(c[g]);d++}a+=":"+d+":{"+f+"}";break;case"undefined":default:a="N";break}if(e!="object"&&e!="array"){a+=";"}return a}; 39 40/* ****************************************************************** */ 41/* jQuery / State & Resize function */ 42/* ****************************************************************** */ 43$.regResize = function(fnc) 44{ 45 if(typeof($.fnc_resize) == 'undefined') $.fnc_resize = []; 46 $.fnc_resize.push(fnc); 47} 48$.regResizeHandler = function() 49{ 50 if($.jqww == $(window).width()) return; // Viewport actually did not resized 51 $.jqww = $(window).width(); 52 for(var i in $.fnc_resize) 53 $.fnc_resize[i]( $.jqww ); 54} 55$.regResizeInit = function() 56{ 57 $.jqww = $(window).width(); 58 jQuery(window).resize( function(){ $.regResizeHandler()} ); 59} 60jQuery(document).ready(function(){ $.regResizeInit(); }); 61 62/**/ 63$.regStateChange = function(fnc) 64{ 65 if(typeof($.fnc_statechange) == 'undefined') $.fnc_statechange = []; 66 $.fnc_statechange.push(fnc); 67} 68$.regStateChangeHandler = function() 69{ 70 var state = jQuery('body > .rscale').width(); 71 if($.jqrstate == state) return; // State didn't changed 72 var old_state = $.jqrstate; 73 $.jqrstate = state; 74 75 for(var i in $.fnc_statechange) 76 $.fnc_statechange[i]( state, old_state ); 77} 78jQuery(document).ready(function(){ 79 $.regResize( function(){ $.regStateChangeHandler()} ); 80}); 81 82/* ****************************************************************** */ 83/* Onsite storage management */ 84/* ****************************************************************** */ 85var storage = {}; 86storage.getItem = function(name) 87{ 88 if(typeof(Storage) !== "undefined") 89 { 90 if(storage.status(name) == 0) return undefined; // Storage expired 91 return unescape(localStorage[name]); 92 } 93 else 94 return storage.readCookie(name); 95} 96storage.getJSON = function(name) 97{ 98 var list = storage.getItem(name); 99 100 if(typeof(list) == 'number') list = '[]'; // We have an error, create a new array 101 if( (typeof(list) == 'undefined') || (list == null) ) list = '[]'; 102 try 103 { 104 list = JSON.parse(list); 105 } 106 catch(ex) 107 { 108 console.log(ex); 109 list = []; // We could not parse the saved array, create an empty array 110 } 111 112 return list; 113} 114storage.putItem = function(name, storeValue, expire) 115{ 116 /*
117 returns: 1 on success, 0 on space exceeded, -1 on any other error 118 */ 119 if(typeof(expire) == 'undefined') var expire = 30; // Days 120 storeValue = escape(storeValue); // Escape special chars 121 122 if(typeof(Storage) != 'undefined') 123 { 124 // Store in local management 125 try{ 126 localStorage[name] = storeValue; 127 localStorage[name + '_expire'] = Math.round(new Date()) + expire * 24 * 60 * 60 * 1000; 128 } catch (ex) { console.log(ex); return -1; } 129 return 1; 130 } 131 else 132 { 133 // Store in cookie 134 return store.createCookie(name, storeValue, expire); 135 } 136 137 return 1; 138} 139storage.putJSON = function(name, json, expire) 140{ 141 json = JSON.stringify(json); 142 return storage.putItem(name, json, expire); 143} 144storage.status = function(name) 145{ 146 /* Returns 1 on ok, 0 on item has expired and was removed from local Storage */ 147 var current = Math.round(new Date()); 148 var stored_time = localStorage.getItem(name + '_expire'); 149 if (typeof(stored_time) == 'undefined') { stored_time = 0; } 150 151 if (stored_time < current) 152 { 153 // Remove expired item 154 storage.removeItem(name); 155 return 0; 156 } 157 return 1; 158} 159storage.removeItem = function(name) 160{ 161 localStorage.removeItem(name); 162 localStorage.removeItem(name + '_expire'); 163} 164 165/* ****************************************************************** */ 166/* Onsite cookie management */ 167/* ****************************************************************** */ 168storage.createCookie = function(name, value, daysValid) 169{ 170 value = escape(value); 171 if(value > 3800) return 0; // Cookie limit exceeded 172 173 try 174 { 175 if (daysValid) 176 { 177 var date = new Date(); 178 date.setTime(date.getTime()+(daysValid*24*60*60*1000)); 179 var expires = "; expires="+date.toGMTString(); 180 } 181 else 182 var expires = ""; 183 document.cookie = name+"="+value+expires+"; path=/"; 184 }catch(ex) { console.log(ex); return -1; } 185 186 return 1; 187} 188storage.readCookie = function(name) 189{ 190 var nameEQ = name + "="; 191 var ca = document.cookie.split(';'); 192 for(var i=0;i < ca.length;i++) 193 { 194 var c = ca[i]; 195 while (c.charAt(0)==' ') c = c.substring(1,c.length); 196 if (c.indexOf(nameEQ) == 0) 197 return unescape(c.substring(nameEQ.length,c.length)); 198 } 199 return null; 200} 201storage.eraseCookie = function(name) 202{ 203 storage.createCookie(name,"",-1); 204} 205 206/* ****************************************************************** */ 207/* jQuery / accessibility function */ 208/* ****************************************************************** */ 209function initAccessibilityRoles() 210{ 211 // role="button" support 212 if(typeof(window['_resp_role_button_support']) != 'undefined') 213 { 214 jQuery('[role="button"]').each(function(){ 215 if(jQuery(this).attr('data-init-as') != undefined) return; // allready inited 216 jQuery(this).on('keypress', function(event){ 217 if(event.which == 13) jQuery(event.target).click(); 218 }); 219 jQuery(this).attr('data-init-as', true); 220 }); 221 } 222 223 // role="link" support 224 if(typeof(window['_resp_role_link_support']) != 'undefined') 225 { 226 jQuery('[role="link"]').each(function(){ 227 if(jQuery(this).attr('data-init-as') != undefined) return; // allready inited 228 jQuery(this).on('keypress', function(event){ 229 if(event.which == 13) jQuery(event.target).click(); 230 }); 231 jQuery(this).attr('data-init-as', true); 232 }); 233 } 234} 235jQuery(document).ready(function(){ 236 initAccessibilityRoles(); 237}); 238 239/* ****************************************************************** */ 240/* Accessibility map 241/* ****************************************************************** */ 242jQuery(document).ready(function(){ 243 var asmap = jQuery('#as_map'); 244 if(!asmap.length) return; // No map present 245 jQuery(asmap) 246 .on('focusin', function(){ 247 jQuery(asmap).addClass('opened'); 248 }) 249 .on('focusout', function(){ 250 jQuery(asmap).removeClass('opened'); 251 }); 252 jQuery(asmap).find('a,[role="button"],[role="link"]').focus(function(){ jQuery('#as_map').addClass('opened'); }); 253}); 254function asMapToggle() { jQuery('#as_map').toggleClass('opened'); return false; } 255/* Other */ 256function focusToElement(el) { jQuery(el).focus(); } 257function focusToFirstLink(el) { jQuery(el).find('a:first').focus(); } 258function speakText(text) 259{ 260 if(!jQuery('#as_reader').length) 261 jQuery('body').append('<div style="width: 0px; height: 0px; overflow: hidden; position: absolute; bottom: -1000px;" tabindex="-1" aria-disabled="true"><p id="as_reader" aria-live="rude"></p></div>'); 262 jQuery('#as_reader').html( text ); 263} 264function scrollTo(el, anim) 265{ 266 if(!jQuery(el).length) return; 267 268 if(typeof(anim) != 'undefined') 269 jQuery('html, body').animate({ scrollTop: jQuery(el).offset().top }, 'normal'); 270 else 271 jQuery('html, body').scrollTo(el); 272} 273 274/* ****************************************************************** */ 275/* Header image desktop/mobile switcher */ 276/* ****************************************************************** */ 277function getFileExt(filename) 278{ 279 return filename.split('.').pop(); 280} 281function headerImageByState(himg) 282{ 283 var ext = getFileExt(himg); 284 var postfix = ''; 285 himg = himg.replace('-gross.', '.'); 286 himg = himg.replace('-klein.', '.'); 287 switch(jQuery('.rscale').width()) 288 { 289 case 1: postfix = '-gross'; break; 290 case 2: postfix = '-klein'; break; 291 } 292 return himg.replace('.' + ext, postfix + '.' + ext); 293} 294function headImageHandler() 295{ 296 if(typeof(headImage) == 'undefined') return; 297 298 document.getElementById('headImageImg').src = headerImageByState(headImage); 299} 300 301function headImagePlainInit() 302{ 303 if( !jQuery('#headImageImg').length || (typeof(headImage) == 'undefined') ) if(!jQuery('#headImageImg').length) { console.warn('Header image: invalid config (1)'); return; } // No image, nothing to set up 304 305 headImageHandler(); 306 jQuery(window).resize(function() 307 { 308 if(window['jqww'] == $(window).width()) return; // Stupid iphone/ipad bug, sending resize even on scroll 309 window['jqww'] = $(window).width(); 310 headImageHandler(); // Switch between mobile and desktop size 311 });
312} 313 314// Fullscreen header 315function adjustSiteImage() 316{ 317 if((typeof(window['bg_img_w']) == 'undefined')||(typeof(window['bg_img_w']) == 'undefined')) { console.warn('Header image: runtime config error (2aa)'); return; } 318 if(jQuery('body > .rscale').width() != 0) { jQuery('#headImageImg').css('width', '').css('height', '').css('top', '').css('left', ''); return; } 319 var bg_img_w = window['bg_img_w']; var bg_img_h = window['bg_img_h']; 320 var sw = jQuery(window).width(); var sh = jQuery(window).height(); var d = bg_img_w / bg_img_h; var iw = bg_img_w; var ih = bg_img_h; 321 if(sw/d > sh) 322 { 323 iw = sw; ih = iw/d; 324 jQuery('#headImageImg').css('width', iw).css('height', ih).css('top', Math.ceil( -(ih-sh)/2 ) ).css('left', ''); 325 } 326 else 327 { 328 ih = sh; iw = ih*d; 329 jQuery('#headImageImg').css('width', iw).css('height', ih).css('top', '' ).css('left', Math.ceil( -(iw-sw)/2 )); 330 } 331} 332function headerImageFullscreenInit() 333{ 334 if((typeof(window['bg_img_w']) == 'undefined')||(typeof(window['bg_img_h']) == 'undefined')) { console.warn('Header image: invalid config (2a)'); return; } 335 if(!jQuery('#headImageImg').length || (typeof(headImage) == 'undefined')) { console.warn('Header image: invalid config (2b)'); return; } 336 headImageHandler(); 337 adjustSiteImage(); 338 $.regResize(function(new_width){ 339 headImageHandler(); // Switch between mobile and desktop size 340 adjustSiteImage(); // Autoscale the image on desktop state 341 }); 342}; 343 344 345// HeaderImage Slider 346var his_cnt = 0; 347var his_busy = false; 348var his_asi = 0; 349var preloadFadeOut = false; 350 351function headerImageSliderInit() 352{ 353 var $himgc = jQuery('body').find('.header_image'); 354 if(!$himgc) 355 { console.warn('Header image: invalid config (3)'); return; }; 356 357 // Package Slider 358 if(typeof window['header_image_slider_config'] == "undefined") 359 { 360 window['header_image_slider_config'] = { 361 dots: true, 362 arrows:true, 363 animationSpeed: 700, 364 autoplay:true, 365 autoplaySpeed: 2000, 366 }; 367 } 368 369 $himgc.slick({ 370 isSlider: true, 371 dots: window['header_image_slider_config'].dots, 372 arrows:window['header_image_slider_config'].arrows, 373 infinite: true, 374 speed: window['header_image_slider_config'].animationSpeed, 375 autoplay:window['header_image_slider_config'].autoplay, 376 autoplaySpeed: window['header_image_slider_config'].autoplaySpeed, 377 slidesToShow: 1, 378 slidesToScroll: 1, 379 pauseOnHover: 0, 380 fade: true, 381 cssEase: 'linear' 382 }); 383 384 var images = $himgc.find('.slick-slide img'); 385 386 headImageHandlerSlider(images) 387 $.regResize(function(new_width){ 388 headImageHandlerSlider(images) // Switch between mobile and desktop size 389 }); 390}; 391 392function headImageHandlerSlider(images) 393{ 394 if(typeof images != "object" || images.length < 1) return; 395 396 var postfix = ''; 397 switch(jQuery('.rscale').width()) 398 { 399 case 1: postfix = '-gross'; break; 400 case 2: postfix = '-klein'; break; 401 } 402 403 for(var i = 0; i < images.length; i++) 404 { 405 var himg = $(images[i]).attr('src'); 406 var ext = getFileExt(himg); 407 himg = himg.replace('-gross.', '.'); 408 himg = himg.replace('-klein.', '.'); 409 himg = himg.replace('.' + ext, postfix + '.' + ext); 410 $(images[i]).attr('src',himg); 411 } 412} 413 414// Overall init 415var _hi = false; 416function initHeaderImage(type) 417{ 418 if(_hi) { console.warn('Header image allready initialized'); return; } 419 _hi = true; 420 switch(type) 421 { 422 case 'slider': 423 headerImageSliderInit(); 424 break 425 426 case 'fullscreen': 427 headerImageFullscreenInit(); 428 break; 429 430 case 'plain': 431 headImagePlainInit(); 432 break; 433 434 default: 435 // Autodetect 436 var $headerImageC = $('body').find('.header_image'); 437 var images = $headerImageC.find('img'); 438 if(images.length > 1) { headerImageSliderInit(); return; } 439 if(jQuery('#headImageImg').length) 440 { 441 if(jQuery('#headImageImg').css('position') == 'fixed')
442 headerImageFullscreenInit(); 443 else 444 headImagePlainInit(); 445 return; 446 } 447 console.warn('Header image: unable to autodetect header image type'); 448 } 449} 450 451function headerImagePreload($preloader, $headerImageC) 452{ 453 if($preloader.length < 1 || $headerImageC.length < 1) return; 454 455 var $img = $headerImageC.find('img'); 456 if($img.length < 1 ) return; 457 458 $img.first().on('load', function(){ 459 if(!preloadFadeOut) 460 { 461 $preloader.fadeOut(750, "swing"); 462 preloadFadeOut = true; 463 } 464 //Load event do not trigger by the cached images 465 }).each(function() { 466 if(this.complete) $(this).trigger('load'); 467 }); 468} 469 470//Preloader Screen 471jQuery(document).ready(function(){ 472 var $preloader = jQuery('#preloader'); 473 var $headerImageC = jQuery('body').find('.header_image'); 474 475 headerImagePreload($preloader, $headerImageC); 476}); 477 478 479/* ****************************************************************** */ 480/* Accordion */ 481/* ****************************************************************** */ 482function art_accord_close(e, fast) 483{ 484 if(typeof(fast) != 'undefined') 485 jQuery(e).addClass('closed'); 486 else 487 jQuery(e).find('.art_inner').first().slideUp(1000, function(){ jQuery(this).css('display', '').closest('.art_element').addClass('closed'); }); 488 jQuery(e).find('.iframe_youtube').css('display', 'none'); 489} 490function art_accord_open(e) 491{ 492 var offset = 0; 493 var rscale = jQuery('body > .rscale').width(); 494 if(typeof(window['accord_offset']) != 'undefined') offset = window['accord_offset'][rscale]; 495 496 497 jQuery(e).find('.art_inner').first().slideDown(1000, function() { jQuery(this).css('display', '').closest('.art_element').removeClass('closed'); $(this).find('.art_element').addClass('algo-animate')}); 498 499 jQuery(e).find('.iframe_youtube').css('display', ''); 500 501 setTimeout(function(){ 502 jQuery(e).find('.art_element.art_imageline .imlsldr').each(function() 503 { 504 jQuery(this).slick('slickNext'); 505 }); 506 },500); 507} 508function art_accord(e) 509{ 510 if(!jQuery(e).children('.acc').is(':visible')) return; // we are not on phone state 511 512 var art = jQuery(e).parent().closest('.art_element'); 513 if(jQuery(art).hasClass('closed')) 514 art_accord_open(art); 515 else 516 art_accord_close(art); 517} 518function art_accordItem(e) 519{ 520 var art = jQuery(e).parent().closest('.art_element'); 521 jQuery(art).siblings('.accitem').each(function(){ art_accord_close(this, true); }); 522 523 if(jQuery(art).hasClass('closed')) 524 art_accord_open(art); 525 else 526 art_accord_close(art); 527} 528jQuery(document).ready(function() 529{ 530 jQuery('.art_headline.accord').each(function(){ 531 var $el = this; 532 if(jQuery($el).closest('.art_element').hasClass('accitem')) 533 jQuery($el).bind('click', function(){ art_accordItem($el); } ); 534 else 535 jQuery($el).bind('click', function(){ art_accord(this); } ); 536 }); 537}); 538 539/* ****************************************************************** */ 540/* Package slider */ 541/* ****************************************************************** */ 542jQuery(document).ready(function(){ 543 // Package Slider 544 if(typeof window['art_package_slider_config'] == "undefined") 545 { 546 window['art_package_slider_config'] = { 547 dots: true, 548 arrows: true, 549 slidesToShow: 3, 550 slidesToScroll: 1, 551 speed: 600, 552 autoplay: true, 553 autoplaySpeed: 6000, 554 tablet_breakpoint: 1025, 555 tablet_slidesToShow: 2, 556 mobile_breakpoint: 650, 557 mobile_slidesToShow: 1 558 }; 559 } 560 561 $('.art_element.art_group.pkgslider').each(function() 562 { 563 var slider = $(this).find('.pkg_c'); 564 565 //Desktop, Tablet, Mobile 566 if($(slider).hasClass('pkgfull')) window['art_package_slider_config'].isSlider = [true,true,true]; 567 else if($(slider).hasClass('pkgtablet')) window['art_package_slider_config'].isSlider = [false,true,true]; 568 else if($(slider).hasClass('pkgmobile')) window['art_package_slider_config'].isSlider = [false,false,true]; 569 else window['art_package_slider_config'].isSlider = [false,false,false]; 570 571 572 $(slider).slick({
573 isSlider:window['art_package_slider_config'].isSlider[0], 574 dots: window['art_package_slider_config'].dots, 575 arrows: window['art_package_slider_config'].arrows, 576 speed: window['art_package_slider_config'].speed, 577 slidesToShow: window['art_package_slider_config'].slidesToShow, 578 slidesToScroll: 1, 579 autoplay: window['art_package_slider_config'].autoplay, 580 autoplaySpeed: window['art_package_slider_config'].autoplaySpeed, 581 infinite: true, 582 responsive: [ 583 { 584 breakpoint: window['art_package_slider_config'].tablet_breakpoint, 585 settings: { 586 slidesToShow: window['art_package_slider_config'].tablet_slidesToShow, 587 isSlider:window['art_package_slider_config'].isSlider[1] 588 } 589 }, 590 { 591 breakpoint: window['art_package_slider_config'].mobile_breakpoint, 592 settings: { 593 slidesToShow: window['art_package_slider_config'].mobile_slidesToShow, 594 isSlider:window['art_package_slider_config'].isSlider[2] 595 } 596 } 597 ] 598 }); 599 }) 600}); 601 602/* ****************************************************************** */ 603/* Anything slider */ 604/* ****************************************************************** */ 605jQuery(document).ready(function(){ 606 // Package Slider 607 if(typeof window['art_anything_slider_config'] == "undefined") 608 { 609 window['art_anything_slider_config'] = { 610 isSlider: true, 611 slidesToShow: 1, 612 dots: true, 613 arrows: true, 614 speed: 600, 615 autoplay: true, 616 autoplaySpeed: 5000, 617 adaptiveHeight: true, 618 tablet_breakpoint: 1025, 619 tablet_isSlider: true, 620 tablet_slidesToShow: 1, 621 mobile_breakpoint: 650, 622 mobile_isSlider: true, 623 mobile_slidesToShow: 1 624 }; 625 } 626 627 $('.art_element.art_group.anything_slider').each(function() 628 { 629 var slider = $(this).find('.anything_sl_c'); 630 631 $(slider).slick({ 632 isSlider: window['art_anything_slider_config'].isSlider, 633 dots: window['art_anything_slider_config'].dots, 634 arrows: window['art_anything_slider_config'].arrows, 635 speed: window['art_anything_slider_config'].speed, 636 slidesToShow: window['art_anything_slider_config'].slidesToShow, 637 slidesToScroll: 1, 638 autoplay: window['art_anything_slider_config'].autoplay, 639 autoplaySpeed: window['art_anything_slider_config'].autoplaySpeed, 640 infinite: true, 641 adaptiveHeight:window['art_anything_slider_config'].adaptiveHeight, 642 responsive: [ 643 { 644 breakpoint: window['art_anything_slider_config'].tablet_breakpoint, 645 settings: { 646 isSlider:window['art_anything_slider_config'].tablet_isSlider, 647 slidesToShow: window['art_anything_slider_config'].tablet_slidesToShow, 648 } 649 }, 650 { 651 breakpoint: window['art_anything_slider_config'].mobile_breakpoint, 652 settings: { 653 isSlider:window['art_anything_slider_config'].mobile_isSlider, 654 slidesToShow: window['art_anything_slider_config'].mobile_slidesToShow, 655 } 656 } 657 ] 658 }); 659 }) 660}); 661 662/* ****************************************************************** */ 663/* Mobile tables */ 664/* ****************************************************************** */ 665function generate_mobile_table(callback) 666{ 667 jQuery('.art_table table').each(function() 668 { 669 var table = $(this); 670 671 if(table.hasClass('no_mobile')) return; 672 673 if(typeof(callback) != 'undefined') 674 { 675 var ret = callback(table); 676 if((typeof(ret) == 'undefined') || (ret != true)) return; 677 } 678 679 table.addClass('hide_on_mobile'); 680 var head = table.find('thead th'); 681 var rows = table.find('tbody tr').clone(); 682 var mclass = table.attr('class'); if(mclass != '') mclass += ' '; 683 var attrs = ''; 684 var attrscopy = ['cellpadding', 'cellspacing']; 685 for(var i in attrscopy) 686 if(jQuery(table).hasAttr(attrscopy[i])) attrs += attrscopy[i]+'='+jQuery(table).attr(attrscopy[i])+' '; 687 688 var newtable = $( 689 '<table class="' + mclass + ' mobile_table"' + attrs + '><tbody></tbody></table>').removeClass('hide_on_mobile'); 690 691 var newtable_tbody = newtable.find('tbody'); 692 693 rows.each(function(i) 694 { 695 var cols = $(this).find('td'); 696 var classname = 'odd'; 697 698 cols.each(function(k) 699 { 700 if(classname == 'odd') classname = 'even'; else classname = 'odd'; 701 702 var new_tr = $('<tr class="' + classname + '"></tr>').appendTo(newtable_tbody); 703 if(k != 0) 704 { 705 new_tr.append( jQuery(head.clone().get(k)).attr('width', '60%') ); 706 new_tr.append( $(this).attr('width', '40%') ); 707 } 708 else 709 { 710 new_tr.append( $(this).attr('colspan', '2').addClass('trtitle') ); 711 } 712 }); 713 714 }); 715 716 $(this).after(newtable); 717 });
718} 719 720/* ****************************************************************** */ 721/* Swipe event */ 722/* ****************************************************************** */ 723(function(jQuery) { 724 jQuery.fn.swipeEvents = function() { 725 return this.each(function() { 726 727 var startX, 728 startY, 729 jQuerythis = jQuery(this); 730 731 jQuerythis.bind('touchstart', touchstart); 732 733 function touchstart(event) { 734 var touches = event.originalEvent.touches; 735 if (touches && touches.length) { 736 startX = touches[0].pageX; 737 startY = touches[0].pageY; 738 jQuerythis.unbind('touchmove'); 739 jQuerythis.bind('touchmove', touchmove); 740 } 741 } 742 743 function touchmove(event) { 744 var touches = event.originalEvent.touches; 745 if (touches && touches.length) { 746 var deltaX = startX - touches[0].pageX; 747 var deltaY = startY - touches[0].pageY; 748 749 if (deltaX >= 25) 750 jQuerythis.trigger("swipeLeft"); 751 if (deltaX <= -25) 752 jQuerythis.trigger("swipeRight"); 753 if (Math.abs(deltaX) >= 25 || Math.abs(deltaY) >= 25) jQuerythis.unbind('touchmove', touchmove); 754 } 755 } 756 }); 757 }; 758})(jQuery); 759 760/* ****************************************************************** */ 761/* Rollover images */ 762/* ****************************************************************** */ 763jQuery(document).ready(function($) { 764 //rollover swap images with data-hover 765 $(".rollover").hover(function() 766 { // mouseover 767 var img_src = $(this).children('img:first').attr('src'); 768 var new_src = $(this).attr('data-hover'); 769 $(this).children('img:first').attr('src', new_src); 770 $(this).attr('data-hover', img_src); 771 }, 772 function() 773 { // mouse out 774 var img_src = $(this).children('img:first').attr('src'); 775 var new_src = $(this).attr('data-hover'); 776 $(this).children('img:first').attr('src', new_src); 777 $(this).attr('data-hover', img_src); 778 }); 779 780 //preload images 781 var cache = new Array(); //cycle through all rollover elements and add rollover img src to cache array 782 $(".rollover").each(function() 783 { 784 if($(this).attr('data-hover') != '') 785 { 786 var cacheImage = document.createElement('img'); 787 cacheImage.src = $(this).attr('data-hover'); 788 cache.push(cacheImage); 789 } 790 }); 791}); 792 793/* ****************************************************************** */ 794/* Gallery */ 795/* ****************************************************************** */ 796var gbusy = false; 797jQuery(document).ready(function(){ initGallery(); }); 798function initGallery() 799{ 800 if(!jQuery('.art_element.art_gallery')) return; 801 jQuery('.art_element.art_gallery').each(function(){ initGalleryInd(this); }); 802} 803function initGalleryInd(gal) 804{ 805 if(jQuery(gal).parents('.room_details').length) 806 { 807 return false; 808 } 809 // The first image is the current 810 jQuery(gal).find('.galc').children('a:first').children('img').addClass('current'); 811 // Get gallery container 812 var galc = jQuery(gal).find('.galc:first'); 813 814 if(typeof window['art_gallery_slider_config'] == "undefined") 815 { 816 window['art_gallery_slider_config'] = { 817 dots: true, 818 arrows: true, 819 slidesToShow: 3, 820 slidesToScroll: 1, 821 speed: 600, 822 autoplay: true, 823 autoplaySpeed: 6000, 824 tablet_breakpoint: 1025, 825 tablet_slidesToShow: 2, 826 mobile_breakpoint: 650, 827 mobile_slidesToShow: 1, 828 variableWidth: true 829 }; 830 } 831 832 // Decide the gallery type and init accordingly 833 if(jQuery(galc).hasClass('gal_slider')) 834 { 835 $(galc).slick({ 836 isSlider: true, 837 dots: window['art_gallery_slider_config'].dots, 838 arrows: window['art_gallery_slider_config'].arrows, 839 speed: window['art_gallery_slider_config'].speed, 840 slidesToShow: window['art_gallery_slider_config'].slidesToShow, 841 slidesToScroll: window['art_gallery_slider_config'].slidesToScroll, 842 autoplay: window['art_gallery_slider_config'].autoplay, 843 autoplaySpeed: window['art_gallery_slider_config'].autoplaySpeed, 844 infinite: true, 845 variableWidth: window['art_gallery_slider_config'].variableWidth, 846 responsive: [ 847 { 848 breakpoint: window['art_gallery_slider_config'].tablet_breakpoint, 849 settings: { 850 slidesToShow: window['art_gallery_slider_config'].tablet_slidesToShow, 851 } 852 }, 853 { 854 breakpoint: window['art_gallery_slider_config'].mobile_breakpoint, 855 settings: { 856 slidesToShow: window['art_gallery_slider_config'].mobile_slidesToShow, 857 } 858 } 859 ] 860 }); 861 } 862 else 863 { 864 $(galc).slick({
865 isSlider: false, 866 dots: false, 867 arrows: true, 868 slidesToShow: 1, 869 slidesToScroll: 1, 870 speed: window['art_gallery_slider_config'].speed, 871 autoplay: window['art_gallery_slider_config'].autoplay, 872 autoplaySpeed: window['art_gallery_slider_config'].autoplaySpeed, 873 responsive: [ 874 { 875 breakpoint: window['art_gallery_slider_config'].mobile_breakpoint, 876 settings: { 877 isSlider: true, 878 } 879 } 880 ] 881 }); 882 } 883} 884function galleryNavNext(gal) 885{ 886 // Call for auto sliding 887 var gal_navdot = jQuery(gal).find('.gal_navdot'); 888 var galdotc = jQuery(gal_navdot).find('.dot.active'); 889 var galdotn = jQuery(galdotc).next(); 890 if(!galdotn.length) galdotn = jQuery(gal_navdot).find('.dot:first'); 891 galleryNavSlider(galdotn); 892} 893function galleryNavSlider(dot) 894{ 895 if(gbusy) return; 896 gbusy = true; 897 898 var dotc = jQuery(dot).closest('.gal_navdot'); 899 var galc = jQuery(dotc).closest('.galc'); 900 901 var dota = jQuery(dotc).children('.dot.active'); 902 var cindx = jQuery(dotc).children('.dot').index(dot); 903 var aindx = jQuery(dotc).children('.dot').index(dota); 904 if(cindx == aindx) return; // We are allready on the current element 905 906 // Find matching images 907 var imgc = jQuery(galc).find('img.current'); 908 var imgn = jQuery(galc).find('a > img').get(cindx); 909 910 // Switch images 911 jQuery(imgn).css('opacity', 0).css('z-index', 10).animate({'opacity': 1}, window['art_gal_slider_animation_speed'], function(){ jQuery(imgc).removeClass('current'); jQuery(this).addClass('current').css('opacity', '').css('z-index', ''); gbusy = false; }); 912 913 // Switch dot selection 914 jQuery(dotc).children('span:eq('+aindx+')').removeClass('active'); 915 jQuery(dotc).children('span:eq('+cindx+')').addClass('active'); 916} 917function galleryNav(el, dir) 918{ 919 if(gbusy) return; 920 gbusy = true; 921 922 var gal = jQuery(el).closest('.galc'); 923 924 var current = jQuery(gal).find('.current').parent(); 925 926 if(dir > 0) 927 { 928 var nextpos = '100%'; 929 var next = jQuery(current).next('a.iv'); 930 if(!next.length) { next = jQuery(gal).children('a:first'); nextpos = '100%'; } 931 932 current = jQuery(current).children('img'); 933 next = jQuery(next).children('img'); 934 935 jQuery(current).animate({'left':'-100%'},'slow',function(){ jQuery(this).removeClass('current').css('left',''); gbusy=false; }) 936 jQuery(next).css('left', nextpos).css('display','block').css('z-index', 3).animate({'left':0},'slow',function(){ jQuery(this).css('z-index','').css('left','').css('display','').addClass('current'); }); 937 } 938 else 939 { 940 var prevpos = '-100%'; 941 var prev = jQuery(current).prev('a.iv'); 942 if(!prev.length) { prev = jQuery(gal).children('a:last'); prevpos = '-100%'; } 943 944 current = jQuery(current).children('img'); 945 prev = jQuery(prev).children('img'); 946 947 jQuery(current).animate({'left':'100%'},'slow',function(){ jQuery(this).removeClass('current').css('left',''); gbusy=false; }) 948 jQuery(prev).css('left', prevpos).css('display','block').css('z-index', 3).animate({'left':0},'slow',function(){ jQuery(this).css('display','').css('z-index','').css('left','').addClass('current'); }); 949 } 950} 951 952//Init Slick Slider 953function initImageInLineSlickSlider(slider) 954{ 955 956 // Package Slider 957 if(typeof window['art_imageline_slider_config'] == "undefined") 958 { 959 window['art_imageline_slider_config'] = { 960 dots: false, 961 arrows: true, 962 speed: 600, 963 autoplay: false, 964 autoplaySpeed: 5000, 965 mobile_breakpoint: 650 966 }; 967 } 968 969 //Desktop, Tablet, Mobile 970 window['art_imageline_slider_config'].isSlider = [false,false,true]; 971 972 973 $(slider).slick({ 974 isSlider:window['art_imageline_slider_config'].isSlider[0], 975 dots: window['art_imageline_slider_config'].dots, 976 arrows: window['art_imageline_slider_config'].arrows, 977 speed: window['art_imageline_slider_config'].speed, 978 slidesToShow: window['art_imageline_slider_config'].slidesToShow, 979 slidesToScroll:1, 980 autoplay: window['art_imageline_slider_config'].autoplay, 981 autoplaySpeed: window['art_imageline_slider_config'].autoplaySpeed, 982 infinite: true, 983 responsive: [ 984 { 985 breakpoint: window['art_imageline_slider_config'].mobile_breakpoint, 986 settings: {
987 isSlider:window['art_imageline_slider_config'].isSlider[2] 988 } 989 } 990 ] 991 }); 992} 993 994/* ****************************************************************** */ 995/* Images in line */ 996/* ****************************************************************** */ 997jQuery(document).ready(function(){ 998 $('.art_element.art_imageline .imlsldr').each(function() 999 { 1000 initImageInLineSlickSlider(jQuery(this)); 1001 }); 1002 1003}); 1004 1005/* ****************************************************************** */ 1006/* Slider menu */ 1007/* ****************************************************************** */ 1008var imenu = null; 1009var menuSlider = null; 1010var menuSliderCallbackFn = null; 1011 1012function menu_adjustInnerContainer() 1013{ 1014 var t = false; 1015 if(jQuery(menuSlider).hasClass('closed')) t = true; 1016 if(t) jQuery(menuSlider).css('top', '-1000%').removeClass('closed'); 1017 jQuery('.menusl').css('height', jQuery('.menusl .menuslbox.current').outerHeight() ); 1018 if(t) jQuery(menuSlider).addClass('closed').css('top', ''); 1019} 1020function menu_adjustOuterContainer() 1021{ 1022 //Outer container 1023 jQuery(menuSlider).css('height', jQuery('.main_c').height()); 1024 1025 // Inside menu height 1026 menu_adjustInnerContainer(); 1027} 1028function menu_slideOversee() 1029{ 1030 if(typeof(menuSliderOverrideCallbackFn) == 'function') 1031 { 1032 var ret = menuSliderOverrideCallbackFn(); 1033 if(ret) return; // Native code was canceled by outside menuSliderOverrideCallbackFn function 1034 } 1035 1036 // Clear que to avoid Oversee/Open bug 1037 jQuery(menuSlider).clearQueue().stop(); 1038 1039 var pos = jQuery(menuSlider).data('pos'); 1040 if(!jQuery(menuSlider).hasClass('closed')) 1041 { 1042 if(pos == 'left') 1043 { 1044 jQuery(menuSlider).animate({'left': '-100%'}, 'normal', function(){ jQuery(this).addClass('closed'); jQuery(imenu).removeClass('opened'); if(typeof(menuSliderCallbackFn)=='function') menuSliderCallbackFn(); }); 1045 jQuery('.main').animate({'left': '0%'}, 'normal'); 1046 } 1047 else 1048 { 1049 jQuery(menuSlider).animate({'left': '100%'}, 'normal', function(){ jQuery(this).addClass('closed'); jQuery(imenu).removeClass('opened'); if(typeof(menuSliderCallbackFn)=='function') menuSliderCallbackFn(); }); 1050 jQuery('.main').animate({'left': '0%'}, 'normal'); 1051 } 1052 } 1053} 1054function menu_slideNavTo(el, next, dir) 1055{ 1056 el = '#'+el; 1057 next = '#'+next; 1058 1059 if(dir == 0) 1060 { 1061 jQuery(el).css('left', '0%').removeClass('current').animate({'left': '-100%'}, 300); 1062 jQuery(next).css('left', '100%').addClass('current').animate({'left': '0%'}, 300, function(){ 1063 menu_unsetFocusable(el); 1064 menu_setFocusable(next); 1065 }); 1066 menu_adjustInnerContainer(); 1067 } 1068 else 1069 { 1070 jQuery(el).css('left', '0%').removeClass('current').animate({'left': '100%'}, 300); 1071 jQuery(next).css('left', '-100%').addClass('current').animate({'left': '0%'}, 300, function(){ 1072 menu_unsetFocusable(el); 1073 menu_setFocusable(next); 1074 }); 1075 menu_adjustInnerContainer(); 1076 } 1077 1078 return false; 1079} 1080function menu_unsetFocusable(submenu) 1081{ 1082 jQuery(submenu).attr('aria-hidden', 'true'); 1083 jQuery(submenu).find('a').attr('aria-hidden', 'true').attr('tabindex', '-1'); 1084} 1085function menu_setFocusable(submenu) 1086{ 1087 jQuery(submenu).attr('aria-hidden', 'false'); 1088 jQuery(submenu).find('a').attr('aria-hidden', '').attr('tabindex', ''); 1089 jQuery(submenu).find('a:first').focus(); 1090} 1091function initMenuAccessibility(container) 1092{ 1093 // If snippet failed to determine a current level, then mark the root as current 1094 if(!jQuery(menuSlider).find('.menuslbox.current').length) jQuery(menuSlider).find('.menuslbox:first').addClass('current'); 1095 1096 // Accessibility - hide all other level beside the ".current" from focus/tab list 1097 jQuery(container).find('.menuslbox:not(.current)').each(function(){ 1098 menu_unsetFocusable(this); 1099 }); 1100} 1101jQuery(document).ready(function(){ 1102 if(jQuery('#menu_slide_layer').length) 1103 { 1104 menuSlider = jQuery('#menu_slide_layer'); 1105 1106 initMenuAccessibility(menuSlider); 1107 $.regResize(function(new_width){ 1108 menu_slideOversee(); 1109 }); 1110 menu_adjustInnerContainer(); 1111 } 1112}); 1113 1114/* Plain mobile friendly menu */ 1115// onfocus="menu_onfocus(this, 'mob_menu_btn')" 1116function menu_onfocus(el, button_id, callback) 1117{ 1118 menu_open(jQuery('#'+button_id), true); 1119 if(typeof(callback) == 'function') callback(el, button_id); 1120 return false; 1121} 1122//onblur="menu_onblur(this, 'mob_menu_btn')" 1123function menu_onblur(el, button_id, callback) 1124{ 1125 menu_open(jQuery('#'+button_id), false); 1126 if(typeof(callback) == 'function') callback(el, button_id); 1127 return false; 1128} 1129 1130function menu_open(el, forceAction) 1131{ 1132 var menu_layer = jQuery('#mobile_menu_layer'); 1133 1134 // Fix .menusl div height 1135 menu_adjustInnerContainer(); 1136 1137 if((typeof(forceAction) != 'undefined')&&(forceAction)) 1138 { 1139 if(jQuery(el).hasClass('closed')) 1140 jQuery(menu_layer).slideDown('normal', function(){ jQuery(this).removeClass('closed').css('display', ''); jQuery(el).removeClass('closed'); }); 1141 return false; 1142 } 1143 1144 if((typeof(forceAction) != 'undefined')&&(!forceAction)) 1145 { 1146 if(!jQuery(el).hasClass('closed')) 1147 jQuery(menu_layer).slideUp('normal', function(){ jQuery(this).css('display', '').addClass('closed'); jQuery(el).addClass('closed'); }); 1148 return false; 1149 } 1150 1151 if(jQuery(el).hasClass('closed')) 1152 jQuery(menu_layer).slideDown('normal', function(){ jQuery(this).removeClass('closed').css('display', ''); jQuery(el).removeClass('closed'); }); 1153 else 1154 jQuery(menu_layer).slideUp('normal', function(){ jQuery(this).css('display', '').addClass('closed'); jQuery(el).addClass('closed'); }); 1155 return false; 1156} 1157jQuery(document).ready(function(){ 1158 if(jQuery('#mobile_menu_layer').length) 1159 { 1160 menuSlider = jQuery('#mobile_menu_layer'); 1161 1162 // If snippet failed to determine a current level, then mark the root as current 1163 if(!jQuery(menuSlider).find('.menuslbox.current').length) jQuery(menuSlider).find('.menuslbox:first').addClass('current'); 1164 1165 // Fix .menusl div height 1166 menu_adjustInnerContainer(); 1167 } 1168}); 1169 1170/******************************************/ 1171/* FOCUS ONLY ON TAB */ 1172/******************************************/ 1173/* https://github.com/WICG/focus-visible */ 1174function initFocusOnTab(){var hadKeyboardEvent=true;var hadFocusVisibleRecently=false;var hadFocusVisibleRecentlyTimeout=null;var inputTypesWhitelist={text:true,search:true,url:true,tel:true,email:true,password:true,number:true,date:true,month:true,week:true,time:true,datetime:true,'datetime-local':true};function isValidFocusTarget(el){if(el&&el!==document&&el.nodeName!=='HTML'&&el.nodeName!=='BODY'&&'classList'in el&&'contains'in el.classList){return true;} 1175return false;} 1176function focusTriggersKeyboardModality(el){var type=el.type;var tagName=el.tagName;if(tagName=='INPUT'&&inputTypesWhitelist[type]&&!el.readOnly){return true;} 1177if(tagName=='TEXTAREA'&&!el.readOnly){return true;} 1178if(el.isContentEditable){return true;} 1179return false;} 1180function addFocusVisibleClass(el){if(el.classList.contains('focus-visible')){return;} 1181el.classList.add('focus-visible');el.setAttribute('data-focus-visible-added','');} 1182function removeFocusVisibleClass(el){if(!el.hasAttribute('data-focus-visible-added')){return;} 1183el.classList.remove('focus-visible');el.removeAttribute('data-focus-visible-added');} 1184function onKeyDown(e){if(isValidFocusTarget(document.activeElement)){addFocusVisibleClass(document.activeElement);} 1185hadKeyboardEvent=true;} 1186function onPointerDown(e){hadKeyboardEvent=false;} 1187function onFocus(e){if(!isValidFocusTarget(e.target)){return;} 1188if(hadKeyboardEvent||focusTriggersKeyboardModality(e.target)){addFocusVisibleClass(e.target);}} 1189function onBlur(e){if(!isValidFocusTarget(e.target)){return;} 1190if(e.target.classList.contains('focus-visible')||e.target.hasAttribute('data-focus-visible-added')){hadFocusVisibleRecently=true;window.clearTimeout(hadFocusVisibleRecentlyTimeout);hadFocusVisibleRecentlyTimeout=window.setTimeout(function(){hadFocusVisibleRecently=false;window.clearTimeout(hadFocusVisibleRecentlyTimeout);},100);removeFocusVisibleClass(e.target);}} 1191function onVisibilityChange(e){if(document.visibilityState=='hidden'){if(hadFocusVisibleRecently){hadKeyboardEvent=true;} 1192addInitialPointerMoveListeners();}} 1193function addInitialPointerMoveListeners(){document.addEventListener('mousemove',onInitialPointerMove);document.addEventListener('mousedown',onInitialPointerMove);document.addEventListener('mouseup',onInitialPointerMove);document.addEventListener('pointermove',onInitialPointerMove);document.addEventListener('pointerdown',onInitialPointerMove);document.addEventListener('pointerup',onInitialPointerMove);document.addEventListener('touchmove',onInitialPointerMove);document.addEventListener('touchstart',onInitialPointerMove);document.addEventListener('touchend',onInitialPointerMove);} 1194function removeInitialPointerMoveListeners(){document.removeEventListener('mousemove',onInitialPointerMove);document.removeEventListener('mousedown',onInitialPointerMove);document.removeEventListener('mouseup',onInitialPointerMove);document.removeEventListener('pointermove',onInitialPointerMove);document.removeEventListener('pointerdown',onInitialPointerMove);document.removeEventListener('pointerup',onInitialPointerMove);document.removeEventListener('touchmove',onInitialPointerMove);document.removeEventListener('touchstart',onInitialPointerMove);document.removeEventListener('touchend',onInitialPointerMove);} 1195function onInitialPointerMove(e){if(e.target.nodeName.toLowerCase()==='html'){return;} 1196hadKeyboardEvent=false;removeInitialPointerMoveListeners();} 1197document.addEventListener('keydown',onKeyDown,true);document.addEventListener('mousedown',onPointerDown,true);document.addEventListener('pointerdown',onPointerDown,true);document.addEventListener('touchstart',onPointerDown,true);document.addEventListener('focus',onFocus,true);document.addEventListener('blur',onBlur,true);document.addEventListener('visibilitychange',onVisibilityChange,true);addInitialPointerMoveListeners();document.body.classList.add('js-focus-visible');} 1198function onDOMReady(callback){var loaded;function load(){if(!loaded){loaded=true;callback();}} 1199if(['interactive','complete'].indexOf(document.readyState)>=0){callback();}else{loaded=false;document.addEventListener('DOMContentLoaded',load,false);window.addEventListener('load',load,false);}} 1200if(typeof document!=='undefined'){onDOMReady(initFocusOnTab);} 1201 1202 1203 1204/** 1205 * jQuery Grid-A-Licious(tm) v3.01 1206 * 1207 * Terms of Use - jQuery Grid-A-Licious(tm) 1208 * under the MIT (http://www.opensource.org/licenses/mit-license.php) License. 1209 *
1210 * Copyright 2008-2012 Andreas Pihlström (Suprb). All rights reserved. 1211 * (http://suprb.com/apps/gridalicious/) 1212 * 1213 */ 1214(function($,sr){var debounce=function(func,threshold,execAsap){var timeout;return function debounced(){var obj=this,args=arguments;function delayed(){if(!execAsap)func.apply(obj,args);timeout=null};if(timeout)clearTimeout(timeout);else if(execAsap)func.apply(obj,args);timeout=setTimeout(delayed,threshold||150)}} 1215jQuery.fn[sr]=function(fn){return fn?this.bind('resize',debounce(fn)):this.trigger(sr)}})(jQuery,'smartresize');(function($){$.Gal=function(options,element){this.element=$(element);this._init(options)};$.Gal.settings={selector:'.item',width:225,gutter:20,animate:!1,animationOptions:{speed:200,duration:300,effect:'fadeInOnAppear',queue:!0,complete:function(){}},};$.Gal.prototype={_init:function(options){var container=this;this.name=this._setName(5);this.gridArr=[];this.gridArrAppend=[];this.gridArrPrepend=[];this.setArr=!1;this.setGrid=!1;this.setOptions;this.cols=0;this.itemCount=0;this.prependCount=0;this.isPrepending=!1;this.appendCount=0;this.resetCount=!0;this.ifCallback=!0;this.box=this.element;this.boxWidth=this.box.width();this.options=$.extend(!0,{},$.Gal.settings,options);this.gridArr=$.makeArray(this.box.find(this.options.selector));this.isResizing=!1;this.w=0;this.boxArr=[];this._setCols();this._renderGrid('append');$(this.box).addClass('gridalicious');$(window).smartresize(function(){container.resize()})},_setName:function(length,current){current=current?current:'';return length?this._setName(--length,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz".charAt(Math.floor(Math.random()*60))+current):current},_setCols:function(){this.cols=Math.floor(this.box.width()/this.options.width);if(this.cols<1){this.cols=1} 1216diff=(this.box.width()-(this.cols*this.options.width)-this.options.gutter)/this.cols;w=(this.options.width+diff)/this.box.width()*100;this.w=w;for(var i=0;i<this.cols;i++){var div=$('<div></div>').addClass('galcolumn').attr('id','item'+i+this.name).css({'width':w+'%','paddingLeft':this.options.gutter,'paddingBottom':this.options.gutter,'float':'left','-webkit-box-sizing':'border-box','-moz-box-sizing':'border-box','-o-box-sizing':'border-box','box-sizing':'border-box'});this.box.append(div)} 1217this.box.find($('#clear'+this.name)).remove();var clear=$('<div></div>').css({'clear':'both','height':'0','width':'0','display':'block'}).attr('id','clear'+this.name);this.box.append(clear)},_renderGrid:function(method,arr,count,prepArray){var items=[];var boxes=[];var prependArray=[];var itemCount=0;var prependCount=this.prependCount;var appendCount=this.appendCount;var gutter=this.options.gutter;var cols=this.cols;var name=this.name;var animationDelay=this.options.animationDelay;var i=0;var w=$('.galcolumn').width();if(arr){boxes=arr;if(method=="append"||method=="resize"){appendCount+=count;itemCount=this.appendCount} 1218if(method=="prepend"){this.isPrepending=!0;itemCount=Math.round(count%cols);if(itemCount<=0)itemCount=cols} 1219if(method=="renderAfterPrepend"){appendCount+=count;itemCount=count}} 1220else{boxes=this.gridArr;appendCount=$(this.gridArr).length} 1221$.each(boxes,function(index,value){var item=$(value);var width='100%';if(item.hasClass('not-responsive')){width='auto'} 1222var animDelay=(((index)%cols)*animationDelay)+"s";item.css({'marginBottom':gutter,'zoom':'1','filter':'alpha(opacity=0)','animation-delay':animDelay,'transition-delay':animDelay,}).find('img, object, embed, iframe').css({'width':width,'height':'auto','display':'block','margin-left':'auto','margin-right':'auto',});if(method=='prepend'){itemCount--;$("#item"+itemCount+name).prepend(item);items.push(item);if(itemCount==0)itemCount=cols}else{$("#item"+itemCount+name).append(item);items.push(item);itemCount++;if(itemCount>=cols)itemCount=0;if(appendCount>=cols)appendCount=(appendCount-cols)}});this.appendCount=appendCount;this.itemCount=itemCount;if(method=="append"||method=="prepend"){if(method=="prepend"){this._updateAfterPrepend(this.gridArr,boxes)} 1223this.isPrepending=!1} 1224else if(method=="resize"){this._renderItem(this.gridArr)}},_collectItems:function(){var collection=[];$(this.box).find(this.options.selector).each(function(i){collection.push($(this))});return collection},render:function() 1225{this._renderItem(this.gridArr)},_renderItem:function(items){var speed=this.options.animationOptions.speed;var effect=this.options.animationOptions.effect;var duration=this.options.animationOptions.duration;var queue=this.options.animationOptions.queue;var animate=this.options.animate;var complete=this.options.animationOptions.complete;var i=0;var t=0;if(animate===!0&&!this.isResizing){if(queue===!0&&effect=="fadeInOnAppear"){if(this.isPrepending)items.reverse();$.each(items,function(index,value){setTimeout(function(){$(value).animate({opacity:'1.0'},duration);t++;if(t==items.length){complete.call(undefined,items)}},i*speed);i++})}else if(queue===!1&&effect=="fadeInOnAppear"){if(this.isPrepending)items.reverse();$.each(items,function(index,value){$(value).animate({opacity:'1.0'},duration);t++;if(t==items.length){if(this.ifCallback){complete.call(undefined,items)}}})} 1226if(queue===!0&&!effect){$.each(items,function(index,value){$(value).css({'opacity':'1','filter':'alpha(opacity=100)'});t++;if(t==items.length){if(this.ifCallback){complete.call(undefined,items)}}})}}else{$.each(items,function(index,value){$(value).css({'opacity':'1','filter':'alpha(opacity=100)'})});if(this.ifCallback){complete.call(items)}}},_updateAfterPrepend:function(prevItems,newItems){var gridArr=this.gridArr;$.each(newItems,function(index,value){gridArr.unshift(value)}) 1227this.gridArr=gridArr},resize:function(){if(this.box.width()===this.boxWidth){return} 1228this.box.find($('.galcolumn')).remove();this._setCols();this.ifCallback=!1;this.isResizing=!0;this._renderGrid('resize');this.ifCallback=!0;this.isResizing=!1;this.boxWidth=this.box.width()},append:function(items){var gridArr=this.gridArr;var gridArrAppend=this.gridArrPrepend;
1228$.each(items,function(index,value){gridArr.push(value);gridArrAppend.push(value)});this._renderGrid('append',items,$(items).length)},prepend:function(items){this.ifCallback=!1;this._renderGrid('prepend',items,$(items).length);this.ifCallback=!0},} 1229$.fn.gridalicious=function(options,e){if(typeof options==='string'){this.each(function(){var container=$.data(this,'gridalicious');container[options].apply(container,[e])})}else{this.each(function(){$.data(this,'gridalicious',new $.Gal(options,this))})} 1230return this}})(jQuery) 1231 1232/* 1233 _ _ _ _ 1234 ___| (_) ___| | __ (_)___ 1235/ __| | |/ __| |/ / | / __| 1236\__ \ | | (__| < _ | \__ \ 1237|___/_|_|\___|_|\_(_)/ |___/ 1238 |__/ 1239 1240 Version: 1.6.0 1241 Author: Ken Wheeler 1242 Website: http://kenwheeler.github.io 1243 Docs: http://kenwheeler.github.io/slick 1244 Repo: http://github.com/kenwheeler/slick 1245 Issues: http://github.com/kenwheeler/slick/issues 1246 1247 */ 1248/* global window, document, define, jQuery, setInterval, clearInterval */ 1249!function(i){"use strict";"function"==typeof define&&define.amd?define(["jquery"],i):"undefined"!=typeof exports?module.exports=i(require("jquery")):i(jQuery)}(function(i){"use strict";var e=window.Slick||{};(e=function(){var e=0;return function(t,o){var s,n=this;n.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:i(t),appendDots:i(t),arrows:!0,asNavFor:null,prevArrow:'<button type="button" data-role="none" class="slick-prev" aria-label="Previous" tabindex="0" role="button">Previous</button>',nextArrow:'<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(e,t){return i('<button type="button" data-role="none" role="button" tabindex="0" />').text(t+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:1,rtl:!1,slide:"",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},n.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,sliding:!1,slideOffset:0,swipeLeft:null,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},i.extend(n,n.initials),n.activeBreakpoint=null,n.animType=null,n.animProp=null,n.breakpoints=[],n.breakpointSettings=[],n.cssTransitions=!1,n.focussed=!1,n.interrupted=!1,n.hidden="hidden",n.paused=!0,n.positionProp=null,n.respondTo=null,n.rowCount=1,n.shouldClick=!0,n.$slider=i(t),n.$slidesCache=null,n.transformType=null,n.transitionType=null,n.visibilityChange="visibilitychange",n.windowWidth=0,n.windowTimer=null,s=i(t).data("slick")||{},n.options=i.extend({},n.defaults,o,s),n.currentSlide=n.options.initialSlide,n.originalSettings=n.options,void 0!==document.mozHidden?(n.hidden="mozHidden",n.visibilityChange="mozvisibilitychange"):void 0!==document.webkitHidden&&(n.hidden="webkitHidden",n.visibilityChange="webkitvisibilitychange"),n.autoPlay=i.proxy(n.autoPlay,n),n.autoPlayClear=i.proxy(n.autoPlayClear,n),n.autoPlayIterator=i.proxy(n.autoPlayIterator,n),n.changeSlide=i.proxy(n.changeSlide,n),n.clickHandler=i.proxy(n.clickHandler,n),n.selectHandler=i.proxy(n.selectHandler,n),n.setPosition=i.proxy(n.setPosition,n),n.swipeHandler=i.proxy(n.swipeHandler,n),n.dragHandler=i.proxy(n.dragHandler,n),n.keyHandler=i.proxy(n.keyHandler,n),n.instanceUid=e++,n.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/,n.registerBreakpoints(),n.init(!0)}}()).prototype.activateADA=function(){this.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},e.prototype.addSlide=e.prototype.slickAdd=function(e,t,o){var s=this;if("boolean"==typeof t)o=t,t=null;else if(t<0||t>=s.slideCount)return!1;s.unload(),"number"==typeof t?0===t&&0===s.$slides.length?i(e).appendTo(s.$slideTrack):o?i(e).insertBefore(s.$slides.eq(t)):i(e).insertAfter(s.$slides.eq(t)):!0===o?i(e).prependTo(s.$slideTrack):i(e).appendTo(s.$slideTrack),s.$slides=s.$slideTrack.children(this.options.slide),s.$slideTrack.children(this.options.slide).detach(),s.$slideTrack.append(s.$slides),s.$slides.each(function(e,t){i(t).attr("data-slick-index",e)}),s.$slidesCache=s.$slides,s.reinit()},e.prototype.animateHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.animate({height:e},i.options.speed)}},e.prototype.animateSlide=function(e,t){var o={},s=this;s.animateHeight(),!0===s.options.rtl&&!1===s.options.vertical&&(e=-e),!1===s.transformsEnabled?!1===s.options.vertical?s.$slideTrack.animate({left:e},s.options.speed,s.options.easing,t):s.$slideTrack.animate({top:e},s.options.speed,s.options.easing,t):!1===s.cssTransitions?(!0===s.options.rtl&&(s.currentLeft=-s.currentLeft),i({animStart:s.currentLeft}).animate({animStart:e},{duration:s.options.speed,easing:s.options.easing,step:function(i){i=Math.ceil(i),!1===s.options.vertical?(o[s.animType]="translate("+i+"px, 0px)",s.$slideTrack.css(o)):(o[s.animType]="translate(0px,"+i+"px)",s.$slideTrack.css(o))},complete:function(){t&&t.call()}})):(s.applyTransition(),e=Math.ceil(e),!1===s.options.vertical?o[s.animType]="translate3d("+e+"px, 0px, 0px)":o[s.animType]="translate3d(0px,"+e+"px, 0px)",s.$slideTrack.css(o),t&&setTimeout(function(){s.disableTransition(),t.call()},s.options.speed))},e.prototype.getNavTarget=function(){var e=this,t=e.options.asNavFor;return t&&null!==t&&(t=i(t).not(e.$slider)),t},e.prototype.asNavFor=function(e){var t=this.getNavTarget();null!==t&&"object"==typeof t&&t.each(function(){var t=i(this).slick("getSlick");t.unslicked||t.slideHandler(e,!0)})},e.prototype.applyTransition=function(i){var e=this,t={};!1===e.options.fade?t[e.transitionType]=e.transformType+" "+e.options.speed+"ms "+e.options.cssEase:t[e.transitionType]="opacity "+e.options.speed+"ms "+e.options.cssEase,!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.autoPlay=function(){var i=this;i.autoPlayClear(),i.slideCount>i.options.slidesToShow&&(i.autoPlayTimer=setInterval(i.autoPlayIterator,i.options.autoplaySpeed))},e.prototype.autoPlayClear=function(){var i=this;i.autoPlayTimer&&clearInterval(i.autoPlayTimer)},e.prototype.autoPlayIterator=function(){var i=this,e=i.currentSlide+i.options.slidesToScroll;i.paused||i.interrupted||i.focussed||(!1===i.options.infinite&&(1===i.direction&&i.currentSlide+1===i.slideCount-1?i.direction=0:0===i.direction&&(e=i.currentSlide-i.options.slidesToScroll,i.currentSlide-1==0&&(i.direction=1))),i.slideHandler(e))},e.prototype.buildArrows=function(){var e=this;!0===e.options.arrows&&(e.$prevArrow=i(e.options.prevArrow).addClass("slick-arrow"),e.$nextArrow=i(e.options.nextArrow).addClass("slick-arrow"),e.slideCount>e.options.slidesToShow?(e.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.prependTo(e.options.appendArrows),e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.appendTo(e.options.appendArrows),!0!==e.options.infinite&&e.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):e.$prevArrow.add(e.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},e.prototype.buildDots=function(){var e,t,o=this;if(!0===o.options.dots&&o.slideCount>o.options.slidesToShow){for(o.$slider.addClass("slick-dotted"),t=i("<ul />").addClass(o.options.dotsClass),e=0;e<=o.getDotCount();e+=1)t.append(i("<li />").append(o.options.customPaging.call(this,o,e)));o.$dots=t.appendTo(o.options.appendDots),o.$dots.find("li").first().addClass("slick-active").attr("aria-hidden","false")}},e.prototype.buildOut=function(){var e=this;e.$slides=e.$slider.children(e.options.slide+":not(.slick-cloned)").addClass("slick-slide"),e.slideCount=e.$slides.length,e.$slides.each(function(e,t){i(t).attr("data-slick-index",e).data("originalStyling",i(t).attr("style")||"")}),e.$slider.addClass("slick-slider"),e.$slideTrack=0===e.slideCount?i('<div class="slick-track"/>').appendTo(e.$slider):e.$slides.wrapAll('<div class="slick-track"/>').parent(),e.$list=e.$slideTrack.wrap('<div aria-live="polite" class="slick-list"/>').parent(),e.$slideTrack.css("opacity",0),!0!==e.options.centerMode&&!0!==e.options.swipeToSlide||(e.options.slidesToScroll=1),i("img[data-lazy]",e.$slider).not("[src]").addClass("slick-loading"),e.setupInfinite(),e.buildArrows(),e.buildDots(),e.updateDots(),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),!0===e.options.draggable&&e.$list.addClass("draggable")},e.prototype.buildRows=function(){var i,e,t,o,s,n,r,l=this;if(o=document.createDocumentFragment(),n=l.$slider.children(),l.o
1249ptions.rows>1){for(r=l.options.slidesPerRow*l.options.rows,s=Math.ceil(n.length/r),i=0;i<s;i++){var d=document.createElement("div");for(e=0;e<l.options.rows;e++){var a=document.createElement("div");for(t=0;t<l.options.slidesPerRow;t++){var c=i*r+(e*l.options.slidesPerRow+t);n.get(c)&&a.appendChild(n.get(c))}d.appendChild(a)}o.appendChild(d)}l.$slider.empty().append(o),l.$slider.children().children().children().css({width:100/l.options.slidesPerRow+"%",display:"inline-block"})}},e.prototype.checkResponsive=function(e,t){var o,s,n,r=this,l=!1,d=r.$slider.width(),a=window.innerWidth||i(window).width();if("window"===r.respondTo?n=a:"slider"===r.respondTo?n=d:"min"===r.respondTo&&(n=Math.min(a,d)),r.options.responsive&&r.options.responsive.length&&null!==r.options.responsive){s=null;for(o in r.breakpoints)r.breakpoints.hasOwnProperty(o)&&(!1===r.originalSettings.mobileFirst?n<r.breakpoints[o]&&(s=r.breakpoints[o]):n>r.breakpoints[o]&&(s=r.breakpoints[o]));null!==s?null!==r.activeBreakpoint?(s!==r.activeBreakpoint||t)&&(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):null!==r.activeBreakpoint&&(r.activeBreakpoint=null,r.options=r.originalSettings,!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e),l=s),e||!1===l||r.$slider.trigger("breakpoint",[r,l])}},e.prototype.changeSlide=function(e,t){var o,s,n,r=this,l=i(e.currentTarget);switch(l.is("a")&&e.preventDefault(),l.is("li")||(l=l.closest("li")),n=r.slideCount%r.options.slidesToScroll!=0,o=n?0:(r.slideCount-r.currentSlide)%r.options.slidesToScroll,e.data.message){case"previous":s=0===o?r.options.slidesToScroll:r.options.slidesToShow-o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide-s,!1,t);break;case"next":s=0===o?r.options.slidesToScroll:o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide+s,!1,t);break;case"index":var d=0===e.data.index?0:e.data.index||l.index()*r.options.slidesToScroll;r.slideHandler(r.checkNavigable(d),!1,t),l.children().trigger("focus");break;default:return}},e.prototype.checkNavigable=function(i){var e,t;if(e=this.getNavigableIndexes(),t=0,i>e[e.length-1])i=e[e.length-1];else for(var o in e){if(i<e[o]){i=t;break}t=e[o]}return i},e.prototype.cleanUpEvents=function(){var e=this;e.options.dots&&null!==e.$dots&&i("li",e.$dots).off("click.slick",e.changeSlide).off("mouseenter.slick",i.proxy(e.interrupt,e,!0)).off("mouseleave.slick",i.proxy(e.interrupt,e,!1)),e.$slider.off("focus.slick blur.slick"),!0===e.options.arrows&&e.slideCount>e.options.slidesToShow&&(e.$prevArrow&&e.$prevArrow.off("click.slick",e.changeSlide),e.$nextArrow&&e.$nextArrow.off("click.slick",e.changeSlide)),e.$list.off("touchstart.slick mousedown.slick",e.swipeHandler),e.$list.off("touchmove.slick mousemove.slick",e.swipeHandler),e.$list.off("touchend.slick mouseup.slick",e.swipeHandler),e.$list.off("touchcancel.slick mouseleave.
1249slick",e.swipeHandler),e.$list.off("click.slick",e.clickHandler),i(document).off(e.visibilityChange,e.visibility),e.cleanUpSlideEvents(),!0===e.options.accessibility&&e.$list.off("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().off("click.slick",e.selectHandler),i(window).off("orientationchange.slick.slick-"+e.instanceUid,e.orientationChange),i(window).off("resize.slick.slick-"+e.instanceUid,e.resize),i("[draggable!=true]",e.$slideTrack).off("dragstart",e.preventDefault),i(window).off("load.slick.slick-"+e.instanceUid,e.setPosition),i(document).off("ready.slick.slick-"+e.instanceUid,e.setPosition)},e.prototype.cleanUpSlideEvents=function(){var e=this;e.$list.off("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.off("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.cleanUpRows=function(){var i,e=this;e.options.rows>1&&((i=e.$slides.children().children()).removeAttr("style"),e.$slider.empty().append(i))},e.prototype.clickHandler=function(i){!1===this.shouldClick&&(i.stopImmediatePropagation(),i.stopPropagation(),i.preventDefault())},e.prototype.destroy=function(e){var t=this;t.autoPlayClear(),t.touchObject={},t.cleanUpEvents(),i(".slick-cloned",t.$slider).detach(),t.$dots&&t.$dots.remove(),t.$prevArrow&&t.$prevArrow.length&&(t.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.prevArrow)&&t.$prevArrow.remove()),t.$nextArrow&&t.$nextArrow.length&&(t.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.nextArrow)&&t.$nextArrow.remove()),t.$slides&&(t.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function(){i(this).attr("style",i(this).data("originalStyling"))}),t.$slideTrack.children(this.options.slide).detach(),t.$slideTrack.detach(),t.$list.detach(),t.$slider.append(t.$slides)),t.cleanUpRows(),t.$slider.removeClass("slick-slider"),t.$slider.removeClass("slick-initialized"),t.$slider.removeClass("slick-dotted"),t.unslicked=!0,e||t.$slider.trigger("destroy",[t])},e.prototype.disableTransition=function(i){var e=this,t={};t[e.transitionType]="",!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.fadeSlide=function(i,e){var t=this;!1===t.cssTransitions?(t.$slides.eq(i).css({zIndex:t.options.zIndex}),t.$slides.eq(i).animate({opacity:1},t.options.speed,t.options.easing,e)):(t.applyTransition(i),t.$slides.eq(i).css({opacity:1,zIndex:t.options.zIndex}),e&&setTimeout(function(){t.disableTransition(i),e.call()},t.options.speed))},e.prototype.fadeSlideOut=function(i){var e=this;!1===e.cssTransitions?e.$slides.eq(i).animate({opacity:0,zIndex:e.options.zIndex-2},e.options.speed,e.options.easing):(e.applyTransition(i),e.$slides.eq(i).css({opacity:0,zIndex:e.options.zIndex-2}))},e.prototype.filterSlides=e.prototype.slickFilter=function(i){var e=this;null!==i&&(e.$slidesCache=e.$slides,e.unload(),e.$slideTrack.children(this.options.slide).detach(),e.$slidesCache.filter(i).appendTo(e.$slideTrack),e.reinit())},e.prototype.focusHandler=function(){var e=this;e.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick","*:not(.slick-arrow)",function(t){t.stopImmediatePropagation();var o=i(this);setTimeout(function(){e.options.pauseOnFocus&&(e.focussed=o.is(":focus"),e.autoPlay())},0)})},e.prototype.getCurrent=e.prototype.slickCurrentSlide=function(){return this.currentSlide},e.prototype.getDotCount=function(){var i=this,e=0,t=0,o=0;if(!0===i.options.infinite)for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else if(!0===i.options.centerMode)o=i.slideCount;else if(i.options.asNavFor)for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else o=1+Math.ceil((i.slideCount-i.options.slidesToShow)/i.options.slidesToScroll);return o-1},e.prototype.getLeft=function(i){var e,t,o,s=this,n=0;return s.slideOffset=0,t=s.$slides.first().outerHeight(!0),!0===s.options.infinite?(s.slideCount>s.options.slidesToShow&&(s.slideOffset=s.slideWidth*s.options.slidesToShow*-1,n=t*s.options.slidesToShow*-1),s.slideCount%s.options.slidesToScroll!=0&&i+s.options.slidesToScroll>s.slideCount&&s.slideCount>s.options.slidesToShow&&(i>s.slideCount?(s.slideOffset=(s.options.slidesToShow-(i-s.slideCount))*s.slideWidth*-1,n=(s.options.slidesToShow-(i-s.slideCount))*t*-1):(s.slideOffset=s.slideCount%s.options.slidesToScroll*s.slideWidth*-1,n=s.slideCount%s.options.slidesToScroll*t*-1))):i+s.options.slidesToShow>s.slideCount&&(s.slideOffset=(i+s.options.slidesToShow-s.slideCount)*s.slideWidth,n=(i+s.options.slidesToShow-s.slideCount)*t),s.slideCount<=s.options.slidesToShow&&(s.slideOffset=0,n=0),!0===s.options.centerMode&&!0===s.options.infinite?s.slideOffset+=s.slideWidth*Math.floor(s.options.slidesToShow/2)-s.slideWidth:!0===s.options.centerMode&&(s.slideOffset=0,s.slideOffset+=s.slideWidth*Math.floor(s.options.slidesToShow/2)),e=!1===s.options.vertical?i*s.slideWidth*-1+s.slideOffset:i*t*-1+n,!0===s.options.variableWidth&&(o=s.slideCount<=s.options.slidesToShow||!1===s.options.infinite?s.$slideTrack.children(".slick-slide").eq(i):s.$slideTrack.children(".slick-slide").eq(i+s.options.slidesToShow),e=!0===s.options.rtl?o[0]?-1*(s.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,!0===s.options.centerMode&&(o=s.slideCount<=s.options.slidesToShow||!1===s.options.infinite?s.$slideTrack.children(".slick-slide").eq(i):s.$slideTrack.children(".slick-slide").eq(i+s.options.slidesToShow+1),e=!0===s.options.rtl?o[0]?-1*(s.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,e+=(s.$list.width()-o.outerWidth())/2)),e},e.prototype.getOption=e.prototype.slickGetOption=function(i){return this.options[i]},e.prototype.getNavigableIndexes=function(){var i,e=this,t=0,o=0,s=[];for(!1===e.options.infinite?i=e.slideCount:(t=-1*e.options.slidesToScroll,o=-1*e.options.slidesToScroll,i=2*e.slideCount);t<i;)s.push(t),t=o+e.options.slidesToScroll,o+=e.options.slidesToScroll<=e.options.slidesToShow?e.options.slidesToScroll:e.options.slidesToShow;return s},e.prototype.getSlick=function(){return this},e.prototype.getSlideCount=function(){var e,t,o=this;return t=!0===o.options.centerMode?o.slideWidth*Math.floor(o.options.slidesToShow/2):0,!0===o.options.swipeToSlide?(o.$slideTrack.find(".slick-slide").each(function(s,n){if(n.offsetLeft-t+i(n).outerWidth()/2>-1*o.swipeLeft)return e=n,!1}),Math.abs(i(e).attr("data-slick-index")-o.currentSlide)||1):o.options.slidesToScroll},e.prototype.goTo=e.prototype.slickGoTo=function(i,e){this.changeSlide({data:{message:"index",index:
1249parseInt(i)}},e)},e.prototype.init=function(e){var t=this;i(t.$slider).hasClass("slick-initialized")||(i(t.$slider).addClass("slick-initialized"),t.buildRows(),t.options.isSlider&&t.buildOut(),t.setProps(),t.startLoad(),t.options.isSlider?(t.loadSlider(),t.initializeEvents(),t.updateArrows(),t.updateDots()):i(window).on("resize.slick.slick-"+t.instanceUid,i.proxy(t.resize,t)),t.checkResponsive(!0),t.focusHandler()),e&&t.$slider.trigger("init",[t]),!0===t.options.accessibility&&t.options.isSlider&&t.initADA(),t.options.autoplay&&t.options.isSlider&&(t.paused=!1,t.autoPlay())},e.prototype.initADA=function(){var e=this;e.$slides.add(e.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),e.$slideTrack.attr("role","listbox"),e.$slides.not(e.$slideTrack.find(".slick-cloned")).each(function(t){i(this).attr({role:"option"})}),null!==e.$dots&&e.$dots.attr("role","tablist").find("li").each(function(t){i(this).attr({role:"presentation","aria-selected":"false","aria-controls":"navigation"+e.instanceUid+t,id:"slick-slide"+e.instanceUid+t})}).first().attr("aria-selected","true").end().find("button").attr("role","button").end().closest("div").attr("role","toolbar"),e.activateADA()},e.prototype.initArrowEvents=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.off("click.slick").on("click.slick",{message:"previous"},i.changeSlide),i.$nextArrow.off("click.slick").on("click.slick",{message:"next"},i.changeSlide))},e.prototype.initDotEvents=function(){var e=this;!0===e.options.dots&&e.slideCount>e.options.slidesToShow&&i("li",e.$dots).on("click.slick",{message:"index"},e.changeSlide),!0===e.options.dots&&!0===e.options.pauseOnDotsHover&&i("li",e.$dots).on("mouseenter.slick",i.proxy(e.interrupt,e,!0)).on("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.initSlideEvents=function(){var e=this;e.options.pauseOnHover&&(e.$list.on("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.on("mouseleave.slick",i.proxy(e.interrupt,e,!1)))},e.prototype.initializeEvents=function(){var e=this;e.initArrowEvents(),e.initDotEvents(),e.initSlideEvents(),e.$list.on("touchstart.slick mousedown.slick",{action:"start"},e.swipeHandler),e.$list.on("touchmove.slick mousemove.slick",{action:"move"},e.swipeHandler),e.$list.on("touchend.slick mouseup.slick",{action:"end"}
1249,e.swipeHandler),e.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},e.swipeHandler),e.$list.on("click.slick",e.clickHandler),i(document).on(e.visibilityChange,i.proxy(e.visibility,e)),!0===e.options.accessibility&&e.$list.on("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),i(window).on("orientationchange.slick.slick-"+e.instanceUid,i.proxy(e.orientationChange,e)),i(window).on("resize.slick.slick-"+e.instanceUid,i.proxy(e.resize,e)),i("[draggable!=true]",e.$slideTrack).on("dragstart",e.preventDefault),i(window).on("load.slick.slick-"+e.instanceUid,e.setPosition),i(document).on("ready.slick.slick-"+e.instanceUid,e.setPosition)},e.prototype.initUI=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.show(),i.$nextArrow.show()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.show()},e.prototype.keyHandler=function(i){var e=this;i.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===i.keyCode&&!0===e.options.accessibility?e.changeSlide({data:{message:!0===e.options.rtl?"next":"previous"}}):39===i.keyCode&&!0===e.options.accessibility&&e.changeSlide({data:{message:!0===e.options.rtl?"previous":"next"}}))},e.prototype.lazyLoad=function(){function e(e){i("img[data-lazy]",e).each(function(){var e=i(this),t=i(this).attr("data-lazy"),o=document.createElement("img");o.onload=function(){e.animate({opacity:0}
1249,100,function(){e.attr("src",t).animate({opacity:1},200,function(){e.removeAttr("data-lazy").removeClass("slick-loading")}),s.$slider.trigger("lazyLoaded",[s,e,t])})},o.onerror=function(){e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),s.$slider.trigger("lazyLoadError",[s,e,t])},o.src=t})}var t,o,s=this;!0===s.options.centerMode?!0===s.options.infinite?o=(t=s.currentSlide+(s.options.slidesToShow/2+1))+s.options.slidesToShow+2:(t=Math.max(0,s.currentSlide-(s.options.slidesToShow/2+1)),o=s.options.slidesToShow/2+1+2+s.currentSlide):(t=s.options.infinite?s.options.slidesToShow+s.currentSlide:s.currentSlide,o=Math.ceil(t+s.options.slidesToShow),!0===s.options.fade&&(t>0&&t--,o<=s.slideCount&&o++)),e(s.$slider.find(".slick-slide").slice(t,o)),s.slideCount<=s.options.slidesToShow?e(s.$slider.find(".slick-slide")):s.currentSlide>=s.slideCount-s.options.slidesToShow?e(s.$slider.find(".slick-cloned").slice(0,s.options.slidesToShow)):0===s.currentSlide&&e(s.$slider.find(".slick-cloned").slice(-1*s.options.slidesToShow))},e.prototype.loadSlider=function(){var i=this;i.setPosition(),i.$slideTrack.css({opacity:1}),i.$slider.removeClass("slick-loading"),i.initUI(),"progressive"===i.options.lazyLoad&&i.progressiveLazyLoad()},e.prototype.next=e.prototype.slickNext=function(){this.changeSlide({data:{message:"next"}})},e.prototype.orientationChange=function(){var i=this;i.checkResponsive(),i.setPosition()},e.prototype.pause=e.prototype.slickPause=function(){var i=this;i.autoPlayClear(),i.paused=!0},e.prototype.play=e.prototype.slickPlay=function(){var i=this;i.autoPlay(),i.options.autoplay=!0,i.paused=!1,i.focussed=!1,i.interrupted=!1},e.prototype.postSlide=function(i){var e=this;e.unslicked||(e.$slider.trigger("afterChange",[e,i]),e.animating=!1,e.setPosition(),e.swipeLeft=null,e.options.autoplay&&e.autoPlay(),!0===e.options.accessibility&&e.initADA())},e.prototype.prev=e.prototype.slickPrev=function(){this.changeSlide({data:{message:"previous"}})},e.prototype.preventDefault=function(i){i.preventDefault()},e.prototype.progressiveLazyLoad=function(e){e=e||1;var t,o,s,n=this,r=i("img[data-lazy]",n.$slider);r.length?(t=r.first(),o=t.attr("data-lazy"),(s=document.createElement("img")).onload=function(){t.attr("src",o).removeAttr("data-lazy").removeClass("slick-loading"),!0===n.options.adaptiveHeight&&n.setPosition(),n.$slider.trigger("lazyLoaded",[n,t,o]),n.progressiveLazyLoad()},s.onerror=function(){e<3?setTimeout(function(){n.progressiveLazyLoad(e+1)},500):(t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),n.$slider.trigger("lazyLoadError",[n,t,o]),n.progressiveLazyLoad())},s.src=o):n.$slider.trigger("allImagesLoaded",[n])},e.prototype.refresh=function(e){var t,o,s=this;o=s.slideCount-s.options.slidesToShow,!s.options.infinite&&s.currentSlide>o&&(s.currentSlide=o),s.slideCount<=s.options.slidesToShow&&(s.currentSlide=0),t=s.currentSlide,null!=s.$list?s.destroy(!0):i(s.$slider).removeClass("slick-initialized"),i.extend(s,s.initials,{currentSlide:t}),s.init(),e||s.changeSlide({data:{message:"index",index:t}},!1)},e.prototype.registerBreakpoints=function(){var e,t,o,s=this,n=s.options.responsive||null;if("array"===i.type(n)&&n.length){s.respondTo=s.options.respondTo||"window";for(e in n)if(o=s.breakpoints.length-1,t=n[e].breakpoint,n.hasOwnProperty(e)){for(;o>=0;)s.breakpoints[o]&&s.breakpoints[o]===t&&s.breakpoints.splice(o,1),o--;s.breakpoints.push(t),s.breakpointSettings[t]=n[e].settings}s.breakpoints.sort(function(i,e){return s.options.mobileFirst?i-e:e-i})}},e.prototype.reinit=function(){var e=this;e.$slides=e.$slideTrack.children(e.options.slide).addClass("slick-slide"),e.slideCount=e.$slides.length,e.currentSlide>=e.slideCount&&0!==e.currentSlide&&(e.currentSlide=e.currentSlide-e.options.slidesToScroll),e.slideCount<=e.options.slidesToShow&&(e.currentSlide=0),e.registerBreakpoints(),e.setProps(),e.setupInfinite(),e.buildArrows(),e.updateArrows(),e.initArrowEvents(),e.buildDots(),e.updateDots(),e.initDotEvents(),e.cleanUpSlideEvents(),e.initSlideEvents(),e.checkResponsive(!1,!0),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),e.setPosition(),e.focusHandler(),e.paused=!e.options.autoplay,e.autoPlay(),e.$slider.trigger("reInit",[e])},e.prototype.resize=function(){var e=this;i(window).width()!==e.windowWidth&&(clearTimeout(e.windowDelay),e.windowDelay=window.setTimeout(function(){e.windowWidth=i(window).width(),e.checkResponsive(),e.unslicked||e.setPosition()},50))},e.prototype.removeSlide=e.prototype.slickRemove=function(i,e,t){var o=this;if(i="boolean"==typeof i?!0===(e=i)?0:o.slideCount-1:!0===e?--i:i,o.slideCount<1||i<0||i>o.slideCount-1)return!1;o.unload(),!0===t?o.$slideTrack.children().remove():o.$slideTrack.children(this.options.slide).eq(i).remove(),o.$slides=o.$slideTrack.children(this.options.slide),o.$slideTrack.children(this.options.slide).detach(),o.$slideTrack.append(o.$slides),o.$slidesCache=o.$slides,o.reinit()},e.prototype.setCSS=function(i){var e,t,o=this,s={};
1249!0===o.options.rtl&&(i=-i),e="left"==o.positionProp?Math.ceil(i)+"px":"0px",t="top"==o.positionProp?Math.ceil(i)+"px":"0px",s[o.positionProp]=i,!1===o.transformsEnabled?o.$slideTrack.css(s):(s={},!1===o.cssTransitions?(s[o.animType]="translate("+e+", "+t+")",o.$slideTrack.css(s)):(s[o.animType]="translate3d("+e+", "+t+", 0px)",o.$slideTrack.css(s)))},e.prototype.setDimensions=function(){var i=this;!1===i.options.vertical?!0===i.options.centerMode&&i.$list.css({padding:"0px "+i.options.centerPadding}):(i.$list.height(i.$slides.first().outerHeight(!0)*i.options.slidesToShow),!0===i.options.centerMode&&i.$list.css({padding:i.options.centerPadding+" 0px"})),i.listWidth=i.$list.width(),i.listHeight=i.$list.height(),!1===i.options.vertical&&!1===i.options.variableWidth?(i.slideWidth=Math.ceil(i.listWidth/i.options.slidesToShow),i.$slideTrack.width(Math.ceil(i.slideWidth*i.$slideTrack.children(".slick-slide").length))):!0===i.options.variableWidth?i.$slideTrack.width(5e3*i.slideCount):(i.slideWidth=Math.ceil(i.listWidth),i.$slideTrack.height(Math.ceil(i.$slides.first().outerHeight(!0)*i.$slideTrack.children(".slick-slide").length)));var e=i.$slides.first().outerWidth(!0)-i.$slides.first().width();!1===i.options.variableWidth&&i.$slideTrack.children(".slick-slide").width(i.slideWidth-e)},e.prototype.setFade=function(){var e,t=this;t.$slides.each(function(o,s){e=t.slideWidth*o*-1,!0===t.options.rtl?i(s).css({position:"relative",right:e,top:0,zIndex:t.options.zIndex-2,opacity:0}
1249):i(s).css({position:"relative",left:e,top:0,zIndex:t.options.zIndex-2,opacity:0})}),t.$slides.eq(t.currentSlide).css({zIndex:t.options.zIndex-1,opacity:1})},e.prototype.setHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.css("height",e)}},e.prototype.setOption=e.prototype.slickSetOption=function(){var e,t,o,s,n,r=this,l=!1;if("object"===i.type(arguments[0])?(o=arguments[0],l=arguments[1],n="multiple"):"string"===i.type(arguments[0])&&(o=arguments[0],s=arguments[1],l=arguments[2],"responsive"===arguments[0]&&"array"===i.type(arguments[1])?n="responsive":void 0!==arguments[1]&&(n="single")),"single"===n)r.options[o]=s;else if("multiple"===n)i.each(o,function(i,e){r.options[i]=e});else if("responsive"===n)for(t in s)if("array"!==i.type(r.options.responsive))r.options.responsive=[s[t]];else{for(e=r.options.responsive.length-1;e>=0;)r.options.responsive[e].breakpoint===s[t].breakpoint&&r.options.responsive.splice(e,1),e--;r.options.responsive.push(s[t])}l&&(r.unload(),r.reinit())},e.prototype.setPosition=function(){var i=this;i.options.isSlider&&(i.setDimensions(),i.setHeight(),!1===i.options.fade?i.setCSS(i.getLeft(i.currentSlide)):i.setFade(),i.$slider.trigger("setPosition",[i]))},e.prototype.setProps=function(){var i=this,e=document.body.style;i.positionProp=!0===i.options.vertical?"top":"left","top"===i.positionProp?i.$slider.addClass("slick-vertical"):i.$slider.removeClass("slick-vertical"),void 0===e.WebkitTransition&&void 0===e.MozTransition&&void 0===e.msTransition||!0===i.options.useCSS&&(i.cssTransitions=!0),i.options.fade&&("number"==typeof i.options.zIndex?i.options.zIndex<3&&(i.options.zIndex=3):i.options.zIndex=i.defaults.zIndex),void 0!==e.OTransform&&(i.animType="OTransform",i.transformType="-o-transform",i.transitionType="OTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.MozTransform&&(i.animType="MozTransform",i.transformType="-moz-transform",i.transitionType="MozTransition",void 0===e.perspectiveProperty&&void 0===e.MozPerspective&&(i.animType=!1)),void 0!==e.webkitTransform&&(i.animType="webkitTransform",i.transformType="-webkit-transform",i.transitionType="webkitTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.msTransform&&(i.animType="msTransform",i.transformType="-ms-transform",i.transitionType="msTransition",void 0===e.msTransform&&(i.animType=!1)),void 0!==e.transform&&!1!==i.animType&&(i.animType="transform",i.transformType="transform",i.transitionType="transition"),i.transformsEnabled=i.options.useTransform&&null!==i.animType&&!1!==i.animType},e.prototype.setSlideClasses=function(i){var e,t,o,s,n=this;t=n.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),n.$slides.eq(i).addClass("slick-current"),!0===n.options.centerMode?(e=Math.floor(n.options.slidesToShow/2),!0===n.options.infinite&&(i>=e&&i<=n.slideCount-1-e?n.$slides.slice(i-e,i+e+1).addClass("slick-active").attr("aria-hidden","false"):(o=n.options.slidesToShow+i,t.slice(o-e+1,o+e+2).addClass("slick-active").attr("aria-hidden","false")),0===i?t.eq(t.length-1-n.options.slidesToShow).addClass("slick-center"):i===n.slideCount-1&&t.eq(n.options.slidesToShow).addClass("slick-center")),n.$slides.eq(i).addClass("slick-center")):i>=0&&i<=n.slideCount-n.options.slidesToShow?n.$slides.slice(i,i+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):t.length<=n.options.slidesToShow?t.addClass("slick-active").attr("aria-hidden","false"):(s=n.slideCount%n.options.slidesToShow,o=!0===n.options.infinite?n.options.slidesToShow+i:i,n.options.slidesToShow==n.options.slidesToScroll&&n.slideCount-i<n.options.slidesToShow?t.slice(o-(n.options.slidesToShow-s),o+s).addClass("slick-active").attr("aria-hidden","false"):t.slice(o,o+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false")),"ondemand"===n.options.lazyLoad&&n.lazyLoad()},e.prototype.setupInfinite=function(){var e,t,o,s=this;if(!0===s.options.fade&&(s.options.centerMode=!1),!0===s.options.infinite&&!1===s.options.fade&&(t=null,s.slideCount>s.options.slidesToShow)){for(o=!0===s.options.centerMode?s.options.slidesToShow+1:s.options.slidesToShow,e=s.slideCount;e>s.slideCount-o;e-=1)t=e-1,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t-s.slideCount).prependTo(s.$slideTrack).addClass("slick-cloned");for(e=0;e<o;e+=1)t=e,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t+s.slideCount).appendTo(s.$slideTrack).addClass("slick-cloned");s.$slideTrack.find(".slick-cloned").find("[id]").each(function(){i(this).attr("id","")})}},e.prototype.interrupt=function(i){var e=this;i||e.autoPlay(),e.interrupted=i},e.prototype.selectHandler=function(e){var t=this,o=i(e.target).is(".slick-slide")?i(e.target):i(e.target).parents(".slick-slide"),s=parseInt(o.attr("data-slick-index"));if(s||(s=0),t.slideCount<=t.options.slidesToShow)return t.setSlideClasses(s),void t.asNavFor(s);t.slideHandler(s)},e.prototype.slideHandler=function(i,e,t){var o,s,n,r,l,d=null,a=this;if(e=e||!1,(!0!==a.animating||!0!==a.options.waitForAnimate)&&!(!0===a.options.fade&&a.currentSlide===i||a.slideCount<=a.options.slidesToShow))if(!1===e&&a.asNavFor(i),o=i,d=a.getLeft(o),r=a.getLeft(a.currentSlide),a.currentLeft=null===a.swipeLeft?r:a.swipeLeft,!1===a.options.infinite&&!1===a.options.centerMode&&(i<0||i>a.getDotCount()*a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else if(!1===a.options.infinite&&!0===a.options.centerMode&&(i<0||i>a.slideCount-a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else{if(a.options.autoplay&&clearInterval(a.autoPlayTimer),s=o<0?a.slideCount%a.options.slidesToScroll!=0?a.slideCount-a.slideCount%a.options.slidesToScroll:a.slideCount+
1249o:o>=a.slideCount?a.slideCount%a.options.slidesToScroll!=0?0:o-a.slideCount:o,a.animating=!0,a.$slider.trigger("beforeChange",[a,a.currentSlide,s]),n=a.currentSlide,a.currentSlide=s,a.setSlideClasses(a.currentSlide),a.options.asNavFor&&(l=(l=a.getNavTarget()).slick("getSlick")).slideCount<=l.options.slidesToShow&&l.setSlideClasses(a.currentSlide),a.updateDots(),a.updateArrows(),!0===a.options.fade)return!0!==t?(a.fadeSlideOut(n),a.fadeSlide(s,function(){a.postSlide(s)})):a.postSlide(s),void a.animateHeight();!0!==t?a.animateSlide(d,function(){a.postSlide(s)}):a.postSlide(s)}},e.prototype.startLoad=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.hide(),i.$nextArrow.hide()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.hide(),i.$slider.addClass("slick-loading")},e.prototype.swipeDirection=function(){var i,e,t,o,s=this;return i=s.touchObject.startX-s.touchObject.curX,e=s.touchObject.startY-s.touchObject.curY,t=Math.atan2(e,i),(o=Math.round(180*t/Math.PI))<0&&(o=360-Math.abs(o)),o<=45&&o>=0?!1===s.options.rtl?"left":"right":o<=360&&o>=315?!1===s.options.rtl?"left":"right":o>=135&&o<=225?!1===s.options.rtl?"right":"left":!0===s.options.verticalSwiping?o>=35&&o<=135?"down":"up":"vertical"},e.prototype.swipeEnd=function(i){var e,t,o=this;if(o.dragging=!1,o.interrupted=!1,o.shouldClick=!(o.touchObject.swipeLength>10),void 0===o.touchObject.curX)return!1;if(!0===o.touchObject.edgeHit&&o.$slider.trigger("edge",[o,o.swipeDirection()]),o.touchObject.swipeLength>=o.touchObject.minSwipe){switch(t=o.swipeDirection()){case"left":case"down":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide+o.getSlideCount()):o.currentSlide+o.getSlideCount(),o.currentDirection=0;break;case"right":case"up":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide-o.getSlideCount()):o.currentSlide-o.getSlideCount(),o.currentDirection=1}"vertical"!=t&&(o.slideHandler(e),o.touchObject={},o.$slider.trigger("swipe",[o,t]))}else o.touchObject.startX!==o.touchObject.curX&&(o.slideHandler(o.currentSlide),o.touchObject={})},e.prototype.swipeHandler=function(i){var e=this;if(!(!1===e.options.swipe||"ontouchend"in document&&!1===e.options.swipe||!1===e.options.draggable&&-1!==i.type.indexOf("mouse")))switch(e.touchObject.fingerCount=i.originalEvent&&void 0!==i.originalEvent.touches?i.originalEvent.touches.length:1,e.touchObject.minSwipe=e.listWidth/e.options.touchThreshold,!0===e.options.verticalSwiping&&(e.touchObject.minSwipe=e.listHeight/e.options.touchThreshold),i.data.action){case"start":e.swipeStart(i);break;case"move":e.swipeMove(i);break;case"end":e.swipeEnd(i)}},e.prototype.swipeMove=function(i){var e,t,o,s,n,r=this;return n=void 0!==i.originalEvent?i.originalEvent.touches:null,!(!r.dragging||n&&1!==n.length)&&(e=r.getLeft(r.currentSlide),r.touchObject.curX=void 0!==n?n[0].pageX:i.clientX,r.touchObject.curY=void 0!==n?n[0].pageY:i.clientY,r.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(r.touchObject.curX-r.touchObject.startX,2))),!0===r.options.verticalSwiping&&(r.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(r.touchObject.curY-r.touchObject.startY,2)))),"vertical"!==(t=r.swipeDirection())?(void 0!==i.originalEvent&&r.touchObject.swipeLength>4&&i.preventDefault(),s=(!1===r.options.rtl?1:-1)*(r.touchObject.curX>r.touchObject.startX?1:-1),!0===r.options.verticalSwiping&&(s=r.touchObject.curY>r.touchObject.startY?1:-1),o=r.touchObject.swipeLength,r.touchObject.edgeHit=!1,!1===r.options.infinite&&(0===r.currentSlide&&"right"===t||r.currentSlide>=r.getDotCount()&&"left"===t)&&(o=r.touchObject.swipeLength*r.options.edgeFriction,r.touchObject.edgeHit=!0),!1===r.options.vertical?r.swipeLeft=e+o*s:r.swipeLeft=e+o*(r.$list.height()/r.listWidth)*s,!0===r.options.verticalSwiping&&(r.swipeLeft=e+o*s),!0!==r.options.fade&&!1!==r.options.touchMove&&(!0===r.animating?(r.swipeLeft=null,!1):void r.setCSS(r.swipeLeft))):void 0)},e.prototype.swipeStart=function(i){var e,t=this;if(t.interrupted=!0,1!==t.touchObject.fingerCount||t.slideCount<=t.options.slidesToShow)return t.touchObject={},!1;void 0!==i.originalEvent&&void 0!==i.originalEvent.touches&&(e=i.originalEvent.touches[0]),t.touchObject.startX=t.touchObject.curX=void 0!==e?e.pageX:i.clientX,t.touchObject.startY=t.touchObject.curY=void 0!==e?e.pageY:i.clientY,t.dragging=!0},e.prototype.unfilterSlides=e.prototype.slickUnfilter=function(){var i=this;null!==i.$slidesCache&&(i.unload(),i.$slideTrack.children(this.options.slide).detach(),i.$slidesCache.appendTo(i.$slideTrack),i.reinit())},e.prototype.unload=function(){var e=this;i(".slick-cloned",e.$slider).remove(),e.$dots&&e.$dots.remove(),e.$prevArrow&&e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.remove(),e.$nextArrow&&e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.remove(),e.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")}
1249,e.prototype.unslick=function(i){var e=this;e.$slider.trigger("unslick",[e,i]),e.destroy()},e.prototype.updateArrows=function(){var i=this;Math.floor(i.options.slidesToShow/2),!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&!i.options.infinite&&(i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===i.currentSlide?(i.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-i.options.slidesToShow&&!1===i.options.centerMode?(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-1&&!0===i.options.centerMode&&(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},e.prototype.updateDots=function(){var i=this;null!==i.$dots&&(i.$dots.find("li").removeClass("slick-active").attr("aria-hidden","true"),i.$dots.find("li").eq(Math.floor(i.currentSlide/i.options.slidesToScroll)).addClass("slick-active").attr("aria-hidden","false"))},e.prototype.visibility=function(){var i=this;i.options.autoplay&&(document[i.hidden]?i.interrupted=!0:i.interrupted=!1)},i.fn.slick=function(){var i,t,o=this,s=arguments[0],n=Array.prototype.slice.call(arguments,1),r=o.length;for(i=0;i<r;i++)if("object"==typeof s||void 0===s?o[i].slick=new e(o[i],s):t=o[i].slick[s].apply(o[i].slick,n),void 0!==t)return t;return o}});
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.