var CLI_ACCEPT_COOKIE_NAME=(typeof CLI_ACCEPT_COOKIE_NAME!=='undefined' ? CLI_ACCEPT_COOKIE_NAME:'viewed_cookie_policy');
var CLI_PREFERENCE_COOKIE=(typeof CLI_PREFERENCE_COOKIE!=='undefined' ? CLI_PREFERENCE_COOKIE:'CookieLawInfoConsent');
var CLI_ACCEPT_COOKIE_EXPIRE=(typeof CLI_ACCEPT_COOKIE_EXPIRE!=='undefined' ? CLI_ACCEPT_COOKIE_EXPIRE:365);
var CLI_COOKIEBAR_AS_POPUP=(typeof CLI_COOKIEBAR_AS_POPUP!=='undefined' ? CLI_COOKIEBAR_AS_POPUP:false);
var CLI_Cookie={
set: function (name, value, days){
var secure="";
if(true===Boolean(Cli_Data.secure_cookies)){
secure=";secure";
}
if(days){
var date=new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
var expires="; expires=" + date.toGMTString();
}else{
var expires="";
}
document.cookie=name + "=" + value + secure + expires + "; path=/";
if(days < 1){
let host_name=window.location.hostname;
document.cookie=name + "=" + value + expires + "; path=/; domain=." + host_name + ";";
if(host_name.indexOf("www")!=1){
var host_name_withoutwww=host_name.replace('www', '');
document.cookie=name + "=" + value + secure + expires + "; path=/; domain=" + host_name_withoutwww + ";";
}
host_name=host_name.substring(host_name.lastIndexOf(".", host_name.lastIndexOf(".") - 1));
document.cookie=name + "=" + value + secure + expires + "; path=/; domain=" + host_name + ";";
}},
read: function (name){
var nameEQ=name + "=";
var ca=document.cookie.split(';');
for (var i=0; i < ca.length; i++){
var c=ca[i];
while (c.charAt(0)==' '){
c=c.substring(1, c.length);
}
if(c.indexOf(nameEQ)===0){
return c.substring(nameEQ.length, c.length);
}}
return null;
},
erase: function (name){
this.set(name, "", -10);
},
exists: function (name){
return (this.read(name)!==null);
},
getallcookies: function (){
var pairs=document.cookie.split(";");
var cookieslist={};
for (var i=0; i < pairs.length; i++){
var pair=pairs[i].split("=");
cookieslist[(pair[0] + '').trim()]=unescape(pair[1]);
}
return cookieslist;
}}
var CLI =
{
bar_config: {},
showagain_config: {},
allowedCategories: [],
js_blocking_enabled: false,
set: function (args){
if(typeof JSON.parse!=="function"){
console.log("CookieLawInfo requires JSON.parse but your browser doesn't support it");
return;
}
if(typeof args.settings!=='object'){
this.settings=JSON.parse(args.settings);
}else{
this.settings=args.settings;
}
this.js_blocking_enabled=Boolean(Cli_Data.js_blocking);
this.settings=args.settings;
this.bar_elm=jQuery(this.settings.notify_div_id);
this.showagain_elm=jQuery(this.settings.showagain_div_id);
this.settingsModal=jQuery('#cliSettingsPopup');
this.main_button=jQuery('.cli-plugin-main-button');
this.main_link=jQuery('.cli-plugin-main-link');
this.reject_link=jQuery('.cookie_action_close_header_reject');
this.delete_link=jQuery(".cookielawinfo-cookie-delete");
this.settings_button=jQuery('.cli_settings_button');
this.accept_all_button=jQuery('.wt-cli-accept-all-btn');
if(this.settings.cookie_bar_as=='popup'){
CLI_COOKIEBAR_AS_POPUP=true;
}
this.mayBeSetPreferenceCookie();
this.addStyleAttribute();
this.configBar();
this.toggleBar();
this.attachDelete();
this.attachEvents();
this.configButtons();
this.reviewConsent();
var cli_hidebar_on_readmore=this.hideBarInReadMoreLink();
if(Boolean(this.settings.scroll_close)===true&&cli_hidebar_on_readmore===false){
window.addEventListener("scroll", CLI.closeOnScroll, false);
}},
hideBarInReadMoreLink: function (){
if(Boolean(CLI.settings.button_2_hidebar)===true&&this.main_link.length > 0&&this.main_link.hasClass('cli-minimize-bar')){
this.hideHeader();
cliBlocker.cookieBar(false);
this.showagain_elm.slideDown(this.settings.animate_speed_show);
return true;
}
return false;
},
attachEvents: function (){
jQuery(document).on('click',
'.wt-cli-privacy-btn',
function (e){
e.preventDefault();
CLI.accept_close();
CLI.settingsPopUpClose();
}
);
jQuery('.wt-cli-accept-btn').on("click",
function (e){
e.preventDefault();
CLI.acceptRejectCookies(jQuery(this));
});
jQuery('.wt-cli-accept-all-btn').on("click",
function (e){
e.preventDefault();
CLI.acceptRejectCookies(jQuery(this), 'accept');
});
jQuery('.wt-cli-reject-btn').on("click",
function (e){
e.preventDefault();
CLI.acceptRejectCookies(jQuery(this), 'reject');
});
this.settingsPopUp();
this.settingsTabbedAccordion();
this.toggleUserPreferenceCheckBox();
this.hideCookieBarOnClose();
this.cookieLawInfoRunCallBacks();
},
acceptRejectCookies(element, action='custom'){
var open_link=element[0].hasAttribute("href")&&element.attr("href")!='#' ? true:false;
var new_window=false;
if(action=='accept'){
this.enableAllCookies();
this.accept_close();
new_window=CLI.settings.button_7_new_win ? true:false;
}else if(action=='reject'){
this.disableAllCookies();
this.reject_close();
new_window=Boolean(this.settings.button_3_new_win) ? true:false;
}else{
this.accept_close();
new_window=Boolean(this.settings.button_1_new_win) ? true:false;
}
if(open_link){
if(new_window){
window.open(element.attr("href"), '_blank');
}else{
window.location.href=element.attr("href");
}}
},
toggleUserPreferenceCheckBox: function (){
jQuery('.cli-user-preference-checkbox').each(function (){
const categoryCookie='cookielawinfo-' + jQuery(this).attr('data-id');
const categoryCookieValue=CLI_Cookie.read(categoryCookie);
if(categoryCookieValue==null){
if(jQuery(this).is(':checked')){
CLI_Cookie.set(categoryCookie, 'yes', CLI_ACCEPT_COOKIE_EXPIRE);
}else{
CLI_Cookie.set(categoryCookie, 'no', CLI_ACCEPT_COOKIE_EXPIRE);
}}else{
if(categoryCookieValue=="yes"){
jQuery(this).prop("checked", true);
}else{
jQuery(this).prop("checked", false);
}}
}
);
jQuery('.cli-user-preference-checkbox').on("click",
function (e){
var dataID=jQuery(this).attr('data-id');
var currentToggleElm=jQuery('.cli-user-preference-checkbox[data-id=' + dataID + ']');
if(jQuery(this).is(':checked')){
CLI_Cookie.set('cookielawinfo-' + dataID, 'yes', CLI_ACCEPT_COOKIE_EXPIRE);
currentToggleElm.prop('checked', true);
}else{
CLI_Cookie.set('cookielawinfo-' + dataID, 'no', CLI_ACCEPT_COOKIE_EXPIRE);
currentToggleElm.prop('checked', false);
}
CLI.checkCategories();
CLI.generateConsent();
}
);
},
settingsPopUp: function (){
jQuery(document).on('click',
'.cli_settings_button',
function (e){
e.preventDefault();
CLI.settingsModal.addClass("cli-show").css({ 'opacity': 0 }).animate({ 'opacity': 1 });
CLI.settingsModal.removeClass('cli-blowup cli-out').addClass("cli-blowup");
jQuery('body').addClass("cli-modal-open");
jQuery(".cli-settings-overlay").addClass("cli-show");
jQuery("#cookie-law-info-bar").css({ 'opacity': .1 });
if(!jQuery('.cli-settings-mobile').is(':visible')){
CLI.settingsModal.find('.cli-nav-link:eq(0)').trigger("click");
}}
);
jQuery('#cliModalClose').on("click",
function (e){
CLI.settingsPopUpClose();
}
);
CLI.settingsModal.on("click",
function (e){
if(!(document.getElementsByClassName('cli-modal-dialog')[0].contains(e.target))){
CLI.settingsPopUpClose();
}}
);
jQuery('.cli_enable_all_btn').on("click",
function (e){
var cli_toggle_btn=jQuery(this);
var enable_text=cli_toggle_btn.attr('data-enable-text');
var disable_text=cli_toggle_btn.attr('data-disable-text');
if(cli_toggle_btn.hasClass('cli-enabled')){
CLI.disableAllCookies();
cli_toggle_btn.html(enable_text);
}else{
CLI.enableAllCookies();
cli_toggle_btn.html(disable_text);
}
jQuery(this).toggleClass('cli-enabled');
}
);
this.privacyReadmore();
},
settingsTabbedAccordion: function (){
jQuery(".cli-tab-header").on("click",
function (e){
if(!(jQuery(e.target).hasClass('cli-slider')||jQuery(e.target).hasClass('cli-user-preference-checkbox'))){
if(jQuery(this).hasClass("cli-tab-active")){
jQuery(this).removeClass("cli-tab-active");
jQuery(this)
.siblings(".cli-tab-content")
.slideUp(200);
}else{
jQuery(".cli-tab-header").removeClass("cli-tab-active");
jQuery(this).addClass("cli-tab-active");
jQuery(".cli-tab-content").slideUp(200);
jQuery(this)
.siblings(".cli-tab-content")
.slideDown(200);
}}
}
);
},
settingsPopUpClose: function (){
this.settingsModal.removeClass('cli-show');
this.settingsModal.addClass('cli-out');
jQuery('body').removeClass("cli-modal-open");
jQuery(".cli-settings-overlay").removeClass("cli-show");
jQuery("#cookie-law-info-bar").css({ 'opacity': 1 });
},
privacyReadmore: function (){
var el=jQuery('.cli-privacy-content .cli-privacy-content-text');
if(el.length > 0){
var clone=el.clone(),
originalHtml=clone.html(),
originalHeight=el.outerHeight(),
Trunc={
addReadmore: function (textBlock){
if(textBlock.html().length > 250){
jQuery('.cli-privacy-readmore').show();
}else{
jQuery('.cli-privacy-readmore').hide();
}},
truncateText: function (textBlock){
var strippedText=jQuery('<div />').html(textBlock.html());
strippedText.find('table').remove();
textBlock.html(strippedText.html());
const currentText=textBlock.text();
if(currentText.trim().length > 250){
var newStr=currentText.substring(0, 250);
textBlock.empty().html(newStr).append('...');
}},
replaceText: function (textBlock, original){
return textBlock.html(original);
}};
Trunc.addReadmore(el);
Trunc.truncateText(el);
jQuery('a.cli-privacy-readmore').on("click",
function (e){
e.preventDefault();
if(jQuery('.cli-privacy-overview').hasClass('cli-collapsed')){
Trunc.truncateText(el);
jQuery('.cli-privacy-overview').removeClass('cli-collapsed');
el.css('height', '100%');
}else{
jQuery('.cli-privacy-overview').addClass('cli-collapsed');
Trunc.replaceText(el, originalHtml);
}}
);
}},
attachDelete: function (){
this.delete_link.on("click",
function (e){
CLI_Cookie.erase(CLI_ACCEPT_COOKIE_NAME);
for (var k in Cli_Data.nn_cookie_ids){
CLI_Cookie.erase(Cli_Data.nn_cookie_ids[k]);
}
CLI.generateConsent();
return false;
}
);
},
configButtons: function (){
this.main_button.css('color', this.settings.button_1_link_colour);
if(Boolean(this.settings.button_1_as_button)){
this.main_button.css('background-color', this.settings.button_1_button_colour);
this.main_button.on('mouseenter',
function (){
jQuery(this).css('background-color', CLI.settings.button_1_button_hover);
}
)
.on('mouseleave',
function (){
jQuery(this).css('background-color', CLI.settings.button_1_button_colour);
}
);
}
this.main_link.css('color', this.settings.button_2_link_colour);
if(Boolean(this.settings.button_2_as_button)){
this.main_link.css('background-color', this.settings.button_2_button_colour);
this.main_link.on('mouseenter',
function (){
jQuery(this).css('background-color', CLI.settings.button_2_button_hover);
}
)
.on('mouseleave',
function (){
jQuery(this).css('background-color', CLI.settings.button_2_button_colour);
}
);
}
this.reject_link.css('color', this.settings.button_3_link_colour);
if(Boolean(this.settings.button_3_as_button)){
this.reject_link.css('background-color', this.settings.button_3_button_colour);
this.reject_link.on('mouseenter',
function (){
jQuery(this).css('background-color', CLI.settings.button_3_button_hover);
}
)
.on('mouseleave',
function (){
jQuery(this).css('background-color', CLI.settings.button_3_button_colour);
}
);
}
this.settings_button.css('color', this.settings.button_4_link_colour);
if(Boolean(this.settings.button_4_as_button)){
this.settings_button.css('background-color', this.settings.button_4_button_colour);
this.settings_button.on('mouseenter',
function (){
jQuery(this).css('background-color', CLI.settings.button_4_button_hover);
}
)
.on('mouseleave',
function (){
jQuery(this).css('background-color', CLI.settings.button_4_button_colour);
}
);
}
this.accept_all_button.css('color', this.settings.button_7_link_colour);
if(this.settings.button_7_as_button){
this.accept_all_button.css('background-color', this.settings.button_7_button_colour);
this.accept_all_button.on('mouseenter',
function (){
jQuery(this).css('background-color', CLI.settings.button_7_button_hover);
}
)
.on('mouseleave',
function (){
jQuery(this).css('background-color', CLI.settings.button_7_button_colour);
}
);
}},
toggleBar: function (){
if(CLI_COOKIEBAR_AS_POPUP){
this.barAsPopUp(1);
}
if(CLI.settings.cookie_bar_as=='widget'){
this.barAsWidget(1);
}
if(!CLI_Cookie.exists(CLI_ACCEPT_COOKIE_NAME)){
this.displayHeader();
}else{
this.hideHeader();
}
if(Boolean(this.settings.show_once_yn)){
setTimeout(
function (){
CLI.close_header();
},
CLI.settings.show_once
);
}
if(CLI.js_blocking_enabled===false){
if(Boolean(Cli_Data.ccpaEnabled)===true){
if(Cli_Data.ccpaType==='ccpa'&&Boolean(Cli_Data.ccpaBarEnabled)===false){
cliBlocker.cookieBar(false);
}}else{
jQuery('.wt-cli-ccpa-opt-out,.wt-cli-ccpa-checkbox,.wt-cli-ccpa-element').remove();
}}
this.showagain_elm.on("click",
function (e){
e.preventDefault();
CLI.showagain_elm.slideUp(CLI.settings.animate_speed_hide,
function (){
CLI.bar_elm.slideDown(CLI.settings.animate_speed_show);
if(CLI_COOKIEBAR_AS_POPUP){
CLI.showPopupOverlay();
}}
);
}
);
},
configShowAgain: function (){
this.showagain_config={
'background-color': this.settings.background,
'color': this.l1hs(this.settings.text),
'position': 'fixed',
'font-family': this.settings.font_family
};
if(Boolean(this.settings.border_on)){
var border_to_hide='border-' + this.settings.notify_position_vertical;
this.showagain_config['border']='1px solid ' + this.l1hs(this.settings.border);
this.showagain_config[border_to_hide]='none';
}
var cli_win=jQuery(window);
var cli_winw=cli_win.width();
var showagain_x_pos=this.settings.showagain_x_position;
if(cli_winw < 300){
showagain_x_pos=10;
this.showagain_config.width=cli_winw - 20;
}else{
this.showagain_config.width='auto';
}
var cli_defw=cli_winw > 400 ? 500:cli_winw - 20;
if(CLI_COOKIEBAR_AS_POPUP){ 
var sa_pos=this.settings.popup_showagain_position;
var sa_pos_arr=sa_pos.split('-');
if(sa_pos_arr[1]=='left'){
this.showagain_config.left=showagain_x_pos;
}else if(sa_pos_arr[1]=='right'){
this.showagain_config.right=showagain_x_pos;
}
if(sa_pos_arr[0]=='top'){
this.showagain_config.top=0;
}else if(sa_pos_arr[0]=='bottom'){
this.showagain_config.bottom=0;
}
this.bar_config['position']='fixed';
}else if(this.settings.cookie_bar_as=='widget'){
this.showagain_config.bottom=0;
if(this.settings.widget_position=='left'){
this.showagain_config.left=showagain_x_pos;
}else if(this.settings.widget_position=='right'){
this.showagain_config.right=showagain_x_pos;
}}else{
if(this.settings.notify_position_vertical=="top"){
this.showagain_config.top='0';
}else if(this.settings.notify_position_vertical=="bottom"){
this.bar_config['position']='fixed';
this.bar_config['bottom']='0';
this.showagain_config.bottom='0';
}
if(this.settings.notify_position_horizontal=="left"){
this.showagain_config.left=showagain_x_pos;
}else if(this.settings.notify_position_horizontal=="right"){
this.showagain_config.right=showagain_x_pos;
}}
this.showagain_elm.css(this.showagain_config);
},
configBar: function (){
this.bar_config={
'background-color': this.settings.background,
'color': this.settings.text,
'font-family': this.settings.font_family
};
if(this.settings.notify_position_vertical=="top"){
this.bar_config['top']='0';
if(Boolean(this.settings.header_fix)===true){
this.bar_config['position']='fixed';
}}else{
this.bar_config['bottom']='0';
}
this.configShowAgain();
this.bar_elm.css(this.bar_config).hide();
},
l1hs: function (str){
if(str.charAt(0)=="#"){
str=str.substring(1, str.length);
}else{
return "#" + str;
}
return this.l1hs(str);
},
close_header: function (){
CLI_Cookie.set(CLI_ACCEPT_COOKIE_NAME, 'yes', CLI_ACCEPT_COOKIE_EXPIRE);
this.hideHeader();
},
accept_close: function (){
this.hidePopupOverlay();
this.generateConsent();
this.cookieLawInfoRunCallBacks();
CLI_Cookie.set(CLI_ACCEPT_COOKIE_NAME, 'yes', CLI_ACCEPT_COOKIE_EXPIRE);
if(Boolean(this.settings.notify_animate_hide)){
if(CLI.js_blocking_enabled===true){
this.bar_elm.slideUp(this.settings.animate_speed_hide, cliBlocker.runScripts);
}else{
this.bar_elm.slideUp(this.settings.animate_speed_hide);
}}else{
if(CLI.js_blocking_enabled===true){
this.bar_elm.hide(0, cliBlocker.runScripts);
}else{
this.bar_elm.hide();
}}
if(Boolean(this.settings.showagain_tab)){
this.showagain_elm.slideDown(this.settings.animate_speed_show);
}
if(Boolean(this.settings.accept_close_reload)===true){
this.reload_current_page();
}
return false;
},
reject_close: function (){
this.hidePopupOverlay();
this.generateConsent();
this.cookieLawInfoRunCallBacks();
for (var k in Cli_Data.nn_cookie_ids){
CLI_Cookie.erase(Cli_Data.nn_cookie_ids[k]);
}
CLI_Cookie.set(CLI_ACCEPT_COOKIE_NAME, 'no', CLI_ACCEPT_COOKIE_EXPIRE);
if(Boolean(this.settings.notify_animate_hide)){
if(CLI.js_blocking_enabled===true){
this.bar_elm.slideUp(this.settings.animate_speed_hide, cliBlocker.runScripts);
}else{
this.bar_elm.slideUp(this.settings.animate_speed_hide);
}}else{
if(CLI.js_blocking_enabled===true){
this.bar_elm.hide(cliBlocker.runScripts);
}else{
this.bar_elm.hide();
}}
if(Boolean(this.settings.showagain_tab)){
this.showagain_elm.slideDown(this.settings.animate_speed_show);
}
if(Boolean(this.settings.reject_close_reload)===true){
this.reload_current_page();
}
return false;
},
reload_current_page: function (){
window.location.reload(true);
},
closeOnScroll: function (){
if(window.pageYOffset > 100&&!CLI_Cookie.read(CLI_ACCEPT_COOKIE_NAME)){
CLI.accept_close();
if(Boolean(CLI.settings.scroll_close_reload)===true){
window.location.reload();
}
window.removeEventListener("scroll", CLI.closeOnScroll, false);
}},
displayHeader: function (){
if(Boolean(this.settings.notify_animate_show)){
this.bar_elm.slideDown(this.settings.animate_speed_show);
}else{
this.bar_elm.show();
}
this.showagain_elm.hide();
if(CLI_COOKIEBAR_AS_POPUP){
this.showPopupOverlay();
}},
hideHeader: function (){
if(Boolean(this.settings.showagain_tab)){
if(Boolean(this.settings.notify_animate_show)){
this.showagain_elm.slideDown(this.settings.animate_speed_show);
}else{
this.showagain_elm.show();
}}else{
this.showagain_elm.hide();
}
this.bar_elm.slideUp(this.settings.animate_speed_show);
this.hidePopupOverlay();
},
hidePopupOverlay: function (){
jQuery('body').removeClass("cli-barmodal-open");
jQuery(".cli-popupbar-overlay").removeClass("cli-show");
},
showPopupOverlay: function (){
if(this.bar_elm.length){
if(Boolean(this.settings.popup_overlay)){
jQuery('body').addClass("cli-barmodal-open");
jQuery(".cli-popupbar-overlay").addClass("cli-show");
}}
},
barAsWidget: function (a){
var cli_elm=this.bar_elm;
cli_elm.attr('data-cli-type', 'widget');
var cli_win=jQuery(window);
var cli_winh=cli_win.height() - 40;
var cli_winw=cli_win.width();
var cli_defw=cli_winw > 400 ? 300:cli_winw - 30;
cli_elm.css({
'width': cli_defw, 'height': 'auto', 'max-height': cli_winh, 'overflow': 'auto', 'position': 'fixed', 'box-sizing': 'border-box'
}
);
if(this.checkifStyleAttributeExist()===false){
cli_elm.css({ 'padding': '25px 15px' });
}
if(this.settings.widget_position=='left'){
cli_elm.css({
'left': '15px', 'right': 'auto', 'bottom': '15px', 'top': 'auto'
}
);
}else{
cli_elm.css({
'left': 'auto', 'right': '15px', 'bottom': '15px', 'top': 'auto'
}
);
}
if(a){
this.setResize();
}},
barAsPopUp: function (a){
if(typeof cookie_law_info_bar_as_popup==='function'){
return false;
}
var cli_elm=this.bar_elm;
cli_elm.attr('data-cli-type', 'popup');
var cli_win=jQuery(window);
var cli_winh=cli_win.height() - 40;
var cli_winw=cli_win.width();
var cli_defw=cli_winw > 700 ? 500:cli_winw - 20;
cli_elm.css({
'width': cli_defw, 'height': 'auto', 'max-height': cli_winh, 'bottom': '', 'top': '50%', 'left': '50%', 'margin-left': (cli_defw / 2) * -1, 'margin-top': '-100px', 'overflow': 'auto'
}
).addClass('cli-bar-popup cli-modal-content');
if(this.checkifStyleAttributeExist()===false){
cli_elm.css({ 'padding': '25px 15px' });
}
const cli_h=cli_elm.height();
cli_elm.css({ 'top': '50%', 'margin-top': ((cli_h / 2) + 30) * -1 });
setTimeout(
function (){
cli_elm.css({
'bottom': ''
}
);
},
100
);
if(a){
this.setResize();
}},
setResize: function (){
var resizeTmr=null;
jQuery(window).resize(function (){
clearTimeout(resizeTmr);
resizeTmr=setTimeout(
function (){
if(CLI_COOKIEBAR_AS_POPUP){
CLI.barAsPopUp();
}
if(CLI.settings.cookie_bar_as=='widget'){
CLI.barAsWidget();
}
CLI.configShowAgain();
},
500
);
}
);
},
enableAllCookies: function (){
jQuery('.cli-user-preference-checkbox').each(function (){
var cli_chkbox_elm=jQuery(this);
var cli_chkbox_data_id=cli_chkbox_elm.attr('data-id');
if(cli_chkbox_data_id!='checkbox-necessary'){
cli_chkbox_elm.prop('checked', true);
CLI_Cookie.set('cookielawinfo-' + cli_chkbox_data_id, 'yes', CLI_ACCEPT_COOKIE_EXPIRE);
}}
);
},
disableAllCookies: function (){
jQuery('.cli-user-preference-checkbox').each(function (){
var cli_chkbox_elm=jQuery(this);
var cli_chkbox_data_id=cli_chkbox_elm.attr('data-id');
const cliCategorySlug=cli_chkbox_data_id.replace('checkbox-', '');
if(Cli_Data.strictlyEnabled.indexOf(cliCategorySlug)===-1){
cli_chkbox_elm.prop('checked', false);
CLI_Cookie.set('cookielawinfo-' + cli_chkbox_data_id, 'no', CLI_ACCEPT_COOKIE_EXPIRE);
}}
);
},
hideCookieBarOnClose: function (){
jQuery(document).on('click',
'.cli_cookie_close_button',
function (e){
e.preventDefault();
var elm=jQuery(this);
if(Cli_Data.ccpaType==='ccpa'){
CLI.enableAllCookies();
}
CLI.accept_close();
}
);
},
checkCategories: function (){
var cliAllowedCategories=[];
var cli_categories={};
jQuery('.cli-user-preference-checkbox').each(function (){
var status=false;
const cli_chkbox_elm=jQuery(this);
let cli_chkbox_data_id=cli_chkbox_elm.attr('data-id');
cli_chkbox_data_id=cli_chkbox_data_id.replace('checkbox-', '');
const cli_chkbox_data_id_trimmed=cli_chkbox_data_id.replace('-', '_')
if(jQuery(cli_chkbox_elm).is(':checked')){
status=true;
cliAllowedCategories.push(cli_chkbox_data_id);
}
cli_categories[cli_chkbox_data_id_trimmed]=status;
}
);
CLI.allowedCategories=cliAllowedCategories;
},
cookieLawInfoRunCallBacks: function (){
this.checkCategories();
if(CLI_Cookie.read(CLI_ACCEPT_COOKIE_NAME)=='yes'){
if("function"==typeof CookieLawInfo_Accept_Callback){
CookieLawInfo_Accept_Callback();
}}
},
generateConsent: function (){
var preferenceCookie=CLI_Cookie.read(CLI_PREFERENCE_COOKIE);
let cliConsent={};
if(preferenceCookie!==null){
cliConsent=window.atob(preferenceCookie);
cliConsent=JSON.parse(cliConsent);
}
cliConsent.ver=Cli_Data.consentVersion;
jQuery('.cli-user-preference-checkbox').each(function (){
let categoryVal='';
let cli_chkbox_data_id=jQuery(this).attr('data-id');
cli_chkbox_data_id=cli_chkbox_data_id.replace('checkbox-', '');
if(jQuery(this).is(':checked')){
categoryVal=true;
}else{
categoryVal=false;
}
cliConsent[cli_chkbox_data_id]=categoryVal;
}
);
cliConsent=JSON.stringify(cliConsent);
cliConsent=window.btoa(cliConsent);
CLI_Cookie.set(CLI_PREFERENCE_COOKIE, cliConsent, CLI_ACCEPT_COOKIE_EXPIRE);
},
addStyleAttribute: function (){
var bar=this.bar_elm;
var styleClass='';
if(jQuery(bar).find('.cli-bar-container').length > 0){
styleClass=jQuery('.cli-bar-container').attr('class');
styleClass=styleClass.replace('cli-bar-container', '');
styleClass=styleClass.trim();
jQuery(bar).attr('data-cli-style', styleClass);
}},
getParameterByName: function (name, url){
if(!url){
url=window.location.href;
}
name=name.replace(/[\[\]]/g, '\\$&');
var regex=new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
results=regex.exec(url);
if(!results){
return null;
}
if(!results[2]){
return '';
}
return decodeURIComponent(results[2].replace(/\+/g, ' '));
},
CookieLawInfo_Callback: function (enableBar, enableBlocking){
enableBar=typeof enableBar!=='undefined' ? enableBar:true;
enableBlocking=typeof enableBlocking!=='undefined' ? enableBlocking:true;
if(CLI.js_blocking_enabled===true&&Boolean(Cli_Data.custom_integration)===true){
cliBlocker.cookieBar(enableBar);
cliBlocker.runScripts(enableBlocking);
}},
checkifStyleAttributeExist: function (){
var exist=false;
var attr=this.bar_elm.attr('data-cli-style');
if(typeof attr!==typeof undefined&&attr!==false){
exist=true;
}
return exist;
},
reviewConsent: function (){
jQuery(document).on('click',
'.cli_manage_current_consent,.wt-cli-manage-consent-link',
function (){
CLI.displayHeader();
}
);
},
mayBeSetPreferenceCookie: function (){
if(CLI.getParameterByName('cli_bypass')==="1"){
CLI.generateConsent();
}}
}
var cliBlocker =
{
blockingStatus: true,
scriptsLoaded: false,
ccpaEnabled: false,
ccpaRegionBased: false,
ccpaApplicable: false,
ccpaBarEnabled: false,
cliShowBar: true,
isBypassEnabled: CLI.getParameterByName('cli_bypass'),
checkPluginStatus: function (callbackA, callbackB){
this.ccpaEnabled=Boolean(Cli_Data.ccpaEnabled);
this.ccpaRegionBased=Boolean(Cli_Data.ccpaRegionBased);
this.ccpaBarEnabled=Boolean(Cli_Data.ccpaBarEnabled);
if(Boolean(Cli_Data.custom_integration)===true){
callbackA(false);
}else{
if(this.ccpaEnabled===true){
this.ccpaApplicable=true;
if(Cli_Data.ccpaType==='ccpa'){
if(this.ccpaBarEnabled!==true){
this.cliShowBar=false;
this.blockingStatus=false;
}}
}else{
jQuery('.wt-cli-ccpa-opt-out,.wt-cli-ccpa-checkbox,.wt-cli-ccpa-element').remove();
}
if(cliBlocker.isBypassEnabled==="1"){
cliBlocker.blockingStatus=false;
}
callbackA(this.cliShowBar);
callbackB(this.blockingStatus);
}},
cookieBar: function (showbar){
showbar=typeof showbar!=='undefined' ? showbar:true;
cliBlocker.cliShowBar=showbar;
if(cliBlocker.cliShowBar===false){
CLI.bar_elm.hide();
CLI.showagain_elm.hide();
CLI.settingsModal.removeClass('cli-blowup cli-out');
CLI.hidePopupOverlay();
jQuery(".cli-settings-overlay").removeClass("cli-show");
}else{
if(!CLI_Cookie.exists(CLI_ACCEPT_COOKIE_NAME)){
CLI.displayHeader();
}else{
CLI.hideHeader();
}}
},
removeCookieByCategory: function (){
if(cliBlocker.blockingStatus===true){
if(CLI_Cookie.read(CLI_ACCEPT_COOKIE_NAME)!==null){
var non_necessary_cookies=Cli_Data.non_necessary_cookies;
for (var key in non_necessary_cookies){
const currentCategory=key;
if(CLI.allowedCategories.indexOf(currentCategory)===-1){
var nonNecessaryCookies=non_necessary_cookies[currentCategory];
for (var i=0; i < nonNecessaryCookies.length; i++){
if(CLI_Cookie.read(nonNecessaryCookies[i])!==null){
CLI_Cookie.erase(nonNecessaryCookies[i]);
}}
}}
}}
},
runScripts: function (blocking){
blocking=typeof blocking!=='undefined' ? blocking:true;
cliBlocker.blockingStatus=blocking;
var genericFuncs =
{
renderByElement: function (callback){
cliScriptFuncs.renderScripts();
callback();
cliBlocker.scriptsLoaded=true;
},
};
var cliScriptFuncs =
{
scriptsDone: function (){
if(typeof Cli_Data.triggerDomRefresh!=='undefined'){
if(Boolean(Cli_Data.triggerDomRefresh)===true){
var DOMContentLoadedEvent=document.createEvent('Event')
DOMContentLoadedEvent.initEvent('DOMContentLoaded', true, true)
window.document.dispatchEvent(DOMContentLoadedEvent);
}}
},
seq: function (arr, callback, index){
if(typeof index==='undefined'){
index=0
}
arr[index](
function (){
index++
if(index===arr.length){
callback()
}else{
cliScriptFuncs.seq(arr, callback, index)
}}
)
},
insertScript: function ($script, callback){
var s='';
var scriptType=$script.getAttribute('data-cli-script-type');
var elementPosition=$script.getAttribute('data-cli-element-position');
var isBlock=$script.getAttribute('data-cli-block');
var s=document.createElement('script');
var ccpaOptedOut=cliBlocker.ccpaOptedOut();
s.type='text/plain';
if($script.async){
s.async=$script.async;
}
if($script.defer){
s.defer=$script.defer;
}
if($script.src){
s.onload=callback
s.onerror=callback
s.src=$script.src
}else{
s.textContent=$script.innerText
}
var attrs=jQuery($script).prop("attributes");
for (var ii=0; ii < attrs.length; ++ii){
if(attrs[ii].nodeName!=='id'){
s.setAttribute(attrs[ii].nodeName, attrs[ii].value);
}}
if(cliBlocker.blockingStatus===true){
if((CLI_Cookie.read(CLI_ACCEPT_COOKIE_NAME)=='yes'&&CLI.allowedCategories.indexOf(scriptType)!==-1)){
s.setAttribute('data-cli-consent', 'accepted');
s.type='text/javascript';
}
if(cliBlocker.ccpaApplicable===true){
if(ccpaOptedOut===true||CLI_Cookie.read(CLI_ACCEPT_COOKIE_NAME)==null){
s.type='text/plain';
}}
}else{
s.type='text/javascript';
}
if($script.type!=s.type){
if(elementPosition==='head'){
document.head.appendChild(s);
}else{
document.body.appendChild(s);
}
if(!$script.src){
callback()
}
$script.parentNode.removeChild($script);
}else{
callback();
}},
renderScripts: function (){
var $scripts=document.querySelectorAll('script[data-cli-class="cli-blocker-script"]');
if($scripts.length > 0){
var runList=[]
var typeAttr
Array.prototype.forEach.call($scripts,
function ($script){
typeAttr=$script.getAttribute('type')
runList.push(function (callback){
cliScriptFuncs.insertScript($script, callback)
}
)
}
)
cliScriptFuncs.seq(runList, cliScriptFuncs.scriptsDone);
}}
};
genericFuncs.renderByElement(cliBlocker.removeCookieByCategory);
},
ccpaOptedOut: function (){
var ccpaOptedOut=false;
var preferenceCookie=CLI_Cookie.read(CLI_PREFERENCE_COOKIE);
if(preferenceCookie!==null){
let cliConsent=window.atob(preferenceCookie);
cliConsent=JSON.parse(cliConsent);
if(typeof cliConsent.ccpaOptout!=='undefined'){
ccpaOptedOut=cliConsent.ccpaOptout;
}}
return ccpaOptedOut;
}}
jQuery(document).ready(function (){
if(typeof cli_cookiebar_settings!='undefined'){
CLI.set({
settings: cli_cookiebar_settings
}
);
if(CLI.js_blocking_enabled===true){
cliBlocker.checkPluginStatus(cliBlocker.cookieBar, cliBlocker.runScripts);
}}
}
);
function fb3dClientLocaleLoader(){
if(window.jQuery&&typeof jQuery.ajax==='function'){
function fb3dNormalizeUrl(url){
return url.replace(/https{0,1}:/, location.protocol);
}
function fb3dFetch(url){
return new Promise(function(resolve, reject){
jQuery.ajax({url: fb3dNormalizeUrl(url), dataType: 'text'}).done(resolve).fail(reject);
});
}
FB3D_CLIENT_LOCALE.render=function(){
delete FB3D_CLIENT_LOCALE.render;
var isStable = !Promise.withResolvers||/^((?!chrome|android).)*safari/i.test(navigator.userAgent),
pdfJs=FB3D_CLIENT_LOCALE.pdfJS, assetsJs=FB3D_CLIENT_LOCALE.pluginurl+'assets/js/';
window.FB3D_LOCALE={
dictionary: FB3D_CLIENT_LOCALE.dictionary
};
window.PDFJS_LOCALE={
pdfJsCMapUrl: fb3dNormalizeUrl(pdfJs.pdfJsCMapUrl),
pdfJsWorker: fb3dNormalizeUrl(isStable? pdfJs.stablePdfJsWorker: pdfJs.pdfJsWorker)
};
Promise.all([
fb3dFetch(FB3D_CLIENT_LOCALE.pluginurl+'assets/css/client.css?ver='+FB3D_CLIENT_LOCALE.version),
fb3dFetch(FB3D_CLIENT_LOCALE.pluginurl+'assets/templates/iframe-init.html?ver='+FB3D_CLIENT_LOCALE.version),
fb3dFetch(FB3D_CLIENT_LOCALE.cacheurl+'skins.js?ver='+FB3D_CLIENT_LOCALE.version),
fb3dFetch(isStable? pdfJs.stablePdfJsLib: pdfJs.pdfJsLib),
fb3dFetch(assetsJs+'three.min.js?ver=125'),
fb3dFetch(assetsJs+'html2canvas.min.js?ver=0.5'),
fb3dFetch(assetsJs+'client.min.js?ver='+FB3D_CLIENT_LOCALE.version),
]).then(function(fs){
jQuery('head').append(['<style type="text/css">', fs[0].replace(/url\('..\//gi, 'url(\''+fb3dNormalizeUrl(FB3D_CLIENT_LOCALE.pluginurl+'assets/')), '</style>'].join(''));
for(var i=2; i<fs.length; ++i){
eval(fs[i]);
}});
};
if(jQuery('._'+FB3D_CLIENT_LOCALE.key).length){
FB3D_CLIENT_LOCALE.render();
}}else{
setTimeout(fb3dClientLocaleLoader, 100);
}}
fb3dClientLocaleLoader();
EasyCookie=(function(){var EPOCH='Thu, 01-Jan-1970 00:00:01 GMT',RATIO=1000*60*60*24,KEYS=['expires','path','domain'],esc=escape,un=unescape,doc=document,me;var get_now=function(){var r=new Date();r.setTime(r.getTime());return r;}
var cookify=function(c_key,c_val){var i,key,val,r=[],opt=(arguments.length>2)?arguments[2]:{};r.push(esc(c_key)+'='+esc(c_val));for(i=0;i<KEYS.length;i++){key=KEYS[i];if(val=opt[key])
r.push(key+'='+val);}
if(opt.secure)
r.push('secure');return r.join('; ');}
var alive=function(){var k='__EC_TEST__',v=new Date();v=v.toGMTString();this.set(k,v);this.enabled=(this.remove(k)==v);return this.enabled;}
me={set:function(key,val){var opt=(arguments.length>2)?arguments[2]:{},now=get_now(),expire_at,cfg={};if(opt.expires){opt.expires*=RATIO;cfg.expires=new Date(now.getTime()+opt.expires);cfg.expires=cfg.expires.toGMTString();}
var keys=['path','domain','secure'];for(i=0;i<keys.length;i++)
if(opt[keys[i]])
cfg[keys[i]]=opt[keys[i]];var r=cookify(key,val,cfg);doc.cookie=r;return val;},has:function(key){key=esc(key);var c=doc.cookie,ofs=c.indexOf(key+'='),len=ofs+key.length+1,sub=c.substring(0,key.length);return((!ofs&&key!=sub)||ofs<0)?false:true;},get:function(key){key=esc(key);var c=doc.cookie,ofs=c.indexOf(key+'='),len=ofs+key.length+1,sub=c.substring(0,key.length),end;if((!ofs&&key!=sub)||ofs<0)
return null;end=c.indexOf(';',len);if(end<0)
end=c.length;return un(c.substring(len,end));},remove:function(k){var r=me.get(k),opt={expires:EPOCH};doc.cookie=cookify(k,'',opt);return r;},keys:function(){var c=doc.cookie,ps=c.split('; '),i,p,r=[];for(i=0;i<ps.length;i++){p=ps[i].split('=');r.push(un(p[0]));}
return r;},all:function(){var c=doc.cookie,ps=c.split('; '),i,p,r=[];for(i=0;i<ps.length;i++){p=ps[i].split('=');r.push([un(p[0]),un(p[1])]);}
return r;},version:'0.2.1',enabled:false};me.enabled=alive.call(me);return me;}());
window.Ngg_Store={
get: function(key){
return EasyCookie.get(key);
},
set: function(key, value){
if(typeof(value)=='object'){
value=JSON.stringify(value);
}
return EasyCookie.set(key, value, {
expires: 10,
path: '/',
secure: false
});
},
del: function(key){
EasyCookie.remove(key);
return !this.has(key);
},
has: function(key){
var value=this.get(key);
return typeof(value)!='undefined'&&value!=null;
},
save: function(){
return true;
}};
jQuery(function($){
$(window).on('unload', function(){
Ngg_Store.save();
})
});
;(function(factory){
'use strict';
if(typeof define==='function'&&define.amd){
define(['jquery'], factory);
}else if(typeof exports!=='undefined'){
module.exports=factory(require('jquery'));
}else{
factory(jQuery);
}}(function($){
'use strict';
var Slick=window.Slick||{};
Slick=(function(){
var instanceUid=0;
function Slick(element, settings){
var _=this, dataSettings;
_.defaults={
accessibility: true,
adaptiveHeight: false,
appendArrows: $(element),
appendDots: $(element),
arrows: true,
asNavFor: null,
prevArrow: '<button class="slick-prev" aria-label="Previous" type="button">Previous</button>',
nextArrow: '<button class="slick-next" aria-label="Next" type="button">Next</button>',
autoplay: false,
autoplaySpeed: 3000,
centerMode: false,
centerPadding: '50px',
cssEase: 'ease',
customPaging: function(slider, i){
return $('<button type="button" />').text(i + 1);
},
dots: false,
dotsClass: 'slick-dots',
draggable: true,
easing: 'linear',
edgeFriction: 0.35,
fade: false,
focusOnSelect: false,
focusOnChange: false,
infinite: true,
initialSlide: 0,
lazyLoad: 'ondemand',
mobileFirst: false,
pauseOnHover: true,
pauseOnFocus: true,
pauseOnDotsHover: false,
respondTo: 'window',
responsive: null,
rows: 1,
rtl: false,
slide: '',
slidesPerRow: 1,
slidesToShow: 1,
slidesToScroll: 1,
speed: 500,
swipe: true,
swipeToSlide: false,
touchMove: true,
touchThreshold: 5,
useCSS: true,
useTransform: true,
variableWidth: false,
vertical: false,
verticalSwiping: false,
waitForAnimate: true,
zIndex: 1000
};
_.initials={
animating: false,
dragging: false,
autoPlayTimer: null,
currentDirection: 0,
currentLeft: null,
currentSlide: 0,
direction: 1,
$dots: null,
listWidth: null,
listHeight: null,
loadIndex: 0,
$nextArrow: null,
$prevArrow: null,
scrolling: false,
slideCount: null,
slideWidth: null,
$slideTrack: null,
$slides: null,
sliding: false,
slideOffset: 0,
swipeLeft: null,
swiping: false,
$list: null,
touchObject: {},
transformsEnabled: false,
unslicked: false
};
$.extend(_, _.initials);
_.activeBreakpoint=null;
_.animType=null;
_.animProp=null;
_.breakpoints=[];
_.breakpointSettings=[];
_.cssTransitions=false;
_.focussed=false;
_.interrupted=false;
_.hidden='hidden';
_.paused=true;
_.positionProp=null;
_.respondTo=null;
_.rowCount=1;
_.shouldClick=true;
_.$slider=$(element);
_.$slidesCache=null;
_.transformType=null;
_.transitionType=null;
_.visibilityChange='visibilitychange';
_.windowWidth=0;
_.windowTimer=null;
dataSettings=$(element).data('slick')||{};
_.options=$.extend({}, _.defaults, settings, dataSettings);
_.currentSlide=_.options.initialSlide;
_.originalSettings=_.options;
if(typeof document.mozHidden!=='undefined'){
_.hidden='mozHidden';
_.visibilityChange='mozvisibilitychange';
}else if(typeof document.webkitHidden!=='undefined'){
_.hidden='webkitHidden';
_.visibilityChange='webkitvisibilitychange';
}
_.autoPlay=$.proxy(_.autoPlay, _);
_.autoPlayClear=$.proxy(_.autoPlayClear, _);
_.autoPlayIterator=$.proxy(_.autoPlayIterator, _);
_.changeSlide=$.proxy(_.changeSlide, _);
_.clickHandler=$.proxy(_.clickHandler, _);
_.selectHandler=$.proxy(_.selectHandler, _);
_.setPosition=$.proxy(_.setPosition, _);
_.swipeHandler=$.proxy(_.swipeHandler, _);
_.dragHandler=$.proxy(_.dragHandler, _);
_.keyHandler=$.proxy(_.keyHandler, _);
_.instanceUid=instanceUid++;
_.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/;
_.registerBreakpoints();
_.init(true);
}
return Slick;
}());
Slick.prototype.activateADA=function(){
var _=this;
_.$slideTrack.find('.slick-active').attr({
'aria-hidden': 'false'
}).find('a, input, button, select').attr({
'tabindex': '0'
});
};
Slick.prototype.addSlide=Slick.prototype.slickAdd=function(markup, index, addBefore){
var _=this;
if(typeof(index)==='boolean'){
addBefore=index;
index=null;
}else if(index < 0||(index >=_.slideCount)){
return false;
}
_.unload();
if(typeof(index)==='number'){
if(index===0&&_.$slides.length===0){
$(markup).appendTo(_.$slideTrack);
}else if(addBefore){
$(markup).insertBefore(_.$slides.eq(index));
}else{
$(markup).insertAfter(_.$slides.eq(index));
}}else{
if(addBefore===true){
$(markup).prependTo(_.$slideTrack);
}else{
$(markup).appendTo(_.$slideTrack);
}}
_.$slides=_.$slideTrack.children(this.options.slide);
_.$slideTrack.children(this.options.slide).detach();
_.$slideTrack.append(_.$slides);
_.$slides.each(function(index, element){
$(element).attr('data-slick-index', index);
});
_.$slidesCache=_.$slides;
_.reinit();
};
Slick.prototype.animateHeight=function(){
var _=this;
if(_.options.slidesToShow===1&&_.options.adaptiveHeight===true&&_.options.vertical===false){
var targetHeight=_.$slides.eq(_.currentSlide).outerHeight(true);
_.$list.animate({
height: targetHeight
}, _.options.speed);
}};
Slick.prototype.animateSlide=function(targetLeft, callback){
var animProps={},
_=this;
_.animateHeight();
if(_.options.rtl===true&&_.options.vertical===false){
targetLeft=-targetLeft;
}
if(_.transformsEnabled===false){
if(_.options.vertical===false){
_.$slideTrack.animate({
left: targetLeft
}, _.options.speed, _.options.easing, callback);
}else{
_.$slideTrack.animate({
top: targetLeft
}, _.options.speed, _.options.easing, callback);
}}else{
if(_.cssTransitions===false){
if(_.options.rtl===true){
_.currentLeft=-(_.currentLeft);
}
$({
animStart: _.currentLeft
}).animate({
animStart: targetLeft
}, {
duration: _.options.speed,
easing: _.options.easing,
step: function(now){
now=Math.ceil(now);
if(_.options.vertical===false){
animProps[_.animType]='translate(' +
now + 'px, 0px)';
_.$slideTrack.css(animProps);
}else{
animProps[_.animType]='translate(0px,' +
now + 'px)';
_.$slideTrack.css(animProps);
}},
complete: function(){
if(callback){
callback.call();
}}
});
}else{
_.applyTransition();
targetLeft=Math.ceil(targetLeft);
if(_.options.vertical===false){
animProps[_.animType]='translate3d(' + targetLeft + 'px, 0px, 0px)';
}else{
animProps[_.animType]='translate3d(0px,' + targetLeft + 'px, 0px)';
}
_.$slideTrack.css(animProps);
if(callback){
setTimeout(function(){
_.disableTransition();
callback.call();
}, _.options.speed);
}}
}};
Slick.prototype.getNavTarget=function(){
var _=this,
asNavFor=_.options.asNavFor;
if(asNavFor&&asNavFor!==null){
asNavFor=$(asNavFor).not(_.$slider);
}
return asNavFor;
};
Slick.prototype.asNavFor=function(index){
var _=this,
asNavFor=_.getNavTarget();
if(asNavFor!==null&&typeof asNavFor==='object'){
asNavFor.each(function(){
var target=$(this).slick('getSlick');
if(!target.unslicked){
target.slideHandler(index, true);
}});
}};
Slick.prototype.applyTransition=function(slide){
var _=this,
transition={};
if(_.options.fade===false){
transition[_.transitionType]=_.transformType + ' ' + _.options.speed + 'ms ' + _.options.cssEase;
}else{
transition[_.transitionType]='opacity ' + _.options.speed + 'ms ' + _.options.cssEase;
}
if(_.options.fade===false){
_.$slideTrack.css(transition);
}else{
_.$slides.eq(slide).css(transition);
}};
Slick.prototype.autoPlay=function(){
var _=this;
_.autoPlayClear();
if(_.slideCount > _.options.slidesToShow){
_.autoPlayTimer=setInterval(_.autoPlayIterator, _.options.autoplaySpeed);
}};
Slick.prototype.autoPlayClear=function(){
var _=this;
if(_.autoPlayTimer){
clearInterval(_.autoPlayTimer);
}};
Slick.prototype.autoPlayIterator=function(){
var _=this,
slideTo=_.currentSlide + _.options.slidesToScroll;
if(!_.paused&&!_.interrupted&&!_.focussed){
if(_.options.infinite===false){
if(_.direction===1&&(_.currentSlide + 1)===(_.slideCount - 1)){
_.direction=0;
}
else if(_.direction===0){
slideTo=_.currentSlide - _.options.slidesToScroll;
if(_.currentSlide - 1===0){
_.direction=1;
}}
}
_.slideHandler(slideTo);
}};
Slick.prototype.buildArrows=function(){
var _=this;
if(_.options.arrows===true){
_.$prevArrow=$(_.options.prevArrow).addClass('slick-arrow');
_.$nextArrow=$(_.options.nextArrow).addClass('slick-arrow');
if(_.slideCount > _.options.slidesToShow){
_.$prevArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');
_.$nextArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');
if(_.htmlExpr.test(_.options.prevArrow)){
_.$prevArrow.prependTo(_.options.appendArrows);
}
if(_.htmlExpr.test(_.options.nextArrow)){
_.$nextArrow.appendTo(_.options.appendArrows);
}
if(_.options.infinite!==true){
_.$prevArrow
.addClass('slick-disabled')
.attr('aria-disabled', 'true');
}}else{
_.$prevArrow.add(_.$nextArrow)
.addClass('slick-hidden')
.attr({
'aria-disabled': 'true',
'tabindex': '-1'
});
}}
};
Slick.prototype.buildDots=function(){
var _=this,
i, dot;
if(_.options.dots===true&&_.slideCount > _.options.slidesToShow){
_.$slider.addClass('slick-dotted');
dot=$('<ul />').addClass(_.options.dotsClass);
for (i=0; i <=_.getDotCount(); i +=1){
dot.append($('<li />').append(_.options.customPaging.call(this, _, i)));
}
_.$dots=dot.appendTo(_.options.appendDots);
_.$dots.find('li').first().addClass('slick-active');
}};
Slick.prototype.buildOut=function(){
var _=this;
_.$slides =
_.$slider
.children(_.options.slide + ':not(.slick-cloned)')
.addClass('slick-slide');
_.slideCount=_.$slides.length;
_.$slides.each(function(index, element){
$(element)
.attr('data-slick-index', index)
.data('originalStyling', $(element).attr('style')||'');
});
_.$slider.addClass('slick-slider');
_.$slideTrack=(_.slideCount===0) ?
$('<div class="slick-track"/>').appendTo(_.$slider) :
_.$slides.wrapAll('<div class="slick-track"/>').parent();
_.$list=_.$slideTrack.wrap('<div class="slick-list"/>').parent();
_.$slideTrack.css('opacity', 0);
if(_.options.centerMode===true||_.options.swipeToSlide===true){
_.options.slidesToScroll=1;
}
$('img[data-lazy]', _.$slider).not('[src]').addClass('slick-loading');
_.setupInfinite();
_.buildArrows();
_.buildDots();
_.updateDots();
_.setSlideClasses(typeof _.currentSlide==='number' ? _.currentSlide:0);
if(_.options.draggable===true){
_.$list.addClass('draggable');
}};
Slick.prototype.buildRows=function(){
var _=this, a, b, c, newSlides, numOfSlides, originalSlides,slidesPerSection;
newSlides=document.createDocumentFragment();
originalSlides=_.$slider.children();
if(_.options.rows > 0){
slidesPerSection=_.options.slidesPerRow * _.options.rows;
numOfSlides=Math.ceil(originalSlides.length / slidesPerSection
);
for(a=0; a < numOfSlides; a++){
var slide=document.createElement('div');
for(b=0; b < _.options.rows; b++){
var row=document.createElement('div');
for(c=0; c < _.options.slidesPerRow; c++){
var target=(a * slidesPerSection + ((b * _.options.slidesPerRow) + c));
if(originalSlides.get(target)){
row.appendChild(originalSlides.get(target));
}}
slide.appendChild(row);
}
newSlides.appendChild(slide);
}
_.$slider.empty().append(newSlides);
_.$slider.children().children().children()
.css({
'width':(100 / _.options.slidesPerRow) + '%',
'display': 'inline-block'
});
}};
Slick.prototype.checkResponsive=function(initial, forceUpdate){
var _=this,
breakpoint, targetBreakpoint, respondToWidth, triggerBreakpoint=false;
var sliderWidth=_.$slider.width();
var windowWidth=window.innerWidth||$(window).width();
if(_.respondTo==='window'){
respondToWidth=windowWidth;
}else if(_.respondTo==='slider'){
respondToWidth=sliderWidth;
}else if(_.respondTo==='min'){
respondToWidth=Math.min(windowWidth, sliderWidth);
}
if(_.options.responsive &&
_.options.responsive.length &&
_.options.responsive!==null){
targetBreakpoint=null;
for (breakpoint in _.breakpoints){
if(_.breakpoints.hasOwnProperty(breakpoint)){
if(_.originalSettings.mobileFirst===false){
if(respondToWidth < _.breakpoints[breakpoint]){
targetBreakpoint=_.breakpoints[breakpoint];
}}else{
if(respondToWidth > _.breakpoints[breakpoint]){
targetBreakpoint=_.breakpoints[breakpoint];
}}
}}
if(targetBreakpoint!==null){
if(_.activeBreakpoint!==null){
if(targetBreakpoint!==_.activeBreakpoint||forceUpdate){
_.activeBreakpoint =
targetBreakpoint;
if(_.breakpointSettings[targetBreakpoint]==='unslick'){
_.unslick(targetBreakpoint);
}else{
_.options=$.extend({}, _.originalSettings,
_.breakpointSettings[
targetBreakpoint]);
if(initial===true){
_.currentSlide=_.options.initialSlide;
}
_.refresh(initial);
}
triggerBreakpoint=targetBreakpoint;
}}else{
_.activeBreakpoint=targetBreakpoint;
if(_.breakpointSettings[targetBreakpoint]==='unslick'){
_.unslick(targetBreakpoint);
}else{
_.options=$.extend({}, _.originalSettings,
_.breakpointSettings[
targetBreakpoint]);
if(initial===true){
_.currentSlide=_.options.initialSlide;
}
_.refresh(initial);
}
triggerBreakpoint=targetBreakpoint;
}}else{
if(_.activeBreakpoint!==null){
_.activeBreakpoint=null;
_.options=_.originalSettings;
if(initial===true){
_.currentSlide=_.options.initialSlide;
}
_.refresh(initial);
triggerBreakpoint=targetBreakpoint;
}}
if(!initial&&triggerBreakpoint!==false){
_.$slider.trigger('breakpoint', [_, triggerBreakpoint]);
}}
};
Slick.prototype.changeSlide=function(event, dontAnimate){
var _=this,
$target=$(event.currentTarget),
indexOffset, slideOffset, unevenOffset;
if($target.is('a')){
event.preventDefault();
}
if(!$target.is('li')){
$target=$target.closest('li');
}
unevenOffset=(_.slideCount % _.options.slidesToScroll!==0);
indexOffset=unevenOffset ? 0:(_.slideCount - _.currentSlide) % _.options.slidesToScroll;
switch (event.data.message){
case 'previous':
slideOffset=indexOffset===0 ? _.options.slidesToScroll:_.options.slidesToShow - indexOffset;
if(_.slideCount > _.options.slidesToShow){
_.slideHandler(_.currentSlide - slideOffset, false, dontAnimate);
}
break;
case 'next':
slideOffset=indexOffset===0 ? _.options.slidesToScroll:indexOffset;
if(_.slideCount > _.options.slidesToShow){
_.slideHandler(_.currentSlide + slideOffset, false, dontAnimate);
}
break;
case 'index':
var index=event.data.index===0 ? 0 :
event.data.index||$target.index() * _.options.slidesToScroll;
_.slideHandler(_.checkNavigable(index), false, dontAnimate);
$target.children().trigger('focus');
break;
default:
return;
}};
Slick.prototype.checkNavigable=function(index){
var _=this,
navigables, prevNavigable;
navigables=_.getNavigableIndexes();
prevNavigable=0;
if(index > navigables[navigables.length - 1]){
index=navigables[navigables.length - 1];
}else{
for (var n in navigables){
if(index < navigables[n]){
index=prevNavigable;
break;
}
prevNavigable=navigables[n];
}}
return index;
};
Slick.prototype.cleanUpEvents=function(){
var _=this;
if(_.options.dots&&_.$dots!==null){
$('li', _.$dots)
.off('click.slick', _.changeSlide)
.off('mouseenter.slick', $.proxy(_.interrupt, _, true))
.off('mouseleave.slick', $.proxy(_.interrupt, _, false));
if(_.options.accessibility===true){
_.$dots.off('keydown.slick', _.keyHandler);
}}
_.$slider.off('focus.slick blur.slick');
if(_.options.arrows===true&&_.slideCount > _.options.slidesToShow){
_.$prevArrow&&_.$prevArrow.off('click.slick', _.changeSlide);
_.$nextArrow&&_.$nextArrow.off('click.slick', _.changeSlide);
if(_.options.accessibility===true){
_.$prevArrow&&_.$prevArrow.off('keydown.slick', _.keyHandler);
_.$nextArrow&&_.$nextArrow.off('keydown.slick', _.keyHandler);
}}
_.$list.off('touchstart.slick mousedown.slick', _.swipeHandler);
_.$list.off('touchmove.slick mousemove.slick', _.swipeHandler);
_.$list.off('touchend.slick mouseup.slick', _.swipeHandler);
_.$list.off('touchcancel.slick mouseleave.slick', _.swipeHandler);
_.$list.off('click.slick', _.clickHandler);
$(document).off(_.visibilityChange, _.visibility);
_.cleanUpSlideEvents();
if(_.options.accessibility===true){
_.$list.off('keydown.slick', _.keyHandler);
}
if(_.options.focusOnSelect===true){
$(_.$slideTrack).children().off('click.slick', _.selectHandler);
}
$(window).off('orientationchange.slick.slick-' + _.instanceUid, _.orientationChange);
$(window).off('resize.slick.slick-' + _.instanceUid, _.resize);
$('[draggable!=true]', _.$slideTrack).off('dragstart', _.preventDefault);
$(window).off('load.slick.slick-' + _.instanceUid, _.setPosition);
};
Slick.prototype.cleanUpSlideEvents=function(){
var _=this;
_.$list.off('mouseenter.slick', $.proxy(_.interrupt, _, true));
_.$list.off('mouseleave.slick', $.proxy(_.interrupt, _, false));
};
Slick.prototype.cleanUpRows=function(){
var _=this, originalSlides;
if(_.options.rows > 0){
originalSlides=_.$slides.children().children();
originalSlides.removeAttr('style');
_.$slider.empty().append(originalSlides);
}};
Slick.prototype.clickHandler=function(event){
var _=this;
if(_.shouldClick===false){
event.stopImmediatePropagation();
event.stopPropagation();
event.preventDefault();
}};
Slick.prototype.destroy=function(refresh){
var _=this;
_.autoPlayClear();
_.touchObject={};
_.cleanUpEvents();
$('.slick-cloned', _.$slider).detach();
if(_.$dots){
_.$dots.remove();
}
if(_.$prevArrow&&_.$prevArrow.length){
_.$prevArrow
.removeClass('slick-disabled slick-arrow slick-hidden')
.removeAttr('aria-hidden aria-disabled tabindex')
.css('display','');
if(_.htmlExpr.test(_.options.prevArrow)){
_.$prevArrow.remove();
}}
if(_.$nextArrow&&_.$nextArrow.length){
_.$nextArrow
.removeClass('slick-disabled slick-arrow slick-hidden')
.removeAttr('aria-hidden aria-disabled tabindex')
.css('display','');
if(_.htmlExpr.test(_.options.nextArrow)){
_.$nextArrow.remove();
}}
if(_.$slides){
_.$slides
.removeClass('slick-slide slick-active slick-center slick-visible slick-current')
.removeAttr('aria-hidden')
.removeAttr('data-slick-index')
.each(function(){
$(this).attr('style', $(this).data('originalStyling'));
});
_.$slideTrack.children(this.options.slide).detach();
_.$slideTrack.detach();
_.$list.detach();
_.$slider.append(_.$slides);
}
_.cleanUpRows();
_.$slider.removeClass('slick-slider');
_.$slider.removeClass('slick-initialized');
_.$slider.removeClass('slick-dotted');
_.unslicked=true;
if(!refresh){
_.$slider.trigger('destroy', [_]);
}};
Slick.prototype.disableTransition=function(slide){
var _=this,
transition={};
transition[_.transitionType]='';
if(_.options.fade===false){
_.$slideTrack.css(transition);
}else{
_.$slides.eq(slide).css(transition);
}};
Slick.prototype.fadeSlide=function(slideIndex, callback){
var _=this;
if(_.cssTransitions===false){
_.$slides.eq(slideIndex).css({
zIndex: _.options.zIndex
});
_.$slides.eq(slideIndex).animate({
opacity: 1
}, _.options.speed, _.options.easing, callback);
}else{
_.applyTransition(slideIndex);
_.$slides.eq(slideIndex).css({
opacity: 1,
zIndex: _.options.zIndex
});
if(callback){
setTimeout(function(){
_.disableTransition(slideIndex);
callback.call();
}, _.options.speed);
}}
};
Slick.prototype.fadeSlideOut=function(slideIndex){
var _=this;
if(_.cssTransitions===false){
_.$slides.eq(slideIndex).animate({
opacity: 0,
zIndex: _.options.zIndex - 2
}, _.options.speed, _.options.easing);
}else{
_.applyTransition(slideIndex);
_.$slides.eq(slideIndex).css({
opacity: 0,
zIndex: _.options.zIndex - 2
});
}};
Slick.prototype.filterSlides=Slick.prototype.slickFilter=function(filter){
var _=this;
if(filter!==null){
_.$slidesCache=_.$slides;
_.unload();
_.$slideTrack.children(this.options.slide).detach();
_.$slidesCache.filter(filter).appendTo(_.$slideTrack);
_.reinit();
}};
Slick.prototype.focusHandler=function(){
var _=this;
_.$slider
.off('focus.slick blur.slick')
.on('focus.slick blur.slick', '*', function(event){
event.stopImmediatePropagation();
var $sf=$(this);
setTimeout(function(){
if(_.options.pauseOnFocus){
_.focussed=$sf.is(':focus');
_.autoPlay();
}}, 0);
});
};
Slick.prototype.getCurrent=Slick.prototype.slickCurrentSlide=function(){
var _=this;
return _.currentSlide;
};
Slick.prototype.getDotCount=function(){
var _=this;
var breakPoint=0;
var counter=0;
var pagerQty=0;
if(_.options.infinite===true){
if(_.slideCount <=_.options.slidesToShow){
++pagerQty;
}else{
while (breakPoint < _.slideCount){
++pagerQty;
breakPoint=counter + _.options.slidesToScroll;
counter +=_.options.slidesToScroll <=_.options.slidesToShow ? _.options.slidesToScroll:_.options.slidesToShow;
}}
}else if(_.options.centerMode===true){
pagerQty=_.slideCount;
}else if(!_.options.asNavFor){
pagerQty=1 + Math.ceil((_.slideCount - _.options.slidesToShow) / _.options.slidesToScroll);
}else{
while (breakPoint < _.slideCount){
++pagerQty;
breakPoint=counter + _.options.slidesToScroll;
counter +=_.options.slidesToScroll <=_.options.slidesToShow ? _.options.slidesToScroll:_.options.slidesToShow;
}}
return pagerQty - 1;
};
Slick.prototype.getLeft=function(slideIndex){
var _=this,
targetLeft,
verticalHeight,
verticalOffset=0,
targetSlide,
coef;
_.slideOffset=0;
verticalHeight=_.$slides.first().outerHeight(true);
if(_.options.infinite===true){
if(_.slideCount > _.options.slidesToShow){
_.slideOffset=(_.slideWidth * _.options.slidesToShow) * -1;
coef=-1
if(_.options.vertical===true&&_.options.centerMode===true){
if(_.options.slidesToShow===2){
coef=-1.5;
}else if(_.options.slidesToShow===1){
coef=-2
}}
verticalOffset=(verticalHeight * _.options.slidesToShow) * coef;
}
if(_.slideCount % _.options.slidesToScroll!==0){
if(slideIndex + _.options.slidesToScroll > _.slideCount&&_.slideCount > _.options.slidesToShow){
if(slideIndex > _.slideCount){
_.slideOffset=((_.options.slidesToShow - (slideIndex - _.slideCount)) * _.slideWidth) * -1;
verticalOffset=((_.options.slidesToShow - (slideIndex - _.slideCount)) * verticalHeight) * -1;
}else{
_.slideOffset=((_.slideCount % _.options.slidesToScroll) * _.slideWidth) * -1;
verticalOffset=((_.slideCount % _.options.slidesToScroll) * verticalHeight) * -1;
}}
}}else{
if(slideIndex + _.options.slidesToShow > _.slideCount){
_.slideOffset=((slideIndex + _.options.slidesToShow) - _.slideCount) * _.slideWidth;
verticalOffset=((slideIndex + _.options.slidesToShow) - _.slideCount) * verticalHeight;
}}
if(_.slideCount <=_.options.slidesToShow){
_.slideOffset=0;
verticalOffset=0;
}
if(_.options.centerMode===true&&_.slideCount <=_.options.slidesToShow){
_.slideOffset=((_.slideWidth * Math.floor(_.options.slidesToShow)) / 2) - ((_.slideWidth * _.slideCount) / 2);
}else if(_.options.centerMode===true&&_.options.infinite===true){
_.slideOffset +=_.slideWidth * Math.floor(_.options.slidesToShow / 2) - _.slideWidth;
}else if(_.options.centerMode===true){
_.slideOffset=0;
_.slideOffset +=_.slideWidth * Math.floor(_.options.slidesToShow / 2);
}
if(_.options.vertical===false){
targetLeft=((slideIndex * _.slideWidth) * -1) + _.slideOffset;
}else{
targetLeft=((slideIndex * verticalHeight) * -1) + verticalOffset;
}
if(_.options.variableWidth===true){
if(_.slideCount <=_.options.slidesToShow||_.options.infinite===false){
targetSlide=_.$slideTrack.children('.slick-slide').eq(slideIndex);
}else{
targetSlide=_.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow);
}
if(_.options.rtl===true){
if(targetSlide[0]){
targetLeft=(_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;
}else{
targetLeft=0;
}}else{
targetLeft=targetSlide[0] ? targetSlide[0].offsetLeft * -1:0;
}
if(_.options.centerMode===true){
if(_.slideCount <=_.options.slidesToShow||_.options.infinite===false){
targetSlide=_.$slideTrack.children('.slick-slide').eq(slideIndex);
}else{
targetSlide=_.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow + 1);
}
if(_.options.rtl===true){
if(targetSlide[0]){
targetLeft=(_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;
}else{
targetLeft=0;
}}else{
targetLeft=targetSlide[0] ? targetSlide[0].offsetLeft * -1:0;
}
targetLeft +=(_.$list.width() - targetSlide.outerWidth()) / 2;
}}
return targetLeft;
};
Slick.prototype.getOption=Slick.prototype.slickGetOption=function(option){
var _=this;
return _.options[option];
};
Slick.prototype.getNavigableIndexes=function(){
var _=this,
breakPoint=0,
counter=0,
indexes=[],
max;
if(_.options.infinite===false){
max=_.slideCount;
}else{
breakPoint=_.options.slidesToScroll * -1;
counter=_.options.slidesToScroll * -1;
max=_.slideCount * 2;
}
while (breakPoint < max){
indexes.push(breakPoint);
breakPoint=counter + _.options.slidesToScroll;
counter +=_.options.slidesToScroll <=_.options.slidesToShow ? _.options.slidesToScroll:_.options.slidesToShow;
}
return indexes;
};
Slick.prototype.getSlick=function(){
return this;
};
Slick.prototype.getSlideCount=function(){
var _=this,
slidesTraversed, swipedSlide, centerOffset;
centerOffset=_.options.centerMode===true ? _.slideWidth * Math.floor(_.options.slidesToShow / 2):0;
if(_.options.swipeToSlide===true){
_.$slideTrack.find('.slick-slide').each(function(index, slide){
if(slide.offsetLeft - centerOffset + ($(slide).outerWidth() / 2) > (_.swipeLeft * -1)){
swipedSlide=slide;
return false;
}});
slidesTraversed=Math.abs($(swipedSlide).attr('data-slick-index') - _.currentSlide)||1;
return slidesTraversed;
}else{
return _.options.slidesToScroll;
}};
Slick.prototype.goTo=Slick.prototype.slickGoTo=function(slide, dontAnimate){
var _=this;
_.changeSlide({
data: {
message: 'index',
index: parseInt(slide)
}}, dontAnimate);
};
Slick.prototype.init=function(creation){
var _=this;
if(!$(_.$slider).hasClass('slick-initialized')){
$(_.$slider).addClass('slick-initialized');
_.buildRows();
_.buildOut();
_.setProps();
_.startLoad();
_.loadSlider();
_.initializeEvents();
_.updateArrows();
_.updateDots();
_.checkResponsive(true);
_.focusHandler();
}
if(creation){
_.$slider.trigger('init', [_]);
}
if(_.options.accessibility===true){
_.initADA();
}
if(_.options.autoplay){
_.paused=false;
_.autoPlay();
}};
Slick.prototype.initADA=function(){
var _=this,
numDotGroups=Math.ceil(_.slideCount / _.options.slidesToShow),
tabControlIndexes=_.getNavigableIndexes().filter(function(val){
return (val >=0)&&(val < _.slideCount);
});
_.$slides.add(_.$slideTrack.find('.slick-cloned')).attr({
'aria-hidden': 'true',
'tabindex': '-1'
}).find('a, input, button, select').attr({
'tabindex': '-1'
});
if(_.$dots!==null){
_.$slides.not(_.$slideTrack.find('.slick-cloned')).each(function(i){
var slideControlIndex=tabControlIndexes.indexOf(i);
$(this).attr({
'role': 'tabpanel',
'id': 'slick-slide' + _.instanceUid + i,
'tabindex': -1
});
if(slideControlIndex!==-1){
var ariaButtonControl='slick-slide-control' + _.instanceUid + slideControlIndex
if($('#' + ariaButtonControl).length){
$(this).attr({
'aria-describedby': ariaButtonControl
});
}}
});
_.$dots.attr('role', 'tablist').find('li').each(function(i){
var mappedSlideIndex=tabControlIndexes[i];
$(this).attr({
'role': 'presentation'
});
$(this).find('button').first().attr({
'role': 'tab',
'id': 'slick-slide-control' + _.instanceUid + i,
'aria-controls': 'slick-slide' + _.instanceUid + mappedSlideIndex,
'aria-label': (i + 1) + ' of ' + numDotGroups,
'aria-selected': null,
'tabindex': '-1'
});
}).eq(_.currentSlide).find('button').attr({
'aria-selected': 'true',
'tabindex': '0'
}).end();
}
for (var i=_.currentSlide, max=i+_.options.slidesToShow; i < max; i++){
if(_.options.focusOnChange){
_.$slides.eq(i).attr({'tabindex': '0'});
}else{
_.$slides.eq(i).removeAttr('tabindex');
}}
_.activateADA();
};
Slick.prototype.initArrowEvents=function(){
var _=this;
if(_.options.arrows===true&&_.slideCount > _.options.slidesToShow){
_.$prevArrow
.off('click.slick')
.on('click.slick', {
message: 'previous'
}, _.changeSlide);
_.$nextArrow
.off('click.slick')
.on('click.slick', {
message: 'next'
}, _.changeSlide);
if(_.options.accessibility===true){
_.$prevArrow.on('keydown.slick', _.keyHandler);
_.$nextArrow.on('keydown.slick', _.keyHandler);
}}
};
Slick.prototype.initDotEvents=function(){
var _=this;
if(_.options.dots===true&&_.slideCount > _.options.slidesToShow){
$('li', _.$dots).on('click.slick', {
message: 'index'
}, _.changeSlide);
if(_.options.accessibility===true){
_.$dots.on('keydown.slick', _.keyHandler);
}}
if(_.options.dots===true&&_.options.pauseOnDotsHover===true&&_.slideCount > _.options.slidesToShow){
$('li', _.$dots)
.on('mouseenter.slick', $.proxy(_.interrupt, _, true))
.on('mouseleave.slick', $.proxy(_.interrupt, _, false));
}};
Slick.prototype.initSlideEvents=function(){
var _=this;
if(_.options.pauseOnHover){
_.$list.on('mouseenter.slick', $.proxy(_.interrupt, _, true));
_.$list.on('mouseleave.slick', $.proxy(_.interrupt, _, false));
}};
Slick.prototype.initializeEvents=function(){
var _=this;
_.initArrowEvents();
_.initDotEvents();
_.initSlideEvents();
_.$list.on('touchstart.slick mousedown.slick', {
action: 'start'
}, _.swipeHandler);
_.$list.on('touchmove.slick mousemove.slick', {
action: 'move'
}, _.swipeHandler);
_.$list.on('touchend.slick mouseup.slick', {
action: 'end'
}, _.swipeHandler);
_.$list.on('touchcancel.slick mouseleave.slick', {
action: 'end'
}, _.swipeHandler);
_.$list.on('click.slick', _.clickHandler);
$(document).on(_.visibilityChange, $.proxy(_.visibility, _));
if(_.options.accessibility===true){
_.$list.on('keydown.slick', _.keyHandler);
}
if(_.options.focusOnSelect===true){
$(_.$slideTrack).children().on('click.slick', _.selectHandler);
}
$(window).on('orientationchange.slick.slick-' + _.instanceUid, $.proxy(_.orientationChange, _));
$(window).on('resize.slick.slick-' + _.instanceUid, $.proxy(_.resize, _));
$('[draggable!=true]', _.$slideTrack).on('dragstart', _.preventDefault);
$(window).on('load.slick.slick-' + _.instanceUid, _.setPosition);
$(_.setPosition);
};
Slick.prototype.initUI=function(){
var _=this;
if(_.options.arrows===true&&_.slideCount > _.options.slidesToShow){
_.$prevArrow.show();
_.$nextArrow.show();
}
if(_.options.dots===true&&_.slideCount > _.options.slidesToShow){
_.$dots.show();
}};
Slick.prototype.keyHandler=function(event){
var _=this;
if(!event.target.tagName.match('TEXTAREA|INPUT|SELECT')){
if(event.keyCode===37&&_.options.accessibility===true){
_.changeSlide({
data: {
message: _.options.rtl===true ? 'next':'previous'
}});
}else if(event.keyCode===39&&_.options.accessibility===true){
_.changeSlide({
data: {
message: _.options.rtl===true ? 'previous':'next'
}});
}}
};
Slick.prototype.lazyLoad=function(){
var _=this,
loadRange, cloneRange, rangeStart, rangeEnd;
function loadImages(imagesScope){
$('img[data-lazy]', imagesScope).each(function(){
var image=$(this),
imageSource=$(this).attr('data-lazy'),
imageSrcSet=$(this).attr('data-srcset'),
imageSizes=$(this).attr('data-sizes')||_.$slider.attr('data-sizes'),
imageToLoad=document.createElement('img');
imageToLoad.onload=function(){
image
.animate({ opacity: 0 }, 100, function(){
if(imageSrcSet){
image
.attr('srcset', imageSrcSet);
if(imageSizes){
image
.attr('sizes', imageSizes);
}}
image
.attr('src', imageSource)
.animate({ opacity: 1 }, 200, function(){
image
.removeAttr('data-lazy data-srcset data-sizes')
.removeClass('slick-loading');
});
_.$slider.trigger('lazyLoaded', [_, image, imageSource]);
});
};
imageToLoad.onerror=function(){
image
.removeAttr('data-lazy')
.removeClass('slick-loading')
.addClass('slick-lazyload-error');
_.$slider.trigger('lazyLoadError', [ _, image, imageSource ]);
};
imageToLoad.src=imageSource;
});
}
if(_.options.centerMode===true){
if(_.options.infinite===true){
rangeStart=_.currentSlide + (_.options.slidesToShow / 2 + 1);
rangeEnd=rangeStart + _.options.slidesToShow + 2;
}else{
rangeStart=Math.max(0, _.currentSlide - (_.options.slidesToShow / 2 + 1));
rangeEnd=2 + (_.options.slidesToShow / 2 + 1) + _.currentSlide;
}}else{
rangeStart=_.options.infinite ? _.options.slidesToShow + _.currentSlide:_.currentSlide;
rangeEnd=Math.ceil(rangeStart + _.options.slidesToShow);
if(_.options.fade===true){
if(rangeStart > 0) rangeStart--;
if(rangeEnd <=_.slideCount) rangeEnd++;
}}
loadRange=_.$slider.find('.slick-slide').slice(rangeStart, rangeEnd);
if(_.options.lazyLoad==='anticipated'){
var prevSlide=rangeStart - 1,
nextSlide=rangeEnd,
$slides=_.$slider.find('.slick-slide');
for (var i=0; i < _.options.slidesToScroll; i++){
if(prevSlide < 0) prevSlide=_.slideCount - 1;
loadRange=loadRange.add($slides.eq(prevSlide));
loadRange=loadRange.add($slides.eq(nextSlide));
prevSlide--;
nextSlide++;
}}
loadImages(loadRange);
if(_.slideCount <=_.options.slidesToShow){
cloneRange=_.$slider.find('.slick-slide');
loadImages(cloneRange);
} else
if(_.currentSlide >=_.slideCount - _.options.slidesToShow){
cloneRange=_.$slider.find('.slick-cloned').slice(0, _.options.slidesToShow);
loadImages(cloneRange);
}else if(_.currentSlide===0){
cloneRange=_.$slider.find('.slick-cloned').slice(_.options.slidesToShow * -1);
loadImages(cloneRange);
}};
Slick.prototype.loadSlider=function(){
var _=this;
_.setPosition();
_.$slideTrack.css({
opacity: 1
});
_.$slider.removeClass('slick-loading');
_.initUI();
if(_.options.lazyLoad==='progressive'){
_.progressiveLazyLoad();
}};
Slick.prototype.next=Slick.prototype.slickNext=function(){
var _=this;
_.changeSlide({
data: {
message: 'next'
}});
};
Slick.prototype.orientationChange=function(){
var _=this;
_.checkResponsive();
_.setPosition();
};
Slick.prototype.pause=Slick.prototype.slickPause=function(){
var _=this;
_.autoPlayClear();
_.paused=true;
};
Slick.prototype.play=Slick.prototype.slickPlay=function(){
var _=this;
_.autoPlay();
_.options.autoplay=true;
_.paused=false;
_.focussed=false;
_.interrupted=false;
};
Slick.prototype.postSlide=function(index){
var _=this;
if(!_.unslicked){
_.$slider.trigger('afterChange', [_, index]);
_.animating=false;
if(_.slideCount > _.options.slidesToShow){
_.setPosition();
}
_.swipeLeft=null;
if(_.options.autoplay){
_.autoPlay();
}
if(_.options.accessibility===true){
_.initADA();
if(_.options.focusOnChange){
var $currentSlide=$(_.$slides.get(_.currentSlide));
$currentSlide.attr('tabindex', 0).focus();
}}
}};
Slick.prototype.prev=Slick.prototype.slickPrev=function(){
var _=this;
_.changeSlide({
data: {
message: 'previous'
}});
};
Slick.prototype.preventDefault=function(event){
event.preventDefault();
};
Slick.prototype.progressiveLazyLoad=function(tryCount){
tryCount=tryCount||1;
var _=this,
$imgsToLoad=$('img[data-lazy]', _.$slider),
image,
imageSource,
imageSrcSet,
imageSizes,
imageToLoad;
if($imgsToLoad.length){
image=$imgsToLoad.first();
imageSource=image.attr('data-lazy');
imageSrcSet=image.attr('data-srcset');
imageSizes=image.attr('data-sizes')||_.$slider.attr('data-sizes');
imageToLoad=document.createElement('img');
imageToLoad.onload=function(){
if(imageSrcSet){
image
.attr('srcset', imageSrcSet);
if(imageSizes){
image
.attr('sizes', imageSizes);
}}
image
.attr('src', imageSource)
.removeAttr('data-lazy data-srcset data-sizes')
.removeClass('slick-loading');
if(_.options.adaptiveHeight===true){
_.setPosition();
}
_.$slider.trigger('lazyLoaded', [ _, image, imageSource ]);
_.progressiveLazyLoad();
};
imageToLoad.onerror=function(){
if(tryCount < 3){
setTimeout(function(){
_.progressiveLazyLoad(tryCount + 1);
}, 500);
}else{
image
.removeAttr('data-lazy')
.removeClass('slick-loading')
.addClass('slick-lazyload-error');
_.$slider.trigger('lazyLoadError', [ _, image, imageSource ]);
_.progressiveLazyLoad();
}};
imageToLoad.src=imageSource;
}else{
_.$slider.trigger('allImagesLoaded', [ _ ]);
}};
Slick.prototype.refresh=function(initializing){
var _=this, currentSlide, lastVisibleIndex;
lastVisibleIndex=_.slideCount - _.options.slidesToShow;
if(!_.options.infinite&&(_.currentSlide > lastVisibleIndex)){
_.currentSlide=lastVisibleIndex;
}
if(_.slideCount <=_.options.slidesToShow){
_.currentSlide=0;
}
currentSlide=_.currentSlide;
_.destroy(true);
$.extend(_, _.initials, { currentSlide: currentSlide });
_.init();
if(!initializing){
_.changeSlide({
data: {
message: 'index',
index: currentSlide
}}, false);
}};
Slick.prototype.registerBreakpoints=function(){
var _=this, breakpoint, currentBreakpoint, l,
responsiveSettings=_.options.responsive||null;
if(Array.isArray(responsiveSettings)&&responsiveSettings.length){
_.respondTo=_.options.respondTo||'window';
for(breakpoint in responsiveSettings){
l=_.breakpoints.length-1;
if(responsiveSettings.hasOwnProperty(breakpoint)){
currentBreakpoint=responsiveSettings[breakpoint].breakpoint;
while(l >=0){
if(_.breakpoints[l]&&_.breakpoints[l]===currentBreakpoint){
_.breakpoints.splice(l,1);
}
l--;
}
_.breakpoints.push(currentBreakpoint);
_.breakpointSettings[currentBreakpoint]=responsiveSettings[breakpoint].settings;
}}
_.breakpoints.sort(function(a, b){
return(_.options.mobileFirst) ? a-b:b-a;
});
}};
Slick.prototype.reinit=function(){
var _=this;
_.$slides =
_.$slideTrack
.children(_.options.slide)
.addClass('slick-slide');
_.slideCount=_.$slides.length;
if(_.currentSlide >=_.slideCount&&_.currentSlide!==0){
_.currentSlide=_.currentSlide - _.options.slidesToScroll;
}
if(_.slideCount <=_.options.slidesToShow){
_.currentSlide=0;
}
_.registerBreakpoints();
_.setProps();
_.setupInfinite();
_.buildArrows();
_.updateArrows();
_.initArrowEvents();
_.buildDots();
_.updateDots();
_.initDotEvents();
_.cleanUpSlideEvents();
_.initSlideEvents();
_.checkResponsive(false, true);
if(_.options.focusOnSelect===true){
$(_.$slideTrack).children().on('click.slick', _.selectHandler);
}
_.setSlideClasses(typeof _.currentSlide==='number' ? _.currentSlide:0);
_.setPosition();
_.focusHandler();
_.paused = !_.options.autoplay;
_.autoPlay();
_.$slider.trigger('reInit', [_]);
};
Slick.prototype.resize=function(){
var _=this;
if($(window).width()!==_.windowWidth){
clearTimeout(_.windowDelay);
_.windowDelay=window.setTimeout(function(){
_.windowWidth=$(window).width();
_.checkResponsive();
if(!_.unslicked){ _.setPosition(); }}, 50);
}};
Slick.prototype.removeSlide=Slick.prototype.slickRemove=function(index, removeBefore, removeAll){
var _=this;
if(typeof(index)==='boolean'){
removeBefore=index;
index=removeBefore===true ? 0:_.slideCount - 1;
}else{
index=removeBefore===true ? --index:index;
}
if(_.slideCount < 1||index < 0||index > _.slideCount - 1){
return false;
}
_.unload();
if(removeAll===true){
_.$slideTrack.children().remove();
}else{
_.$slideTrack.children(this.options.slide).eq(index).remove();
}
_.$slides=_.$slideTrack.children(this.options.slide);
_.$slideTrack.children(this.options.slide).detach();
_.$slideTrack.append(_.$slides);
_.$slidesCache=_.$slides;
_.reinit();
};
Slick.prototype.setCSS=function(position){
var _=this,
positionProps={},
x, y;
if(_.options.rtl===true){
position=-position;
}
x=_.positionProp=='left' ? Math.ceil(position) + 'px':'0px';
y=_.positionProp=='top' ? Math.ceil(position) + 'px':'0px';
positionProps[_.positionProp]=position;
if(_.transformsEnabled===false){
_.$slideTrack.css(positionProps);
}else{
positionProps={};
if(_.cssTransitions===false){
positionProps[_.animType]='translate(' + x + ', ' + y + ')';
_.$slideTrack.css(positionProps);
}else{
positionProps[_.animType]='translate3d(' + x + ', ' + y + ', 0px)';
_.$slideTrack.css(positionProps);
}}
};
Slick.prototype.setDimensions=function(){
var _=this;
if(_.options.vertical===false){
if(_.options.centerMode===true){
_.$list.css({
padding: ('0px ' + _.options.centerPadding)
});
}}else{
_.$list.height(_.$slides.first().outerHeight(true) * _.options.slidesToShow);
if(_.options.centerMode===true){
_.$list.css({
padding: (_.options.centerPadding + ' 0px')
});
}}
_.listWidth=_.$list.width();
_.listHeight=_.$list.height();
if(_.options.vertical===false&&_.options.variableWidth===false){
_.slideWidth=Math.ceil(_.listWidth / _.options.slidesToShow);
_.$slideTrack.width(Math.ceil((_.slideWidth * _.$slideTrack.children('.slick-slide').length)));
}else if(_.options.variableWidth===true){
_.$slideTrack.width(5000 * _.slideCount);
}else{
_.slideWidth=Math.ceil(_.listWidth);
_.$slideTrack.height(Math.ceil((_.$slides.first().outerHeight(true) * _.$slideTrack.children('.slick-slide').length)));
}
var offset=_.$slides.first().outerWidth(true) - _.$slides.first().width();
if(_.options.variableWidth===false) _.$slideTrack.children('.slick-slide').width(_.slideWidth - offset);
};
Slick.prototype.setFade=function(){
var _=this,
targetLeft;
_.$slides.each(function(index, element){
targetLeft=(_.slideWidth * index) * -1;
if(_.options.rtl===true){
$(element).css({
position: 'relative',
right: targetLeft,
top: 0,
zIndex: _.options.zIndex - 2,
opacity: 0
});
}else{
$(element).css({
position: 'relative',
left: targetLeft,
top: 0,
zIndex: _.options.zIndex - 2,
opacity: 0
});
}});
_.$slides.eq(_.currentSlide).css({
zIndex: _.options.zIndex - 1,
opacity: 1
});
};
Slick.prototype.setHeight=function(){
var _=this;
if(_.options.slidesToShow===1&&_.options.adaptiveHeight===true&&_.options.vertical===false){
var targetHeight=_.$slides.eq(_.currentSlide).outerHeight(true);
_.$list.css('height', targetHeight);
}};
Slick.prototype.setOption =
Slick.prototype.slickSetOption=function(){
var _=this, l, item, option, value, refresh=false, type;
if(typeof(arguments[0])==='object'){
option=arguments[0];
refresh=arguments[1];
type='multiple';
}else if(typeof(arguments[0])==='string'){
option=arguments[0];
value=arguments[1];
refresh=arguments[2];
if(arguments[0]==='responsive'&&Array.isArray(arguments[1])){
type='responsive';
}else if(typeof arguments[1]!=='undefined'){
type='single';
}}
if(type==='single'){
_.options[option]=value;
}else if(type==='multiple'){
$.each(option , function(opt, val){
_.options[opt]=val;
});
}else if(type==='responsive'){
for(item in value){
if(typeof(_.options.responsive)!=='array'){
_.options.responsive=[ value[item] ];
}else{
l=_.options.responsive.length-1;
while(l >=0){
if(_.options.responsive[l].breakpoint===value[item].breakpoint){
_.options.responsive.splice(l,1);
}
l--;
}
_.options.responsive.push(value[item]);
}}
}
if(refresh){
_.unload();
_.reinit();
}};
Slick.prototype.setPosition=function(){
var _=this;
_.setDimensions();
_.setHeight();
if(_.options.fade===false){
_.setCSS(_.getLeft(_.currentSlide));
}else{
_.setFade();
}
_.$slider.trigger('setPosition', [_]);
};
Slick.prototype.setProps=function(){
var _=this,
bodyStyle=document.body.style;
_.positionProp=_.options.vertical===true ? 'top':'left';
if(_.positionProp==='top'){
_.$slider.addClass('slick-vertical');
}else{
_.$slider.removeClass('slick-vertical');
}
if(bodyStyle.WebkitTransition!==undefined ||
bodyStyle.MozTransition!==undefined ||
bodyStyle.msTransition!==undefined){
if(_.options.useCSS===true){
_.cssTransitions=true;
}}
if(_.options.fade){
if(typeof _.options.zIndex==='number'){
if(_.options.zIndex < 3){
_.options.zIndex=3;
}}else{
_.options.zIndex=_.defaults.zIndex;
}}
if(bodyStyle.OTransform!==undefined){
_.animType='OTransform';
_.transformType='-o-transform';
_.transitionType='OTransition';
if(bodyStyle.perspectiveProperty===undefined&&bodyStyle.webkitPerspective===undefined) _.animType=false;
}
if(bodyStyle.MozTransform!==undefined){
_.animType='MozTransform';
_.transformType='-moz-transform';
_.transitionType='MozTransition';
if(bodyStyle.perspectiveProperty===undefined&&bodyStyle.MozPerspective===undefined) _.animType=false;
}
if(bodyStyle.webkitTransform!==undefined){
_.animType='webkitTransform';
_.transformType='-webkit-transform';
_.transitionType='webkitTransition';
if(bodyStyle.perspectiveProperty===undefined&&bodyStyle.webkitPerspective===undefined) _.animType=false;
}
if(bodyStyle.msTransform!==undefined){
_.animType='msTransform';
_.transformType='-ms-transform';
_.transitionType='msTransition';
if(bodyStyle.msTransform===undefined) _.animType=false;
}
if(bodyStyle.transform!==undefined&&_.animType!==false){
_.animType='transform';
_.transformType='transform';
_.transitionType='transition';
}
_.transformsEnabled=_.options.useTransform&&(_.animType!==null&&_.animType!==false);
};
Slick.prototype.setSlideClasses=function(index){
var _=this,
centerOffset, allSlides, indexOffset, remainder;
allSlides=_.$slider
.find('.slick-slide')
.removeClass('slick-active slick-center slick-current')
.attr('aria-hidden', 'true');
_.$slides
.eq(index)
.addClass('slick-current');
if(_.options.centerMode===true){
var evenCoef=_.options.slidesToShow % 2===0 ? 1:0;
centerOffset=Math.floor(_.options.slidesToShow / 2);
if(_.options.infinite===true){
if(index >=centerOffset&&index <=(_.slideCount - 1) - centerOffset){
_.$slides
.slice(index - centerOffset + evenCoef, index + centerOffset + 1)
.addClass('slick-active')
.attr('aria-hidden', 'false');
}else{
indexOffset=_.options.slidesToShow + index;
allSlides
.slice(indexOffset - centerOffset + 1 + evenCoef, indexOffset + centerOffset + 2)
.addClass('slick-active')
.attr('aria-hidden', 'false');
}
if(index===0){
allSlides
.eq(allSlides.length - 1 - _.options.slidesToShow)
.addClass('slick-center');
}else if(index===_.slideCount - 1){
allSlides
.eq(_.options.slidesToShow)
.addClass('slick-center');
}}
_.$slides
.eq(index)
.addClass('slick-center');
}else{
if(index >=0&&index <=(_.slideCount - _.options.slidesToShow)){
_.$slides
.slice(index, index + _.options.slidesToShow)
.addClass('slick-active')
.attr('aria-hidden', 'false');
}else if(allSlides.length <=_.options.slidesToShow){
allSlides
.addClass('slick-active')
.attr('aria-hidden', 'false');
}else{
remainder=_.slideCount % _.options.slidesToShow;
indexOffset=_.options.infinite===true ? _.options.slidesToShow + index:index;
if(_.options.slidesToShow==_.options.slidesToScroll&&(_.slideCount - index) < _.options.slidesToShow){
allSlides
.slice(indexOffset - (_.options.slidesToShow - remainder), indexOffset + remainder)
.addClass('slick-active')
.attr('aria-hidden', 'false');
}else{
allSlides
.slice(indexOffset, indexOffset + _.options.slidesToShow)
.addClass('slick-active')
.attr('aria-hidden', 'false');
}}
}
if(_.options.lazyLoad==='ondemand'||_.options.lazyLoad==='anticipated'){
_.lazyLoad();
}};
Slick.prototype.setupInfinite=function(){
var _=this,
i, slideIndex, infiniteCount;
if(_.options.fade===true){
_.options.centerMode=false;
}
if(_.options.infinite===true&&_.options.fade===false){
slideIndex=null;
if(_.slideCount > _.options.slidesToShow){
if(_.options.centerMode===true){
infiniteCount=_.options.slidesToShow + 1;
}else{
infiniteCount=_.options.slidesToShow;
}
for (i=_.slideCount; i > (_.slideCount -
infiniteCount); i -=1){
slideIndex=i - 1;
$(_.$slides[slideIndex]).clone(true).attr('id', '')
.attr('data-slick-index', slideIndex - _.slideCount)
.prependTo(_.$slideTrack).addClass('slick-cloned');
}
for (i=0; i < infiniteCount  + _.slideCount; i +=1){
slideIndex=i;
$(_.$slides[slideIndex]).clone(true).attr('id', '')
.attr('data-slick-index', slideIndex + _.slideCount)
.appendTo(_.$slideTrack).addClass('slick-cloned');
}
_.$slideTrack.find('.slick-cloned').find('[id]').each(function(){
$(this).attr('id', '');
});
}}
};
Slick.prototype.interrupt=function(toggle){
var _=this;
if(!toggle){
_.autoPlay();
}
_.interrupted=toggle;
};
Slick.prototype.selectHandler=function(event){
var _=this;
var targetElement =
$(event.target).is('.slick-slide') ?
$(event.target) :
$(event.target).parents('.slick-slide');
var index=parseInt(targetElement.attr('data-slick-index'));
if(!index) index=0;
if(_.slideCount <=_.options.slidesToShow){
_.slideHandler(index, false, true);
return;
}
_.slideHandler(index);
};
Slick.prototype.slideHandler=function(index, sync, dontAnimate){
var targetSlide, animSlide, oldSlide, slideLeft, targetLeft=null,
_=this, navTarget;
sync=sync||false;
if(_.animating===true&&_.options.waitForAnimate===true){
return;
}
if(_.options.fade===true&&_.currentSlide===index){
return;
}
if(sync===false){
_.asNavFor(index);
}
targetSlide=index;
targetLeft=_.getLeft(targetSlide);
slideLeft=_.getLeft(_.currentSlide);
_.currentLeft=_.swipeLeft===null ? slideLeft:_.swipeLeft;
if(_.options.infinite===false&&_.options.centerMode===false&&(index < 0||index > _.getDotCount() * _.options.slidesToScroll)){
if(_.options.fade===false){
targetSlide=_.currentSlide;
if(dontAnimate!==true&&_.slideCount > _.options.slidesToShow){
_.animateSlide(slideLeft, function(){
_.postSlide(targetSlide);
});
}else{
_.postSlide(targetSlide);
}}
return;
}else if(_.options.infinite===false&&_.options.centerMode===true&&(index < 0||index > (_.slideCount - _.options.slidesToScroll))){
if(_.options.fade===false){
targetSlide=_.currentSlide;
if(dontAnimate!==true&&_.slideCount > _.options.slidesToShow){
_.animateSlide(slideLeft, function(){
_.postSlide(targetSlide);
});
}else{
_.postSlide(targetSlide);
}}
return;
}
if(_.options.autoplay){
clearInterval(_.autoPlayTimer);
}
if(targetSlide < 0){
if(_.slideCount % _.options.slidesToScroll!==0){
animSlide=_.slideCount - (_.slideCount % _.options.slidesToScroll);
}else{
animSlide=_.slideCount + targetSlide;
}}else if(targetSlide >=_.slideCount){
if(_.slideCount % _.options.slidesToScroll!==0){
animSlide=0;
}else{
animSlide=targetSlide - _.slideCount;
}}else{
animSlide=targetSlide;
}
_.animating=true;
_.$slider.trigger('beforeChange', [_, _.currentSlide, animSlide]);
oldSlide=_.currentSlide;
_.currentSlide=animSlide;
_.setSlideClasses(_.currentSlide);
if(_.options.asNavFor){
navTarget=_.getNavTarget();
navTarget=navTarget.slick('getSlick');
if(navTarget.slideCount <=navTarget.options.slidesToShow){
navTarget.setSlideClasses(_.currentSlide);
}}
_.updateDots();
_.updateArrows();
if(_.options.fade===true){
if(dontAnimate!==true){
_.fadeSlideOut(oldSlide);
_.fadeSlide(animSlide, function(){
_.postSlide(animSlide);
});
}else{
_.postSlide(animSlide);
}
_.animateHeight();
return;
}
if(dontAnimate!==true&&_.slideCount > _.options.slidesToShow){
_.animateSlide(targetLeft, function(){
_.postSlide(animSlide);
});
}else{
_.postSlide(animSlide);
}};
Slick.prototype.startLoad=function(){
var _=this;
if(_.options.arrows===true&&_.slideCount > _.options.slidesToShow){
_.$prevArrow.hide();
_.$nextArrow.hide();
}
if(_.options.dots===true&&_.slideCount > _.options.slidesToShow){
_.$dots.hide();
}
_.$slider.addClass('slick-loading');
};
Slick.prototype.swipeDirection=function(){
var xDist, yDist, r, swipeAngle, _=this;
xDist=_.touchObject.startX - _.touchObject.curX;
yDist=_.touchObject.startY - _.touchObject.curY;
r=Math.atan2(yDist, xDist);
swipeAngle=Math.round(r * 180 / Math.PI);
if(swipeAngle < 0){
swipeAngle=360 - Math.abs(swipeAngle);
}
if((swipeAngle <=45)&&(swipeAngle >=0)){
return (_.options.rtl===false ? 'left':'right');
}
if((swipeAngle <=360)&&(swipeAngle >=315)){
return (_.options.rtl===false ? 'left':'right');
}
if((swipeAngle >=135)&&(swipeAngle <=225)){
return (_.options.rtl===false ? 'right':'left');
}
if(_.options.verticalSwiping===true){
if((swipeAngle >=35)&&(swipeAngle <=135)){
return 'down';
}else{
return 'up';
}}
return 'vertical';
};
Slick.prototype.swipeEnd=function(event){
var _=this,
slideCount,
direction;
_.dragging=false;
_.swiping=false;
if(_.scrolling){
_.scrolling=false;
return false;
}
_.interrupted=false;
_.shouldClick=(_.touchObject.swipeLength > 10) ? false:true;
if(_.touchObject.curX===undefined){
return false;
}
if(_.touchObject.edgeHit===true){
_.$slider.trigger('edge', [_, _.swipeDirection() ]);
}
if(_.touchObject.swipeLength >=_.touchObject.minSwipe){
direction=_.swipeDirection();
switch(direction){
case 'left':
case 'down':
slideCount =
_.options.swipeToSlide ?
_.checkNavigable(_.currentSlide + _.getSlideCount()) :
_.currentSlide + _.getSlideCount();
_.currentDirection=0;
break;
case 'right':
case 'up':
slideCount =
_.options.swipeToSlide ?
_.checkNavigable(_.currentSlide - _.getSlideCount()) :
_.currentSlide - _.getSlideCount();
_.currentDirection=1;
break;
default:
}
if(direction!='vertical'){
_.slideHandler(slideCount);
_.touchObject={};
_.$slider.trigger('swipe', [_, direction ]);
}}else{
if(_.touchObject.startX!==_.touchObject.curX){
_.slideHandler(_.currentSlide);
_.touchObject={};}}
};
Slick.prototype.swipeHandler=function(event){
var _=this;
if((_.options.swipe===false)||('ontouchend' in document&&_.options.swipe===false)){
return;
}else if(_.options.draggable===false&&event.type.indexOf('mouse')!==-1){
return;
}
_.touchObject.fingerCount=event.originalEvent&&event.originalEvent.touches!==undefined ?
event.originalEvent.touches.length:1;
_.touchObject.minSwipe=_.listWidth / _.options
.touchThreshold;
if(_.options.verticalSwiping===true){
_.touchObject.minSwipe=_.listHeight / _.options
.touchThreshold;
}
switch (event.data.action){
case 'start':
_.swipeStart(event);
break;
case 'move':
_.swipeMove(event);
break;
case 'end':
_.swipeEnd(event);
break;
}};
Slick.prototype.swipeMove=function(event){
var _=this,
edgeWasHit=false,
curLeft, swipeDirection, swipeLength, positionOffset, touches, verticalSwipeLength;
touches=event.originalEvent!==undefined ? event.originalEvent.touches:null;
if(!_.dragging||_.scrolling||touches&&touches.length!==1){
return false;
}
curLeft=_.getLeft(_.currentSlide);
_.touchObject.curX=touches!==undefined ? touches[0].pageX:event.clientX;
_.touchObject.curY=touches!==undefined ? touches[0].pageY:event.clientY;
_.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(_.touchObject.curX - _.touchObject.startX, 2)));
verticalSwipeLength=Math.round(Math.sqrt(Math.pow(_.touchObject.curY - _.touchObject.startY, 2)));
if(!_.options.verticalSwiping&&!_.swiping&&verticalSwipeLength > 4){
_.scrolling=true;
return false;
}
if(_.options.verticalSwiping===true){
_.touchObject.swipeLength=verticalSwipeLength;
}
swipeDirection=_.swipeDirection();
if(event.originalEvent!==undefined&&_.touchObject.swipeLength > 4){
_.swiping=true;
event.preventDefault();
}
positionOffset=(_.options.rtl===false ? 1:-1) * (_.touchObject.curX > _.touchObject.startX ? 1:-1);
if(_.options.verticalSwiping===true){
positionOffset=_.touchObject.curY > _.touchObject.startY ? 1:-1;
}
swipeLength=_.touchObject.swipeLength;
_.touchObject.edgeHit=false;
if(_.options.infinite===false){
if((_.currentSlide===0&&swipeDirection==='right')||(_.currentSlide >=_.getDotCount()&&swipeDirection==='left')){
swipeLength=_.touchObject.swipeLength * _.options.edgeFriction;
_.touchObject.edgeHit=true;
}}
if(_.options.vertical===false){
_.swipeLeft=curLeft + swipeLength * positionOffset;
}else{
_.swipeLeft=curLeft + (swipeLength * (_.$list.height() / _.listWidth)) * positionOffset;
}
if(_.options.verticalSwiping===true){
_.swipeLeft=curLeft + swipeLength * positionOffset;
}
if(_.options.fade===true||_.options.touchMove===false){
return false;
}
if(_.animating===true){
_.swipeLeft=null;
return false;
}
_.setCSS(_.swipeLeft);
};
Slick.prototype.swipeStart=function(event){
var _=this,
touches;
_.interrupted=true;
if(_.touchObject.fingerCount!==1||_.slideCount <=_.options.slidesToShow){
_.touchObject={};
return false;
}
if(event.originalEvent!==undefined&&event.originalEvent.touches!==undefined){
touches=event.originalEvent.touches[0];
}
_.touchObject.startX=_.touchObject.curX=touches!==undefined ? touches.pageX:event.clientX;
_.touchObject.startY=_.touchObject.curY=touches!==undefined ? touches.pageY:event.clientY;
_.dragging=true;
};
Slick.prototype.unfilterSlides=Slick.prototype.slickUnfilter=function(){
var _=this;
if(_.$slidesCache!==null){
_.unload();
_.$slideTrack.children(this.options.slide).detach();
_.$slidesCache.appendTo(_.$slideTrack);
_.reinit();
}};
Slick.prototype.unload=function(){
var _=this;
$('.slick-cloned', _.$slider).remove();
if(_.$dots){
_.$dots.remove();
}
if(_.$prevArrow&&_.htmlExpr.test(_.options.prevArrow)){
_.$prevArrow.remove();
}
if(_.$nextArrow&&_.htmlExpr.test(_.options.nextArrow)){
_.$nextArrow.remove();
}
_.$slides
.removeClass('slick-slide slick-active slick-visible slick-current')
.attr('aria-hidden', 'true')
.css('width', '');
};
Slick.prototype.unslick=function(fromBreakpoint){
var _=this;
_.$slider.trigger('unslick', [_, fromBreakpoint]);
_.destroy();
};
Slick.prototype.updateArrows=function(){
var _=this,
centerOffset;
centerOffset=Math.floor(_.options.slidesToShow / 2);
if(_.options.arrows===true &&
_.slideCount > _.options.slidesToShow &&
!_.options.infinite){
_.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');
_.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');
if(_.currentSlide===0){
_.$prevArrow.addClass('slick-disabled').attr('aria-disabled', 'true');
_.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');
}else if(_.currentSlide >=_.slideCount - _.options.slidesToShow&&_.options.centerMode===false){
_.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');
_.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');
}else if(_.currentSlide >=_.slideCount - 1&&_.options.centerMode===true){
_.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');
_.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');
}}
};
Slick.prototype.updateDots=function(){
var _=this;
if(_.$dots!==null){
_.$dots
.find('li')
.removeClass('slick-active')
.end();
_.$dots
.find('li')
.eq(Math.floor(_.currentSlide / _.options.slidesToScroll))
.addClass('slick-active');
}};
Slick.prototype.visibility=function(){
var _=this;
if(_.options.autoplay){
if(document[_.hidden]){
_.interrupted=true;
}else{
_.interrupted=false;
}}
};
$.fn.slick=function(){
var _=this,
opt=arguments[0],
args=Array.prototype.slice.call(arguments, 1),
l=_.length,
i,
ret;
for (i=0; i < l; i++){
if(typeof opt=='object'||typeof opt=='undefined')
_[i].slick=new Slick(_[i], opt);
else
ret=_[i].slick[opt].apply(_[i].slick, args);
if(typeof ret!='undefined') return ret;
}
return _;
};}));