jQuery(document).ready(function($){
const ajaxUrl=visa_check_data.ajax_url;
const nonce=visa_check_data.nonce;
const primaryColor=visa_check_data.primary_color||'#e20c1d';
const configuredLanguage=visa_check_data.language||'pt';
const containerLanguage=String($('.visa-check-container').first().data('language')||'').trim();
const allowedLanguages=['pt', 'es', 'en'];
const language=allowedLanguages.includes(containerLanguage) ? containerLanguage:configuredLanguage;
const defaultGroups=visa_check_data.default_groups||[];
const mode=String(visa_check_data.mode||'production').toLowerCase();
const availableTranslations=visa_check_data.languages||{};
const translations=availableTranslations[language]||visa_check_data.translations||{};
const VC_TEST_DEFAULTS={
name: 'Teste Automatizado',
email: (window.visa_check_data&&visa_check_data.test_email) ? String(visa_check_data.test_email):'',
phone: '(11) 99999-9999',
profession: 'Analista'
};
const t=translations;
const questions=translations.questions||{};
const uiText=(key)=> {
if(t&&t.ui&&typeof t.ui[key]==='string') return t.ui[key];
return '';
};
const uiTestText=(key)=> {
if(t&&t.ui&&t.ui.test_panel&&typeof t.ui.test_panel[key]==='string') return t.ui.test_panel[key];
return '';
};
const ajaxErrorMessage=(resp, fallback)=> {
if(resp&&resp.data&&typeof resp.data.message==='string'&&resp.data.message){
return resp.data.message;
}
return fallback||uiText('error_generic')||'Erro ao processar. Tente novamente.';
};
function getGclid(){
var m=document.cookie.match(/_gcl_aw=([^;]+)/);
if(m&&m[1]){
var p=m[1].split('.');
if(p.length >=3) return p.slice(2).join('.');
}
return new URLSearchParams(window.location.search).get('gclid')||'';
}
const testState={
enabled: mode==='tests',
autofill: true,
answerMode: 'yes',
applyAllRequested: false,
fillComments: true,
lorem: 'Lorem ipsum dolor sit amet.'};
function getTestPanelHtml(opts){
if(!testState.enabled) return '';
opts=opts||{};
const showApplyHere=(opts.showApplyHere!==false);
const showApplyAll=(opts.showApplyAll!==false);
const labelYes='Sim';
const labelNo='Não';
const labelRandom='Randômico';
let html='';
html +='<div class="vc-test-panel">';
html +='<div class="vc-test-panel-title">'+'Modo Testes'+'</div>';
html +='<div class="vc-test-panel-content">';
html +='<div class="vc-test-radios">';
html +='<div class="vc-test-radios-label">'+'Respostas'+'</div>';
html +='<label class="vc-test-radio">';
html +='<input type="radio" name="vc-test-answer-mode" value="yes" '+(testState.answerMode==='yes'?'checked':'')+'> ';
html +='<span>'+labelYes+'</span>';
html +='</label>';
html +='<label class="vc-test-radio">';
html +='<input type="radio" name="vc-test-answer-mode" value="no" '+(testState.answerMode==='no'?'checked':'')+'> ';
html +='<span>'+labelNo+'</span>';
html +='</label>';
html +='<label class="vc-test-radio">';
html +='<input type="radio" name="vc-test-answer-mode" value="random" '+(testState.answerMode==='random'?'checked':'')+'> ';
html +='<span>'+labelRandom+'</span>';
html +='</label>';
html +='</div>';
const actionsClass=(!showApplyHere||!showApplyAll) ? 'vc-test-actions vc-test-actions-single':'vc-test-actions';
html +='<div class="'+actionsClass+'">';
if(showApplyAll){
html +='<button type="button" class="btn btn-sm btn-primary" id="vc-test-apply-all">'+'Aplicar Todas'+'</button>';
}
if(showApplyHere){
html +='<button type="button" class="btn btn-sm btn-secondary" id="vc-test-apply-visible">'+'Aplicar Aqui'+'</button>';
}
html +='</div>';
html +='</div>';
html +='</div>';
return html;
}
function bindTestPanelHandlers(opts){
if(!testState.enabled) return;
opts=opts||{};
$('input[name="vc-test-answer-mode"]').off('change.vcTest').on('change.vcTest', function(){
testState.answerMode=$(this).val();
});
$('#vc-test-apply-all').off('click.vcTest').on('click.vcTest', function(){
testState.applyAllRequested=true;
if(Array.isArray(selectedQuestionIds)&&selectedQuestionIds.length){
prefillAllTestAnswers(true);
}
if(opts.rerenderQuestions){
opts.rerenderQuestions();
}});
$('#vc-test-apply-visible').off('click.vcTest').on('click.vcTest', function(){
if($(this).is(':disabled')||$(this).hasClass('disabled')) return;
applyTestFillToVisibleQuestions(true);
if(opts.rerenderQuestions){
opts.rerenderQuestions();
}});
}
function getGoogleReferralOption(){
const p=translations.personal_screen||{};
const refOpts=Array.isArray(p.referral_options) ? p.referral_options:[];
const found=refOpts.find(o=> String(o).toLowerCase().includes('google'));
if(found) return found;
return refOpts.length ? refOpts[0]:'';
}
function applyTestAutofillOnStartScreen(force){
if(!testState.enabled||!testState.autofill) return;
const alreadyHasData = !!($('#vc-name').val().trim()||$('#vc-email').val().trim()||$('#vc-phone').val().trim()||$('#vc-profession').val().trim());
if(alreadyHasData&&!force) return;
$('#vc-name').val($('#vc-name').val()||VC_TEST_DEFAULTS.name);
$('#vc-email').val($('#vc-email').val()||VC_TEST_DEFAULTS.email);
$('#vc-phone').val($('#vc-phone').val()||VC_TEST_DEFAULTS.phone);
$('#vc-profession').val($('#vc-profession').val()||VC_TEST_DEFAULTS.profession);
const googleOpt=getGoogleReferralOption();
if(googleOpt){
$('#vc-referral').val(googleOpt).trigger('change');
}
$('#vc-consent').prop('checked', true);
}
function decideTestAnswer(){
if(testState.answerMode==='yes') return 'yes';
if(testState.answerMode==='no') return 'no';
return Math.random() < 0.5 ? 'yes':'no';
}
function prefillAllTestAnswers(overwrite){
if(!testState.enabled) return;
selectedQuestionIds.forEach(function(qid){
if(!overwrite&&responses.answers&&responses.answers[qid]){
return;
}
responses.answers[qid]=decideTestAnswer();
if(testState.fillComments){
const comment=testState.lorem;
responses.details[qid]=comment;
}else{
delete responses.details[qid];
}});
}
function applyTestFillToVisibleQuestions(overwrite){
if(!testState.enabled) return;
$('fieldset').each(function(){
const qid=$(this).data('qid');
const current=$('input[name="q-'+qid+'"]:checked').val();
if(!overwrite&&current){
return;
}
const chosen=decideTestAnswer();
$('input[name="q-'+qid+'"][value="'+chosen+'"]').prop('checked', true);
responses.answers[qid]=chosen;
if(testState.fillComments){
const $ta=$('textarea[name="detail-'+qid+'"]');
const existing=$ta.val().trim();
if(overwrite||!existing){
$ta.val(testState.lorem);
}
responses.details[qid]=$ta.val().trim();
}else{
$('textarea[name="detail-'+qid+'"]').val('');
delete responses.details[qid];
}});
}
function renderLoadingScreen(){
const container=$('#visa-check-form-container');
container.empty();
const p=translations.personal_screen||{};
const headerTitle=p.header_title||'';
const headerSubtitle=p.header_subtitle||'';
let html='';
html +='<div class="visa-card">';
html +='<div class="visa-card-header text-center">';
html +='<h5 class="fw-bold mb-1">'+ headerTitle +'</h5>';
html +='<p class="mb-0">'+ headerSubtitle +'</p>';
html +='</div>';
html +=getTestPanelHtml({ showApplyHere: false });
html +='<div class="progress">';
html +='<div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" style="width: 100%"></div>';
html +='</div>';
html +='<div class="visa-card-body">';
html +='<div class="visa-loading-area">';
html +='<div class="spinner-border" role="status" aria-hidden="true"></div>';
html +='<div class="mt-3"><strong>' + (uiText('processing')||'Processando...') + '</strong></div>';
html +='</div>';
html +='</div>';
html +='</div>';
container.append(html);
}
const groupMapping={
'TurismoEstudo': [1,2,3,4,5,6,7,8,9,10,11,12],
'TrabalhoTemporario': [13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],
'ImigranteTrabalho': [37,38,39,40,41,42,43,44,75,76,77,78,79,80,87,88,89,91,92,93,94,95,96,97,98,99,100,101,102,103,105,106,107,108,109,110,111,112,113],
'Familia': [114,115,116,117,118,119,120,121,122,123,124,125,126],
'Humanitario': [127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153]
};
let selectedGroups=[];
let selectedQuestionIds=[];
let currentPage=0;
const pageSize=5;
let responses={ lead_id: '', gclid: getGclid(), personal: {}, answers: {}, details: {}, consent: 0 };
let responseDetails={};
renderStart();
function renderStart(prefill){
const container=$('#visa-check-form-container');
container.empty();
let html='';
html +='<div class="visa-card">';
const p=translations.personal_screen||{};
html +='<div class="visa-card-header text-center">';
const headerTitle=p.header_title||'';
const headerSubtitle=p.header_subtitle||'';
html +='<h5 class="fw-bold mb-1">'+ headerTitle +'</h5>';
html +='<p class="mb-0">'+ headerSubtitle +'</p>';
html +='</div>';
html +=getTestPanelHtml({ showApplyHere: false });
html +='<div class="progress">';
html +='<div class="progress-bar" role="progressbar" style="width:0%" aria-valuemin="0" aria-valuemax="100">0%</div>';
html +='</div>';
html +='<div class="visa-card-body">';
html +='<h3 class="mb-3">'+ (p.title||'') +'</h3>';
html +='<div class="mb-3"><label class="form-label">'+(p.name_label||'')+'</label><input type="text" class="form-control" id="vc-name" required></div>';
html +='<div class="mb-3"><label class="form-label">'+(p.email_label||'E‑mail')+'</label><input type="email" class="form-control" id="vc-email" required></div>';
html +='<div class="mb-3"><label class="form-label">'+(p.phone_label||'')+'</label><input type="text" class="form-control" id="vc-phone" required></div>';
html +='<div class="mb-3"><label class="form-label">'+(p.profession_label||'')+'</label><input type="text" class="form-control" id="vc-profession" required></div>';
html +='<div class="mb-3"><label class="form-label">'+(p.referral_label||'')+'</label><select class="form-select" id="vc-referral" required>';
html +='<option value="" disabled selected>'+ uiText('select_option') +'</option>';
const refOpts=p.referral_options||[];
refOpts.forEach(function(opt){ html +='<option>'+opt+'</option>'; });
html +='</select>';
html +='<div id="vc-referral-detail-container" class="mt-2" style="display:none;"><input type="text" class="form-control" id="vc-referral-detail" placeholder="'+(p.referral_detail_placeholder||'')+'"></div>';
html +='</div>';
html +='<div class="visa-category-section mb-3">';
html +='<p class="fw-semibold mb-2">'+ (p.categories_title||'') +'</p>';
const cats=p.categories||{};
let idx=1;
Object.keys(cats).forEach(function(key){
const label=cats[key];
html +='<div class="form-check mb-1"><input class="form-check-input category-check" type="checkbox" value="'+key+'" id="cat'+idx+'"><label class="form-check-label" for="cat'+idx+'">'+label+'</label></div>';
idx++;
});
html +='</div>';
html +='<div class="visa-consent-section mt-3"><div class="form-check"><input class="form-check-input" type="checkbox" id="vc-consent" required><label class="form-check-label" for="vc-consent">'+(p.consent_text||'')+'</label></div></div>';
html +='<div class="text-end mt-3"><button type="button" class="btn btn-primary" id="vc-start-btn">'+(p.start_button||uiText('next'))+'</button></div>';
html +='</div>';
html +='</div>';
container.append(html);
bindTestPanelHandlers({ rerenderQuestions: false });
if(prefill&&responses&&responses.personal){
$('#vc-name').val(responses.personal.name||'');
$('#vc-email').val(responses.personal.email||'');
$('#vc-phone').val(responses.personal.phone||'');
$('#vc-profession').val(responses.personal.profession||'');
if(responses.personal.referral){
$('#vc-referral').val(responses.personal.referral);
$('#vc-referral-detail').val(responses.personal.referral_detail||'');
}
if(selectedGroups&&selectedGroups.length){
$('input.category-check').prop('checked', false);
selectedGroups.forEach(function(g){
$('input.category-check[value="'+g+'"]').prop('checked', true);
});
}
$('#vc-consent').prop('checked', !!responses.consent);
}
$('#vc-referral').on('change', function(){
const v=$(this).val();
const refOpts=(translations.personal_screen&&translations.personal_screen.referral_options) ? translations.personal_screen.referral_options:[];
const optIndication=refOpts.length >=2 ? refOpts[refOpts.length - 2]:'Indicação';
const optOther=refOpts.length >=1 ? refOpts[refOpts.length - 1]:'Outro';
if(v===optIndication||v===optOther){
$('#vc-referral-detail-container').show();
$('#vc-referral-detail').prop('required', true);
}else{
$('#vc-referral-detail-container').hide();
$('#vc-referral-detail').prop('required', false).val('');
}});
$('#vc-referral').trigger('change');
if(!(prefill&&selectedGroups&&selectedGroups.length)){
defaultGroups.forEach(function(g){
$('input.category-check[value="'+g+'"]').prop('checked', true);
});
}
applyTestAutofillOnStartScreen(false);
$('input.category-check').off('change.vc').on('change.vc', function(){
if($('input.category-check:checked').length > 0){
$('input.category-check').removeClass('is-invalid');
$('.visa-category-section').find('.vc-categories-error').remove();
}});
$('#vc-start-btn').off('click').on('click', function(){
$('.is-invalid').removeClass('is-invalid');
$('.invalid-feedback').remove();
let hasError=false;
const name=$('#vc-name').val().trim();
const email=$('#vc-email').val().trim();
const phone=$('#vc-phone').val().trim();
const prof=$('#vc-profession').val().trim();
const ref=$('#vc-referral').val();
const refDetail=$('#vc-referral-detail').val().trim();
if(!name){
$('#vc-name').addClass('is-invalid').after('<div class="invalid-feedback">'+uiText('name_required')+'</div>');
hasError=true;
}
if(!email){
$('#vc-email').addClass('is-invalid').after('<' + 'div class="invalid-feedback"' + '>' + (t.personal_screen&&t.personal_screen.errors&&t.personal_screen.errors.email_required ? t.personal_screen.errors.email_required:'') + '</div>');
hasError=true;
}else{
const emailRegex=/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/;
if(!emailRegex.test(email)){
$('#vc-email').addClass('is-invalid').after('<' + 'div class="invalid-feedback"' + '>' + (t.personal_screen&&t.personal_screen.errors&&t.personal_screen.errors.email_invalid ? t.personal_screen.errors.email_invalid:'') + '</div>');
hasError=true;
}}
const phoneDigits=phone.replace(/\D/g, '');
if(!phoneDigits||phoneDigits.length < 10){
$('#vc-phone').addClass('is-invalid').after('<' + 'div class="invalid-feedback"' + '>' + (t.personal_screen&&t.personal_screen.errors&&t.personal_screen.errors.phone_invalid ? t.personal_screen.errors.phone_invalid:'') + '</div>');
hasError=true;
}
if(!prof){
$('#vc-profession').addClass('is-invalid').after('<' + 'div class="invalid-feedback"' + '>' + (t.personal_screen&&t.personal_screen.errors&&t.personal_screen.errors.profession_required ? t.personal_screen.errors.profession_required:'') + '</div>');
hasError=true;
}
if(!ref){
$('#vc-referral').addClass('is-invalid').after('<' + 'div class="invalid-feedback"' + '>' + (t.personal_screen&&t.personal_screen.errors&&t.personal_screen.errors.referral_required ? t.personal_screen.errors.referral_required:'') + '</div>');
hasError=true;
}
const refOpts2=(translations.personal_screen&&translations.personal_screen.referral_options) ? translations.personal_screen.referral_options:[];
const optIndication2=refOpts2.length >=2 ? refOpts2[refOpts2.length - 2]:'Indicação';
const optOther2=refOpts2.length >=1 ? refOpts2[refOpts2.length - 1]:'Outro';
if((ref===optIndication2||ref===optOther2)&&!refDetail){
$('#vc-referral-detail').addClass('is-invalid').after('<' + 'div class="invalid-feedback"' + '>' + (t.personal_screen&&t.personal_screen.errors&&t.personal_screen.errors.referral_detail_required ? t.personal_screen.errors.referral_detail_required:'') + '</div>');
hasError=true;
}
if(!$('#vc-consent').is(':checked')){
$('#vc-consent').addClass('is-invalid');
$('<' + 'div class="invalid-feedback"' + '>' + (t.personal_screen&&t.personal_screen.errors&&t.personal_screen.errors.consent_required ? t.personal_screen.errors.consent_required:'') + '</div>').insertAfter($('#vc-consent').next('label'));
hasError=true;
}
selectedGroups=[];
$('input.category-check:checked').each(function(){
selectedGroups.push($(this).val());
});
if(selectedGroups.length===0){
$('input.category-check').addClass('is-invalid');
const $catSection=$('.visa-category-section');
$catSection.find('.vc-categories-error').remove();
$('<div class="invalid-feedback d-block vc-categories-error">'+uiText('select_category_error')+'</div>').appendTo($catSection);
hasError=true;
}
if(hasError){
return;
}
const prevAnswers=(responses&&responses.answers) ? responses.answers:{};
const prevDetails=(responses&&responses.details) ? responses.details:{};
responses=responses||{};
responses.personal={
name: name,
email: email,
phone: phone,
profession: prof,
referral: ref,
referral_detail: refDetail
};
responses.consent=$('#vc-consent').is(':checked') ? 1:0;
responses.gclid=responses.gclid||getGclid();
computeSelectedQuestions();
currentPage=0;
responses.answers={};
responses.details={};
selectedQuestionIds.forEach(function(qid){
if(prevAnswers&&prevAnswers[qid]){
responses.answers[qid]=prevAnswers[qid];
}
if(prevDetails&&prevDetails[qid]){
responses.details[qid]=prevDetails[qid];
}});
prefillAllTestAnswers(!!testState.applyAllRequested);
const $startBtn=$('#vc-start-btn');
const originalStartText=$startBtn.text();
$startBtn.prop('disabled', true).text(uiText('loading')||'Processando...');
captureLeadIfNeeded()
.done(function(resp){
if(resp&&resp.success&&resp.data&&resp.data.lead_id){
responses.lead_id=resp.data.lead_id;
renderQuestions();
return;
}
$startBtn.prop('disabled', false).text(originalStartText);
$('#vc-start-btn').after('<div class="text-danger mt-2 vc-lead-capture-error">'+ajaxErrorMessage(resp, uiText('error_generic'))+'</div>');
})
.fail(function(){
$startBtn.prop('disabled', false).text(originalStartText);
$('#vc-start-btn').after('<div class="text-danger mt-2 vc-lead-capture-error">'+uiText('error_send')+'</div>');
});
});
}
function computeSelectedQuestions(){
const ids=[];
selectedGroups.forEach(function(group){
const arr=groupMapping[group]||[];
arr.forEach(function(id){
if(!ids.includes(id)) ids.push(id);
});
});
ids.sort(function(a,b){ return a-b; });
selectedQuestionIds=ids;
}
function captureLeadIfNeeded(){
if(responses.lead_id){
return $.Deferred().resolve({
success: true,
data: { lead_id: responses.lead_id }}).promise();
}
$('.vc-lead-capture-error').remove();
return $.ajax({
url: ajaxUrl,
type: 'POST',
dataType: 'json',
cache: false,
data: {
action: 'visa_check_capture_lead',
nonce: nonce,
_vc_ts: Date.now(),
name: responses.personal.name,
email: responses.personal.email,
phone: responses.personal.phone,
profession: responses.personal.profession,
referral: responses.personal.referral,
referral_detail: responses.personal.referral_detail,
categories: selectedGroups,
consent: responses.consent,
gclid: responses.gclid||getGclid(),
language: language
}});
}
function renderQuestions(){
const container=$('#visa-check-form-container');
container.empty();
const total=selectedQuestionIds.length;
const answered=currentPage * pageSize;
const percent=total ? Math.floor((answered / total) * 100):0;
let html='';
html +='<div class="visa-card">';
const pHead=translations.personal_screen||{};
const headerTitleQ=pHead.header_title||'';
const headerSubtitleQ=pHead.header_subtitle||'';
html +='<div class="visa-card-header text-center">';
html +='<h5 class="fw-bold mb-1">'+headerTitleQ+'</h5>';
html +='<p class="mb-0">'+headerSubtitleQ+'</p>';
html +='</div>';
html +=getTestPanelHtml();
html +='<div class="progress"><div class="progress-bar" role="progressbar" style="width:'+percent+'%" aria-valuemin="0" aria-valuemax="100">'+percent+'%</div></div>';
html +='<div class="visa-card-body">';
html +='<div id="page-error" class="text-danger mb-2"></div>';
html +='<form id="visa-check-form-page"></form>';
html +='<div class="d-flex justify-content-between align-items-center">';
html +='<button type="button" class="btn btn-secondary" id="vc-back-btn">'+uiText('back')+'</button>';
const isLast=(currentPage + 1) * pageSize >=total;
html +='<button type="button" class="btn btn-primary" id="vc-next-btn">'+ (isLast ? uiText('finish'):uiText('next')) +'</button>';
html +='</div>';
html +='</div>';
html +='</div>';
container.append(html);
bindTestPanelHandlers({ rerenderQuestions: true });
const start=currentPage * pageSize;
const end=Math.min(start + pageSize, total);
for (let i=start; i<end; i++){
const qid=selectedQuestionIds[i];
const qtext=questions[qid]||'';
const fieldset=$('<fieldset class="mb-3" data-qid="'+qid+'"></fieldset>');
fieldset.append('<legend class="visa-question-title">'+qid+'. '+qtext+'</legend>');
const row=$('<div class="d-flex flex-row align-items-start question-row visa-question-row"></div>');
const radioCol=$('<div class="radio-col visa-question-options"></div>');
const rYes=$('<div class="form-check"></div>');
rYes.append('<input class="form-check-input" type="radio" name="q-'+qid+'" value="yes" id="q-'+qid+'-yes"><label class="form-check-label ms-1" for="q-'+qid+'-yes">'+uiText('yes')+'</label>');
const rNo=$('<div class="form-check"></div>');
rNo.append('<input class="form-check-input" type="radio" name="q-'+qid+'" value="no" id="q-'+qid+'-no"><label class="form-check-label ms-1" for="q-'+qid+'-no">'+uiText('no')+'</label>');
radioCol.append(rYes).append(rNo);
const commentCol=$('<div class="flex-grow-1 ms-3 visa-question-comment"></div>');
const ta=$('<textarea class="form-control" rows="2" name="detail-'+qid+'" placeholder="'+uiText('optional_comment')+'" maxlength="150"></textarea>');
commentCol.append(ta);
row.append(radioCol).append(commentCol);
fieldset.append(row);
$('#visa-check-form-page').append(fieldset);
if(responses.answers&&responses.answers[qid]){
$('input[name="q-'+qid+'"][value="'+responses.answers[qid]+'"]').prop('checked', true);
}
if(responses.details&&responses.details[qid]){
$('textarea[name="detail-'+qid+'"]').val(responses.details[qid]);
}}
$('#vc-back-btn').off('click').on('click', function(){
captureResponses();
if(currentPage===0){
renderStart(true);
return;
}
currentPage--;
renderQuestions();
});
$('#vc-next-btn').off('click').on('click', function(){
if(!captureResponses()){
return;
}
if(isLast){
submitForm();
}else{
currentPage++;
renderQuestions();
}});
}
function captureResponses(){
let valid=true;
$('fieldset').removeClass('missing');
$('#page-error').text('');
$('fieldset').each(function(){
const qid=$(this).data('qid');
const val=$('input[name="q-'+qid+'"]:checked').val();
if(!val){
$(this).addClass('missing');
valid=false;
}else{
responses.answers[qid]=val;
const detail=$('textarea[name="detail-'+qid+'"]').val().trim();
if(detail) responses.details[qid]=detail;
}});
if(!valid){
$('#page-error').text(uiText('error_answer_all'));
}
return valid;
}
function submitForm(){
let data={
action: 'visa_check_submit',
nonce: nonce,
_vc_ts: Date.now(),
name: responses.personal.name,
email: responses.personal.email,
phone: responses.personal.phone,
profession: responses.personal.profession,
referral: responses.personal.referral,
referral_detail: responses.personal.referral_detail,
lead_id: responses.lead_id||'',
gclid: responses.gclid||getGclid(),
categories: selectedGroups,
language: language
};
for (let qid in responses.answers){
data['q-'+qid]=responses.answers[qid];
}
for (let qid in responses.details){
data['detail-'+qid]=responses.details[qid];
}
renderLoadingScreen();
$.ajax({
url: ajaxUrl,
type: 'POST',
data: data,
dataType: 'json',
cache: false,
success: function(response){
if(response.success){
let resultHtml='<div class="visa-card">';
resultHtml +=response.data.html;
resultHtml +='</div>';
$('#visa-check-form-container').html(resultHtml);
$(document).off('click', '#vc-new-evaluation-btn').on('click', '#vc-new-evaluation-btn', function(){
selectedGroups=[];
selectedQuestionIds=[];
currentPage=0;
responses={ lead_id: '', gclid: getGclid(), personal: {}, answers: {}, details: {}, consent: 0 };
responseDetails={};
renderStart();
});
}else{
renderSubmitError(ajaxErrorMessage(response, uiText('error_generic')));
}},
error: function(){
renderSubmitError(uiText('error_send'));
}});
}
function renderSubmitError(message){
const container=$('#visa-check-form-container');
container.empty();
let html='';
html +='<div class="visa-card">';
html +='<div class="visa-card-body">';
html +='<p class="text-danger mb-3" id="vc-submit-error-message"></p>';
html +='<button type="button" class="btn btn-primary" id="vc-retry-submit-btn">'+(uiText('finish')||'Tentar novamente')+'</button>';
html +='</div>';
html +='</div>';
container.html(html);
$('#vc-submit-error-message').text(message||uiText('error_send')||'Erro ao enviar. Tente novamente.');
$('#vc-retry-submit-btn').off('click').on('click', function(){
submitForm();
});
}});
(()=> {
"use strict";
var __webpack_exports__={};
class elementorHelloThemeHandler {
constructor(){
this.initSettings();
this.initElements();
this.bindEvents();
}
initSettings(){
this.settings={
selectors: {
menuToggle: '.site-header .site-navigation-toggle',
menuToggleHolder: '.site-header .site-navigation-toggle-holder',
dropdownMenu: '.site-header .site-navigation-dropdown'
}};}
initElements(){
this.elements={
window,
menuToggle: document.querySelector(this.settings.selectors.menuToggle),
menuToggleHolder: document.querySelector(this.settings.selectors.menuToggleHolder),
dropdownMenu: document.querySelector(this.settings.selectors.dropdownMenu)
};}
bindEvents(){
var _this$elements$menuTo;
if(!this.elements.menuToggleHolder||(_this$elements$menuTo=this.elements.menuToggleHolder)!==null&&_this$elements$menuTo!==void 0&&_this$elements$menuTo.classList.contains('hide')){
return;
}
this.elements.menuToggle.addEventListener('click', ()=> this.handleMenuToggle());
this.elements.menuToggle.addEventListener('keyup', event=> {
const ENTER_KEY=13;
const SPACE_KEY=32;
if(ENTER_KEY===event.keyCode||SPACE_KEY===event.keyCode){
event.currentTarget.click();
}});
this.elements.dropdownMenu.querySelectorAll('.menu-item-has-children > a').forEach(anchorElement=> anchorElement.addEventListener('click', event=> this.handleMenuChildren(event)));
}
closeMenuItems(){
this.elements.menuToggleHolder.classList.remove('elementor-active');
this.elements.window.removeEventListener('resize', ()=> this.closeMenuItems());
}
handleMenuToggle(){
const isDropdownVisible = !this.elements.menuToggleHolder.classList.contains('elementor-active');
this.elements.menuToggle.setAttribute('aria-expanded', isDropdownVisible);
this.elements.dropdownMenu.setAttribute('aria-hidden', !isDropdownVisible);
this.elements.menuToggleHolder.classList.toggle('elementor-active', isDropdownVisible);
this.elements.dropdownMenu.querySelectorAll('.elementor-active').forEach(item=> item.classList.remove('elementor-active'));
if(isDropdownVisible){
this.elements.window.addEventListener('resize', ()=> this.closeMenuItems());
}else{
this.elements.window.removeEventListener('resize', ()=> this.closeMenuItems());
}}
handleMenuChildren(event){
const anchor=event.currentTarget;
const parentLi=anchor.parentElement;
if(!(parentLi!==null&&parentLi!==void 0&&parentLi.classList)){
return;
}
parentLi.classList.toggle('elementor-active');
}}
document.addEventListener('DOMContentLoaded', ()=> {
new elementorHelloThemeHandler();
});
})()
;
/*
jQuery(document).ready(function(){
jQuery('#').hide();
});
*/
/*
jQuery(document).ready(function(){
console.log('viralizze_page.js: document->ready');
});
*/
/*
jQuery(window).on('load', function(){
console.log('viralizze_page.js: window->load');
});
*/
/*
jQuery(document).ready(function(){
jQuery('body').on('click' , function(){
console.log('viralizze_page.js: click');
jQuery('#meu_id').css('display' , 'block');
jQuery('.meu_id').css('display' , 'block');
});
});
*/
/*
jQuery(document).ready(function(){
var urlParams=new URLSearchParams(window.location.search);
var gVarParam=urlParams.get('variavel');
if(gVarParam!==null){
console.log(' VARIAVEL=ON ');
}else{
console.log(' VARIAVEL=OFF ');
}});
*/
function googleTranslateElementInit2(){
new google.translate.TranslateElement({ pageLanguage: 'pt' , autoDisplay: false }, "google_translate_element2");
}
if(!window.translate_script){
window.translate_script=document.createElement("script");
translate_script.src="https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit2";
document.body.appendChild(translate_script);
}
function GTranslateGetCurrentLang(){
var keyValue=document["cookie"].match("(^|;) ?googtrans=([^;]*)(;|$)");
return keyValue ? keyValue[2].split("/")[2]:null;
}
function GTranslateFireEvent(element, event){
try
{
if(document.createEventObject){
var evt=document.createEventObject();
element.fireEvent("on" + event, evt);
}else{
var evt=document.createEvent("HTMLEvents");
evt.initEvent(event, true, true);
element.dispatchEvent(evt);
}} catch (e){}}
function doGTranslate(lang_pair){
if(lang_pair.value) lang_pair=lang_pair.value;
if(lang_pair=="") return;
var lang=lang_pair.split("|")[1];
if(GTranslateGetCurrentLang()==null&&lang==lang_pair.split("|")[0]) return;
if(typeof ga=="function"){
ga("send", "event", "GTranslate", lang, location.hostname + location.pathname + location.search);
}
var teCombo;
var sel=document.getElementsByTagName("select");
for(var i=0; i < sel.length; i++)
if(sel[i].className.indexOf("goog-te-combo")!=-1){
teCombo=sel[i];
break;
}
if(document.getElementById("google_translate_element2")==null||document.getElementById("google_translate_element2").innerHTML.length==0||teCombo.length==0||teCombo.innerHTML.length==0){
setTimeout(function (){
doGTranslate(lang_pair);
}, 500);
}else{
teCombo.value=lang;
GTranslateFireEvent(teCombo, "change");
GTranslateFireEvent(teCombo, "change");
}}
var vCurrentGTranslate=jQuery('.goog-te-combo').val() ;
/*
jQuery(document).ready(function(){
});
*/
function changeSelectImgGTranslate(){
var vCurrentSelectImg='pt-br' ;
if(( vCurrentGTranslate==='en')||(vCurrentGTranslate==='en-us')){
vCurrentSelectImg='en-us' ;
}
else if(( vCurrentGTranslate!=null)&&(vCurrentGTranslate!='')){
vCurrentSelectImg=vCurrentGTranslate ;
}
var vImgSrc=jQuery('.'+ vCurrentSelectImg +' div img').attr('src') ;
jQuery('.btn-select div img').attr('src' , vImgSrc);
jQuery('.popup-container').fadeOut(500);
}
jQuery(document).ready(function(){
jQuery('.popup-container').hide();
jQuery('.btn-container').click(function(){
jQuery('.popup-container').fadeToggle(500);
});
});
function addClassGTranslate(){
jQuery('.pt-br	img').addClass('img-color-pb');
jQuery('.en-us img').addClass('img-color-pb');
jQuery('.es 	img').addClass('img-color-pb');
jQuery('.it 	img').addClass('img-color-pb');
jQuery('.fr 	img').addClass('img-color-pb');
jQuery('.de 	img').addClass('img-color-pb');
jQuery('.tr 	img').addClass('img-color-pb');
jQuery('.zh-TW img').addClass('img-color-pb');
jQuery('.ja 	img').addClass('img-color-pb');
jQuery('.ko 	img').addClass('img-color-pb');
jQuery('.hi 	img').addClass('img-color-pb');
jQuery('.mn 	img').addClass('img-color-pb');
jQuery('.ru 	img').addClass('img-color-pb');
}
jQuery(document).ready(function(){
jQuery('.pt-br').click(function(){ doGTranslate('pt|pt'); });
jQuery('.en-us').click(function(){ doGTranslate('pt|en'); });
jQuery('.es').click(function(){ doGTranslate('pt|es'); });
jQuery('.it').click(function(){ doGTranslate('pt|it'); });
jQuery('.fr').click(function(){ doGTranslate('pt|fr'); });
jQuery('.de').click(function(){ doGTranslate('pt|de'); });
jQuery('.tr').click(function(){ doGTranslate('pt|tr'); });
jQuery('.zh-TW').click(function(){ doGTranslate('pt|zh-TW'); });
jQuery('.ja').click(function(){ doGTranslate('pt|ja'); });
jQuery('.ko').click(function(){ doGTranslate('pt|ko'); });
jQuery('.hi').click(function(){ doGTranslate('pt|hi'); });
jQuery('.mn').click(function(){ doGTranslate('pt|mn'); });
jQuery('.ru').click(function(){ doGTranslate('pt|ru'); });
});
function changeGTranslate(){
addClassGTranslate();
if(( vCurrentGTranslate==='en')||(vCurrentGTranslate==='en-us')){
jQuery('.en-us img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='es'){
jQuery('.es img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='it'){
jQuery('.it img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='fr'){
jQuery('.fr img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='de'){
jQuery('.de img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='tr'){
jQuery('.tr img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='zh-TW'){
jQuery('.zh-TW img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='ja'){
jQuery('.ja img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='ko'){
jQuery('.ko img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='hi'){
jQuery('.hi img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='mn'){
jQuery('.mn img').removeClass('img-color-pb');
}
else if(vCurrentGTranslate==='ru'){
jQuery('.ru img').removeClass('img-color-pb');
}else{
jQuery('.pt-br img').removeClass('img-color-pb');
}
changeSelectImgGTranslate();
}
jQuery(document).ready(function(){
setInterval(function(){
if(vCurrentGTranslate!==jQuery('.goog-te-combo').val()){
vCurrentGTranslate=jQuery('.goog-te-combo').val() ;
changeGTranslate();
}}, 500);
});
/*
jQuery(document).ready(function(){
jQuery('#').hide();
});
*/
/*
jQuery(document).ready(function(){
console.log('viralizze_all.js: document->ready');
});
*/
/*
jQuery(window).on('load', function(){
console.log('viralizze_all.js: window->load');
});
*/
/*
jQuery(document).ready(function(){
jQuery('body').on('click' , function(){
console.log('viralizze_all.js: click');
jQuery('#meu_id').css('display' , 'block');
jQuery('.meu_id').css('display' , 'block');
});
});
*/
/*
jQuery(document).ready(function(){
var urlParams=new URLSearchParams(window.location.search);
var gVarParam=urlParams.get('variavel');
if(gVarParam!==null){
console.log(' VARIAVEL=ON ');
}else{
console.log(' VARIAVEL=OFF ');
}});
*/
/*
jQuery(document).ready(function(){
var vTootgle=false ;
jQuery(document).on('keydown' , function(event){
if(event.ctrlKey&&event.shiftKey&&event.keyCode===13){
vTootgle = !vTootgle ;
var vDisplay=vTootgle ? 'block':'none' ;
jQuery('#sangria').css('display' , vDisplay);
jQuery('.sangria').css('display' , vDisplay);
}});
});
*/
jQuery(document).ready(function(){
var oSelector='#disable , .disable' ;
jQuery(oSelector).prop('disabled', true);
});
!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof module&&"object"==typeof module.exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){function b(b){var i=".smartmenus_mouse";if(h||b)h&&b&&(a(document).off(i),h=!1);else{var j=!0,k=null,l={mousemove:function(b){var c={x:b.pageX,y:b.pageY,timeStamp:(new Date).getTime()};if(k){var d=Math.abs(k.x-c.x),g=Math.abs(k.y-c.y);if((d>0||g>0)&&d<=4&&g<=4&&c.timeStamp-k.timeStamp<=300&&(f=!0,j)){var h=a(b.target).closest("a");h.is("a")&&a.each(e,function(){if(a.contains(this.$root[0],h[0]))return this.itemEnter({currentTarget:h[0]}),!1}),j=!1}}k=c}};l[g?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(a){c(a.originalEvent)&&(f=!1)},a(document).on(d(l,i)),h=!0}}function c(a){return!/^(4|mouse)$/.test(a.pointerType)}function d(a,b){b||(b="");var c={};for(var d in a)c[d.split(" ").join(b+" ")+b]=a[d];return c}var e=[],f=!1,g="ontouchstart"in window,h=!1,i=window.requestAnimationFrame||function(a){return setTimeout(a,1e3/60)},j=window.cancelAnimationFrame||function(a){clearTimeout(a)},k=!!a.fn.animate;return a.SmartMenus=function(b,c){this.$root=a(b),this.opts=c,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in b.style||"webkitPerspective"in b.style,this.wasCollapsible=!1,this.init()},a.extend(a.SmartMenus,{hideAll:function(){a.each(e,function(){this.menuHideAll()})},destroy:function(){for(;e.length;)e[0].destroy();b(!0)},prototype:{init:function(c){var f=this;if(!c){e.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var g=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(d({"mouseover focusin":a.proxy(this.rootOver,this),"mouseout focusout":a.proxy(this.rootOut,this),keydown:a.proxy(this.rootKeyDown,this)},g)).on(d({mouseenter:a.proxy(this.itemEnter,this),mouseleave:a.proxy(this.itemLeave,this),mousedown:a.proxy(this.itemDown,this),focus:a.proxy(this.itemFocus,this),blur:a.proxy(this.itemBlur,this),click:a.proxy(this.itemClick,this)},g),"a"),g+=this.rootId,this.opts.hideOnClick&&a(document).on(d({touchstart:a.proxy(this.docTouchStart,this),touchmove:a.proxy(this.docTouchMove,this),touchend:a.proxy(this.docTouchEnd,this),click:a.proxy(this.docClick,this)},g)),a(window).on(d({"resize orientationchange":a.proxy(this.winResize,this)},g)),this.opts.subIndicators&&(this.$subArrow=a("<span/>").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),b()}if(this.$firstSub=this.$root.find("ul").each(function(){f.menuInit(a(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var h=/(index|default)\.[^#\?\/]*/i,i=/#.*/,j=window.location.href.replace(h,""),k=j.replace(i,"");this.$root.find("a:not(.mega-menu a)").each(function(){var b=this.href.replace(h,""),c=a(this);b!=j&&b!=k||(c.addClass("current"),f.opts.markCurrentTree&&c.parentsUntil("[data-smartmenus-id]","ul").each(function(){a(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(b){if(!b){var c=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(c),c+=this.rootId,a(document).off(c),a(window).off(c),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var d=this;this.$root.find("ul").each(function(){var b=a(this);b.dataSM("scroll-arrows")&&b.dataSM("scroll-arrows").remove(),b.dataSM("shown-before")&&((d.opts.subMenusMinWidth||d.opts.subMenusMaxWidth)&&b.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),b.dataSM("scroll-arrows")&&b.dataSM("scroll-arrows").remove(),b.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(b.attr("id")||"").indexOf(d.accessIdPrefix)&&b.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var b=a(this);0==b.attr("id").indexOf(d.accessIdPrefix)&&b.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),b||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),e.splice(a.inArray(this,e),1))},disable:function(b){if(!this.disabled){if(this.menuHideAll(),!b&&!this.opts.isPopup&&this.$root.is(":visible")){var c=this.$root.offset();this.$disableOverlay=a('<div class="sm-jquery-disable-overlay"/>').css({position:"absolute",top:c.top,left:c.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(b){return this.$touchScrollingSub?void(this.$touchScrollingSub=null):void((this.visibleSubMenus.length&&!a.contains(this.$root[0],b.target)||a(b.target).closest("a").length)&&this.menuHideAll())},docTouchEnd:function(b){if(this.lastTouch){if(this.visibleSubMenus.length&&(void 0===this.lastTouch.x2||this.lastTouch.x1==this.lastTouch.x2)&&(void 0===this.lastTouch.y2||this.lastTouch.y1==this.lastTouch.y2)&&(!this.lastTouch.target||!a.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var c=this;this.hideTimeout=setTimeout(function(){c.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(a){if(this.lastTouch){var b=a.originalEvent.touches[0];this.lastTouch.x2=b.pageX,this.lastTouch.y2=b.pageY}},docTouchStart:function(a){var b=a.originalEvent.touches[0];this.lastTouch={x1:b.pageX,y1:b.pageY,target:b.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(b){for(var c=a(b).closest("ul");c.dataSM("in-mega");)c=c.parent().closest("ul");return c[0]||null},getHeight:function(a){return this.getOffset(a,!0)},getOffset:function(a,b){var c;"none"==a.css("display")&&(c={position:a[0].style.position,visibility:a[0].style.visibility},a.css({position:"absolute",visibility:"hidden"}).show());var d=a[0].getBoundingClientRect&&a[0].getBoundingClientRect(),e=d&&(b?d.height||d.bottom-d.top:d.width||d.right-d.left);return e||0===e||(e=b?a[0].offsetHeight:a[0].offsetWidth),c&&a.hide().css(c),e},getStartZIndex:function(a){var b=parseInt(this[a?"$root":"$firstSub"].css("z-index"));return!a&&isNaN(b)&&(b=parseInt(this.$root.css("z-index"))),isNaN(b)?1:b},getTouchPoint:function(a){return a.touches&&a.touches[0]||a.changedTouches&&a.changedTouches[0]||a},getViewport:function(a){var b=a?"Height":"Width",c=document.documentElement["client"+b],d=window["inner"+b];return d&&(c=Math.min(c,d)),c},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(a){return this.getOffset(a)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(a){return this.handleEvents()&&!this.isLinkInMegaMenu(a)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var b="fixed"==this.$root.css("position");return b||this.$root.parentsUntil("body").each(function(){if("fixed"==a(this).css("position"))return b=!0,!1}),b},isLinkInMegaMenu:function(b){return a(this.getClosestMenu(b[0])).hasClass("mega-menu")},isTouchMode:function(){return!f||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(b,c){var d=b.closest("ul"),e=d.dataSM("level");if(e>1&&(!this.activatedItems[e-2]||this.activatedItems[e-2][0]!=d.dataSM("parent-a")[0])){var f=this;a(d.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(d).each(function(){f.itemActivate(a(this).dataSM("parent-a"))})}if(this.isCollapsible()&&!c||this.menuHideSubMenus(this.activatedItems[e-1]&&this.activatedItems[e-1][0]==b[0]?e:e-1),this.activatedItems[e-1]=b,this.$root.triggerHandler("activate.smapi",b[0])!==!1){var g=b.dataSM("sub");g&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(g)}},itemBlur:function(b){var c=a(b.currentTarget);this.handleItemEvents(c)&&this.$root.triggerHandler("blur.smapi",c[0])},itemClick:function(b){var c=a(b.currentTarget);if(this.handleItemEvents(c)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==c.closest("ul")[0])return this.$touchScrollingSub=null,b.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",c[0])===!1)return!1;var d=c.dataSM("sub"),e=!!d&&2==d.dataSM("level");if(d){var f=a(b.target).is(".sub-arrow"),g=this.isCollapsible(),h=/toggle$/.test(this.opts.collapsibleBehavior),i=/link$/.test(this.opts.collapsibleBehavior),j=/^accordion/.test(this.opts.collapsibleBehavior);if(d.is(":visible")){if(!g&&this.opts.showOnClick&&e)return this.menuHide(d),this.clickActivated=!1,this.focusActivated=!1,!1;if(g&&(h||f))return this.itemActivate(c,j),this.menuHide(d),!1}else if((!i||!g||f)&&(!g&&this.opts.showOnClick&&e&&(this.clickActivated=!0),this.itemActivate(c,j),d.is(":visible")))return this.focusActivated=!0,!1}return!(!g&&this.opts.showOnClick&&e||c.hasClass("disabled")||this.$root.triggerHandler("select.smapi",c[0])===!1)&&void 0}},itemDown:function(b){var c=a(b.currentTarget);this.handleItemEvents(c)&&c.dataSM("mousedown",!0)},itemEnter:function(b){var c=a(b.currentTarget);if(this.handleItemEvents(c)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var d=this;this.showTimeout=setTimeout(function(){d.itemActivate(c)},this.opts.showOnClick&&1==c.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",c[0])}},itemFocus:function(b){var c=a(b.currentTarget);this.handleItemEvents(c)&&(!this.focusActivated||this.isTouchMode()&&c.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==c[0]||this.itemActivate(c,!0),this.$root.triggerHandler("focus.smapi",c[0]))},itemLeave:function(b){var c=a(b.currentTarget);this.handleItemEvents(c)&&(this.isTouchMode()||(c[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),c.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",c[0]))},menuHide:function(b){if(this.$root.triggerHandler("beforehide.smapi",b[0])!==!1&&(k&&b.stop(!0,!0),"none"!=b.css("display"))){var c=function(){b.css("z-index","")};this.isCollapsible()?k&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,b,c):b.hide(this.opts.collapsibleHideDuration,c):k&&this.opts.hideFunction?this.opts.hideFunction.call(this,b,c):b.hide(this.opts.hideDuration,c),b.dataSM("scroll")&&(this.menuScrollStop(b),b.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),b.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),b.attr({"aria-expanded":"false","aria-hidden":"true"});var d=b.dataSM("level");this.activatedItems.splice(d-1,1),this.visibleSubMenus.splice(a.inArray(b,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",b[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var a=this.opts.isPopup?1:0,b=this.visibleSubMenus.length-1;b>=a;b--)this.menuHide(this.visibleSubMenus[b]);this.opts.isPopup&&(k&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(k&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(a){for(var b=this.activatedItems.length-1;b>=a;b--){var c=this.activatedItems[b].dataSM("sub");c&&this.menuHide(c)}},menuInit:function(a){if(!a.dataSM("in-mega")){a.hasClass("mega-menu")&&a.find("ul").dataSM("in-mega",!0);for(var b=2,c=a[0];(c=c.parentNode.parentNode)!=this.$root[0];)b++;var d=a.prevAll("a").eq(-1);d.length||(d=a.prevAll().find("a").eq(-1)),d.addClass("has-submenu").dataSM("sub",a),a.dataSM("parent-a",d).dataSM("level",b).parent().dataSM("sub",a);var e=d.attr("id")||this.accessIdPrefix+ ++this.idInc,f=a.attr("id")||this.accessIdPrefix+ ++this.idInc;d.attr({id:e,"aria-haspopup":"true","aria-controls":f,"aria-expanded":"false"}),a.attr({id:f,role:"group","aria-hidden":"true","aria-labelledby":e,"aria-expanded":"false"}),this.opts.subIndicators&&d[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(b){var c,e,f=b.dataSM("parent-a"),h=f.closest("li"),i=h.parent(),j=b.dataSM("level"),k=this.getWidth(b),l=this.getHeight(b),m=f.offset(),n=m.left,o=m.top,p=this.getWidth(f),q=this.getHeight(f),r=a(window),s=r.scrollLeft(),t=r.scrollTop(),u=this.getViewportWidth(),v=this.getViewportHeight(),w=i.parent().is("[data-sm-horizontal-sub]")||2==j&&!i.hasClass("sm-vertical"),x=this.opts.rightToLeftSubMenus&&!h.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&h.is("[data-sm-reverse]"),y=2==j?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,z=2==j?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(w?(c=x?p-k-y:y,e=this.opts.bottomToTopSubMenus?-l-z:q+z):(c=x?y-k:p-y,e=this.opts.bottomToTopSubMenus?q-z-l:z),this.opts.keepInViewport){var A=n+c,B=o+e;if(x&&A<s?c=w?s-A+c:p-y:!x&&A+k>s+u&&(c=w?s+u-k-A+c:y-k),w||(l<v&&B+l>t+v?e+=t+v-l-B:(l>=v||B<t)&&(e+=t-B)),w&&(B+l>t+v+.49||B<t)||!w&&l>v+.49){var C=this;b.dataSM("scroll-arrows")||b.dataSM("scroll-arrows",a([a('<span class="scroll-up"><span class="scroll-up-arrow"></span></span>')[0],a('<span class="scroll-down"><span class="scroll-down-arrow"></span></span>')[0]]).on({mouseenter:function(){b.dataSM("scroll").up=a(this).hasClass("scroll-up"),C.menuScroll(b)},mouseleave:function(a){C.menuScrollStop(b),C.menuScrollOut(b,a)},"mousewheel DOMMouseScroll":function(a){a.preventDefault()}}).insertAfter(b));var D=".smartmenus_scroll";if(b.dataSM("scroll",{y:this.cssTransforms3d?0:e-q,step:1,itemH:q,subH:l,arrowDownH:this.getHeight(b.dataSM("scroll-arrows").eq(1))}).on(d({mouseover:function(a){C.menuScrollOver(b,a)},mouseout:function(a){C.menuScrollOut(b,a)},"mousewheel DOMMouseScroll":function(a){C.menuScrollMousewheel(b,a)}},D)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:c+(parseInt(b.css("border-left-width"))||0),width:k-(parseInt(b.css("border-left-width"))||0)-(parseInt(b.css("border-right-width"))||0),zIndex:b.css("z-index")}).eq(w&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var E={};E[g?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(a){C.menuScrollTouch(b,a)},b.css({"touch-action":"none","-ms-touch-action":"none"}).on(d(E,D))}}}b.css({top:"auto",left:"0",marginLeft:c,marginTop:e-q})},menuScroll:function(a,b,c){var d,e=a.dataSM("scroll"),g=a.dataSM("scroll-arrows"),h=e.up?e.upEnd:e.downEnd;if(!b&&e.momentum){if(e.momentum*=.92,d=e.momentum,d<.5)return void this.menuScrollStop(a)}else d=c||(b||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(e.step));var j=a.dataSM("level");if(this.activatedItems[j-1]&&this.activatedItems[j-1].dataSM("sub")&&this.activatedItems[j-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(j-1),e.y=e.up&&h<=e.y||!e.up&&h>=e.y?e.y:Math.abs(h-e.y)>d?e.y+(e.up?d:-d):h,a.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+e.y+"px, 0)",transform:"translate3d(0, "+e.y+"px, 0)"}:{marginTop:e.y}),f&&(e.up&&e.y>e.downEnd||!e.up&&e.y<e.upEnd)&&g.eq(e.up?1:0).show(),e.y==h)f&&g.eq(e.up?0:1).hide(),this.menuScrollStop(a);else if(!b){this.opts.scrollAccelerate&&e.step<this.opts.scrollStep&&(e.step+=.2);var k=this;this.scrollTimeout=i(function(){k.menuScroll(a)})}},menuScrollMousewheel:function(a,b){if(this.getClosestMenu(b.target)==a[0]){b=b.originalEvent;var c=(b.wheelDelta||-b.detail)>0;a.dataSM("scroll-arrows").eq(c?0:1).is(":visible")&&(a.dataSM("scroll").up=c,this.menuScroll(a,!0))}b.preventDefault()},menuScrollOut:function(b,c){f&&(/^scroll-(up|down)/.test((c.relatedTarget||"").className)||(b[0]==c.relatedTarget||a.contains(b[0],c.relatedTarget))&&this.getClosestMenu(c.relatedTarget)==b[0]||b.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(b,c){if(f&&!/^scroll-(up|down)/.test(c.target.className)&&this.getClosestMenu(c.target)==b[0]){this.menuScrollRefreshData(b);var d=b.dataSM("scroll"),e=a(window).scrollTop()-b.dataSM("parent-a").offset().top-d.itemH;b.dataSM("scroll-arrows").eq(0).css("margin-top",e).end().eq(1).css("margin-top",e+this.getViewportHeight()-d.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(b){var c=b.dataSM("scroll"),d=a(window).scrollTop()-b.dataSM("parent-a").offset().top-c.itemH;this.cssTransforms3d&&(d=-(parseFloat(b.css("margin-top"))-d)),a.extend(c,{upEnd:d,downEnd:d+this.getViewportHeight()-c.subH})},menuScrollStop:function(a){if(this.scrollTimeout)return j(this.scrollTimeout),this.scrollTimeout=0,a.dataSM("scroll").step=1,!0},menuScrollTouch:function(b,d){if(d=d.originalEvent,c(d)){var e=this.getTouchPoint(d);if(this.getClosestMenu(e.target)==b[0]){var f=b.dataSM("scroll");if(/(start|down)$/i.test(d.type))this.menuScrollStop(b)?(d.preventDefault(),this.$touchScrollingSub=b):this.$touchScrollingSub=null,this.menuScrollRefreshData(b),a.extend(f,{touchStartY:e.pageY,touchStartTime:d.timeStamp});else if(/move$/i.test(d.type)){var g=void 0!==f.touchY?f.touchY:f.touchStartY;if(void 0!==g&&g!=e.pageY){this.$touchScrollingSub=b;var h=g<e.pageY;void 0!==f.up&&f.up!=h&&a.extend(f,{touchStartY:e.pageY,touchStartTime:d.timeStamp}),a.extend(f,{up:h,touchY:e.pageY}),this.menuScroll(b,!0,Math.abs(e.pageY-g))}d.preventDefault()}else void 0!==f.touchY&&((f.momentum=15*Math.pow(Math.abs(e.pageY-f.touchStartY)/(d.timeStamp-f.touchStartTime),2))&&(this.menuScrollStop(b),this.menuScroll(b),d.preventDefault()),delete f.touchY)}}},menuShow:function(a){if((a.dataSM("beforefirstshowfired")||(a.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",a[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",a[0])!==!1&&(a.dataSM("shown-before",!0),k&&a.stop(!0,!0),!a.is(":visible"))){var b=a.dataSM("parent-a"),c=this.isCollapsible();if((this.opts.keepHighlighted||c)&&b.addClass("highlighted"),c)a.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(a.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(a.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&a.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var d=this.getWidth(a);a.css("max-width",this.opts.subMenusMaxWidth),d>this.getWidth(a)&&a.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(a)}var e=function(){a.css("overflow","")};c?k&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,a,e):a.show(this.opts.collapsibleShowDuration,e):k&&this.opts.showFunction?this.opts.showFunction.call(this,a,e):a.show(this.opts.showDuration,e),b.attr("aria-expanded","true"),a.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(a),this.$root.triggerHandler("show.smapi",a[0])}},popupHide:function(a){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var b=this;this.hideTimeout=setTimeout(function(){b.menuHideAll()},a?1:this.opts.hideTimeout)},popupShow:function(a,b){if(!this.opts.isPopup)return void alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.');if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),k&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:a,top:b});var c=this,d=function(){c.$root.css("overflow","")};k&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,d):this.$root.show(this.opts.showDuration,d),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(b){if(this.handleEvents())switch(b.keyCode){case 27:var c=this.activatedItems[0];if(c){this.menuHideAll(),c[0].focus();var d=c.dataSM("sub");d&&this.menuHide(d)}break;case 32:var e=a(b.target);if(e.is("a")&&this.handleItemEvents(e)){var d=e.dataSM("sub");d&&!d.is(":visible")&&(this.itemClick({currentTarget:b.target}),b.preventDefault())}}},rootOut:function(a){if(this.handleEvents()&&!this.isTouchMode()&&a.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var b=this;this.hideTimeout=setTimeout(function(){b.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(a){this.handleEvents()&&!this.isTouchMode()&&a.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(a){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==a.type){var b=this.isCollapsible();this.wasCollapsible&&b||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=b}}else if(this.$disableOverlay){var c=this.$root.offset();this.$disableOverlay.css({top:c.top,left:c.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),a.fn.dataSM=function(a,b){return b?this.data(a+"_smartmenus",b):this.data(a+"_smartmenus")},a.fn.removeDataSM=function(a){return this.removeData(a+"_smartmenus")},a.fn.smartmenus=function(b){if("string"==typeof b){var c=arguments,d=b;return Array.prototype.shift.call(c),this.each(function(){var b=a(this).data("smartmenus");b&&b[d]&&b[d].apply(b,c)})}return this.each(function(){var c=a(this).data("sm-options")||null;c&&"object"!=typeof c&&(c=null,alert('ERROR\n\nSmartMenus jQuery init:\nThe value of the "data-sm-options" attribute must be valid JSON.')),c&&a.each(["showFunction","hideFunction","collapsibleShowFunction","collapsibleHideFunction"],function(){this in c&&delete c[this]}),new a.SmartMenus(this,a.extend({},a.fn.smartmenus.defaults,b,c))})},a.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(a,b){a.fadeOut(200,b)},collapsibleShowDuration:0,collapsibleShowFunction:function(a,b){a.slideDown(200,b)},collapsibleHideDuration:0,collapsibleHideFunction:function(a,b){a.slideUp(200,b)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},a});
!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):"undefined"!=typeof exports?module.exports=a(require("jquery")):a(jQuery)}(function($){"use strict";var b,a=window.Slick||{};(a=(b=0,function(a,d){var c,_=this;_.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:$(a),appendDots:$(a),arrows:!0,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:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(b,a){return $('<button type="button" />').text(a+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,focusOnChange:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:0,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},_.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,scrolling:!1,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,sliding:!1,slideOffset:0,swipeLeft:null,swiping:!1,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},$.extend(_,_.initials),_.activeBreakpoint=null,_.animType=null,_.animProp=null,_.breakpoints=[],_.breakpointSettings=[],_.cssTransitions=!1,_.focussed=!1,_.interrupted=!1,_.hidden="hidden",_.paused=!0,_.positionProp=null,_.respondTo=null,_.rowCount=1,_.shouldClick=!0,_.$slider=$(a),_.$slidesCache=null,_.transformType=null,_.transitionType=null,_.visibilityChange="visibilitychange",_.windowWidth=0,_.windowTimer=null,c=$(a).data("slick")||{},_.options=$.extend({},_.defaults,d,c),_.currentSlide=_.options.initialSlide,_.originalSettings=_.options,void 0!==document.mozHidden?(_.hidden="mozHidden",_.visibilityChange="mozvisibilitychange"):void 0!==document.webkitHidden&&(_.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=b++,_.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/,_.registerBreakpoints(),_.init(!0)})).prototype.activateADA=function(){this.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},a.prototype.addSlide=a.prototype.slickAdd=function(b,a,c){var _=this;if("boolean"==typeof a)c=a,a=null;else if(a<0||a>=_.slideCount)return!1;_.unload(),"number"==typeof a?0===a&&0===_.$slides.length?$(b).appendTo(_.$slideTrack):c?$(b).insertBefore(_.$slides.eq(a)):$(b).insertAfter(_.$slides.eq(a)):!0===c?$(b).prependTo(_.$slideTrack):$(b).appendTo(_.$slideTrack),_.$slides=_.$slideTrack.children(this.options.slide),_.$slideTrack.children(this.options.slide).detach(),_.$slideTrack.append(_.$slides),_.$slides.each(function(a,b){$(b).attr("data-slick-index",a)}),_.$slidesCache=_.$slides,_.reinit()},a.prototype.animateHeight=function(){if(1===this.options.slidesToShow&&!0===this.options.adaptiveHeight&&!1===this.options.vertical){var a=this.$slides.eq(this.currentSlide).outerHeight(!0);this.$list.animate({height:a},this.options.speed)}},a.prototype.animateSlide=function(a,b){var c={},_=this;_.animateHeight(),!0===_.options.rtl&&!1===_.options.vertical&&(a=-a),!1===_.transformsEnabled?!1===_.options.vertical?_.$slideTrack.animate({left:a},_.options.speed,_.options.easing,b):_.$slideTrack.animate({top:a},_.options.speed,_.options.easing,b):!1===_.cssTransitions?(!0===_.options.rtl&&(_.currentLeft=-_.currentLeft),$({animStart:_.currentLeft}).animate({animStart:a},{duration:_.options.speed,easing:_.options.easing,step:function(a){a=Math.ceil(a),!1===_.options.vertical?(c[_.animType]="translate("+a+"px, 0px)",_.$slideTrack.css(c)):(c[_.animType]="translate(0px,"+a+"px)",_.$slideTrack.css(c))},complete:function(){b&&b.call()}})):(_.applyTransition(),a=Math.ceil(a),!1===_.options.vertical?c[_.animType]="translate3d("+a+"px, 0px, 0px)":c[_.animType]="translate3d(0px,"+a+"px, 0px)",_.$slideTrack.css(c),b&&setTimeout(function(){_.disableTransition(),b.call()},_.options.speed))},a.prototype.getNavTarget=function(){var a=this.options.asNavFor;return a&&null!==a&&(a=$(a).not(this.$slider)),a},a.prototype.asNavFor=function(b){var a=this.getNavTarget();null!==a&&"object"==typeof a&&a.each(function(){var a=$(this).slick("getSlick");a.unslicked||a.slideHandler(b,!0)})},a.prototype.applyTransition=function(b){var _=this,a={};!1===_.options.fade?a[_.transitionType]=_.transformType+" "+_.options.speed+"ms "+_.options.cssEase:a[_.transitionType]="opacity "+_.options.speed+"ms "+_.options.cssEase,!1===_.options.fade?_.$slideTrack.css(a):_.$slides.eq(b).css(a)},a.prototype.autoPlay=function(){var _=this;_.autoPlayClear(),_.slideCount>_.options.slidesToShow&&(_.autoPlayTimer=setInterval(_.autoPlayIterator,_.options.autoplaySpeed))},a.prototype.autoPlayClear=function(){this.autoPlayTimer&&clearInterval(this.autoPlayTimer)},a.prototype.autoPlayIterator=function(){var _=this,a=_.currentSlide+_.options.slidesToScroll;_.paused||_.interrupted||_.focussed||(!1===_.options.infinite&&(1===_.direction&&_.currentSlide+1===_.slideCount-1?_.direction=0:0===_.direction&&(a=_.currentSlide-_.options.slidesToScroll,_.currentSlide-1==0&&(_.direction=1))),_.slideHandler(a))},a.prototype.buildArrows=function(){var _=this;!0===_.options.arrows&&(_.$prevArrow=$(_.options.prevArrow).addClass("slick-arrow"),_.$nextArrow=$(_.options.nextArrow).addClass("slick-arrow"),_.slideCount>_.options.slidesToShow?(_.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),_.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),_.htmlExpr.test(_.options.prevArrow)&&_.$prevArrow.prependTo(_.options.appendArrows),_.htmlExpr.test(_.options.nextArrow)&&_.$nextArrow.appendTo(_.options.appendArrows),!0!==_.options.infinite&&_.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):_.$prevArrow.add(_.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},a.prototype.buildDots=function(){var a,b,_=this;if(!0===_.options.dots&&_.slideCount>_.options.slidesToShow){for(_.$slider.addClass("slick-dotted"),b=$("<ul />").addClass(_.options.dotsClass),a=0;a<=_.getDotCount();a+=1)b.append($("<li />").append(_.options.customPaging.call(this,_,a)));_.$dots=b.appendTo(_.options.appendDots),_.$dots.find("li").first().addClass("slick-active")}},a.prototype.buildOut=function(){var _=this;_.$slides=_.$slider.children(_.options.slide+":not(.slick-cloned)").addClass("slick-slide"),_.slideCount=_.$slides.length,_.$slides.each(function(b,a){$(a).attr("data-slick-index",b).data("originalStyling",$(a).attr("style")||"")}),_.$slider.addClass("slick-slider"),_.$slideTrack=0===_.slideCount?$('<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),(!0===_.options.centerMode||!0===_.options.swipeToSlide)&&(_.options.slidesToScroll=1),$("img[data-lazy]",_.$slider).not("[src]").addClass("slick-loading"),_.setupInfinite(),_.buildArrows(),_.buildDots(),_.updateDots(),_.setSlideClasses("number"==typeof _.currentSlide?_.currentSlide:0),!0===_.options.draggable&&_.$list.addClass("draggable")},a.prototype.buildRows=function(){var a,b,c,e,g,d,f;if(e=document.createDocumentFragment(),d=this.$slider.children(),this.options.rows>0){for(a=0,f=this.options.slidesPerRow*this.options.rows,g=Math.ceil(d.length/f);a<g;a++){var h=document.createElement("div");for(b=0;b<this.options.rows;b++){var i=document.createElement("div");for(c=0;c<this.options.slidesPerRow;c++){var j=a*f+(b*this.options.slidesPerRow+c);d.get(j)&&i.appendChild(d.get(j))}h.appendChild(i)}e.appendChild(h)}this.$slider.empty().append(e),this.$slider.children().children().children().css({width:100/this.options.slidesPerRow+"%",display:"inline-block"})}},a.prototype.checkResponsive=function(b,h){var c,a,d,_=this,e=!1,f=_.$slider.width(),g=window.innerWidth||$(window).width();if("window"===_.respondTo?d=g:"slider"===_.respondTo?d=f:"min"===_.respondTo&&(d=Math.min(g,f)),_.options.responsive&&_.options.responsive.length&&null!==_.options.responsive){for(c in a=null,_.breakpoints)_.breakpoints.hasOwnProperty(c)&&(!1===_.originalSettings.mobileFirst?d<_.breakpoints[c]&&(a=_.breakpoints[c]):d>_.breakpoints[c]&&(a=_.breakpoints[c]));null!==a?null!==_.activeBreakpoint?(a!==_.activeBreakpoint||h)&&(_.activeBreakpoint=a,"unslick"===_.breakpointSettings[a]?_.unslick(a):(_.options=$.extend({},_.originalSettings,_.breakpointSettings[a]),!0===b&&(_.currentSlide=_.options.initialSlide),_.refresh(b)),e=a):(_.activeBreakpoint=a,"unslick"===_.breakpointSettings[a]?_.unslick(a):(_.options=$.extend({},_.originalSettings,_.breakpointSettings[a]),!0===b&&(_.currentSlide=_.options.initialSlide),_.refresh(b)),e=a):null!==_.activeBreakpoint&&(_.activeBreakpoint=null,_.options=_.originalSettings,!0===b&&(_.currentSlide=_.options.initialSlide),_.refresh(b),e=a),b||!1===e||_.$slider.trigger("breakpoint",[_,e])}},a.prototype.changeSlide=function(b,e){var c,d,a=$(b.currentTarget);switch(a.is("a")&&b.preventDefault(),a.is("li")||(a=a.closest("li")),c=this.slideCount%this.options.slidesToScroll!=0?0:(this.slideCount-this.currentSlide)%this.options.slidesToScroll,b.data.message){case"previous":d=0===c?this.options.slidesToScroll:this.options.slidesToShow-c,this.slideCount>this.options.slidesToShow&&this.slideHandler(this.currentSlide-d,!1,e);break;case"next":d=0===c?this.options.slidesToScroll:c,this.slideCount>this.options.slidesToShow&&this.slideHandler(this.currentSlide+d,!1,e);break;case"index":var f=0===b.data.index?0:b.data.index||a.index()*this.options.slidesToScroll;this.slideHandler(this.checkNavigable(f),!1,e),a.children().trigger("focus");break;default:return}},a.prototype.checkNavigable=function(b){var a,c;if(a=this.getNavigableIndexes(),c=0,b>a[a.length-1])b=a[a.length-1];else for(var d in a){if(b<a[d]){b=c;break}c=a[d]}return b},a.prototype.cleanUpEvents=function(){this.options.dots&&null!==this.$dots&&($("li",this.$dots).off("click.slick",this.changeSlide).off("mouseenter.slick",$.proxy(this.interrupt,this,!0)).off("mouseleave.slick",$.proxy(this.interrupt,this,!1)),!0===this.options.accessibility&&this.$dots.off("keydown.slick",this.keyHandler)),this.$slider.off("focus.slick blur.slick"),!0===this.options.arrows&&this.slideCount>this.options.slidesToShow&&(this.$prevArrow&&this.$prevArrow.off("click.slick",this.changeSlide),this.$nextArrow&&this.$nextArrow.off("click.slick",this.changeSlide),!0===this.options.accessibility&&(this.$prevArrow&&this.$prevArrow.off("keydown.slick",this.keyHandler),this.$nextArrow&&this.$nextArrow.off("keydown.slick",this.keyHandler))),this.$list.off("touchstart.slick mousedown.slick",this.swipeHandler),this.$list.off("touchmove.slick mousemove.slick",this.swipeHandler),this.$list.off("touchend.slick mouseup.slick",this.swipeHandler),this.$list.off("touchcancel.slick mouseleave.slick",this.swipeHandler),this.$list.off("click.slick",this.clickHandler),$(document).off(this.visibilityChange,this.visibility),this.cleanUpSlideEvents(),!0===this.options.accessibility&&this.$list.off("keydown.slick",this.keyHandler),!0===this.options.focusOnSelect&&$(this.$slideTrack).children().off("click.slick",this.selectHandler),$(window).off("orientationchange.slick.slick-"+this.instanceUid,this.orientationChange),$(window).off("resize.slick.slick-"+this.instanceUid,this.resize),$("[draggable!=true]",this.$slideTrack).off("dragstart",this.preventDefault),$(window).off("load.slick.slick-"+this.instanceUid,this.setPosition)},a.prototype.cleanUpSlideEvents=function(){this.$list.off("mouseenter.slick",$.proxy(this.interrupt,this,!0)),this.$list.off("mouseleave.slick",$.proxy(this.interrupt,this,!1))},a.prototype.cleanUpRows=function(){var a;this.options.rows>0&&((a=this.$slides.children().children()).removeAttr("style"),this.$slider.empty().append(a))},a.prototype.clickHandler=function(a){!1===this.shouldClick&&(a.stopImmediatePropagation(),a.stopPropagation(),a.preventDefault())},a.prototype.destroy=function(a){var _=this;_.autoPlayClear(),_.touchObject={},_.cleanUpEvents(),$(".slick-cloned",_.$slider).detach(),_.$dots&&_.$dots.remove(),_.$prevArrow&&_.$prevArrow.length&&(_.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),_.htmlExpr.test(_.options.prevArrow)&&_.$prevArrow.remove()),_.$nextArrow&&_.$nextArrow.length&&(_.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),_.htmlExpr.test(_.options.nextArrow)&&_.$nextArrow.remove()),_.$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=!0,a||_.$slider.trigger("destroy",[_])},a.prototype.disableTransition=function(b){var _=this,a={};a[_.transitionType]="",!1===_.options.fade?_.$slideTrack.css(a):_.$slides.eq(b).css(a)},a.prototype.fadeSlide=function(a,b){var _=this;!1===_.cssTransitions?(_.$slides.eq(a).css({zIndex:_.options.zIndex}),_.$slides.eq(a).animate({opacity:1},_.options.speed,_.options.easing,b)):(_.applyTransition(a),_.$slides.eq(a).css({opacity:1,zIndex:_.options.zIndex}),b&&setTimeout(function(){_.disableTransition(a),b.call()},_.options.speed))},a.prototype.fadeSlideOut=function(a){!1===this.cssTransitions?this.$slides.eq(a).animate({opacity:0,zIndex:this.options.zIndex-2},this.options.speed,this.options.easing):(this.applyTransition(a),this.$slides.eq(a).css({opacity:0,zIndex:this.options.zIndex-2}))},a.prototype.filterSlides=a.prototype.slickFilter=function(a){var _=this;null!==a&&(_.$slidesCache=_.$slides,_.unload(),_.$slideTrack.children(this.options.slide).detach(),_.$slidesCache.filter(a).appendTo(_.$slideTrack),_.reinit())},a.prototype.focusHandler=function(){var _=this;_.$slider.off("focus.slick blur.slick").on("focus.slick","*",function(a){var b=$(this);setTimeout(function(){_.options.pauseOnFocus&&b.is(":focus")&&(_.focussed=!0,_.autoPlay())},0)}).on("blur.slick","*",function(a){$(this),_.options.pauseOnFocus&&(_.focussed=!1,_.autoPlay())})},a.prototype.getCurrent=a.prototype.slickCurrentSlide=function(){return this.currentSlide},a.prototype.getDotCount=function(){var b=0,c=0,a=0;if(!0===this.options.infinite){if(this.slideCount<=this.options.slidesToShow)++a;else for(;b<this.slideCount;)++a,b=c+this.options.slidesToScroll,c+=this.options.slidesToScroll<=this.options.slidesToShow?this.options.slidesToScroll:this.options.slidesToShow}else if(!0===this.options.centerMode)a=this.slideCount;else if(this.options.asNavFor)for(;b<this.slideCount;)++a,b=c+this.options.slidesToScroll,c+=this.options.slidesToScroll<=this.options.slidesToShow?this.options.slidesToScroll:this.options.slidesToShow;else a=1+Math.ceil((this.slideCount-this.options.slidesToShow)/this.options.slidesToScroll);return a-1},a.prototype.getLeft=function(a){var e,c,b,f,_=this,d=0;return _.slideOffset=0,c=_.$slides.first().outerHeight(!0),!0===_.options.infinite?(_.slideCount>_.options.slidesToShow&&(_.slideOffset=-(_.slideWidth*_.options.slidesToShow*1),f=-1,!0===_.options.vertical&&!0===_.options.centerMode&&(2===_.options.slidesToShow?f=-1.5:1===_.options.slidesToShow&&(f=-2)),d=c*_.options.slidesToShow*f),_.slideCount%_.options.slidesToScroll!=0&&a+_.options.slidesToScroll>_.slideCount&&_.slideCount>_.options.slidesToShow&&(a>_.slideCount?(_.slideOffset=-((_.options.slidesToShow-(a-_.slideCount))*_.slideWidth*1),d=-((_.options.slidesToShow-(a-_.slideCount))*c*1)):(_.slideOffset=-(_.slideCount%_.options.slidesToScroll*_.slideWidth*1),d=-(_.slideCount%_.options.slidesToScroll*c*1)))):a+_.options.slidesToShow>_.slideCount&&(_.slideOffset=(a+_.options.slidesToShow-_.slideCount)*_.slideWidth,d=(a+_.options.slidesToShow-_.slideCount)*c),_.slideCount<=_.options.slidesToShow&&(_.slideOffset=0,d=0),!0===_.options.centerMode&&_.slideCount<=_.options.slidesToShow?_.slideOffset=_.slideWidth*Math.floor(_.options.slidesToShow)/2-_.slideWidth*_.slideCount/2:!0===_.options.centerMode&&!0===_.options.infinite?_.slideOffset+=_.slideWidth*Math.floor(_.options.slidesToShow/2)-_.slideWidth:!0===_.options.centerMode&&(_.slideOffset=0,_.slideOffset+=_.slideWidth*Math.floor(_.options.slidesToShow/2)),e=!1===_.options.vertical?-(a*_.slideWidth*1)+_.slideOffset:-(a*c*1)+d,!0===_.options.variableWidth&&(b=_.slideCount<=_.options.slidesToShow||!1===_.options.infinite?_.$slideTrack.children(".slick-slide").eq(a):_.$slideTrack.children(".slick-slide").eq(a+_.options.slidesToShow),e=!0===_.options.rtl?b[0]?-((_.$slideTrack.width()-b[0].offsetLeft-b.width())*1):0:b[0]?-1*b[0].offsetLeft:0,!0===_.options.centerMode&&(b=_.slideCount<=_.options.slidesToShow||!1===_.options.infinite?_.$slideTrack.children(".slick-slide").eq(a):_.$slideTrack.children(".slick-slide").eq(a+_.options.slidesToShow+1),e=!0===_.options.rtl?b[0]?-((_.$slideTrack.width()-b[0].offsetLeft-b.width())*1):0:b[0]?-1*b[0].offsetLeft:0,e+=(_.$list.width()-b.outerWidth())/2)),e},a.prototype.getOption=a.prototype.slickGetOption=function(a){return this.options[a]},a.prototype.getNavigableIndexes=function(){var b,a=0,c=0,d=[];for(!1===this.options.infinite?b=this.slideCount:(a=-1*this.options.slidesToScroll,c=-1*this.options.slidesToScroll,b=2*this.slideCount);a<b;)d.push(a),a=c+this.options.slidesToScroll,c+=this.options.slidesToScroll<=this.options.slidesToShow?this.options.slidesToScroll:this.options.slidesToShow;return d},a.prototype.getSlick=function(){return this},a.prototype.getSlideCount=function(){var b,c,a,_=this;return(a=!0===_.options.centerMode?Math.floor(_.$list.width()/2):0,c=-1*_.swipeLeft+a,!0===_.options.swipeToSlide)?(_.$slideTrack.find(".slick-slide").each(function(g,a){var d,e,f;if(d=$(a).outerWidth(),e=a.offsetLeft,!0!==_.options.centerMode&&(e+=d/2),f=e+d,c<f)return b=a,!1}),Math.abs($(b).attr("data-slick-index")-_.currentSlide)||1):_.options.slidesToScroll},a.prototype.goTo=a.prototype.slickGoTo=function(a,b){this.changeSlide({data:{message:"index",index:parseInt(a)}},b)},a.prototype.init=function(a){var _=this;$(_.$slider).hasClass("slick-initialized")||($(_.$slider).addClass("slick-initialized"),_.buildRows(),_.buildOut(),_.setProps(),_.startLoad(),_.loadSlider(),_.initializeEvents(),_.updateArrows(),_.updateDots(),_.checkResponsive(!0),_.focusHandler()),a&&_.$slider.trigger("init",[_]),!0===_.options.accessibility&&_.initADA(),_.options.autoplay&&(_.paused=!1,_.autoPlay())},a.prototype.initADA=function(){var _=this,c=Math.ceil(_.slideCount/_.options.slidesToShow),d=_.getNavigableIndexes().filter(function(a){return a>=0&&a<_.slideCount});_.$slides.add(_.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),null!==_.$dots&&(_.$slides.not(_.$slideTrack.find(".slick-cloned")).each(function(a){var b=d.indexOf(a);if($(this).attr({role:"tabpanel",id:"slick-slide"+_.instanceUid+a,tabindex:-1}),-1!==b){var c="slick-slide-control"+_.instanceUid+b;$("#"+c).length&&$(this).attr({"aria-describedby":c})}}),_.$dots.attr("role","tablist").find("li").each(function(a){var b=d[a];$(this).attr({role:"presentation"}),$(this).find("button").first().attr({role:"tab",id:"slick-slide-control"+_.instanceUid+a,"aria-controls":"slick-slide"+_.instanceUid+b,"aria-label":a+1+" of "+c,"aria-selected":null,tabindex:"-1"})}).eq(_.currentSlide).find("button").attr({"aria-selected":"true",tabindex:"0"}).end());for(var a=_.currentSlide,b=a+_.options.slidesToShow;a<b;a++)_.options.focusOnChange?_.$slides.eq(a).attr({tabindex:"0"}):_.$slides.eq(a).removeAttr("tabindex");_.activateADA()},a.prototype.initArrowEvents=function(){!0===this.options.arrows&&this.slideCount>this.options.slidesToShow&&(this.$prevArrow.off("click.slick").on("click.slick",{message:"previous"},this.changeSlide),this.$nextArrow.off("click.slick").on("click.slick",{message:"next"},this.changeSlide),!0===this.options.accessibility&&(this.$prevArrow.on("keydown.slick",this.keyHandler),this.$nextArrow.on("keydown.slick",this.keyHandler)))},a.prototype.initDotEvents=function(){!0===this.options.dots&&this.slideCount>this.options.slidesToShow&&($("li",this.$dots).on("click.slick",{message:"index"},this.changeSlide),!0===this.options.accessibility&&this.$dots.on("keydown.slick",this.keyHandler)),!0===this.options.dots&&!0===this.options.pauseOnDotsHover&&this.slideCount>this.options.slidesToShow&&$("li",this.$dots).on("mouseenter.slick",$.proxy(this.interrupt,this,!0)).on("mouseleave.slick",$.proxy(this.interrupt,this,!1))},a.prototype.initSlideEvents=function(){this.options.pauseOnHover&&(this.$list.on("mouseenter.slick",$.proxy(this.interrupt,this,!0)),this.$list.on("mouseleave.slick",$.proxy(this.interrupt,this,!1)))},a.prototype.initializeEvents=function(){this.initArrowEvents(),this.initDotEvents(),this.initSlideEvents(),this.$list.on("touchstart.slick mousedown.slick",{action:"start"},this.swipeHandler),this.$list.on("touchmove.slick mousemove.slick",{action:"move"},this.swipeHandler),this.$list.on("touchend.slick mouseup.slick",{action:"end"},this.swipeHandler),this.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},this.swipeHandler),this.$list.on("click.slick",this.clickHandler),$(document).on(this.visibilityChange,$.proxy(this.visibility,this)),!0===this.options.accessibility&&this.$list.on("keydown.slick",this.keyHandler),!0===this.options.focusOnSelect&&$(this.$slideTrack).children().on("click.slick",this.selectHandler),$(window).on("orientationchange.slick.slick-"+this.instanceUid,$.proxy(this.orientationChange,this)),$(window).on("resize.slick.slick-"+this.instanceUid,$.proxy(this.resize,this)),$("[draggable!=true]",this.$slideTrack).on("dragstart",this.preventDefault),$(window).on("load.slick.slick-"+this.instanceUid,this.setPosition),$(this.setPosition)},a.prototype.initUI=function(){!0===this.options.arrows&&this.slideCount>this.options.slidesToShow&&(this.$prevArrow.show(),this.$nextArrow.show()),!0===this.options.dots&&this.slideCount>this.options.slidesToShow&&this.$dots.show()},a.prototype.keyHandler=function(a){a.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===a.keyCode&&!0===this.options.accessibility?this.changeSlide({data:{message:!0===this.options.rtl?"next":"previous"}}):39===a.keyCode&&!0===this.options.accessibility&&this.changeSlide({data:{message:!0===this.options.rtl?"previous":"next"}}))},a.prototype.lazyLoad=function(){var c,a,b,_=this;function d(a){$("img[data-lazy]",a).each(function(){var c=$(this),b=$(this).attr("data-lazy"),d=$(this).attr("data-srcset"),e=$(this).attr("data-sizes")||_.$slider.attr("data-sizes"),a=document.createElement("img");a.onload=function(){c.animate({opacity:0},100,function(){d&&(c.attr("srcset",d),e&&c.attr("sizes",e)),c.attr("src",b).animate({opacity:1},200,function(){c.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading")}),_.$slider.trigger("lazyLoaded",[_,c,b])})},a.onerror=function(){c.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),_.$slider.trigger("lazyLoadError",[_,c,b])},a.src=b})}if(!0===_.options.centerMode?!0===_.options.infinite?b=(a=_.currentSlide+(_.options.slidesToShow/2+1))+_.options.slidesToShow+2:(a=Math.max(0,_.currentSlide-(_.options.slidesToShow/2+1)),b=2+(_.options.slidesToShow/2+1)+_.currentSlide):(b=Math.ceil((a=_.options.infinite?_.options.slidesToShow+_.currentSlide:_.currentSlide)+_.options.slidesToShow),!0===_.options.fade&&(a>0&&a--,b<=_.slideCount&&b++)),c=_.$slider.find(".slick-slide").slice(a,b),"anticipated"===_.options.lazyLoad)for(var e=a-1,f=b,g=_.$slider.find(".slick-slide"),h=0;h<_.options.slidesToScroll;h++)e<0&&(e=_.slideCount-1),c=(c=c.add(g.eq(e))).add(g.eq(f)),e--,f++;d(c),_.slideCount<=_.options.slidesToShow?d(_.$slider.find(".slick-slide")):_.currentSlide>=_.slideCount-_.options.slidesToShow?d(_.$slider.find(".slick-cloned").slice(0,_.options.slidesToShow)):0===_.currentSlide&&d(_.$slider.find(".slick-cloned").slice(-1*_.options.slidesToShow))},a.prototype.loadSlider=function(){this.setPosition(),this.$slideTrack.css({opacity:1}),this.$slider.removeClass("slick-loading"),this.initUI(),"progressive"===this.options.lazyLoad&&this.progressiveLazyLoad()},a.prototype.next=a.prototype.slickNext=function(){this.changeSlide({data:{message:"next"}})},a.prototype.orientationChange=function(){this.checkResponsive(),this.setPosition()},a.prototype.pause=a.prototype.slickPause=function(){var _=this;_.autoPlayClear(),_.paused=!0},a.prototype.play=a.prototype.slickPlay=function(){var _=this;_.autoPlay(),_.options.autoplay=!0,_.paused=!1,_.focussed=!1,_.interrupted=!1},a.prototype.postSlide=function(a){var _=this;!_.unslicked&&(_.$slider.trigger("afterChange",[_,a]),_.animating=!1,_.slideCount>_.options.slidesToShow&&_.setPosition(),_.swipeLeft=null,_.options.autoplay&&_.autoPlay(),!0===_.options.accessibility&&(_.initADA(),_.options.focusOnChange))&&$(_.$slides.get(_.currentSlide)).attr("tabindex",0).focus()},a.prototype.prev=a.prototype.slickPrev=function(){this.changeSlide({data:{message:"previous"}})},a.prototype.preventDefault=function(a){a.preventDefault()},a.prototype.progressiveLazyLoad=function(c){c=c||1;var b,d,f,g,a,_=this,e=$("img[data-lazy]",_.$slider);e.length?(d=(b=e.first()).attr("data-lazy"),f=b.attr("data-srcset"),g=b.attr("data-sizes")||_.$slider.attr("data-sizes"),a=document.createElement("img"),a.onload=function(){f&&(b.attr("srcset",f),g&&b.attr("sizes",g)),b.attr("src",d).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"),!0===_.options.adaptiveHeight&&_.setPosition(),_.$slider.trigger("lazyLoaded",[_,b,d]),_.progressiveLazyLoad()},a.onerror=function(){c<3?setTimeout(function(){_.progressiveLazyLoad(c+1)},500):(b.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),_.$slider.trigger("lazyLoadError",[_,b,d]),_.progressiveLazyLoad())},a.src=d):_.$slider.trigger("allImagesLoaded",[_])},a.prototype.refresh=function(c){var a,b,_=this;b=_.slideCount-_.options.slidesToShow,!_.options.infinite&&_.currentSlide>b&&(_.currentSlide=b),_.slideCount<=_.options.slidesToShow&&(_.currentSlide=0),a=_.currentSlide,_.destroy(!0),$.extend(_,_.initials,{currentSlide:a}),_.init(),c||_.changeSlide({data:{message:"index",index:a}},!1)},a.prototype.registerBreakpoints=function(){var c,d,a,_=this,b=_.options.responsive||null;if("array"===$.type(b)&&b.length){for(c in _.respondTo=_.options.respondTo||"window",b)if(a=_.breakpoints.length-1,b.hasOwnProperty(c)){for(d=b[c].breakpoint;a>=0;)_.breakpoints[a]&&_.breakpoints[a]===d&&_.breakpoints.splice(a,1),a--;_.breakpoints.push(d),_.breakpointSettings[d]=b[c].settings}_.breakpoints.sort(function(a,b){return _.options.mobileFirst?a-b:b-a})}},a.prototype.reinit=function(){var _=this;_.$slides=_.$slideTrack.children(_.options.slide).addClass("slick-slide"),_.slideCount=_.$slides.length,_.currentSlide>=_.slideCount&&0!==_.currentSlide&&(_.currentSlide=_.currentSlide-_.options.slidesToScroll),_.slideCount<=_.options.slidesToShow&&(_.currentSlide=0),_.registerBreakpoints(),_.setProps(),_.setupInfinite(),_.buildArrows(),_.updateArrows(),_.initArrowEvents(),_.buildDots(),_.updateDots(),_.initDotEvents(),_.cleanUpSlideEvents(),_.initSlideEvents(),_.checkResponsive(!1,!0),!0===_.options.focusOnSelect&&$(_.$slideTrack).children().on("click.slick",_.selectHandler),_.setSlideClasses("number"==typeof _.currentSlide?_.currentSlide:0),_.setPosition(),_.focusHandler(),_.paused=!_.options.autoplay,_.autoPlay(),_.$slider.trigger("reInit",[_])},a.prototype.resize=function(){var _=this;$(window).width()!==_.windowWidth&&(clearTimeout(_.windowDelay),_.windowDelay=window.setTimeout(function(){_.windowWidth=$(window).width(),_.checkResponsive(),_.unslicked||_.setPosition()},50))},a.prototype.removeSlide=a.prototype.slickRemove=function(a,b,c){var _=this;if(a="boolean"==typeof a?!0===(b=a)?0:_.slideCount-1:!0===b?--a:a,_.slideCount<1||a<0||a>_.slideCount-1)return!1;_.unload(),!0===c?_.$slideTrack.children().remove():_.$slideTrack.children(this.options.slide).eq(a).remove(),_.$slides=_.$slideTrack.children(this.options.slide),_.$slideTrack.children(this.options.slide).detach(),_.$slideTrack.append(_.$slides),_.$slidesCache=_.$slides,_.reinit()},a.prototype.setCSS=function(b){var c,d,_=this,a={};!0===_.options.rtl&&(b=-b),c="left"==_.positionProp?Math.ceil(b)+"px":"0px",d="top"==_.positionProp?Math.ceil(b)+"px":"0px",a[_.positionProp]=b,!1===_.transformsEnabled?_.$slideTrack.css(a):(a={},!1===_.cssTransitions?(a[_.animType]="translate("+c+", "+d+")",_.$slideTrack.css(a)):(a[_.animType]="translate3d("+c+", "+d+", 0px)",_.$slideTrack.css(a)))},a.prototype.setDimensions=function(){var _=this;!1===_.options.vertical?!0===_.options.centerMode&&_.$list.css({padding:"0px "+_.options.centerPadding}):(_.$list.height(_.$slides.first().outerHeight(!0)*_.options.slidesToShow),!0===_.options.centerMode&&_.$list.css({padding:_.options.centerPadding+" 0px"})),_.listWidth=_.$list.width(),_.listHeight=_.$list.height(),!1===_.options.vertical&&!1===_.options.variableWidth?(_.slideWidth=Math.ceil(_.listWidth/_.options.slidesToShow),_.$slideTrack.width(Math.ceil(_.slideWidth*_.$slideTrack.children(".slick-slide").length))):!0===_.options.variableWidth?_.$slideTrack.width(5e3*_.slideCount):(_.slideWidth=Math.ceil(_.listWidth),_.$slideTrack.height(Math.ceil(_.$slides.first().outerHeight(!0)*_.$slideTrack.children(".slick-slide").length)));var a=_.$slides.first().outerWidth(!0)-_.$slides.first().width();!1===_.options.variableWidth&&_.$slideTrack.children(".slick-slide").width(_.slideWidth-a)},a.prototype.setFade=function(){var a,_=this;_.$slides.each(function(c,b){a=-(_.slideWidth*c*1),!0===_.options.rtl?$(b).css({position:"relative",right:a,top:0,zIndex:_.options.zIndex-2,opacity:0}):$(b).css({position:"relative",left:a,top:0,zIndex:_.options.zIndex-2,opacity:0})}),_.$slides.eq(_.currentSlide).css({zIndex:_.options.zIndex-1,opacity:1})},a.prototype.setHeight=function(){if(1===this.options.slidesToShow&&!0===this.options.adaptiveHeight&&!1===this.options.vertical){var a=this.$slides.eq(this.currentSlide).outerHeight(!0);this.$list.css("height",a)}},a.prototype.setOption=a.prototype.slickSetOption=function(){var c,d,e,a,b,_=this,f=!1;if("object"===$.type(arguments[0])?(e=arguments[0],f=arguments[1],b="multiple"):"string"===$.type(arguments[0])&&(e=arguments[0],a=arguments[1],f=arguments[2],"responsive"===arguments[0]&&"array"===$.type(arguments[1])?b="responsive":void 0!==arguments[1]&&(b="single")),"single"===b)_.options[e]=a;else if("multiple"===b)$.each(e,function(a,b){_.options[a]=b});else if("responsive"===b)for(d in a)if("array"!==$.type(_.options.responsive))_.options.responsive=[a[d]];else{for(c=_.options.responsive.length-1;c>=0;)_.options.responsive[c].breakpoint===a[d].breakpoint&&_.options.responsive.splice(c,1),c--;_.options.responsive.push(a[d])}f&&(_.unload(),_.reinit())},a.prototype.setPosition=function(){this.setDimensions(),this.setHeight(),!1===this.options.fade?this.setCSS(this.getLeft(this.currentSlide)):this.setFade(),this.$slider.trigger("setPosition",[this])},a.prototype.setProps=function(){var _=this,a=document.body.style;_.positionProp=!0===_.options.vertical?"top":"left","top"===_.positionProp?_.$slider.addClass("slick-vertical"):_.$slider.removeClass("slick-vertical"),(void 0!==a.WebkitTransition||void 0!==a.MozTransition||void 0!==a.msTransition)&&!0===_.options.useCSS&&(_.cssTransitions=!0),_.options.fade&&("number"==typeof _.options.zIndex?_.options.zIndex<3&&(_.options.zIndex=3):_.options.zIndex=_.defaults.zIndex),void 0!==a.OTransform&&(_.animType="OTransform",_.transformType="-o-transform",_.transitionType="OTransition",void 0===a.perspectiveProperty&&void 0===a.webkitPerspective&&(_.animType=!1)),void 0!==a.MozTransform&&(_.animType="MozTransform",_.transformType="-moz-transform",_.transitionType="MozTransition",void 0===a.perspectiveProperty&&void 0===a.MozPerspective&&(_.animType=!1)),void 0!==a.webkitTransform&&(_.animType="webkitTransform",_.transformType="-webkit-transform",_.transitionType="webkitTransition",void 0===a.perspectiveProperty&&void 0===a.webkitPerspective&&(_.animType=!1)),void 0!==a.msTransform&&(_.animType="msTransform",_.transformType="-ms-transform",_.transitionType="msTransition",void 0===a.msTransform&&(_.animType=!1)),void 0!==a.transform&&!1!==_.animType&&(_.animType="transform",_.transformType="transform",_.transitionType="transition"),_.transformsEnabled=_.options.useTransform&&null!==_.animType&&!1!==_.animType},a.prototype.setSlideClasses=function(a){var d,b,c,e;if(b=this.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),this.$slides.eq(a).addClass("slick-current"),!0===this.options.centerMode){var f=this.options.slidesToShow%2==0?1:0;d=Math.floor(this.options.slidesToShow/2),!0===this.options.infinite&&(a>=d&&a<=this.slideCount-1-d?this.$slides.slice(a-d+f,a+d+1).addClass("slick-active").attr("aria-hidden","false"):(c=this.options.slidesToShow+a,b.slice(c-d+1+f,c+d+2).addClass("slick-active").attr("aria-hidden","false")),0===a?b.eq(this.options.slidesToShow+this.slideCount+1).addClass("slick-center"):a===this.slideCount-1&&b.eq(this.options.slidesToShow).addClass("slick-center")),this.$slides.eq(a).addClass("slick-center")}else a>=0&&a<=this.slideCount-this.options.slidesToShow?this.$slides.slice(a,a+this.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):b.length<=this.options.slidesToShow?b.addClass("slick-active").attr("aria-hidden","false"):(e=this.slideCount%this.options.slidesToShow,c=!0===this.options.infinite?this.options.slidesToShow+a:a,this.options.slidesToShow==this.options.slidesToScroll&&this.slideCount-a<this.options.slidesToShow?b.slice(c-(this.options.slidesToShow-e),c+e).addClass("slick-active").attr("aria-hidden","false"):b.slice(c,c+this.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"));("ondemand"===this.options.lazyLoad||"anticipated"===this.options.lazyLoad)&&this.lazyLoad()},a.prototype.setupInfinite=function(){var a,b,c,_=this;if(!0===_.options.fade&&(_.options.centerMode=!1),!0===_.options.infinite&&!1===_.options.fade&&(b=null,_.slideCount>_.options.slidesToShow)){for(c=!0===_.options.centerMode?_.options.slidesToShow+1:_.options.slidesToShow,a=_.slideCount;a>_.slideCount-c;a-=1)b=a-1,$(_.$slides[b]).clone(!0).attr("id","").attr("data-slick-index",b-_.slideCount).prependTo(_.$slideTrack).addClass("slick-cloned");for(a=0;a<c+_.slideCount;a+=1)b=a,$(_.$slides[b]).clone(!0).attr("id","").attr("data-slick-index",b+_.slideCount).appendTo(_.$slideTrack).addClass("slick-cloned");_.$slideTrack.find(".slick-cloned").find("[id]").each(function(){$(this).attr("id","")})}},a.prototype.interrupt=function(a){var _=this;a||_.autoPlay(),_.interrupted=a},a.prototype.selectHandler=function(b){var c=$(b.target).is(".slick-slide")?$(b.target):$(b.target).parents(".slick-slide"),a=parseInt(c.attr("data-slick-index"));if(a||(a=0),this.slideCount<=this.options.slidesToShow){this.slideHandler(a,!1,!0);return}this.slideHandler(a)},a.prototype.slideHandler=function(b,e,f){var a,c,h,g,d,i=null,_=this;if(e=e||!1,(!0!==_.animating||!0!==_.options.waitForAnimate)&&(!0!==_.options.fade||_.currentSlide!==b)){if(!1===e&&_.asNavFor(b),a=b,i=_.getLeft(a),g=_.getLeft(_.currentSlide),_.currentLeft=null===_.swipeLeft?g:_.swipeLeft,!1===_.options.infinite&&!1===_.options.centerMode&&(b<0||b>_.getDotCount()*_.options.slidesToScroll)||!1===_.options.infinite&&!0===_.options.centerMode&&(b<0||b>_.slideCount-_.options.slidesToScroll)){!1===_.options.fade&&(a=_.currentSlide,!0!==f&&_.slideCount>_.options.slidesToShow?_.animateSlide(g,function(){_.postSlide(a)}):_.postSlide(a));return}if(_.options.autoplay&&clearInterval(_.autoPlayTimer),c=a<0?_.slideCount%_.options.slidesToScroll!=0?_.slideCount-_.slideCount%_.options.slidesToScroll:_.slideCount+a:a>=_.slideCount?_.slideCount%_.options.slidesToScroll!=0?0:a-_.slideCount:a,_.animating=!0,_.$slider.trigger("beforeChange",[_,_.currentSlide,c]),h=_.currentSlide,_.currentSlide=c,_.setSlideClasses(_.currentSlide),_.options.asNavFor&&(d=(d=_.getNavTarget()).slick("getSlick")).slideCount<=d.options.slidesToShow&&d.setSlideClasses(_.currentSlide),_.updateDots(),_.updateArrows(),!0===_.options.fade){!0!==f?(_.fadeSlideOut(h),_.fadeSlide(c,function(){_.postSlide(c)})):_.postSlide(c),_.animateHeight();return}!0!==f&&_.slideCount>_.options.slidesToShow?_.animateSlide(i,function(){_.postSlide(c)}):_.postSlide(c)}},a.prototype.startLoad=function(){!0===this.options.arrows&&this.slideCount>this.options.slidesToShow&&(this.$prevArrow.hide(),this.$nextArrow.hide()),!0===this.options.dots&&this.slideCount>this.options.slidesToShow&&this.$dots.hide(),this.$slider.addClass("slick-loading")},a.prototype.swipeDirection=function(){var b,c,a;return(b=this.touchObject.startX-this.touchObject.curX,c=Math.atan2(this.touchObject.startY-this.touchObject.curY,b),a=Math.round(180*c/Math.PI),a<0&&(a=360-Math.abs(a)),a<=45&&a>=0||a<=360&&a>=315)?!1===this.options.rtl?"left":"right":a>=135&&a<=225?!1===this.options.rtl?"right":"left":!0===this.options.verticalSwiping?a>=35&&a<=135?"down":"up":"vertical"},a.prototype.swipeEnd=function(c){var a,b,_=this;if(_.dragging=!1,_.swiping=!1,_.scrolling)return _.scrolling=!1,!1;if(_.interrupted=!1,_.shouldClick=!(_.touchObject.swipeLength>10),void 0===_.touchObject.curX)return!1;if(!0===_.touchObject.edgeHit&&_.$slider.trigger("edge",[_,_.swipeDirection()]),_.touchObject.swipeLength>=_.touchObject.minSwipe){switch(b=_.swipeDirection()){case"left":case"down":a=_.options.swipeToSlide?_.checkNavigable(_.currentSlide+_.getSlideCount()):_.currentSlide+_.getSlideCount(),_.currentDirection=0;break;case"right":case"up":a=_.options.swipeToSlide?_.checkNavigable(_.currentSlide-_.getSlideCount()):_.currentSlide-_.getSlideCount(),_.currentDirection=1}"vertical"!=b&&(_.slideHandler(a),_.touchObject={},_.$slider.trigger("swipe",[_,b]))}else _.touchObject.startX!==_.touchObject.curX&&(_.slideHandler(_.currentSlide),_.touchObject={})},a.prototype.swipeHandler=function(a){var _=this;if(!1!==_.options.swipe&&(!("ontouchend"in document)||!1!==_.options.swipe)&&(!1!==_.options.draggable||-1===a.type.indexOf("mouse")))switch(_.touchObject.fingerCount=a.originalEvent&&void 0!==a.originalEvent.touches?a.originalEvent.touches.length:1,_.touchObject.minSwipe=_.listWidth/_.options.touchThreshold,!0===_.options.verticalSwiping&&(_.touchObject.minSwipe=_.listHeight/_.options.touchThreshold),a.data.action){case"start":_.swipeStart(a);break;case"move":_.swipeMove(a);break;case"end":_.swipeEnd(a)}},a.prototype.swipeMove=function(b){var e,f,c,d,a,g,_=this;return a=void 0!==b.originalEvent?b.originalEvent.touches:null,!!_.dragging&&!_.scrolling&&(!a||1===a.length)&&((e=_.getLeft(_.currentSlide),_.touchObject.curX=void 0!==a?a[0].pageX:b.clientX,_.touchObject.curY=void 0!==a?a[0].pageY:b.clientY,_.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(_.touchObject.curX-_.touchObject.startX,2))),g=Math.round(Math.sqrt(Math.pow(_.touchObject.curY-_.touchObject.startY,2))),_.options.verticalSwiping||_.swiping||!(g>4))?(!0===_.options.verticalSwiping&&(_.touchObject.swipeLength=g),f=_.swipeDirection(),void 0!==b.originalEvent&&_.touchObject.swipeLength>4&&(_.swiping=!0,b.preventDefault()),d=(!1===_.options.rtl?1:-1)*(_.touchObject.curX>_.touchObject.startX?1:-1),!0===_.options.verticalSwiping&&(d=_.touchObject.curY>_.touchObject.startY?1:-1),c=_.touchObject.swipeLength,_.touchObject.edgeHit=!1,!1===_.options.infinite&&(0===_.currentSlide&&"right"===f||_.currentSlide>=_.getDotCount()&&"left"===f)&&(c=_.touchObject.swipeLength*_.options.edgeFriction,_.touchObject.edgeHit=!0),!1===_.options.vertical?_.swipeLeft=e+c*d:_.swipeLeft=e+c*(_.$list.height()/_.listWidth)*d,!0===_.options.verticalSwiping&&(_.swipeLeft=e+c*d),!0!==_.options.fade&&!1!==_.options.touchMove&&(!0===_.animating?(_.swipeLeft=null,!1):void _.setCSS(_.swipeLeft))):(_.scrolling=!0,!1))},a.prototype.swipeStart=function(a){var b,_=this;if(_.interrupted=!0,1!==_.touchObject.fingerCount||_.slideCount<=_.options.slidesToShow)return _.touchObject={},!1;void 0!==a.originalEvent&&void 0!==a.originalEvent.touches&&(b=a.originalEvent.touches[0]),_.touchObject.startX=_.touchObject.curX=void 0!==b?b.pageX:a.clientX,_.touchObject.startY=_.touchObject.curY=void 0!==b?b.pageY:a.clientY,_.dragging=!0},a.prototype.unfilterSlides=a.prototype.slickUnfilter=function(){null!==this.$slidesCache&&(this.unload(),this.$slideTrack.children(this.options.slide).detach(),this.$slidesCache.appendTo(this.$slideTrack),this.reinit())},a.prototype.unload=function(){$(".slick-cloned",this.$slider).remove(),this.$dots&&this.$dots.remove(),this.$prevArrow&&this.htmlExpr.test(this.options.prevArrow)&&this.$prevArrow.remove(),this.$nextArrow&&this.htmlExpr.test(this.options.nextArrow)&&this.$nextArrow.remove(),this.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")},a.prototype.unslick=function(a){this.$slider.trigger("unslick",[this,a]),this.destroy()},a.prototype.updateArrows=function(){this.options.slidesToShow,!0===this.options.arrows&&this.slideCount>this.options.slidesToShow&&!this.options.infinite&&(this.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),this.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===this.currentSlide?(this.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),this.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):this.currentSlide>=this.slideCount-this.options.slidesToShow&&!1===this.options.centerMode?(this.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),this.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):this.currentSlide>=this.slideCount-1&&!0===this.options.centerMode&&(this.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),this.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},a.prototype.updateDots=function(){null!==this.$dots&&(this.$dots.find("li").removeClass("slick-active").end(),this.$dots.find("li").eq(Math.floor(this.currentSlide/this.options.slidesToScroll)).addClass("slick-active"))},a.prototype.visibility=function(){var _=this;_.options.autoplay&&(document[_.hidden]?_.interrupted=!0:_.interrupted=!1)},$.fn.slick=function(){var b,d,_=this,c=arguments[0],e=Array.prototype.slice.call(arguments,1),f=_.length;for(b=0;b<f;b++)if("object"==typeof c||void 0===c?_[b].slick=new a(_[b],c):d=_[b].slick[c].apply(_[b].slick,e),void 0!==d)return d;return _}});
(()=>{"use strict";const t=function(t){return"string"!=typeof t||""===t?(console.error("The namespace must be a non-empty string."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.\-\/]*$/.test(t)||(console.error("The namespace can only contain numbers, letters, dashes, periods, underscores and slashes."),!1)},n=function(t){return"string"!=typeof t||""===t?(console.error("The hook name must be a non-empty string."),!1):/^__/.test(t)?(console.error("The hook name cannot begin with `__`."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(t)||(console.error("The hook name can only contain numbers, letters, dashes, periods and underscores."),!1)},e=function(e,o){return function(i,r,s,c=10){const l=e[o];if(!n(i))return;if(!t(r))return;if("function"!=typeof s)return void console.error("The hook callback must be a function.");if("number"!=typeof c)return void console.error("If specified, the hook priority must be a number.");const a={callback:s,priority:c,namespace:r};if(l[i]){const t=l[i].handlers;let n;for(n=t.length;n>0&&!(c>=t[n-1].priority);n--);n===t.length?t[n]=a:t.splice(n,0,a),l.__current.forEach((t=>{t.name===i&&t.currentIndex>=n&&t.currentIndex++}))}else l[i]={handlers:[a],runs:0};"hookAdded"!==i&&e.doAction("hookAdded",i,r,s,c)}},o=function(e,o,i=!1){return function(r,s){const c=e[o];if(!n(r))return;if(!i&&!t(s))return;if(!c[r])return 0;let l=0;if(i)l=c[r].handlers.length,c[r]={runs:c[r].runs,handlers:[]};else{const t=c[r].handlers;for(let n=t.length-1;n>=0;n--)t[n].namespace===s&&(t.splice(n,1),l++,c.__current.forEach((t=>{t.name===r&&t.currentIndex>=n&&t.currentIndex--})))}return"hookRemoved"!==r&&e.doAction("hookRemoved",r,s),l}},i=function(t,n){return function(e,o){const i=t[n];return void 0!==o?e in i&&i[e].handlers.some((t=>t.namespace===o)):e in i}},r=function(t,n,e=!1){return function(o,...i){const r=t[n];r[o]||(r[o]={handlers:[],runs:0}),r[o].runs++;const s=r[o].handlers;if(!s||!s.length)return e?i[0]:void 0;const c={name:o,currentIndex:0};for(r.__current.push(c);c.currentIndex<s.length;){const t=s[c.currentIndex].callback.apply(null,i);e&&(i[0]=t),c.currentIndex++}return r.__current.pop(),e?i[0]:void 0}},s=function(t,n){return function(){var e;const o=t[n];return null!==(e=o.__current[o.__current.length-1]?.name)&&void 0!==e?e:null}},c=function(t,n){return function(e){const o=t[n];return void 0===e?void 0!==o.__current[0]:!!o.__current[0]&&e===o.__current[0].name}},l=function(t,e){return function(o){const i=t[e];if(n(o))return i[o]&&i[o].runs?i[o].runs:0}};class a{constructor(){this.actions=Object.create(null),this.actions.__current=[],this.filters=Object.create(null),this.filters.__current=[],this.addAction=e(this,"actions"),this.addFilter=e(this,"filters"),this.removeAction=o(this,"actions"),this.removeFilter=o(this,"filters"),this.hasAction=i(this,"actions"),this.hasFilter=i(this,"filters"),this.removeAllActions=o(this,"actions",!0),this.removeAllFilters=o(this,"filters",!0),this.doAction=r(this,"actions"),this.applyFilters=r(this,"filters",!0),this.currentAction=s(this,"actions"),this.currentFilter=s(this,"filters"),this.doingAction=c(this,"actions"),this.doingFilter=c(this,"filters"),this.didAction=l(this,"actions"),this.didFilter=l(this,"filters")}}const h=function(){return new a},u=h(),{addAction:d,addFilter:f,removeAction:m,removeFilter:k,hasAction:g,hasFilter:p,removeAllActions:A,removeAllFilters:b,doAction:_,applyFilters:v,currentAction:y,currentFilter:F,doingAction:B,doingFilter:I,didAction:N,didFilter:x,actions:j,filters:w}=u;window.JetPlugins=window.JetPlugins||new class{constructor(t){this.hooks=t||h(),this.globalNamespace="jet-plugins",this.blocksConditions={}}hookNameFromBlock(t){const n=this.getBlockName(t);return n?`${this.globalNamespace}.frontend.element-ready.${n}`:""}getBlockName(t){return"string"==typeof t?t.replace("/","."):this.getBlockName(t?.dataset?.isBlock||"")}init(t,n){if(n&&n.length&&this.bulkBlocksInit(n),(t=t||jQuery("body"))&&t.length){let n=t.find('[data-is-block*="/"]');n&&n.length&&n.each(((t,n)=>{this.initBlock(n)}))}}isBlockRequiresInit(t){let n=void 0===t.dataset.jetInited;const e=this.getBlockName(t);return n&&this.blocksConditions[e]&&(n=this.blocksConditions[e](t)),n}initBlock(t,n){n=n||!1;const e=this.hookNameFromBlock(t);if(e&&this.hasHandlers(e)){let o=n;o||(o=this.isBlockRequiresInit(t)),o&&(this.hooks.doAction(e,jQuery(t)),t.dataset.jetInited=!0)}}hasHandlers(t){return!!this.hooks.actions[t]&&!(!this.hooks.actions[t].handlers||!this.hooks.actions[t].handlers.length)}registerBlockHandlers(t){const n=this.getBlockName(t.block);this.hooks.addAction(this.hookNameFromBlock(n),`${this.globalNamespace}/${t.block}`,t.callback),t.condition&&"function"==typeof t.condition&&(this.blocksConditions[n]=t.condition)}bulkBlocksInit(t){for(var n=0;n<t.length;n++)this.registerBlockHandlers(t[n])}}})();
(function($){
"use strict";
var JetEngineRegisteredStores=window.JetEngineRegisteredStores||{};
var JetEngineStores=window.JetEngineStores||{};
var JetEngine={
currentMonth: null,
currentRequest: {},
activeCalendarDay: null,
lazyLoading: false,
addedScripts: [],
addedStyles: [],
addedPostCSS: [],
assetsPromises: [],
initDone: false,
commonInit: function(){
JetEngine.commonEvents();
$(window).on('jet-popup/render-content/ajax/success', JetEngine.initStores);
window.JetPlugins.hooks.addFilter('jet-popup.show-popup.data',
'JetEngine.popupData',
(popupData, $popup, $triggeredBy)=> {
if(! $triggeredBy){
return popupData;
}
if($triggeredBy.data('popupIsJetEngine')){
popupData=JetEngine.prepareJetPopup(popupData, { 'is-jet-engine': true }, $triggeredBy);
}
return popupData;
}
);
JetEngine.initStores();
JetEngine.customUrlActions.init();
},
commonEvents: function($scope){
$scope=$scope||$(document);
$scope
.on('click.JetEngine', '.jet-calendar-nav__link', JetEngine.switchCalendarMonth)
.on('click.JetEngine', '.jet-calendar-week__day-mobile-overlay', JetEngine.showCalendarEvent)
.on('click.JetEngine', '.jet-listing-dynamic-link__link[data-delete-link="1"]', JetEngine.showConfirmDeleteDialog)
.on('jet-filter-content-rendered', JetEngine.maybeReinitSlider)
.on('click.JetEngine', '.jet-add-to-store', JetEngine.addToStore)
.on('click.JetEngine', '.jet-remove-from-store', JetEngine.removeFromStore)
.on('click.JetEngine', '.jet-engine-listing-overlay-wrap:not([data-url*="event=hover"])', JetEngine.handleListingItemClick)
.on('jet-filter-content-rendered', JetEngine.filtersCompatibility)
.on('click.JetEngine', '.jet-container[data-url]', JetEngine.handleContainerURL)
.on('change.JetEngine', '.jet-listing-dynamic-link .qty', JetEngine.handleProductQuantityChange);
},
handleProductQuantityChange: function(event){
event.preventDefault();
event.stopPropagation();
const $this=$(this);
$this.closest(".jet-listing-dynamic-link").find(".jet-woo-add-to-cart").data("quantity", $this.val()).attr("data-quantity", $this.val());
},
handleContainerURL: function(){
var $this=$(this),
url=$this.data('url'),
target=$this.data('target');
if(! target){
window.location=url;
}else{
window.open(url, '_blank').focus();
}},
filtersCompatibility: function(event, $provider, filtersInstance, providerType){
if('jet-engine'!==providerType){
return;
}
var $blocksListing=$provider.closest('.jet-listing-grid--blocks');
if($blocksListing.length){
JetEngine.widgetListingGrid($blocksListing);
}
if(window.JetPopupFrontend&&window.JetPopupFrontend.initAttachedPopups){
window.JetPopupFrontend.initAttachedPopups($provider);
}},
init: function(){
var widgets={
'jet-listing-dynamic-field.default':JetEngine.widgetDynamicField,
'jet-listing-grid.default': JetEngine.widgetListingGrid,
};
$.each(widgets, function(widget, callback){
window.elementorFrontend.hooks.addAction('frontend/element_ready/' + widget, callback);
});
window.elementorFrontend.elements.$window.on('elementor/nested-tabs/activate',
(event, content)=> {
const $content=$(content);
setTimeout(()=> {
JetEngine.maybeReinitSlider(event, $content);
JetEngine.widgetDynamicField($content);
});
}
);
window.elementorFrontend.hooks.addFilter('jet-popup/widget-extensions/popup-data',
JetEngine.prepareJetPopup
);
window.JetPlugins.hooks.addFilter('jet-popup.show-popup.data',
'JetEngine.popupData',
(popupData, $popup, $triggeredBy)=> {
if(! $triggeredBy){
return popupData;
}
if($triggeredBy.data('popupIsJetEngine')){
popupData=JetEngine.prepareJetPopup(popupData, { 'is-jet-engine': true }, $triggeredBy);
}
return popupData;
}
);
JetEngine.updateAddedStyles();
},
initBricks: function($scope){
if(window.bricksIsFrontend){
return;
}
$scope=$scope||$('body');
JetEngine.initBlocks($scope);
},
initBlocks: function($scope){
$scope=$scope||$('body');
window.JetPlugins.init($scope, [
{
block: 'jet-engine/listing-grid',
callback: JetEngine.widgetListingGrid
},
{
block: 'jet-engine/dynamic-field',
callback: JetEngine.widgetDynamicField
}
]);
},
initFrontStores: function($scope){
$scope=$scope||$('body');
$('.jet-add-to-store.is-front-store', $scope).each(function(){
var $this=$(this),
args=$this.data('args'),
store=JetEngineStores[ args.store.type ],
count=0;
args=JetEngine.ensureJSON(args);
if(! store){
return;
}
if(store.inStore(args.store.slug, '' + args.post_id)){
JetEngine.switchDataStoreStatus($this);
}});
$('.jet-remove-from-store.is-front-store', $scope).each(function(){
var $this=$(this),
args=$this.data('args'),
store=JetEngineStores[ args.store.type ],
count=0;
args=JetEngine.ensureJSON(args);
if(! store){
return;
}
if(! store.inStore(args.store.slug, '' + args.post_id)){
$this.addClass('is-hidden');
}else{
$this.removeClass('is-hidden');
}});
},
initStores: function(){
JetEngine.initFrontStores();
$.each(JetEngineRegisteredStores, function(storeSlug, storeType){
var store=JetEngineStores[ storeType ],
storeData=null,
count=0;
if(! store){
return;
}
storeData=store.getStore(storeSlug);
if(storeData&&storeData.length){
count=storeData.length;
}
$('span.jet-engine-data-store-count[data-store="' + storeSlug + '"]').text(count);
});
JetEngine.loadFrontStoresItems();
},
loadFrontStoresItems: function($scope){
$scope=$scope||$('body');
$('.jet-listing-not-found.jet-listing-grid__items', $scope).each(function(){
var $this=$(this),
nav=$this.data('nav'),
isStore=$this.data('is-store-listing'),
query=nav.query;
nav=JetEngine.ensureJSON(nav);
if(query&&query.post__in&&query.post__in.length&&0 >=query.post__in.indexOf('is-front')){
var storeType=query.post__in[1],
storeSlug=query.post__in[2],
store=JetEngineStores[ storeType ],
posts=[],
$container=$this.closest('.elementor-widget-container');
if(! $container.length){
$container=$this.closest('.jet-listing-grid--blocks');
}
if(! store){
return;
}
posts=store.getStore(storeSlug);
if(! posts.length){
return;
}
query.post__in=posts;
query.is_front_store=true;
JetEngine.ajaxGetListing({
handler: 'get_listing',
container: $container,
masonry: false,
slider: false,
append: false,
query: query,
widgetSettings: nav.widget_settings,
}, function(response){
JetEngine.widgetListingGrid($container);
});
}else if(isStore){
$(document).trigger('jet-listing-grid-init-store', $this);
}});
},
removeFromStore: function(event){
event.preventDefault();
event.stopPropagation();
var $this=$(this),
args=$this.data('args'),
isDataStoreBtn=$this.hasClass('jet-data-store-link');
args=JetEngine.ensureJSON(args);
if(args.store.is_front){
var store=JetEngineStores[ args.store.type ],
count=0;
if(! store){
return;
}
if(! store.inStore(args.store.slug, '' + args.post_id)){
var storePosts=store.getStore(args.store.slug);
count=storePosts.length;
}else{
count=store.remove(args.store.slug, args.post_id);
}
$('.jet-add-to-store[data-store="' + args.store.slug + '"][data-post="' + args.post_id + '"]').each(function(){
JetEngine.switchDataStoreStatus($(this), true);
});
$('.jet-data-store-link.jet-remove-from-store[data-store="' + args.store.slug + '"][data-post="' + args.post_id + '"]').each(function(){
JetEngine.switchDataStoreStatus($(this), true);
});
$('span.jet-engine-data-store-count[data-store="' + args.store.slug + '"]').text(count);
if(args.remove_from_listing){
$this.closest('.jet-listing-dynamic-post-' + args.post_id).remove();
}
if(args.synch_id){
var $container=$('#' + args.synch_id),
$elemContainer=$container.find('> .elementor-widget-container'),
$items=$container.find('.jet-listing-grid__items'),
posts=[],
nav=$items.data('nav')||{},
query=nav.query||{};
nav=JetEngine.ensureJSON(nav);
posts=store.getStore(args.store.slug);
if(! posts.length){
posts=[ 'is-front', args.store.type, args.store.slug ];
}
query.post__in=posts;
query.is_front_store=true;
JetEngine.ajaxGetListing({
handler: 'get_listing',
container: $elemContainer.length ? $elemContainer:$container,
masonry: false,
slider: false,
append: false,
query: query,
widgetSettings: nav.widget_settings,
postID: window.elementorFrontendConfig.post.id,
elementID: $container.data('id'),
}, function(response){
JetEngine.widgetListingGrid($container);
});
}
$(document).trigger('jet-engine-data-stores-on-remove', args);
return;
}
if($this.hasClass('jet-store-processing')){
return;
}
$this.css('opacity', 0.3);
$this.addClass('jet-store-processing');
$.ajax({
url: JetEngineSettings.ajaxurl,
type: 'POST',
dataType: 'json',
data: {
action: 'jet_engine_remove_from_store_' + args.store.slug,
store: args.store.slug,
post_id: args.post_id,
},
}).done(function(response){
$this.css('opacity', 1);
$this.removeClass('jet-store-processing');
if(response.success){
if(! isDataStoreBtn){
$this.addClass('is-hidden');
}
$('.jet-add-to-store[data-store="' + args.store.slug + '"][data-post="' + args.post_id + '"]').each(function(){
JetEngine.switchDataStoreStatus($(this), true);
});
$('.jet-data-store-link.jet-remove-from-store[data-store="' + args.store.slug + '"][data-post="' + args.post_id + '"]').each(function(){
JetEngine.switchDataStoreStatus($(this), true);
});
if(args.synch_id){
var $container=$('#' + args.synch_id),
$elemContainer=$container.find('> .elementor-widget-container'),
$items=$container.find('.jet-listing-grid__items'),
nav=$items.data('nav'),
query=nav.query,
postID=window.elementorFrontend ? window.elementorFrontendConfig.post.id:0;
nav=JetEngine.ensureJSON(nav);
if($container.hasClass('brxe-jet-engine-listing-grid')){
postID=window.bricksData.postId;
}
JetEngine.ajaxGetListing({
handler: 'get_listing',
container: $elemContainer.length ? $elemContainer:$container,
masonry: false,
slider: false,
append: false,
query: query,
widgetSettings: nav.widget_settings,
postID,
elementID: $container.data('id'),
}, function(response){
JetEngine.widgetListingGrid($container);
});
}
if(args.remove_from_listing){
$this.closest('.jet-listing-grid__item[data-post="' + args.post_id + '"]').remove();
}
if(response.data.fragments){
$.each(response.data.fragments, function(selector, value){
$(selector).html(value);
});
}
$(document).trigger('jet-engine-data-stores-on-remove', args);
}else{
alert(response.data.message);
}
return response;
}).done(function(response){
if(args.remove_from_listing){
$this.closest('.jet-listing-grid__item').remove();
}
if(response.success){
$('span.jet-engine-data-store-count[data-store="' + args.store.slug + '"]').text(response.data.count);
}}).fail(function(jqXHR, textStatus, errorThrown){
$this.css('opacity', 1);
$this.removeClass('jet-store-processing');
alert(errorThrown);
});
},
triggerPopup: function(popupID, isJetEngine, postID){
if(! popupID){
return;
}
var popupData={
popupId: 'jet-popup-' + popupID,
};
if(isJetEngine){
popupData.isJetEngine=true;
popupData.postId=postID;
}
$(window).trigger({
type: 'jet-popup-open-trigger',
popupData: popupData
});
},
addToStore: function(event){
event.preventDefault();
event.stopPropagation();
var $this=$(this),
args=$this.data('args');
args=JetEngine.ensureJSON(args);
if($this.hasClass('in-store')){
if(args.popup){
JetEngine.triggerPopup(args.popup, args.isJetEngine, args.post_id);
}else if('_blank'===$this.attr('target')){
window.open($this.attr('href'));
}else{
window.location=$this.attr('href');
}
return;
}
if(args.store.is_front){
var store=JetEngineStores[ args.store.type ],
count=0;
if(! store){
return;
}
if(store.inStore(args.store.slug, '' + args.post_id)){
var storePosts=store.getStore(args.store.slug);
count=storePosts.length;
}else{
count=store.addToStore(args.store.slug, args.post_id, args.store.size);
if(false===count){
return;
}}
if(args.popup){
JetEngine.triggerPopup(args.popup, args.isJetEngine, args.post_id);
}
JetEngine.switchDataStoreStatus($this);
$('span.jet-engine-data-store-count[data-store="' + args.store.slug + '"]').text(count);
$('.jet-remove-from-store[data-store="' + args.store.slug + '"][data-post="' + args.post_id + '"]').removeClass('is-hidden');
if(args.synch_id){
var $container=$('#' + args.synch_id),
$elemContainer=$container.find('> .elementor-widget-container'),
$items=$container.find('.jet-listing-grid__items'),
posts=[],
nav=$items.data('nav')||{},
query=nav.query||{};
nav=JetEngine.ensureJSON(nav);
posts=store.getStore(args.store.slug);
query.post__in=posts;
query.is_front_store=true;
JetEngine.ajaxGetListing({
handler: 'get_listing',
container: $elemContainer.length ? $elemContainer:$container,
masonry: false,
slider: false,
append: false,
query: query,
widgetSettings: nav.widget_settings,
postID: window.elementorFrontendConfig.post.id,
elementID: $container.data('id'),
}, function(response){
JetEngine.widgetListingGrid($container);
});
}
$(document).trigger('jet-engine-data-stores-on-add', args);
return;
}
if($this.hasClass('jet-store-processing')){
return;
}
$this.css('opacity', 0.3);
$this.addClass('jet-store-processing');
$(document).trigger('jet-engine-on-add-to-store', [ $this, args ]);
$.ajax({
url: JetEngineSettings.ajaxurl,
type: 'POST',
dataType: 'json',
data: {
action: 'jet_engine_add_to_store_' + args.store.slug,
store: args.store.slug,
post_id: args.post_id,
},
}).done(function(response){
$this.css('opacity', 1);
$this.removeClass('jet-store-processing');
if(response.success){
JetEngine.switchDataStoreStatus($this);
$('.jet-remove-from-store[data-store="' + args.store.slug + '"][data-post="' + args.post_id + '"]').removeClass('is-hidden');
if(response.data.fragments){
$.each(response.data.fragments, function(selector, value){
$(selector).html(value);
});
}
if(args.synch_id){
var $container=$('#' + args.synch_id),
$elemContainer=$container.find('> .elementor-widget-container'),
$items=$container.find('.jet-listing-grid__items'),
nav=$items.data('nav'),
query=nav.query,
postID=window.elementorFrontend ? window.elementorFrontendConfig.post.id:0;
nav=JetEngine.ensureJSON(nav);
if($container.hasClass('brxe-jet-engine-listing-grid')){
postID=window.bricksData.postId;
}
JetEngine.ajaxGetListing({
handler: 'get_listing',
container: $elemContainer.length ? $elemContainer:$container,
masonry: false,
slider: false,
append: false,
query: query,
widgetSettings: nav.widget_settings,
postID,
elementID: $container.data('id'),
}, function(response){
JetEngine.widgetListingGrid($container);
});
}
if(args.popup){
JetEngine.triggerPopup(args.popup, args.isJetEngine, args.post_id);
}}else{
alert(response.data.message);
}
$(document).trigger('jet-engine-data-stores-on-add', args);
return response;
}).done(function(response){
if(response.success){
$('span.jet-engine-data-store-count[data-store="' + args.store.slug + '"]').text(response.data.count);
}}).fail(function(jqXHR, textStatus, errorThrown){
$this.css('opacity', 1);
$this.removeClass('jet-store-processing');
alert(errorThrown);
});
},
switchDataStoreStatus: function($item, toInitial){
var isDataStoreLink=$item.hasClass('jet-data-store-link'),
$label=$item.find('.jet-listing-dynamic-link__label, .jet-data-store-link__label'),
$icon=$item.find('.jet-listing-dynamic-link__icon, .jet-data-store-link__icon'),
args=$item.data('args'),
replaceLabel,
replaceURL,
replaceIcon;
args=JetEngine.ensureJSON(args);
toInitial=toInitial||false;
if(isDataStoreLink){
switch(args.action_after_added){
case 'remove_from_store':
if(toInitial){
$item.addClass('jet-add-to-store');
$item.removeClass('jet-remove-from-store');
$item.removeClass('in-store');
}else{
$item.addClass('jet-remove-from-store');
$item.removeClass('jet-add-to-store');
$item.addClass('in-store');
}
break;
case 'hide':
if(toInitial){
$item.removeClass('is-hidden');
}else{
$item.addClass('is-hidden');
}
return;
}}
if(toInitial){
replaceLabel=args.label;
replaceIcon=args.icon;
replaceURL='#';
}else{
replaceLabel=args.added_label;
replaceIcon=args.added_icon;
replaceURL=args.added_url;
}
if($label.length){
$label.replaceWith(replaceLabel);
}else{
$item.append(replaceLabel);
}
if($icon.length){
$icon.replaceWith(replaceIcon);
}else{
$item.prepend(replaceIcon);
}
if(isDataStoreLink&&'remove_from_store'===args.action_after_added){
return;
}
$item.attr('href', replaceURL);
if(toInitial){
$item.removeClass('in-store');
}else if(! $item.hasClass('in-store')){
$item.addClass('in-store');
}},
showConfirmDeleteDialog: function(event){
event.preventDefault();
event.stopPropagation();
var $this=$(this);
if(window.confirm($this.data('delete-message'))){
window.location=$this.attr('href');
}},
handleListingItemClick: function(event){
var url=$(this).data('url'),
target=$(this).data('target')||false;
if(url){
event.preventDefault();
if(window.elementorFrontend&&window.elementorFrontend.isEditMode()){
return;
}
if(-1!==url.indexOf('#jet-engine-action')){
JetEngine.customUrlActions.runAction(url);
}else{
if('_blank'===target){
window.open(url);
return;
}
window.location=url;
}}
},
customUrlActions: {
selectorOnClick: 'a[href^="#jet-engine-action"][href*="event=click"]',
selectorOnHover: 'a[href^="#jet-engine-action"][href*="event=hover"], [data-url^="#jet-engine-action"][data-url*="event=hover"]',
init: function(){
var timeout=null;
$(document).on('click.JetEngine', this.selectorOnClick, function(event){
event.preventDefault();
JetEngine.customUrlActions.actionHandler(event)
});
$(document).on('click.JetEngine', this.selectorOnHover, function(event){
if('A'===event.currentTarget.nodeName){
event.preventDefault();
}});
$(document).on({
'mouseenter.JetEngine': function(event){
if(timeout){
clearTimeout(timeout);
}
timeout=setTimeout(function(){
JetEngine.customUrlActions.actionHandler(event)
}, window.JetEngineSettings.hoverActionTimeout);
},
'mouseleave.JetEngine': function(){
if(timeout){
clearTimeout(timeout);
timeout=null;
}},
}, this.selectorOnHover);
},
actions: {},
addAction: function(name, callback){
this.actions[ name ]=callback;
},
actionHandler: function(event){
var url=$(event.currentTarget).attr('href')||$(event.currentTarget).attr('data-url');
this.runAction(url);
},
runAction: function(url){
var queryParts=url.split('&'),
settings={};
queryParts.forEach(function(item){
if(-1!==item.indexOf('=')){
var pair=item.split('=');
settings[ pair[0] ]=decodeURIComponent(pair[1]);
}});
if(! settings.action){
return;
}
var actionCb=this.actions[ settings.action ];
if(! actionCb){
return;
}
actionCb(settings);
}},
prepareJetPopup: function(popupData, widgetData, $scope){
var postId=null;
if(widgetData['is-jet-engine']){
popupData['isJetEngine']=true;
var $gridItems=$scope.closest('.jet-listing-grid__items'),
$gridItem=$scope.closest('.jet-listing-grid__item'),
$calendarItem=$scope.closest('.jet-calendar-week__day-event'),
$itemObject=$scope.closest('[data-item-object]'),
filterProvider=false,
filterQueryId='default';
if($gridItems.length){
popupData['listingSource']=$gridItems.data('listing-source');
popupData['listingId']=$gridItems.data('listing-id');
popupData['queryId']=$gridItems.data('query-id');
}else{
var $queryItems=$scope.closest('[data-query-id]'),
$listingSource=$scope.closest('[data-listing-source]');
if($queryItems.length){
popupData['queryId']=$queryItems.data('query-id');
}
if($listingSource.length){
popupData['listingSource']=$listingSource.data('listing-source');
}}
if($gridItem.length){
popupData['postId']=$gridItem.data('post-id');
filterProvider='jet-engine';
}else if($calendarItem.length){
popupData['postId']=$calendarItem.data('post-id');
filterProvider='jet-engine-calendar';
}else if($itemObject){
popupData['postId']=$itemObject.data('item-object');
}else if(window.elementorFrontendConfig&&window.elementorFrontendConfig.post){
popupData['postId']=window.elementorFrontendConfig.post.id;
}
if(window.JetEngineFormsEditor&&window.JetEngineFormsEditor.hasEditor){
popupData['hasEditor']=true;
}
if(window.JetSmartFilters){
switch(filterProvider){
case 'jet-engine':
var nav=$gridItems.data('nav');
if(nav.widget_settings?._element_id){
filterQueryId=nav.widget_settings._element_id;
}
break;
case 'jet-engine-calendar':
var settings=$calendarItem.closest('.jet-listing-calendar').data('settings');
if(settings._element_id){
filterQueryId=settings._element_id;
}
break;
}
filterProvider=window.JetPlugins.hooks.applyFilters('jet-engine.prepareJetPopupData.filterProvider', filterProvider, $scope, widgetData);
filterQueryId=window.JetPlugins.hooks.applyFilters('jet-engine.prepareJetPopupData.filterQueryId', filterQueryId, $scope, widgetData);
if(popupData.queryId&&filterProvider
&& window.JetSmartFilters?.filterGroups?.[ filterProvider + '/' + filterQueryId ]?.currentQuery
){
popupData['filtered_query']=window.JetSmartFilters.filterGroups[ filterProvider + '/' + filterQueryId ].currentQuery;
}}
}
return popupData;
},
showCalendarEvent: function(event){
var $this=$(this),
$day=$this.closest('.jet-calendar-week__day'),
$week=$day.closest('.jet-calendar-week'),
$events=$day.find('.jet-calendar-week__day-content'),
activeClass='calendar-event-active';
if($day.hasClass(activeClass)){
$day.removeClass(activeClass);
JetEngine.activeCalendarDay.remove();
JetEngine.activeCalendarDay=null;
return;
}
if(JetEngine.activeCalendarDay){
JetEngine.activeCalendarDay.remove();
$('.' + activeClass).removeClass(activeClass);
JetEngine.activeCalendarDay=null;
}
$day.addClass('calendar-event-active');
JetEngine.activeCalendarDay=$('<tr class="jet-calendar-week"><td colspan="7" class="jet-calendar-week__day jet-calendar-week__day-mobile"><div class="jet-calendar-week__day-mobile-event">' + $events.html() + '</div></td></tr>');
JetEngine.activeCalendarDay.find('.jet-popup-attach-event-inited').removeClass('jet-popup-attach-event-inited');
JetEngine.initElementsHandlers(JetEngine.activeCalendarDay);
JetEngine.activeCalendarDay.insertAfter($week);
},
widgetListingGrid: function($scope){
var widgetID=$scope.closest('.elementor-widget').data('id'),
$wrapper=$scope.find('.jet-listing-grid').first(),
hasLazyLoad=$wrapper.hasClass('jet-listing-grid--lazy-load'),
$listing=$scope.find('.jet-listing-grid__items').first(),
$slider=$listing.parent('.jet-listing-grid__slider'),
$masonry=$listing.hasClass('jet-listing-grid__masonry') ? $listing:false,
navSettings=$listing.data('nav'),
masonryGrid=false,
listingType='elementor';
navSettings=JetEngine.ensureJSON(navSettings);
if(hasLazyLoad){
var lazyLoadOptions=$wrapper.data('lazy-load'),
widgetSettings={},
$container=$scope.find('.elementor-widget-container');
if(window.elementorFrontend&&window.elementorFrontend.isEditMode()
&& $wrapper.closest('.elementor[data-elementor-type]').hasClass('elementor-edit-mode')
){
widgetSettings=JetEngine.getEditorElementSettings($scope.closest('.elementor-widget'));
widgetID=false;
}
if(! $container.length){
$container=$scope;
widgetSettings=$scope.data('widget-settings');
}
if(! widgetID){
widgetID=$scope.data('element-id');
listingType=$scope.data('listing-type');
}
JetEngine.lazyLoadListing({
container:      $container,
elementID:      widgetID,
postID:         lazyLoadOptions.post_id,
queriedID:      lazyLoadOptions.queried_id||false,
offset:         lazyLoadOptions.offset||'0px',
query:          lazyLoadOptions.query||{},
listingType:    listingType,
widgetSettings: widgetSettings,
extraProps:     lazyLoadOptions.extra_props||false,
});
return;
}
if($slider.length){
JetEngine.initSlider($slider);
}
if($masonry&&$masonry.length){
JetEngine.initMasonry($masonry);
if($scope.hasClass('brxe-jet-engine-listing-grid')){
$(window).on('load', function(){
JetEngine.runMasonry($masonry);
});
}}
if(navSettings&&navSettings.enabled){
JetEngine.loadMoreListing({
container: $listing,
settings:  navSettings,
masonry:   $masonry,
slider:    $slider,
});
}
if(window.elementorFrontend&&window.elementorFrontend.isEditMode()
&& $wrapper.closest('.elementor-element-edit-mode').length
){
JetEngine.initElementsHandlers($wrapper);
}},
initMasonry: function($masonry, masonrySettings){
imagesLoaded($masonry, function(){
JetEngine.runMasonry($masonry, masonrySettings);
});
},
runMasonry: function($masonry, masonrySettings){
var defaultSettings={
itemSelector: '> .jet-listing-grid__item',
columnsKey:   'columns',
};
masonrySettings=masonrySettings||{};
masonrySettings=$.extend({}, defaultSettings, masonrySettings);
var $eWidget=$masonry.closest('.elementor-widget'),
$items=$(masonrySettings.itemSelector, $masonry),
options=$masonry.data('masonry-grid-options')||{};
options=JetEngine.ensureJSON(options);
$items.css({
marginTop: ''
});
const { gap }=options;
let margin=null;
if(gap){
margin={
x: +gap.horizontal,
y: +gap.vertical,
};}
var args={
container: $masonry[0],
margin: margin ? margin:0,
};
if($eWidget.length){
var settings=JetEngine.getElementorElementSettings($eWidget),
breakpoints={},
eBreakpoints=window.elementorFrontend.config.responsive.activeBreakpoints,
columnsKey=masonrySettings.columnsKey;
args.columns=settings[columnsKey + '_widescreen'] ? +settings[columnsKey + '_widescreen']:+settings[columnsKey];
Object.keys(eBreakpoints).reverse().forEach(function(breakpointName){
if(settings[columnsKey + '_' + breakpointName]){
if('widescreen'===breakpointName){
breakpoints[eBreakpoints[breakpointName].value - 1]=+settings[columnsKey];
}else{
breakpoints[eBreakpoints[breakpointName].value]=+settings[columnsKey + '_' + breakpointName];
}}
});
args.breakAt=breakpoints;
}else{
args.columns=options.columns.desktop;
args.breakAt={
1025: options.columns.tablet,
768:  options.columns.mobile,
};}
var masonryInstance=Macy(args);
masonryInstance.runOnImageLoad(function (){
masonryInstance.recalculate(true);
}, true);
$masonry.on('jet-engine/listing/recalculate-masonry-listing', function(){
masonryInstance.runOnImageLoad(function (){
masonryInstance.recalculate(true);
}, true);
});
$(document).on('jet-engine/listing/recalculate-masonry', function(){
masonryInstance.recalculate(true);
});
},
ajaxGetListing: function(options, doneCallback, failCallback){
var container=options.container||false,
handler=options.handler||false,
masonry=options.masonry||false,
slider=options.slider||false,
append=options.append||false,
query=options.query||{},
widgetSettings=options.widgetSettings||{},
postID=options.postID||false,
queriedID=options.queriedID||false,
elementID=options.elementID||false,
page=options.page||1,
preventCSS=options.preventCSS||false,
listingType=options.listingType||false,
extraProps=options.extraProps||false,
isEditMode=window.elementorFrontend&&window.elementorFrontend.isEditMode();
doneCallback=doneCallback||function(response){};
if(! container||! handler){
return;
}
if(! preventCSS){
container.css({
pointerEvents: 'none',
opacity: '0.5',
cursor: 'default',
});
}
var requestData={
action: 'jet_engine_ajax',
handler: handler,
query: query,
widget_settings: widgetSettings,
page_settings: {
post_id: postID,
queried_id: queriedID,
element_id: elementID,
page: page,
},
listing_type: listingType,
isEditMode: isEditMode,
addedPostCSS: JetEngine.addedPostCSS
};
if(extraProps){
Object.assign(requestData, extraProps);
}
$.ajax({
url: JetEngineSettings.ajaxlisting,
type: 'POST',
dataType: 'json',
data: requestData,
}).done(function(response){
if(!preventCSS){
container.css({
pointerEvents: '',
opacity: '',
cursor: '',
});
}
if(response.success){
JetEngine.enqueueAssetsFromResponse(response);
container.data('page', page);
var $html=$(response.data.html);
JetEngine.initFrontStores($html);
if(slider&&slider.length){
var $slider=slider.find('> .jet-listing-grid__items');
if(! $slider.hasClass('slick-initialized')){
if(append){
container.append($html);
}else{
container.html($html);
}
var itemsCount=container.find('> .jet-listing-grid__item').length;
slider.addClass('jet-listing-grid__slider');
JetEngine.initSlider(slider, { itemsCount: itemsCount });
}else{
$html.each(function(index, el){
$slider.slick('slickAdd', el);
});
}}else{
if(append){
container.append($html);
}else{
container.html($html);
}
if(masonry&&masonry.length){
masonry.trigger('jet-engine/listing/recalculate-masonry-listing');
}}
Promise.all(JetEngine.assetsPromises).then(function(){
JetEngine.initElementsHandlers($html);
JetEngine.assetsPromises=[];
});
if(response.data.fragments){
for(var selector in response.data.fragments){
var $selector=$(selector);
if($selector.length){
$selector.html(response.data.fragments[ selector ]);
}}
}}
$(document).trigger('jet-engine/listing/ajax-get-listing/done', [ $html, options ]);
}).done(doneCallback).fail(function(){
container.removeAttr('style');
if(failCallback){
failCallback.call();
}});
},
loadMoreListing: function(args){
var instance={
setup: function(){
this.container=args.container;
this.masonry=args.masonry;
this.slider=args.slider;
this.settings=args.settings;
this.wrapper=this.container.closest('.jet-listing-grid');
this.type=this.settings.type||'click';
this.page=parseInt(this.container.data('page'), 10)||0;
this.pages=parseInt(this.container.data('pages'), 10)||0;
this.queriedID=this.container.data('queried-id')||false;
},
init: function(){
this.setup();
switch(this.type){
case 'click':
this.handleMore();
break;
case 'scroll':
if(( ! window.elementorFrontend||! window.elementorFrontend.isEditMode())&&! this.slider.length){
this.handleInfiniteScroll();
}
break;
}},
handleMore: function(){
if(! this.settings.more_el){
return;
}
var self=this,
$button=$(this.settings.more_el);
if(! $button.length){
return;
}
if(this.page===this.pages&&! window.elementor){
$button.css('display', 'none');
}else{
$button.removeAttr('style');
}
$(document)
.off('click', this.settings.more_el)
.on('click', this.settings.more_el, function(event){
event.preventDefault();
$button.css({
pointerEvents: 'none',
opacity: '0.5',
cursor: 'default',
});
self.ajaxGetItems(function(response){
$button.removeAttr('style');
if(response.success&&self.page===self.pages){
$button.css('display', 'none');
}}, function(){
$button.button.removeAttr('style');
}
);
});
},
handleInfiniteScroll: function(){
if(this.container.hasClass('jet-listing-not-found')){
return;
}
if(this.page===this.pages){
return;
}
var self=this,
$trigger=this.wrapper.find('.jet-listing-grid__loader'),
offset='0%';
if(! $trigger.length){
$trigger=$('<div>', {
class: 'jet-listing-grid__loading-trigger'
});
this.wrapper.append($trigger);
}
if(this.settings.widget_settings&&this.settings.widget_settings.load_more_offset){
var offsetValue=this.settings.widget_settings.load_more_offset;
switch(typeof offsetValue){
case 'object':
var size=offsetValue.size ? offsetValue.size:'0',
unit=offsetValue.unit ? offsetValue.unit:'px';
offset=size + unit;
break;
case 'number':
case 'string':
offset=offsetValue + 'px';
break;
}}
var observer=new IntersectionObserver(
function(entries, observer){
if(entries[0].isIntersecting){
self.ajaxGetItems(function(){
if(self.page!==self.pages){
setTimeout(function(){
observer.observe(entries[0].target);
}, 250);
}});
observer.unobserve(entries[0].target);
}},
{
rootMargin: '0% 0% ' + offset + ' 0%',
}
);
observer.observe($trigger[0]);
},
ajaxGetItems: function(doneCallback, failCallback){
var self=this;
this.page++;
this.wrapper.addClass('jet-listing-grid-loading');
JetEngine.ajaxGetListing({
handler:        'listing_load_more',
container:      this.container,
masonry:        this.masonry,
slider:         this.slider,
append:         true,
query:          this.settings.query,
widgetSettings: this.settings.widget_settings,
page:           this.page,
queriedID:      this.queriedID,
preventCSS:     !! this.wrapper.find('.jet-listing-grid__loader').length,
}, function(response){
JetEngine.lazyLoading=false;
self.wrapper.removeClass('jet-listing-grid-loading');
if(doneCallback){
doneCallback(response);
}
$(document).trigger('jet-engine/listing-grid/after-load-more', [args, response]);
}, function(){
JetEngine.lazyLoading=false;
self.wrapper.removeClass('jet-listing-grid-loading');
if(failCallback){
failCallback();
}});
},
};
instance.init();
},
lazyLoadListing: function(args){
var $wrapper=args.container.find('.jet-listing-grid'),
observer=new IntersectionObserver(
function(entries, observer){
if(entries[0].isIntersecting){
JetEngine.lazyLoading=true;
if(! $wrapper.length){
$wrapper=args.container;
}
$wrapper.addClass('jet-listing-grid-loading');
JetEngine.ajaxGetListing({
handler: 'get_listing',
container: args.container,
masonry: false,
slider: false,
append: false,
elementID: args.elementID,
postID: args.postID,
queriedID: args.queriedID,
query: args.query,
widgetSettings: args.widgetSettings,
listingType: args.listingType,
preventCSS: true,
extraProps: args.extraProps,
}, function(response){
$wrapper.removeClass('jet-listing-grid-loading');
var $widget=args.container.closest('.elementor-widget');
if(! $widget.length){
$widget=args.container.closest('.jet-listing-grid--blocks');
}
if(! $widget.length){
$widget=args.container;
}
if($widget.length){
$widget.find('.jet-listing-grid').first().removeClass('jet-listing-grid--lazy-load');
}
JetEngine.widgetListingGrid($widget);
JetEngine.loadFrontStoresItems($widget);
JetEngine.lazyLoading=false;
var needReInitFilters=false,
isEditMode=window.elementorFrontend&&window.elementorFrontend.isEditMode();
if(! isEditMode&&window.JetSmartFilterSettings){
if(response.data.filters_data){
$.each(response.data.filters_data, function(param, data){
if('extra_props'===param){
window.JetSmartFilterSettings[ param ]=$.extend({},
window.JetSmartFilterSettings[ param ],
data
);
}else{
if(window.JetSmartFilterSettings[ param ]['jet-engine']){
window.JetSmartFilterSettings[ param ]['jet-engine']=$.extend({},
window.JetSmartFilterSettings[ param ]['jet-engine'],
data
);
}else{
window.JetSmartFilterSettings[ param ]['jet-engine']=data;
}}
});
needReInitFilters=true;
}
if(response.data.indexer_data){
const {
provider=false,
query={}}=response.data.indexer_data;
window.JetSmartFilters.setIndexedData(provider, query);
}}
if(needReInitFilters&&window.JetSmartFilters){
window.JetSmartFilters.reinitFilters();
}
$(document).trigger('jet-engine/listing-grid/after-lazy-load', [ args, response ]);
}, function(){
JetEngine.lazyLoading=false;
if(! $wrapper.length){
$wrapper=args.container;
}
$wrapper.removeClass('jet-listing-grid-loading');
});
observer.unobserve(entries[0].target);
}},
{
rootMargin: '0% 0% ' + args.offset + ' 0%'
}
);
observer.observe(args.container[0]);
},
ensureJSON: function(maybeJSON){
if(! maybeJSON){
return maybeJSON;
}
if('string'===typeof maybeJSON){
console.log(maybeJSON);
}
return maybeJSON;
},
initSlider: function($slider, customOptions){
var $eWidget=$slider.closest('.elementor-widget'),
options=$slider.data('slider_options'),
windowWidth=$(window).width(),
tabletBP=1025,
mobileBP=768,
tabletSlides, mobileSlides, defaultOptions, slickOptions;
options=JetEngine.ensureJSON(options);
customOptions=customOptions||{};
options=$.extend({}, options, customOptions);
if($eWidget.length){
var settings=JetEngine.getElementorElementSettings($eWidget),
responsive=[],
deviceMode=elementorFrontend.getCurrentDeviceMode(),
eBreakpoints=window.elementorFrontend.config.responsive.activeBreakpoints;
options.slidesToShow=settings.columns_widescreen ? +settings.columns_widescreen:+settings.columns;
Object.keys(eBreakpoints).reverse().forEach(function(breakpointName){
if(settings['columns_' + breakpointName]){
if('widescreen'===breakpointName){
responsive.push({
breakpoint: eBreakpoints[breakpointName].value,
settings: {
slidesToShow: +settings['columns'],
}});
}else{
var breakpointSettings={
breakpoint: eBreakpoints[breakpointName].value + 1,
settings:   {
slidesToShow: +settings['columns_' + breakpointName],
}};
if(options.slidesToScroll > breakpointSettings.settings.slidesToShow){
breakpointSettings.settings.slidesToScroll=breakpointSettings.settings.slidesToShow;
}
responsive.push(breakpointSettings);
}}
});
options.responsive=responsive;
}else{
if(! options.slidesToShow){
options.slidesToShow={
desktop: 3,
tablet: 1,
mobile: 1,
}}
if(options.itemsCount <=options.slidesToShow.desktop&&windowWidth >=tabletBP){
$slider.removeClass('jet-listing-grid__slider');
return;
}else if(options.itemsCount <=options.slidesToShow.tablet&&tabletBP > windowWidth&&windowWidth >=mobileBP){
$slider.removeClass('jet-listing-grid__slider');
return;
}else if(options.itemsCount <=options.slidesToShow.mobile&&windowWidth < mobileBP){
$slider.removeClass('jet-listing-grid__slider');
return;
}
if(options.slidesToShow.tablet){
tabletSlides=options.slidesToShow.tablet;
}else{
tabletSlides=1===options.slidesToShow.desktop ? 1:2;
}
if(options.slidesToShow.mobile){
mobileSlides=options.slidesToShow.mobile;
}else{
mobileSlides=1;
}
options.slidesToShow=options.slidesToShow.desktop;
options.responsive=[
{
breakpoint: 1025,
settings: {
slidesToShow: tabletSlides,
slidesToScroll: options.slidesToScroll > tabletSlides ? tabletSlides:options.slidesToScroll
}},
{
breakpoint: 768,
settings: {
slidesToShow: mobileSlides,
slidesToScroll: 1
}}
];
}
defaultOptions={
customPaging: function(slider, i){
return $('<span />').text(i + 1).attr('role', 'tab');
},
slide: '.jet-listing-grid__item',
dotsClass: 'jet-slick-dots',
};
slickOptions=$.extend({}, defaultOptions, options);
var $sliderItems=$slider.find('> .jet-listing-grid__items');
if(slickOptions.infinite){
$sliderItems.on('init', function(){
var $items=$(this),
$clonedSlides=$('> .slick-list > .slick-track > .slick-cloned.jet-listing-grid__item', $items);
if(!$clonedSlides.length){
return;
}
JetEngine.initElementsHandlers($clonedSlides);
});
}
if(slickOptions.rtl){
$sliderItems.on('init', function(){
var $items=$(this),
$lazyImages=$('img[loading=lazy]', $items),
lazyImageObserver=new IntersectionObserver(
function(entries, observer){
entries.forEach(function(entry){
if(entry.isIntersecting){
if(! entry.target.complete){
entry.target.removeAttribute('loading');
}
observer.unobserve(entry.target);
}});
}
);
$lazyImages.each(function(){
const $img=$(this);
lazyImageObserver.observe($img[0]);
});
});
}
if($sliderItems.hasClass('slick-initialized')){
$sliderItems.slick('refresh', true);
return;
}
if(slickOptions.variableWidth){
slickOptions.slidesToShow=1;
slickOptions.slidesToScroll=1;
slickOptions.responsive=null;
}
$sliderItems.slick(slickOptions);
},
maybeReinitSlider: function(event, $scope){
var $slider=$scope.find('.jet-listing-grid__slider');
if($slider.length){
$slider.each(function(){
JetEngine.initSlider($(this));
});
}},
widgetDynamicField: function($scope){
var $slider=$scope.find('.jet-engine-gallery-slider');
if($slider.length){
if($.isFunction($.fn.imagesLoaded)){
$slider.imagesLoaded().always(function(instance){
var $eWidget=$slider.closest('.elementor-widget');
if($slider.hasClass('slick-initialized')){
$slider.slick('refresh', true);
}else{
var atts=$slider.data('atts');
atts=JetEngine.ensureJSON(atts);
if($eWidget.length){
var settings=JetEngine.getElementorElementSettings($scope),
eBreakpoints=window.elementorFrontend.config.responsive.activeBreakpoints,
responsive=[];
if(settings.img_slider_cols||settings.img_slider_cols_widescreen){
atts.slidesToShow=settings.img_slider_cols_widescreen ? +settings.img_slider_cols_widescreen:+settings.img_slider_cols;
}
Object.keys(eBreakpoints).reverse().forEach(function(breakpointName){
if(settings['img_slider_cols_' + breakpointName]){
if('widescreen'===breakpointName){
responsive.push({
breakpoint: eBreakpoints[breakpointName].value,
settings:   {
slidesToShow: +settings['img_slider_cols'],
}});
}else{
var breakpointSettings={
breakpoint: eBreakpoints[breakpointName].value + 1,
settings:   {
slidesToShow: +settings['img_slider_cols_' + breakpointName],
}};
responsive.push(breakpointSettings);
}}
});
atts.responsive=responsive;
}
$slider.slick(atts);
}});
}}
$slider.on('init', function (event, slick){
const slider=event.target;
if(!slider.classList.contains('jet-engine-gallery-lightbox')){
return;
}
let lightbox=new PhotoSwipeLightbox({
mainClass: 'brx',
gallery: slider,
children: 'a',
showHideAnimationType: 'none',
zoomAnimationDuration: false,
pswpModule: PhotoSwipe5,
});
lightbox.addFilter('numItems', numItems=> slick.slideCount);
lightbox.addFilter('clickedIndex', function (clickedIndex, e){
const slide=e.target.closest('.slick-slide');
if(!slide){
return clickedIndex;
}
if(clickedIndex >=slick.slideCount){
return clickedIndex % slick.slideCount;
}
return clickedIndex;
});
lightbox.addFilter('thumbEl', (thumbnail, itemData, index)=> {
return thumbnail;
});
lightbox.addFilter('thumbBounds', (thumbBounds, itemData, index)=> {
return thumbBounds;
});
lightbox.init();
});
var $masonry=$scope.find('.jet-engine-gallery-grid--masonry');
if($masonry.length){
JetEngine.initMasonry($masonry, {
columnsKey: 'img_columns',
itemSelector: '> .jet-engine-gallery-grid__item',
});
}},
switchCalendarMonth: function($event){
var $this=$(this),
$calendar=$this.closest('.jet-calendar'),
$widget=$calendar.closest('.elementor-widget-container'),
settings=$calendar.data('settings'),
post=$calendar.data('post'),
month=$this.data('month');
settings=JetEngine.ensureJSON(settings);
if(! $widget.length){
$widget=$calendar.closest('.jet-listing-calendar-block')
}
if(! $widget.length){
$widget=$calendar.closest('.brxe-jet-listing-calendar')
}
$calendar.addClass('jet-calendar-loading');
JetEngine.currentRequest={
jet_engine_action: 'jet_engine_calendar_get_month',
month: month,
settings: settings,
post: post,
};
$(document).trigger('jet-engine-request-calendar');
$.ajax({
url: JetEngineSettings.ajaxlisting,
type: 'POST',
dataType: 'json',
data: JetEngine.currentRequest,
}).done(function(response){
if(response.success){
$calendar.replaceWith(response.data.content);
JetEngine.initElementsHandlers($widget);
}
$calendar.removeClass('jet-calendar-loading');
});
},
initElementsHandlers: function($selector){
window.JetPlugins.init($selector);
$selector.find('[data-element_type]').each(function(){
var $this=$(this),
elementType=$this.data('element_type');
if(!elementType){
return;
}
if('widget'===elementType){
elementType=$this.data('widget_type');
window.elementorFrontend.hooks.doAction('frontend/element_ready/widget', $this, $);
}
window.elementorFrontend.hooks.doAction('frontend/element_ready/global', $this, $);
window.elementorFrontend.hooks.doAction('frontend/element_ready/' + elementType, $this, $);
});
if(window.elementorFrontend){
const elementorLazyLoad=new Event("elementor/lazyload/observe");
document.dispatchEvent(elementorLazyLoad);
}
if(window.JetPopupFrontend&&window.JetPopupFrontend.initAttachedPopups){
window.JetPopupFrontend.initAttachedPopups($selector);
}},
getElementorElementSettings: function($scope){
if(window.elementorFrontend&&window.elementorFrontend.isEditMode()&&$scope.hasClass('elementor-element-edit-mode')){
return JetEngine.getEditorElementSettings($scope);
}
return $scope.data('settings')||{};},
getEditorElementSettings: function($scope){
var modelCID=$scope.data('model-cid'),
elementData;
if(! modelCID){
return {};}
if(! window.elementorFrontend.hasOwnProperty('config')){
return {};}
if(! window.elementorFrontend.config.hasOwnProperty('elements')){
return {};}
if(! window.elementorFrontend.config.elements.hasOwnProperty('data')){
return {};}
elementData=window.elementorFrontend.config.elements.data[ modelCID ];
if(! elementData){
return {};}
return elementData.toJSON();
},
debounce: function(threshold, callback){
var timeout;
return function debounced($event){
function delayed(){
callback.call(this, $event);
timeout=null;
}
if(timeout){
clearTimeout(timeout);
}
timeout=setTimeout(delayed, threshold);
};},
updateAddedStyles: function(){
if(window.JetEngineSettings&&window.JetEngineSettings.addedPostCSS){
$.each(window.JetEngineSettings.addedPostCSS, function(ind, cssID){
JetEngine.addedStyles.push('elementor-post-' + cssID);
JetEngine.addedPostCSS.push(cssID);
});
}},
enqueueAssetsFromResponse: function(response){
if(response.data.scripts){
JetEngine.enqueueScripts(response.data.scripts);
}
if(response.data.styles){
JetEngine.enqueueStyles(response.data.styles);
}},
enqueueScripts: function(scripts){
$.each(scripts, function(handle, scriptHtml){
JetEngine.enqueueScript(handle, scriptHtml)
});
},
enqueueStyles: function(styles){
$.each(styles, function(handle, styleHtml){
JetEngine.enqueueStyle(handle, styleHtml)
});
},
enqueueScript: function(handle, scriptHtml){
if(-1!==JetEngine.addedScripts.indexOf(handle)){
return;
}
if(! scriptHtml){
return;
}
var selector='script[id="' + handle + '-js"]';
if($(selector).length){
return;
}
var scriptsTags=scriptHtml.match(/<script[\s\S]*?<\/script>/gm);
if(scriptsTags.length){
for(var i=0; i < scriptsTags.length; i++){
JetEngine.assetsPromises.push(new Promise(function(resolve, reject){
var $tag=$(scriptsTags[i]);
if($tag[0].src){
var tag=document.createElement('script');
tag.type=$tag[0].type;
tag.src=$tag[0].src;
tag.id=$tag[0].id;
tag.async=false;
tag.onload=function(){
resolve();
};
document.body.append(tag);
}else{
$('body').append(scriptsTags[i]);
resolve();
}})
);
}}
JetEngine.addedScripts.push(handle);
},
enqueueStyle: function(handle, styleHtml){
if(-1!==handle.indexOf('google-fonts')){
JetEngine.enqueueGoogleFonts(handle, styleHtml);
return;
}
if(-1!==JetEngine.addedStyles.indexOf(handle)){
return;
}
var selector='link[id="' + handle + '-css"],style[id="' + handle + '"]';
if($(selector).length){
return;
}
$('head').append(styleHtml);
JetEngine.addedStyles.push(handle);
if(-1!==handle.indexOf('elementor-post')){
var postID=handle.replace('elementor-post-', '');
JetEngine.addedPostCSS.push(postID);
}},
enqueueGoogleFonts: function(handle, styleHtml){
var selector='link[id="' + handle + '-css"]';
if($(selector).length){}
$('head').append(styleHtml);
},
filters:(function(){
var callbacks={};
return {
addFilter: function(name, callback){
if(! callbacks.hasOwnProperty(name)){
callbacks[name]=[];
}
callbacks[name].push(callback);
},
applyFilters: function(name, value, args){
if(! callbacks.hasOwnProperty(name)){
return value;
}
if(args===undefined){
args=[];
}
var container=callbacks[ name ];
var cbLen=container.length;
for (var i=0; i < cbLen; i++){
if(typeof container[i]==='function'){
value=container[i](value, args);
}}
return value;
}};})()
};
$(window).on('elementor/frontend/init', JetEngine.init);
window.JetEngine=JetEngine;
JetEngine.commonInit();
window.addEventListener('DOMContentLoaded', function(){
JetEngine.initBlocks();
JetEngine.initDone=true;
});
window.jetEngineBricks=function(){
JetEngine.initBricks();
}
$(window).trigger('jet-engine/frontend/loaded');
}(jQuery));
!function(t){"use strict";if("function"==typeof define&&define.amd)define(["jquery"],t);else if("object"==typeof exports)t(require("jquery"));else{if("undefined"==typeof jQuery)throw"jquery-numerator requires jQuery to be loaded first";t(jQuery)}}(function(t){function e(e,s){this.element=e,this.settings=t.extend({},i,s),this._defaults=i,this._name=n,this.init()}var n="numerator",i={easing:"swing",duration:500,delimiter:void 0,rounding:0,toValue:void 0,fromValue:void 0,queue:!1,onStart:function(){},onStep:function(){},onProgress:function(){},onComplete:function(){}};e.prototype={init:function(){this.parseElement(),this.setValue()},parseElement:function(){var e=t.trim(t(this.element).text());this.settings.fromValue=this.settings.fromValue||this.format(e)},setValue:function(){var e=this;t({value:e.settings.fromValue}).animate({value:e.settings.toValue},{duration:parseInt(e.settings.duration,10),easing:e.settings.easing,start:e.settings.onStart,step:function(n,i){t(e.element).text(e.format(n)),e.settings.onStep(n,i)},progress:e.settings.onProgress,complete:e.settings.onComplete})},format:function(t){var e=this;return t=parseInt(this.settings.rounding)<1?parseInt(t,10):parseFloat(t).toFixed(parseInt(this.settings.rounding)),e.settings.delimiter?this.delimit(t):t},delimit:function(t){var e=this;if(t=t.toString(),e.settings.rounding&&parseInt(e.settings.rounding,10)>0){var n=t.substring(t.length-(e.settings.rounding+1),t.length),i=t.substring(0,t.length-(e.settings.rounding+1));return e.addDelimiter(i)+n}return e.addDelimiter(t)},addDelimiter:function(t){return t.toString().replace(/\B(?=(\d{3})+(?!\d))/g,this.settings.delimiter)}},t.fn[n]=function(i){return this.each(function(){t.data(this,"plugin_"+n)&&t.data(this,"plugin_"+n,null),t.data(this,"plugin_"+n,new e(this,i))})}});