(function($, elementor){
"use strict";
var JetMenuWidget={
init: function(){
var widgets={
'jet-mega-menu.default':JetMenuWidget.widgetMegaMenu,
'jet-custom-menu.default':JetMenuWidget.widgetCustomMenu,
'jet-mobile-menu.default':JetMenuWidget.widgetMobileMenu,
};
$.each(widgets, function(widget, callback){
elementor.hooks.addAction('frontend/element_ready/' + widget, callback);
});
},
widgetMegaMenu: function($scope){
let $desktopTarget=$scope.find('.jet-menu-container'),
$mobileTarget=$scope.find('.jet-mobile-menu');
if($desktopTarget[0]){
let rollUp=false,
jetMenuMouseleaveDelay=500,
jetMenuMegaWidthType='container',
jetMenuMegaWidthSelector='',
jetMenuMegaOpenSubType='hover',
jetMenuMegaAjax=false;
if(window.jetMenuPublicSettings&&window.jetMenuPublicSettings.menuSettings){
rollUp=('true'===jetMenuPublicSettings.menuSettings.jetMenuRollUp) ? true:false;
jetMenuMouseleaveDelay=jetMenuPublicSettings.menuSettings.jetMenuMouseleaveDelay||500;
jetMenuMegaWidthType=jetMenuPublicSettings.menuSettings.jetMenuMegaWidthType||'container';
jetMenuMegaWidthSelector=jetMenuPublicSettings.menuSettings.jetMenuMegaWidthSelector||'';
jetMenuMegaOpenSubType=jetMenuPublicSettings.menuSettings.jetMenuMegaOpenSubType||'hover';
jetMenuMegaAjax=('true'===jetMenuPublicSettings.menuSettings.jetMenuMegaAjax)  ? true:false;
}
$desktopTarget.JetMenuPlugin({
enabled: rollUp,
mouseLeaveDelay: +jetMenuMouseleaveDelay,
megaWidthType: jetMenuMegaWidthType,
megaWidthSelector: jetMenuMegaWidthSelector,
openSubType: jetMenuMegaOpenSubType,
ajaxLoad: jetMenuMegaAjax,
});
}
if($mobileTarget[0]){
let menuInstanceId=$mobileTarget.attr('id'),
menuId=$mobileTarget.data('menu-id')||false,
menuOptions=$mobileTarget.data('menu-options')||{};
window.jetMenu.createMobileMenuInstance(menuInstanceId, menuId, menuOptions);
}},
widgetCustomMenu: function($scope){
var $target=$scope.find('.jet-custom-nav'),
instance=null,
menuItem=null;
if(! $target.length){
return;
}
if(JetMenuWidget.mobileAndTabletcheck()){
$scope.on('touchstart', '.jet-custom-nav__item > a, .jet-custom-nav__item > a .jet-dropdown-arrow', touchStartItem);
$scope.on('touchend', '.jet-custom-nav__item > a, .jet-custom-nav__item > a .jet-dropdown-arrow', touchEndItem);
}else{
$scope.on('mouseenter mouseover', '.jet-custom-nav__item', mouseEnterHandler);
$scope.on('mouseleave', '.jet-custom-nav__item', mouseLeaveHandler);
}
function mouseEnterHandler(event){
menuItem=$(event.target).parents('.jet-custom-nav__item');
menuItem.addClass('hover-state');
}
function mouseLeaveHandler(event){
menuItem=$(event.target).parents('.jet-custom-nav__item');
menuItem.removeClass('hover-state');
}
function touchStartItem(event){
var $this=$(event.currentTarget).closest('.jet-custom-nav__item');
$this.data('offset', $this.offset().top);
$this.data('windowOffset', $(window).scrollTop());
}
function touchEndItem(event){
var $currentTarget,
$this,
$siblingsItems,
$link,
linkHref,
subMenu,
offset,
windowOffset;
event.preventDefault();
event.stopPropagation();
$currentTarget=$(event.currentTarget);
$this=$currentTarget.closest('.jet-custom-nav__item');
$siblingsItems=$this.siblings('.jet-custom-nav__item.menu-item-has-children');
$link=$('> a', $this);
linkHref=$link.attr('href');
subMenu=$('.jet-custom-nav__sub:first, .jet-custom-nav__mega-sub:first', $this);
offset=$this.data('offset');
windowOffset=$this.data('windowOffset');
if(offset!==$this.offset().top||windowOffset!==$(window).scrollTop()){
return false;
}
if($currentTarget.hasClass('jet-dropdown-arrow')){
if(!subMenu[0]){
return false;
}
if(! $this.hasClass('hover-state')){
$this.addClass('hover-state');
$siblingsItems.removeClass('hover-state');
$('.jet-custom-nav__item.menu-item-has-children', $siblingsItems).removeClass('hover-state');
}else{
$this.removeClass('hover-state');
$('.jet-custom-nav__item.menu-item-has-children', $this).removeClass('hover-state');
}}
if($currentTarget.hasClass('jet-custom-nav__item-link')){
if('#'===linkHref){
if(! $this.hasClass('hover-state')){
$this.addClass('hover-state');
$siblingsItems.removeClass('hover-state');
$('.jet-custom-nav__item.menu-item-has-children', $siblingsItems).removeClass('hover-state');
}else{
$this.removeClass('hover-state');
$('.jet-custom-nav__item.menu-item-has-children', $this).removeClass('hover-state');
}}else{
window.location=linkHref;
return false;
}}
}
var initSubMenuPosition=false;
function setSubMenuPosition(){
if(initSubMenuPosition){
$target.find('.jet-custom-nav__sub.inverse-side').removeClass('inverse-side');
initSubMenuPosition=false;
}
var subMenu=$('.jet-custom-nav__sub', $target),
$body=$('body'),
maxWidth=$body.outerWidth(true),
isMobile='mobile'===elementor.getCurrentDeviceMode();
if(isMobile){
return;
}
if(subMenu[0]){
subMenu.each(function(){
var $this=$(this),
subMenuOffsetLeft=$this.offset().left,
subMenuOffsetRight=subMenuOffsetLeft + $this.outerWidth(true),
subMenuPosition=$this.closest('.jet-custom-nav').hasClass('jet-custom-nav--dropdown-left-side') ? 'left-side':'right-side';
if('right-side'===subMenuPosition){
if(subMenuOffsetRight >=maxWidth){
$this.addClass('inverse-side');
$this.find('.jet-custom-nav__sub').addClass('inverse-side');
initSubMenuPosition=true;
}else if(subMenuOffsetLeft < 0){
$this.removeClass('inverse-side');
$this.find('.jet-custom-nav__sub').removeClass('inverse-side');
}}else{
if(subMenuOffsetLeft < 0){
$this.addClass('inverse-side');
$this.find('.jet-custom-nav__sub').addClass('inverse-side');
initSubMenuPosition=true;
}else if(subMenuOffsetRight >=maxWidth){
$this.removeClass('inverse-side');
$this.find('.jet-custom-nav__sub').removeClass('inverse-side');
}}
});
}}
setSubMenuPosition();
$(window).on('resize.JetCustomMenu orientationchange.JetCustomMenu', setSubMenuPosition);
var initMaxMegaMenuWidth=false;
function setMaxMegaMenuWidth(){
var megaMenu=$('.jet-custom-nav__mega-sub', $target),
$body=$('body'),
maxWidth=$body.outerWidth(true),
isMobile='mobile'===elementor.getCurrentDeviceMode();
if(initMaxMegaMenuWidth){
megaMenu.css({
'maxWidth': ''
});
initMaxMegaMenuWidth=false;
}
if(isMobile){
return;
}
if(megaMenu[0]){
megaMenu.each(function(){
var $this=$(this),
megaMenuTranslateX=$this.css('transform').replace(/,/g, "").split(" ")[4]||0,
megaMenuOffsetLeft=$this.offset().left - megaMenuTranslateX,
megaMenuOffsetRight=megaMenuOffsetLeft + $this.outerWidth(true),
megaMenuPosition=$this.closest('.jet-custom-nav').hasClass('jet-custom-nav--dropdown-left-side') ? 'left-side':'right-side';
if('right-side'===megaMenuPosition){
if(megaMenuOffsetRight >=maxWidth){
$this.css({
'maxWidth': maxWidth - megaMenuOffsetLeft - 10
});
initMaxMegaMenuWidth=true;
}}else{
if(megaMenuOffsetLeft < 0){
$this.css({
'maxWidth': megaMenuOffsetRight - 10
});
initMaxMegaMenuWidth=true;
}}
});
}}
setMaxMegaMenuWidth();
$(window).on('resize.JetCustomMenu orientationchange.JetCustomMenu', setMaxMegaMenuWidth);
},
widgetMobileMenu: function($scope){
let $target=$scope.find('.jet-mobile-menu'),
menuInstanceId=$target.attr('id'),
menuId=$target.data('menu-id')||false,
menuOptions=$target.data('menu-options')||{};
if(! $target[0]){
return;
}
window.jetMenu.createMobileMenuInstance(menuInstanceId, menuId, menuOptions);
},
mobileAndTabletcheck: function(){
var check=false;
(function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm(os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s)|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp(i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac(|\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt(|\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg(g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v)|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v)|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-|)|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))) check=true;})(navigator.userAgent||navigator.vendor||window.opera);
return check;
}};
$(window).on('elementor/frontend/init', JetMenuWidget.init);
}(jQuery, window.elementorFrontend));
(function (){
'use strict';
const PERSIAN_CALENDAR_STYLES=`
.persian-calendar-wrapper {
background: #ffffff;
font-family: inherit;
direction: rtl;
text-align: right;
position: relative;
padding: 8px;
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
max-width: 320px;
-webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
}
@-webkit-keyframes fpFadeInDown {
from { opacity: 0; -webkit-transform: translate3d(0, -20px, 0); transform: translate3d(0, -20px, 0); }
to { opacity: 1; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }}
@keyframes fpFadeInDown {
from { opacity: 0; -webkit-transform: translate3d(0, -20px, 0); transform: translate3d(0, -20px, 0); }
to { opacity: 1; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }}
.persian-calendar-nav {
display: flex;
justify-content: center;
align-items: center;
gap: 8px;
padding: 8px 0;
}
.persian-calendar-prev,
.persian-calendar-next {
width: 32px;
height: 32px;
border: none;
background: transparent!important;
border-radius: 2px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
font-size: 20px;
color: #007cba!important;
transition: background-color 0.2s ease;
}
.persian-calendar-prev:hover,
.persian-calendar-next:hover {
background: #f5fafc!important;
}
.persian-calendar-month-select {
padding: 4px 8px;
font-size: 13px;
font-weight: 600;
font-family: inherit;
border: 0px solid #ddd;
background: #fff;
cursor: pointer;
color: #1a1a1a;
min-width: 90px;
}
.persian-calendar-month-select:hover {
background: #f2f2f2;
}
.persian-calendar-month-select:focus {
outline: none;
border-color: #007cba;
}
.persian-calendar-year-input {
width: 60px !important;
padding: 4px 8px !important;
font-size: 13px !important;
font-weight: 600 !important;
font-family: inherit !important;
border: 0px solid #ddd !important;
background: #fff;
text-align: center !important;
color: #1a1a1a;
-moz-appearance: textfield;
}
.persian-calendar-year-input::-webkit-outer-spin-button,
.persian-calendar-year-input::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}
.persian-calendar-year-input:hover {
background: #f2f2f2;
}
.persian-calendar-year-input:focus {
outline: none;
border-color: #007cba;
}
.persian-calendar-grid { margin-top: 12px; }
.persian-calendar-weekdays {
display: grid;
grid-template-columns: repeat(7, 1fr);
gap: 4px;
margin-bottom: 8px;
}
.persian-calendar-weekday {
text-align: center;
font-size: 12px;
font-weight: 500;
color: #757575;
padding: 4px;
}
.persian-calendar-days {
display: grid;
grid-template-columns: repeat(7, 1fr);
gap: 4px;
}
.persian-calendar-day {
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
border-radius: 50%;
cursor: pointer;
position: relative;
height: 32px;
width: 32px;
margin: 0 auto;
transition: all 0.15s ease;
}
.persian-calendar-day:not(.empty):hover { color: #007cba; }
.persian-calendar-day.today { background: #e0e0e0; font-weight: 500; }
.persian-calendar-day.selected { background: #007cba; color: white; font-weight: 600; }
.persian-calendar-day.selected:hover {color: white; }
.persian-calendar-day.empty { cursor: default; pointer-events: none; }
.persian-calendar-day:not(.empty):focus {
box-shadow: 0 0 0 var(--wp-admin-border-width-focus, 2px) var(--wp-components-color-accent, var(--wp-admin-theme-color, #007cba));
outline-offset: 2px;
}
@media (max-width: 480px){
.persian-calendar-wrapper { max-width: 100%; margin: 0 auto; }}
@media (prefers-contrast: high){
.persian-calendar-wrapper { border: 2px solid #000; }
.persian-calendar-day.selected { border: 2px solid #000; }}
@media (prefers-reduced-motion: reduce){
.persian-calendar-day, .persian-calendar-prev, .persian-calendar-next { transition: none; }}
`;
let stylesInjected=false;
function injectStyles(){
if(stylesInjected) return;
const styleElement=document.createElement('style');
styleElement.id='persian-calendar-styles';
styleElement.textContent=PERSIAN_CALENDAR_STYLES;
document.head.appendChild(styleElement);
stylesInjected=true;
}
const G_DAYS_IN_MONTH_NON_LEAP=[0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];
const JALALI_EPOCH_DIFFERENCE=355666;
const JALALI_33_YEAR_CYCLE_DAYS=12053;
const GREGORIAN_4_YEAR_CYCLE_DAYS=1461;
const JALALI_YEAR_START_OFFSET=-1595;
const GREGORIAN_EPOCH_DIFFERENCE=-355668;
const JALALI_33_YEAR_CYCLE_LEAP_DAYS=8;
const GREGORIAN_400_YEAR_CYCLE_DAYS=146097;
const GREGORIAN_100_YEAR_CYCLE_DAYS=36524;
const isValidGregorian=(gy, gm, gd)=> {
if(!Number.isInteger(gy)||!Number.isInteger(gm)||!Number.isInteger(gd)) return false;
return !(gy < 1||gy > 3000||gm < 1||gm > 12||gd < 1||gd > 31);
};
const isValidJalali=(jy, jm, jd)=> {
if(!Number.isInteger(jy)||!Number.isInteger(jm)||!Number.isInteger(jd)) return false;
return !(jy < 1||jy > 3000||jm < 1||jm > 12||jd < 1||jd > 31);
};
const gregorianToJalali=(gy, gm, gd)=> {
if(!isValidGregorian(gy, gm, gd)) return [0, 0, 0];
const gy2=gm > 2 ? (gy + 1):gy;
let days=JALALI_EPOCH_DIFFERENCE + (365 * gy) + Math.floor((gy2 + 3) / 4) -
Math.floor((gy2 + 99) / 100) + Math.floor((gy2 + 399) / 400) + gd + G_DAYS_IN_MONTH_NON_LEAP[gm - 1];
let jy=JALALI_YEAR_START_OFFSET + 33 * Math.floor(days / JALALI_33_YEAR_CYCLE_DAYS);
days %=JALALI_33_YEAR_CYCLE_DAYS;
jy +=4 * Math.floor(days / GREGORIAN_4_YEAR_CYCLE_DAYS);
days %=GREGORIAN_4_YEAR_CYCLE_DAYS;
if(days > 365){ jy +=Math.floor((days - 1) / 365); days=(days - 1) % 365; }
let jm, jd;
if(days < 186){ jm=1 + Math.floor(days / 31); jd=1 + (days % 31); }else{ jm=7 + Math.floor((days - 186) / 30); jd=1 + ((days - 186) % 30); }
return [jy, jm, jd];
};
const jalaliToGregorian=(jy, jm, jd)=> {
if(!isValidJalali(jy, jm, jd)) return [0, 0, 0];
const jy_adj=jy + 1595;
let days=GREGORIAN_EPOCH_DIFFERENCE + (365 * jy_adj) +
(Math.floor(jy_adj / 33) * JALALI_33_YEAR_CYCLE_LEAP_DAYS) + Math.floor(((jy_adj % 33) + 3) / 4) + jd;
if(jm < 7) days +=(jm - 1) * 31; else days +=(jm - 7) * 30 + 186;
let gy=400 * Math.floor(days / GREGORIAN_400_YEAR_CYCLE_DAYS);
days %=GREGORIAN_400_YEAR_CYCLE_DAYS;
if(days > GREGORIAN_100_YEAR_CYCLE_DAYS){
gy +=100 * Math.floor(--days / GREGORIAN_100_YEAR_CYCLE_DAYS);
days %=GREGORIAN_100_YEAR_CYCLE_DAYS;
if(days >=365) days++;
}
gy +=4 * Math.floor(days / GREGORIAN_4_YEAR_CYCLE_DAYS);
days %=GREGORIAN_4_YEAR_CYCLE_DAYS;
if(days > 365){ gy +=Math.floor((days - 1) / 365); days=(days - 1) % 365; }
let gd=days + 1;
const isLeap=((gy % 4===0)&&(gy % 100!==0))||(gy % 400===0);
const G_DAYS_IN_MONTH=[0, 31, isLeap ? 29:28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
let gm;
for (gm=1; gm <=12; gm++){ if(gd <=G_DAYS_IN_MONTH[gm]) break; gd -=G_DAYS_IN_MONTH[gm]; }
return [gy, gm, gd];
};
const safeParseInt=(value, defaultValue=0, min=null, max=null)=> {
const parsed=parseInt(value, 10);
if(isNaN(parsed)) return defaultValue;
if(min!==null&&parsed < min) return min;
if(max!==null&&parsed > max) return max;
return parsed;
};
const isValidJalaliDate=(year, month, day)=> year >=1&&year <=3000&&month >=1&&month <=12&&day >=1&&day <=31;
const PERSIAN_MONTHS=['فروردین', 'اردیبهشت', 'خرداد', 'تیر', 'مرداد', 'شهریور', 'مهر', 'آبان', 'آذر', 'دی', 'بهمن', 'اسفند'];
const PERSIAN_WEEKDAYS=['ش', 'ی', 'د', 'س', 'چ', 'پ', 'ج'];
const PERSIAN_DIGITS=['۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹'];
const toPersianDigits=(str)=> String(str).replace(/[0-9]/g, (d)=> PERSIAN_DIGITS[d]);
const toAsciiDigits=(str)=> String(str).replace(/[۰-۹]/g, (d)=> PERSIAN_DIGITS.indexOf(d).toString());
const getDaysInJalaliMonth=(jy, jm)=> {
if(jm <=6) return 31;
if(jm <=11) return 30;
const leapYears=[1, 5, 9, 13, 17, 22, 26, 30];
return leapYears.includes(jy % 33) ? 30:29;
};
const IRAN_OFFSET_MINUTES=210;
const getIranLocalDate=()=> {
const now=new Date();
const browserOffsetMinutes=-now.getTimezoneOffset();
const diffMinutes=IRAN_OFFSET_MINUTES - browserOffsetMinutes;
return new Date(now.getTime() + diffMinutes * 60 * 1000);
};
class PersianCalendar {
constructor(container, options={}){
if(!container||!(container instanceof Element)) throw new Error('PersianCalendar: Invalid container element');
injectStyles();
this.container=container;
this.options={
selectedDate: (options.selectedDate instanceof Date) ? options.selectedDate:new Date(),
onDateSelect: (typeof options.onDateSelect==='function') ? options.onDateSelect:()=> { },
onClose: (typeof options.onClose==='function') ? options.onClose:()=> { },
title: options.title||'انتخاب تاریخ',
...options
};
let initialDate=this.options.selectedDate;
const browserOffsetMinutes=-initialDate.getTimezoneOffset();
const diffMinutes=IRAN_OFFSET_MINUTES - browserOffsetMinutes;
initialDate=new Date(initialDate.getTime() + diffMinutes * 60 * 1000);
const [jy, jm, jd]=gregorianToJalali(initialDate.getFullYear(), initialDate.getMonth() + 1, initialDate.getDate());
this.currentYear=jy;
this.currentMonth=jm;
this.selectedDate={ year: jy, month: jm, day: jd };
this._boundClickHandler=null;
this.render();
this.attachEventListeners();
}
render(){
this.container.textContent='';
const wrapper=document.createElement('div');
wrapper.className='persian-calendar-wrapper';
wrapper.appendChild(this.createDatePickerElement());
this.container.appendChild(wrapper);
this.dom={
monthSelect: this.container.querySelector('.persian-calendar-month-select'),
yearInput: this.container.querySelector('.persian-calendar-year-input'),
daysContainer: this.container.querySelector('.persian-calendar-days')
};
this.updateCalendarView();
}
createDatePickerElement(){
const datePicker=document.createElement('div');
datePicker.className='persian-calendar-date-picker';
const nav=document.createElement('div');
nav.className='persian-calendar-nav';
nav.innerHTML=`
<button class="persian-calendar-prev" type="button" aria-label="ماه قبل">‹</button>
<select class="persian-calendar-month-select" aria-label="انتخاب ماه">
${PERSIAN_MONTHS.map((m, i)=> `<option value="${i + 1}"${(i + 1)===this.currentMonth ? ' selected':''}>${m}</option>`).join('')}
</select>
<input type="number" class="persian-calendar-year-input" value="${this.currentYear}" min="1300" max="1500" aria-label="سال">
<button class="persian-calendar-next" type="button" aria-label="ماه بعد">›</button>
`;
const grid=document.createElement('div');
grid.className='persian-calendar-grid';
grid.innerHTML=`
<div class="persian-calendar-weekdays">${PERSIAN_WEEKDAYS.map(day=> `<div class="persian-calendar-weekday">${day}</div>`).join('')}</div>
<div class="persian-calendar-days" role="grid" aria-label="تقویم"></div>
`;
datePicker.appendChild(nav);
datePicker.appendChild(grid);
return datePicker;
}
createDaysFragment(){
const daysInMonth=getDaysInJalaliMonth(this.currentYear, this.currentMonth);
const [gy, gm, gd]=jalaliToGregorian(this.currentYear, this.currentMonth, 1);
const jsDay=new Date(Date.UTC(gy, gm - 1, gd)).getUTCDay();
const startDay=(jsDay + 1) % 7;
const today=getIranLocalDate();
const [todayJy, todayJm, todayJd]=gregorianToJalali(today.getFullYear(), today.getMonth() + 1, today.getDate());
const isTodayMonth=(this.currentMonth===todayJm&&this.currentYear===todayJy);
const isSelectedMonth=(this.currentMonth===this.selectedDate.month&&this.currentYear===this.selectedDate.year);
const fragment=document.createDocumentFragment();
for (let i=0; i < startDay; i++){
const emptyDay=document.createElement('div');
emptyDay.className='persian-calendar-day empty';
emptyDay.setAttribute('aria-hidden', 'true');
fragment.appendChild(emptyDay);
}
for (let day=1; day <=daysInMonth; day++){
const dayElement=document.createElement('div');
dayElement.className='persian-calendar-day';
dayElement.setAttribute('data-day', day.toString());
dayElement.setAttribute('role', 'gridcell');
dayElement.setAttribute('tabindex', '0');
dayElement.textContent=toPersianDigits(day);
if(isTodayMonth&&day===todayJd){ dayElement.classList.add('today'); dayElement.setAttribute('aria-current', 'date'); }
if(isSelectedMonth&&day===this.selectedDate.day){ dayElement.classList.add('selected'); dayElement.setAttribute('aria-selected', 'true'); }
fragment.appendChild(dayElement);
}
return fragment;
}
attachEventListeners(){
this._boundClickHandler=(e)=> {
const target=e.target;
if(target.matches('.persian-calendar-day:not(.empty)')){
const day=safeParseInt(target.dataset.day, 1, 1, 31);
if(isValidJalaliDate(this.currentYear, this.currentMonth, day)) this.selectDate(this.currentYear, this.currentMonth, day);
}else if(target.matches('.persian-calendar-prev')){ this.previousMonth(); }
else if(target.matches('.persian-calendar-next')){ this.nextMonth(); }};
this.container.addEventListener('click', this._boundClickHandler);
if(this.dom.monthSelect){
this.dom.monthSelect.addEventListener('change', (e)=> {
this.currentMonth=parseInt(e.target.value, 10);
this.updateCalendarView();
});
}
if(this.dom.yearInput){
this.dom.yearInput.addEventListener('change', (e)=> {
const year=parseInt(e.target.value, 10);
if(year >=1300&&year <=1500){
this.currentYear=year;
this.updateCalendarView();
}else{
e.target.value=this.currentYear;
}});
}}
selectDate(year, month, day){
this.selectedDate={ year, month, day };
this.updateCalendarView();
this.notifyDateChange();
}
previousMonth(){
this.currentMonth--;
if(this.currentMonth < 1){ this.currentMonth=12; this.currentYear--; }
this.updateCalendarView();
}
nextMonth(){
this.currentMonth++;
if(this.currentMonth > 12){ this.currentMonth=1; this.currentYear++; }
this.updateCalendarView();
}
updateCalendarView(){
if(this.dom.monthSelect) this.dom.monthSelect.value=this.currentMonth;
if(this.dom.yearInput) this.dom.yearInput.value=this.currentYear;
if(this.dom.daysContainer){ this.dom.daysContainer.textContent=''; this.dom.daysContainer.appendChild(this.createDaysFragment()); }}
notifyDateChange(){
const [gy, gm, gd]=jalaliToGregorian(this.selectedDate.year, this.selectedDate.month, this.selectedDate.day);
this.options.onDateSelect({ jalali: { ...this.selectedDate }, gregorian: { year: gy, month: gm, day: gd }, date: new Date(gy, gm - 1, gd) });
}
getSelectedDate(){
const [gy, gm, gd]=jalaliToGregorian(this.selectedDate.year, this.selectedDate.month, this.selectedDate.day);
return new Date(gy, gm - 1, gd);
}
destroy(){
if(this._boundClickHandler) this.container.removeEventListener('click', this._boundClickHandler);
this.container.textContent='';
this.dom=null;
this._boundClickHandler=null;
}}
window.PersianDateConverter={ gregorianToJalali, jalaliToGregorian, isValidGregorian, isValidJalali, toPersianDigits, toAsciiDigits, getDaysInJalaliMonth, PERSIAN_MONTHS, PERSIAN_WEEKDAYS };
window.PersianCalendar=PersianCalendar;
})();
(function (){
'use strict';
var activeCalendars=new WeakMap();
var calendarPopup=null;
var currentInput=null;
var lastOpenTime=0;
function getOrCreatePopup(){
if(!calendarPopup){
calendarPopup=document.createElement('div');
calendarPopup.className='persian-date-popup';
calendarPopup.style.cssText='position:absolute;z-index:999999;display:none;';
document.body.appendChild(calendarPopup);
}
return calendarPopup;
}
function positionPopup(input){
var popup=getOrCreatePopup();
var rect=input.getBoundingClientRect();
var scrollTop=window.pageYOffset||document.documentElement.scrollTop;
var scrollLeft=window.pageXOffset||document.documentElement.scrollLeft;
popup.style.top=(rect.bottom + scrollTop + 5) + 'px';
popup.style.left=(rect.left + scrollLeft) + 'px';
setTimeout(function (){
var popupRect=popup.getBoundingClientRect();
if(popupRect.right > window.innerWidth){
popup.style.left=(window.innerWidth - popupRect.width - 10 + scrollLeft) + 'px';
}
if(popupRect.bottom > window.innerHeight){
popup.style.top=(rect.top + scrollTop - popupRect.height - 5) + 'px';
}}, 0);
}
function isCalendarOpen(){
return calendarPopup&&calendarPopup.style.display!=='none';
}
function showCalendar(input){
if(typeof PersianCalendar==='undefined'){
console.error('Persian Elementor: PersianCalendar not loaded');
return;
}
if(isCalendarOpen()&&currentInput!==input){
hideCalendar();
}
if(isCalendarOpen()&&currentInput===input){
return;
}
var popup=getOrCreatePopup();
currentInput=input;
lastOpenTime=Date.now();
if(activeCalendars.has(popup)){
var oldCalendar=activeCalendars.get(popup);
if(oldCalendar&&typeof oldCalendar.destroy==='function'){
oldCalendar.destroy();
}
activeCalendars.delete(popup);
}
popup.innerHTML='';
var targetInput=input;
var selectedDate=new Date();
var existingValue=targetInput.value;
if(existingValue&&typeof PersianDateConverter!=='undefined'){
var parts=existingValue.split('/');
if(parts.length===3){
var jy=parseInt(parts[0], 10);
var jm=parseInt(parts[1], 10);
var jd=parseInt(parts[2], 10);
var gregorian=PersianDateConverter.jalaliToGregorian(jy, jm, jd);
if(gregorian[0] > 0){
selectedDate=new Date(gregorian[0], gregorian[1] - 1, gregorian[2]);
}}
}
var calendar=new PersianCalendar(popup, {
selectedDate: selectedDate,
title: 'انتخاب تاریخ',
showCloseButton: true,
onDateSelect: function (dateInfo){
var jalali=dateInfo.jalali;
var formatted=jalali.year + '/' +
String(jalali.month).padStart(2, '0') + '/' +
String(jalali.day).padStart(2, '0');
targetInput.value=formatted;
var event=new Event('change', { bubbles: true });
targetInput.dispatchEvent(event);
hideCalendar();
},
onClose: function (){
hideCalendar();
}});
activeCalendars.set(popup, calendar);
var labelElement=targetInput.closest('.elementor-field-group');
if(labelElement){
var label=labelElement.querySelector('label');
if(label){
var computedStyle=window.getComputedStyle(label);
popup.style.fontFamily=computedStyle.fontFamily;
}}
popup.addEventListener('click', function (e){
e.stopPropagation();
});
popup.style.display='block';
positionPopup(input);
input.setAttribute('data-calendar-open', 'true');
}
function hideCalendar(){
if(calendarPopup){
calendarPopup.style.display='none';
calendarPopup.innerHTML='';
}
if(currentInput){
currentInput.removeAttribute('data-calendar-open');
currentInput=null;
}}
function initPersianDateField(inputOrId){
var input=typeof inputOrId==='string' ?
document.getElementById(inputOrId):inputOrId;
if(!input) return false;
if(input.getAttribute('data-persian-date-initialized')) return true;
input.setAttribute('data-persian-date-initialized', 'true');
input.addEventListener('click', function (e){
e.preventDefault();
e.stopPropagation();
if(isCalendarOpen()&&currentInput===input){
hideCalendar();
}else{
showCalendar(input);
}});
input.addEventListener('focus', function (e){
});
return true;
}
function initAllDateFields(){
var fields=document.querySelectorAll('[data-persian-date]:not([data-persian-date-initialized])');
fields.forEach(function (field){
initPersianDateField(field);
});
}
document.addEventListener('click', function (e){
if(!isCalendarOpen()) return;
if(Date.now() - lastOpenTime < 100) return;
if(calendarPopup.contains(e.target)) return;
if(currentInput&&e.target===currentInput) return;
hideCalendar();
});
if(document.readyState==='loading'){
document.addEventListener('DOMContentLoaded', function (){
initAllDateFields();
});
}else{
initAllDateFields();
}
var observer=new MutationObserver(function (mutations){
var shouldReinit=false;
mutations.forEach(function (mutation){
if(mutation.type==='childList'){
mutation.addedNodes.forEach(function (node){
if(node.nodeType===Node.ELEMENT_NODE){
if(node.matches&&node.matches('[data-persian-date]')){
shouldReinit=true;
}else if(node.querySelector&&node.querySelector('[data-persian-date]')){
shouldReinit=true;
}}
});
}});
if(shouldReinit){
initAllDateFields();
}});
observer.observe(document.body, {
childList: true,
subtree: true
});
window.initPersianDateField=initPersianDateField;
window.initAllPersianDateFields=initAllDateFields;
window.hidePersianCalendar=hideCalendar;
})();
!function(o){var t={url:!1,callback:!1,target:!1,duration:120,on:"mouseover",touch:!0,onZoomIn:!1,onZoomOut:!1,magnify:1};o.zoom=function(t,e,n,i){var u,a,c,r,l,m,f,s=o(t),h=s.css("position"),d=o(e);return t.style.position=/(absolute|fixed)/.test(h)?h:"relative",t.style.overflow="hidden",n.style.width=n.style.height="",o(n).addClass("zoomImg").css({position:"absolute",top:0,left:0,opacity:0,width:n.width*i,height:n.height*i,border:"none",maxWidth:"none",maxHeight:"none"}).appendTo(t),{init:function(){a=s.outerWidth(),u=s.outerHeight(),e===t?(r=a,c=u):(r=d.outerWidth(),c=d.outerHeight()),l=(n.width-a)/r,m=(n.height-u)/c,f=d.offset()},move:function(o){var t=o.pageX-f.left,e=o.pageY-f.top;e=Math.max(Math.min(e,c),0),t=Math.max(Math.min(t,r),0),n.style.left=t*-l+"px",n.style.top=e*-m+"px"}}},o.fn.zoom=function(e){return this.each(function(){var n=o.extend({},t,e||{}),i=n.target&&o(n.target)[0]||this,u=this,a=o(u),c=document.createElement("img"),r=o(c),l="mousemove.zoom",m=!1,f=!1;if(!n.url){var s=u.querySelector("img");if(s&&(n.url=s.getAttribute("data-src")||s.currentSrc||s.src,n.alt=s.getAttribute("data-alt")||s.alt),!n.url)return}a.one("zoom.destroy",function(o,t){a.off(".zoom"),i.style.position=o,i.style.overflow=t,c.onload=null,r.remove()}.bind(this,i.style.position,i.style.overflow)),c.onload=function(){var t=o.zoom(i,u,c,n.magnify);function e(e){t.init(),t.move(e),r.stop().fadeTo(o.support.opacity?n.duration:0,1,"function"==typeof n.onZoomIn&&n.onZoomIn.call(c))}function s(){r.stop().fadeTo(n.duration,0,"function"==typeof n.onZoomOut&&n.onZoomOut.call(c))}"grab"===n.on?a.on("mousedown.zoom",function(n){1===n.which&&(o(document).one("mouseup.zoom",function(){s(),o(document).off(l,t.move)}),e(n),o(document).on(l,t.move),n.preventDefault())}):"click"===n.on?a.on("click.zoom",function(n){return m?void 0:(m=!0,e(n),o(document).on(l,t.move),o(document).one("click.zoom",function(){s(),m=!1,o(document).off(l,t.move)}),!1)}):"toggle"===n.on?a.on("click.zoom",function(o){m?s():e(o),m=!m}):"mouseover"===n.on&&(t.init(),a.on("mouseenter.zoom",e).on("mouseleave.zoom",s).on(l,t.move)),n.touch&&a.on("touchstart.zoom",function(o){o.preventDefault(),f?(f=!1,s()):(f=!0,e(o.originalEvent.touches[0]||o.originalEvent.changedTouches[0]))}).on("touchmove.zoom",function(o){o.preventDefault(),t.move(o.originalEvent.touches[0]||o.originalEvent.changedTouches[0])}).on("touchend.zoom",function(o){o.preventDefault(),f&&(f=!1,s())}),"function"==typeof n.callback&&n.callback.call(c)},c.setAttribute("role","presentation"),c.alt=n.alt||"",c.src=n.url})},o.fn.zoom.defaults=t}(window.jQuery);
!function($){var focused=!0;$.flexslider=function(el,options){var slider=$(el);void 0===options.rtl&&"rtl"==$("html").attr("dir")&&(options.rtl=!0),slider.vars=$.extend({},$.flexslider.defaults,options);var watchedEventClearTimer,namespace=slider.vars.namespace,msGesture=window.navigator&&window.navigator.msPointerEnabled&&window.MSGesture,touch=("ontouchstart"in window||msGesture||window.DocumentTouch&&document instanceof DocumentTouch)&&slider.vars.touch,eventType="click touchend MSPointerUp keyup",watchedEvent="",vertical="vertical"===slider.vars.direction,reverse=slider.vars.reverse,carousel=0<slider.vars.itemWidth,fade="fade"===slider.vars.animation,asNav=""!==slider.vars.asNavFor,methods={};$.data(el,"flexslider",slider),methods={init:function(){slider.animating=!1,slider.currentSlide=parseInt(slider.vars.startAt||0,10),isNaN(slider.currentSlide)&&(slider.currentSlide=0),slider.animatingTo=slider.currentSlide,slider.atEnd=0===slider.currentSlide||slider.currentSlide===slider.last,slider.containerSelector=slider.vars.selector.substr(0,slider.vars.selector.search(" ")),slider.slides=$(slider.vars.selector,slider),slider.container=$(slider.containerSelector,slider),slider.count=slider.slides.length,slider.syncExists=0<$(slider.vars.sync).length,"slide"===slider.vars.animation&&(slider.vars.animation="swing"),slider.prop=vertical?"top":slider.vars.rtl?"marginRight":"marginLeft",slider.args={},slider.manualPause=!1,slider.stopped=!1,slider.started=!1,slider.startTimeout=null,slider.transitions=!slider.vars.video&&!fade&&slider.vars.useCSS&&function(){var i,obj=document.createElement("div"),props=["perspectiveProperty","WebkitPerspective","MozPerspective","OPerspective","msPerspective"];for(i in props)if(void 0!==obj.style[props[i]])return slider.pfx=props[i].replace("Perspective","").toLowerCase(),slider.prop="-"+slider.pfx+"-transform",!0;return!1}(),slider.isFirefox=-1<navigator.userAgent.toLowerCase().indexOf("firefox"),(slider.ensureAnimationEnd="")!==slider.vars.controlsContainer&&(slider.controlsContainer=0<$(slider.vars.controlsContainer).length&&$(slider.vars.controlsContainer)),""!==slider.vars.manualControls&&(slider.manualControls=0<$(slider.vars.manualControls).length&&$(slider.vars.manualControls)),""!==slider.vars.customDirectionNav&&(slider.customDirectionNav=2===$(slider.vars.customDirectionNav).length&&$(slider.vars.customDirectionNav)),slider.vars.randomize&&(slider.slides.sort(function(){return Math.round(Math.random())-.5}),slider.container.empty().append(slider.slides)),slider.doMath(),slider.setup("init"),slider.vars.controlNav&&methods.controlNav.setup(),slider.vars.directionNav&&methods.directionNav.setup(),slider.vars.keyboard&&(1===$(slider.containerSelector).length||slider.vars.multipleKeyboard)&&$(document).bind("keyup",function(target){target=target.keyCode;slider.animating||39!==target&&37!==target||(target=slider.vars.rtl?37===target?slider.getTarget("next"):39===target&&slider.getTarget("prev"):39===target?slider.getTarget("next"):37===target&&slider.getTarget("prev"),slider.flexAnimate(target,slider.vars.pauseOnAction))}),slider.vars.mousewheel&&slider.bind("mousewheel",function(event,target,deltaX,deltaY){event.preventDefault();target=target<0?slider.getTarget("next"):slider.getTarget("prev");slider.flexAnimate(target,slider.vars.pauseOnAction)}),slider.vars.pausePlay&&methods.pausePlay.setup(),slider.vars.slideshow&&slider.vars.pauseInvisible&&methods.pauseInvisible.init(),slider.vars.slideshow&&(slider.vars.pauseOnHover&&slider.hover(function(){slider.manualPlay||slider.manualPause||slider.pause()},function(){slider.manualPause||slider.manualPlay||slider.stopped||slider.play()}),slider.vars.pauseInvisible&&methods.pauseInvisible.isHidden()||(0<slider.vars.initDelay?slider.startTimeout=setTimeout(slider.play,slider.vars.initDelay):slider.play())),asNav&&methods.asNav.setup(),touch&&slider.vars.touch&&methods.touch(),(!fade||fade&&slider.vars.smoothHeight)&&$(window).bind("resize orientationchange focus",methods.resize),slider.find("img").attr("draggable","false"),setTimeout(function(){slider.vars.start(slider)},200)},asNav:{setup:function(){slider.asNav=!0,slider.animatingTo=Math.floor(slider.currentSlide/slider.move),slider.currentItem=slider.currentSlide,slider.slides.removeClass(namespace+"active-slide").eq(slider.currentItem).addClass(namespace+"active-slide"),msGesture?(el._slider=slider).slides.each(function(){this._gesture=new MSGesture,(this._gesture.target=this).addEventListener("MSPointerDown",function(e){e.preventDefault(),e.currentTarget._gesture&&e.currentTarget._gesture.addPointer(e.pointerId)},!1),this.addEventListener("MSGestureTap",function(target){target.preventDefault();var $slide=$(this),target=$slide.index();$(slider.vars.asNavFor).data("flexslider").animating||$slide.hasClass("active")||(slider.direction=slider.currentItem<target?"next":"prev",slider.flexAnimate(target,slider.vars.pauseOnAction,!1,!0,!0))})}):slider.slides.on(eventType,function(posFromX){posFromX.preventDefault();var $slide=$(this),target=$slide.index(),posFromX=slider.vars.rtl?-1*($slide.offset().right-$(slider).scrollLeft()):$slide.offset().left-$(slider).scrollLeft();posFromX<=0&&$slide.hasClass(namespace+"active-slide")?slider.flexAnimate(slider.getTarget("prev"),!0):$(slider.vars.asNavFor).data("flexslider").animating||$slide.hasClass(namespace+"active-slide")||(slider.direction=slider.currentItem<target?"next":"prev",slider.flexAnimate(target,slider.vars.pauseOnAction,!1,!0,!0))})}},controlNav:{setup:function(){slider.manualControls?methods.controlNav.setupManual():methods.controlNav.setupPaging()},setupPaging:function(){var item,type="thumbnails"===slider.vars.controlNav?"control-thumbs":"control-paging",j=1;if(slider.controlNavScaffold=$('<ol class="'+namespace+"control-nav "+namespace+type+'"></ol>'),1<slider.pagingCount)for(var captn,i=0;i<slider.pagingCount;i++){void 0===(captn=slider.slides.eq(i)).attr("data-thumb-alt")&&captn.attr("data-thumb-alt",""),item=$("<a></a>").attr("href","#").text(j),"thumbnails"===slider.vars.controlNav&&(item=$("<img/>").attr("src",captn.attr("data-thumb"))),""!==captn.attr("data-thumb-alt")&&item.attr("alt",captn.attr("data-thumb-alt")),"thumbnails"!==slider.vars.controlNav||!0!==slider.vars.thumbCaptions||""!==(captn=captn.attr("data-thumbcaption"))&&void 0!==captn&&(liElement=$("<span></span>").addClass(namespace+"caption").text(captn),item.append(liElement));var liElement=$("<li>");item.appendTo(liElement),liElement.append("</li>"),slider.controlNavScaffold.append(liElement),j++}(slider.controlsContainer?$(slider.controlsContainer):slider).append(slider.controlNavScaffold),methods.controlNav.set(),methods.controlNav.active(),slider.controlNavScaffold.delegate("a, img",eventType,function(event){var $this,target;event.preventDefault(),""!==watchedEvent&&watchedEvent!==event.type||($this=$(this),target=slider.controlNav.index($this),$this.hasClass(namespace+"active")||(slider.direction=target>slider.currentSlide?"next":"prev",slider.flexAnimate(target,slider.vars.pauseOnAction))),""===watchedEvent&&(watchedEvent=event.type),methods.setToClearWatchedEvent()})},setupManual:function(){slider.controlNav=slider.manualControls,methods.controlNav.active(),slider.controlNav.bind(eventType,function(event){var $this,target;event.preventDefault(),""!==watchedEvent&&watchedEvent!==event.type||($this=$(this),target=slider.controlNav.index($this),$this.hasClass(namespace+"active")||(target>slider.currentSlide?slider.direction="next":slider.direction="prev",slider.flexAnimate(target,slider.vars.pauseOnAction))),""===watchedEvent&&(watchedEvent=event.type),methods.setToClearWatchedEvent()})},set:function(){var selector="thumbnails"===slider.vars.controlNav?"img":"a";slider.controlNav=$("."+namespace+"control-nav li "+selector,slider.controlsContainer||slider)},active:function(){slider.controlNav.removeClass(namespace+"active").eq(slider.animatingTo).addClass(namespace+"active")},update:function(action,pos){1<slider.pagingCount&&"add"===action?slider.controlNavScaffold.append($('<li><a href="#">'+slider.count+"</a></li>")):(1===slider.pagingCount?slider.controlNavScaffold.find("li"):slider.controlNav.eq(pos).closest("li")).remove(),methods.controlNav.set(),1<slider.pagingCount&&slider.pagingCount!==slider.controlNav.length?slider.update(pos,action):methods.controlNav.active()}},directionNav:{setup:function(){var directionNavScaffold=$('<ul class="'+namespace+'direction-nav"><li class="'+namespace+'nav-prev"><a class="'+namespace+'prev" href="#">'+slider.vars.prevText+'</a></li><li class="'+namespace+'nav-next"><a class="'+namespace+'next" href="#">'+slider.vars.nextText+"</a></li></ul>");slider.customDirectionNav?slider.directionNav=slider.customDirectionNav:slider.controlsContainer?($(slider.controlsContainer).append(directionNavScaffold),slider.directionNav=$("."+namespace+"direction-nav li a",slider.controlsContainer)):(slider.append(directionNavScaffold),slider.directionNav=$("."+namespace+"direction-nav li a",slider)),methods.directionNav.update(),slider.directionNav.bind(eventType,function(event){var target;event.preventDefault(),""!==watchedEvent&&watchedEvent!==event.type||(target=$(this).hasClass(namespace+"next")?slider.getTarget("next"):slider.getTarget("prev"),slider.flexAnimate(target,slider.vars.pauseOnAction)),""===watchedEvent&&(watchedEvent=event.type),methods.setToClearWatchedEvent()})},update:function(){var disabledClass=namespace+"disabled";1===slider.pagingCount?slider.directionNav.addClass(disabledClass).attr("tabindex","-1"):slider.vars.animationLoop?slider.directionNav.removeClass(disabledClass).removeAttr("tabindex"):0===slider.animatingTo?slider.directionNav.removeClass(disabledClass).filter("."+namespace+"prev").addClass(disabledClass).attr("tabindex","-1"):slider.animatingTo===slider.last?slider.directionNav.removeClass(disabledClass).filter("."+namespace+"next").addClass(disabledClass).attr("tabindex","-1"):slider.directionNav.removeClass(disabledClass).removeAttr("tabindex")}},pausePlay:{setup:function(){var pausePlayScaffold=$('<div class="'+namespace+'pauseplay"><a href="#"></a></div>');slider.controlsContainer?(slider.controlsContainer.append(pausePlayScaffold),slider.pausePlay=$("."+namespace+"pauseplay a",slider.controlsContainer)):(slider.append(pausePlayScaffold),slider.pausePlay=$("."+namespace+"pauseplay a",slider)),methods.pausePlay.update(slider.vars.slideshow?namespace+"pause":namespace+"play"),slider.pausePlay.bind(eventType,function(event){event.preventDefault(),""!==watchedEvent&&watchedEvent!==event.type||($(this).hasClass(namespace+"pause")?(slider.manualPause=!0,slider.manualPlay=!1,slider.pause()):(slider.manualPause=!1,slider.manualPlay=!0,slider.play())),""===watchedEvent&&(watchedEvent=event.type),methods.setToClearWatchedEvent()})},update:function(state){"play"===state?slider.pausePlay.removeClass(namespace+"pause").addClass(namespace+"play").html(slider.vars.playText):slider.pausePlay.removeClass(namespace+"play").addClass(namespace+"pause").html(slider.vars.pauseText)}},touch:function(){var startX,startY,offset,cwidth,dx,startT,onTouchStart,onTouchMove,onTouchEnd,scrolling=!1,localX=0,localY=0,accDx=0;msGesture?(el.style.msTouchAction="none",el._gesture=new MSGesture,(el._gesture.target=el).addEventListener("MSPointerDown",function(e){e.stopPropagation(),slider.animating?e.preventDefault():(slider.pause(),el._gesture.addPointer(e.pointerId),accDx=0,cwidth=vertical?slider.h:slider.w,startT=Number(new Date),offset=carousel&&reverse&&slider.animatingTo===slider.last?0:carousel&&reverse?slider.limit-(slider.itemW+slider.vars.itemMargin)*slider.move*slider.animatingTo:carousel&&slider.currentSlide===slider.last?slider.limit:carousel?(slider.itemW+slider.vars.itemMargin)*slider.move*slider.currentSlide:reverse?(slider.last-slider.currentSlide+slider.cloneOffset)*cwidth:(slider.currentSlide+slider.cloneOffset)*cwidth)},!1),el._slider=slider,el.addEventListener("MSGestureChange",function(e){e.stopPropagation();var transX,transY,slider=e.target._slider;slider&&(transX=-e.translationX,transY=-e.translationY,accDx+=vertical?transY:transX,dx=(slider.vars.rtl?-1:1)*accDx,scrolling=vertical?Math.abs(accDx)<Math.abs(-transX):Math.abs(accDx)<Math.abs(-transY),e.detail!==e.MSGESTURE_FLAG_INERTIA?(!scrolling||500<Number(new Date)-startT)&&(e.preventDefault(),!fade&&slider.transitions&&(slider.vars.animationLoop||(dx=accDx/(0===slider.currentSlide&&accDx<0||slider.currentSlide===slider.last&&0<accDx?Math.abs(accDx)/cwidth+2:1)),slider.setProps(offset+dx,"setTouch"))):setImmediate(function(){el._gesture.stop()}))},!1),el.addEventListener("MSGestureEnd",function(target){target.stopPropagation();var updateDx,slider=target.target._slider;slider&&(slider.animatingTo!==slider.currentSlide||scrolling||null===dx||(target=0<(updateDx=reverse?-dx:dx)?slider.getTarget("next"):slider.getTarget("prev"),slider.canAdvance(target)&&(Number(new Date)-startT<550&&50<Math.abs(updateDx)||Math.abs(updateDx)>cwidth/2)?slider.flexAnimate(target,slider.vars.pauseOnAction):fade||slider.flexAnimate(slider.currentSlide,slider.vars.pauseOnAction,!0)),offset=dx=startY=startX=null,accDx=0)},!1)):(onTouchStart=function(e){slider.animating?e.preventDefault():!window.navigator.msPointerEnabled&&1!==e.touches.length||(slider.pause(),cwidth=vertical?slider.h:slider.w,startT=Number(new Date),localX=e.touches[0].pageX,localY=e.touches[0].pageY,offset=carousel&&reverse&&slider.animatingTo===slider.last?0:carousel&&reverse?slider.limit-(slider.itemW+slider.vars.itemMargin)*slider.move*slider.animatingTo:carousel&&slider.currentSlide===slider.last?slider.limit:carousel?(slider.itemW+slider.vars.itemMargin)*slider.move*slider.currentSlide:reverse?(slider.last-slider.currentSlide+slider.cloneOffset)*cwidth:(slider.currentSlide+slider.cloneOffset)*cwidth,startX=vertical?localY:localX,startY=vertical?localX:localY,el.addEventListener("touchmove",onTouchMove,!1),el.addEventListener("touchend",onTouchEnd,!1))},onTouchMove=function(e){localX=e.touches[0].pageX,localY=e.touches[0].pageY,dx=vertical?startX-localY:(slider.vars.rtl?-1:1)*(startX-localX);(!(scrolling=vertical?Math.abs(dx)<Math.abs(localX-startY):Math.abs(dx)<Math.abs(localY-startY))||500<Number(new Date)-startT)&&(e.preventDefault(),!fade&&slider.transitions&&(slider.vars.animationLoop||(dx/=0===slider.currentSlide&&dx<0||slider.currentSlide===slider.last&&0<dx?Math.abs(dx)/cwidth+2:1),slider.setProps(offset+dx,"setTouch")))},onTouchEnd=function(e){var updateDx,target;el.removeEventListener("touchmove",onTouchMove,!1),slider.animatingTo!==slider.currentSlide||scrolling||null===dx||(target=0<(updateDx=reverse?-dx:dx)?slider.getTarget("next"):slider.getTarget("prev"),slider.canAdvance(target)&&(Number(new Date)-startT<550&&50<Math.abs(updateDx)||Math.abs(updateDx)>cwidth/2)?slider.flexAnimate(target,slider.vars.pauseOnAction):fade||slider.flexAnimate(slider.currentSlide,slider.vars.pauseOnAction,!0)),el.removeEventListener("touchend",onTouchEnd,!1),offset=dx=startY=startX=null},el.addEventListener("touchstart",onTouchStart,!1))},resize:function(){!slider.animating&&slider.is(":visible")&&(carousel||slider.doMath(),fade?methods.smoothHeight():carousel?(slider.slides.width(slider.computedW),slider.update(slider.pagingCount),slider.setProps()):vertical?(slider.viewport.height(slider.h),slider.setProps(slider.h,"setTotal")):(slider.vars.smoothHeight&&methods.smoothHeight(),slider.newSlides.width(slider.computedW),slider.setProps(slider.computedW,"setTotal")))},smoothHeight:function(dur){var $obj;vertical&&!fade||($obj=fade?slider:slider.viewport,dur?$obj.animate({height:slider.slides.eq(slider.animatingTo).innerHeight()},dur):$obj.innerHeight(slider.slides.eq(slider.animatingTo).innerHeight()))},sync:function(action){var $obj=$(slider.vars.sync).data("flexslider"),target=slider.animatingTo;switch(action){case"animate":$obj.flexAnimate(target,slider.vars.pauseOnAction,!1,!0);break;case"play":$obj.playing||$obj.asNav||$obj.play();break;case"pause":$obj.pause()}},uniqueID:function($clone){return $clone.filter("[id]").add($clone.find("[id]")).each(function(){var $this=$(this);$this.attr("id",$this.attr("id")+"_clone")}),$clone},pauseInvisible:{visProp:null,init:function(){var evtname=methods.pauseInvisible.getHiddenProp();evtname&&(evtname=evtname.replace(/[H|h]idden/,"")+"visibilitychange",document.addEventListener(evtname,function(){methods.pauseInvisible.isHidden()?slider.startTimeout?clearTimeout(slider.startTimeout):slider.pause():!slider.started&&0<slider.vars.initDelay?setTimeout(slider.play,slider.vars.initDelay):slider.play()}))},isHidden:function(){var prop=methods.pauseInvisible.getHiddenProp();return!!prop&&document[prop]},getHiddenProp:function(){var prefixes=["webkit","moz","ms","o"];if("hidden"in document)return"hidden";for(var i=0;i<prefixes.length;i++)if(prefixes[i]+"Hidden"in document)return prefixes[i]+"Hidden";return null}},setToClearWatchedEvent:function(){clearTimeout(watchedEventClearTimer),watchedEventClearTimer=setTimeout(function(){watchedEvent=""},3e3)}},slider.flexAnimate=function(slideString,pause,override,master,calcNext){if(slider.vars.animationLoop||slideString===slider.currentSlide||(slider.direction=slideString>slider.currentSlide?"next":"prev"),asNav&&1===slider.pagingCount&&(slider.direction=slider.currentItem<slideString?"next":"prev"),!slider.animating&&(slider.canAdvance(slideString,calcNext)||override)&&slider.is(":visible")){if(asNav&&master){master=$(slider.vars.asNavFor).data("flexslider");if(slider.atEnd=0===slideString||slideString===slider.count-1,master.flexAnimate(slideString,!0,!1,!0,calcNext),slider.direction=slider.currentItem<slideString?"next":"prev",master.direction=slider.direction,Math.ceil((slideString+1)/slider.visible)-1===slider.currentSlide||0===slideString)return slider.currentItem=slideString,slider.slides.removeClass(namespace+"active-slide").eq(slideString).addClass(namespace+"active-slide"),!1;slider.currentItem=slideString,slider.slides.removeClass(namespace+"active-slide").eq(slideString).addClass(namespace+"active-slide"),slideString=Math.floor(slideString/slider.visible)}var dimension;slider.animating=!0,slider.animatingTo=slideString,pause&&slider.pause(),slider.vars.before(slider),slider.syncExists&&!calcNext&&methods.sync("animate"),slider.vars.controlNav&&methods.controlNav.active(),carousel||slider.slides.removeClass(namespace+"active-slide").eq(slideString).addClass(namespace+"active-slide"),slider.atEnd=0===slideString||slideString===slider.last,slider.vars.directionNav&&methods.directionNav.update(),slideString===slider.last&&(slider.vars.end(slider),slider.vars.animationLoop||slider.pause()),fade?touch?(slider.slides.eq(slider.currentSlide).css({opacity:0,zIndex:1}),slider.slides.eq(slideString).css({opacity:1,zIndex:2}),slider.wrapup(dimension)):(slider.slides.eq(slider.currentSlide).css({zIndex:1}).animate({opacity:0},slider.vars.animationSpeed,slider.vars.easing),slider.slides.eq(slideString).css({zIndex:2}).animate({opacity:1},slider.vars.animationSpeed,slider.vars.easing,slider.wrapup)):(dimension=vertical?slider.slides.filter(":first").height():slider.computedW,slideString=carousel?(calcNext=slider.vars.itemMargin,(calcNext=(slider.itemW+calcNext)*slider.move*slider.animatingTo)>slider.limit&&1!==slider.visible?slider.limit:calcNext):0===slider.currentSlide&&slideString===slider.count-1&&slider.vars.animationLoop&&"next"!==slider.direction?reverse?(slider.count+slider.cloneOffset)*dimension:0:slider.currentSlide===slider.last&&0===slideString&&slider.vars.animationLoop&&"prev"!==slider.direction?reverse?0:(slider.count+1)*dimension:reverse?(slider.count-1-slideString+slider.cloneOffset)*dimension:(slideString+slider.cloneOffset)*dimension,slider.setProps(slideString,"",slider.vars.animationSpeed),slider.transitions?(slider.vars.animationLoop&&slider.atEnd||(slider.animating=!1,slider.currentSlide=slider.animatingTo),slider.container.unbind("webkitTransitionEnd transitionend"),slider.container.bind("webkitTransitionEnd transitionend",function(){clearTimeout(slider.ensureAnimationEnd),slider.wrapup(dimension)}),clearTimeout(slider.ensureAnimationEnd),slider.ensureAnimationEnd=setTimeout(function(){slider.wrapup(dimension)},slider.vars.animationSpeed+100)):slider.container.animate(slider.args,slider.vars.animationSpeed,slider.vars.easing,function(){slider.wrapup(dimension)})),slider.vars.smoothHeight&&methods.smoothHeight(slider.vars.animationSpeed)}},slider.wrapup=function(dimension){fade||carousel||(0===slider.currentSlide&&slider.animatingTo===slider.last&&slider.vars.animationLoop?slider.setProps(dimension,"jumpEnd"):slider.currentSlide===slider.last&&0===slider.animatingTo&&slider.vars.animationLoop&&slider.setProps(dimension,"jumpStart")),slider.animating=!1,slider.currentSlide=slider.animatingTo,slider.vars.after(slider)},slider.animateSlides=function(){!slider.animating&&focused&&slider.flexAnimate(slider.getTarget("next"))},slider.pause=function(){clearInterval(slider.animatedSlides),slider.animatedSlides=null,slider.playing=!1,slider.vars.pausePlay&&methods.pausePlay.update("play"),slider.syncExists&&methods.sync("pause")},slider.play=function(){slider.playing&&clearInterval(slider.animatedSlides),slider.animatedSlides=slider.animatedSlides||setInterval(slider.animateSlides,slider.vars.slideshowSpeed),slider.started=slider.playing=!0,slider.vars.pausePlay&&methods.pausePlay.update("pause"),slider.syncExists&&methods.sync("play")},slider.stop=function(){slider.pause(),slider.stopped=!0},slider.canAdvance=function(target,fromNav){var last=asNav?slider.pagingCount-1:slider.last;return!!fromNav||(asNav&&slider.currentItem===slider.count-1&&0===target&&"prev"===slider.direction||(!asNav||0!==slider.currentItem||target!==slider.pagingCount-1||"next"===slider.direction)&&((target!==slider.currentSlide||asNav)&&(!!slider.vars.animationLoop||(!slider.atEnd||0!==slider.currentSlide||target!==last||"next"===slider.direction)&&(!slider.atEnd||slider.currentSlide!==last||0!==target||"next"!==slider.direction))))},slider.getTarget=function(dir){return"next"===(slider.direction=dir)?slider.currentSlide===slider.last?0:slider.currentSlide+1:0===slider.currentSlide?slider.last:slider.currentSlide-1},slider.setProps=function(pos,special,dur){var posCheck,target=(posCheck=pos||(slider.itemW+slider.vars.itemMargin)*slider.move*slider.animatingTo,function(){if(carousel)return"setTouch"===special?pos:reverse&&slider.animatingTo===slider.last?0:reverse?slider.limit-(slider.itemW+slider.vars.itemMargin)*slider.move*slider.animatingTo:slider.animatingTo===slider.last?slider.limit:posCheck;switch(special){case"setTotal":return reverse?(slider.count-1-slider.currentSlide+slider.cloneOffset)*pos:(slider.currentSlide+slider.cloneOffset)*pos;case"setTouch":return pos;case"jumpEnd":return reverse?pos:slider.count*pos;case"jumpStart":return reverse?slider.count*pos:pos;default:return pos}}()*(slider.vars.rtl?1:-1)+"px");slider.transitions&&(target=vertical?"translate3d(0,"+target+",0)":"translate3d("+parseInt(target)+"px,0,0)",slider.container.css("-"+slider.pfx+"-transition-duration",dur=void 0!==dur?dur/1e3+"s":"0s"),slider.container.css("transition-duration",dur)),slider.args[slider.prop]=target,!slider.transitions&&void 0!==dur||slider.container.css(slider.args),slider.container.css("transform",target)},slider.setup=function(type){var sliderOffset,arr;fade?(slider.vars.rtl?slider.slides.css({width:"100%",float:"right",marginLeft:"-100%",position:"relative"}):slider.slides.css({width:"100%",float:"left",marginRight:"-100%",position:"relative"}),"init"===type&&(touch?slider.slides.css({opacity:0,display:"block",webkitTransition:"opacity "+slider.vars.animationSpeed/1e3+"s ease",zIndex:1}).eq(slider.currentSlide).css({opacity:1,zIndex:2}):0==slider.vars.fadeFirstSlide?slider.slides.css({opacity:0,display:"block",zIndex:1}).eq(slider.currentSlide).css({zIndex:2}).css({opacity:1}):slider.slides.css({opacity:0,display:"block",zIndex:1}).eq(slider.currentSlide).css({zIndex:2}).animate({opacity:1},slider.vars.animationSpeed,slider.vars.easing)),slider.vars.smoothHeight&&methods.smoothHeight()):("init"===type&&(slider.viewport=$('<div class="'+namespace+'viewport"></div>').css({overflow:"hidden",position:"relative"}).appendTo(slider).append(slider.container),slider.cloneCount=0,slider.cloneOffset=0,reverse&&(arr=$.makeArray(slider.slides).reverse(),slider.slides=$(arr),slider.container.empty().append(slider.slides))),slider.vars.animationLoop&&!carousel&&(slider.cloneCount=2,slider.cloneOffset=1,"init"!==type&&slider.container.find(".clone").remove(),slider.container.append(methods.uniqueID(slider.slides.first().clone().addClass("clone")).attr("aria-hidden","true")).prepend(methods.uniqueID(slider.slides.last().clone().addClass("clone")).attr("aria-hidden","true"))),slider.newSlides=$(slider.vars.selector,slider),sliderOffset=reverse?slider.count-1-slider.currentSlide+slider.cloneOffset:slider.currentSlide+slider.cloneOffset,vertical&&!carousel?(slider.container.height(200*(slider.count+slider.cloneCount)+"%").css("position","absolute").width("100%"),setTimeout(function(){slider.newSlides.css({display:"block"}),slider.doMath(),slider.viewport.height(slider.h),slider.setProps(sliderOffset*slider.h,"init")},"init"===type?100:0)):(slider.container.width(200*(slider.count+slider.cloneCount)+"%"),slider.setProps(sliderOffset*slider.computedW,"init"),setTimeout(function(){slider.doMath(),slider.vars.rtl?slider.newSlides.css({width:slider.computedW,marginRight:slider.computedM,float:"right",display:"block"}):slider.newSlides.css({width:slider.computedW,marginRight:slider.computedM,float:"left",display:"block"}),slider.vars.smoothHeight&&methods.smoothHeight()},"init"===type?100:0))),carousel||slider.slides.removeClass(namespace+"active-slide").eq(slider.currentSlide).addClass(namespace+"active-slide"),slider.vars.init(slider)},slider.doMath=function(){var slide=slider.slides.first(),slideMargin=slider.vars.itemMargin,minItems=slider.vars.minItems,maxItems=slider.vars.maxItems;slider.w=(void 0===slider.viewport?slider:slider.viewport).width(),slider.isFirefox&&(slider.w=slider.width()),slider.h=slide.height(),slider.boxPadding=slide.outerWidth()-slide.width(),carousel?(slider.itemT=slider.vars.itemWidth+slideMargin,slider.itemM=slideMargin,slider.minW=minItems?minItems*slider.itemT:slider.w,slider.maxW=maxItems?maxItems*slider.itemT-slideMargin:slider.w,slider.itemW=slider.minW>slider.w?(slider.w-slideMargin*(minItems-1))/minItems:slider.maxW<slider.w?(slider.w-slideMargin*(maxItems-1))/maxItems:slider.vars.itemWidth>slider.w?slider.w:slider.vars.itemWidth,slider.visible=Math.floor(slider.w/slider.itemW),slider.move=0<slider.vars.move&&slider.vars.move<slider.visible?slider.vars.move:slider.visible,slider.pagingCount=Math.ceil((slider.count-slider.visible)/slider.move+1),slider.last=slider.pagingCount-1,slider.limit=1===slider.pagingCount?0:slider.vars.itemWidth>slider.w?slider.itemW*(slider.count-1)+slideMargin*(slider.count-1):(slider.itemW+slideMargin)*slider.count-slider.w-slideMargin):(slider.itemW=slider.w,slider.itemM=slideMargin,slider.pagingCount=slider.count,slider.last=slider.count-1),slider.computedW=slider.itemW-slider.boxPadding,slider.computedM=slider.itemM},slider.update=function(pos,action){slider.doMath(),carousel||(pos<slider.currentSlide?slider.currentSlide+=1:pos<=slider.currentSlide&&0!==pos&&--slider.currentSlide,slider.animatingTo=slider.currentSlide),slider.vars.controlNav&&!slider.manualControls&&("add"===action&&!carousel||slider.pagingCount>slider.controlNav.length?methods.controlNav.update("add"):("remove"===action&&!carousel||slider.pagingCount<slider.controlNav.length)&&(carousel&&slider.currentSlide>slider.last&&(--slider.currentSlide,--slider.animatingTo),methods.controlNav.update("remove",slider.last))),slider.vars.directionNav&&methods.directionNav.update()},slider.addSlide=function($obj,pos){$obj=$($obj);slider.count+=1,slider.last=slider.count-1,vertical&&reverse?void 0!==pos?slider.slides.eq(slider.count-pos).after($obj):slider.container.prepend($obj):void 0!==pos?slider.slides.eq(pos).before($obj):slider.container.append($obj),slider.update(pos,"add"),slider.slides=$(slider.vars.selector+":not(.clone)",slider),slider.setup(),slider.vars.added(slider)},slider.removeSlide=function(obj){var pos=isNaN(obj)?slider.slides.index($(obj)):obj;--slider.count,slider.last=slider.count-1,(isNaN(obj)?$(obj,slider.slides):vertical&&reverse?slider.slides.eq(slider.last):slider.slides.eq(obj)).remove(),slider.doMath(),slider.update(pos,"remove"),slider.slides=$(slider.vars.selector+":not(.clone)",slider),slider.setup(),slider.vars.removed(slider)},methods.init()},$(window).blur(function(e){focused=!1}).focus(function(e){focused=!0}),$.flexslider.defaults={namespace:"flex-",selector:".slides > li",animation:"fade",easing:"swing",direction:"horizontal",reverse:!1,animationLoop:!0,smoothHeight:!1,startAt:0,slideshow:!0,slideshowSpeed:7e3,animationSpeed:600,initDelay:0,randomize:!1,fadeFirstSlide:!0,thumbCaptions:!1,pauseOnAction:!0,pauseOnHover:!1,pauseInvisible:!0,useCSS:!0,touch:!0,video:!1,controlNav:!0,directionNav:!0,prevText:"Previous",nextText:"Next",keyboard:!0,multipleKeyboard:!1,mousewheel:!1,pausePlay:!1,pauseText:"Pause",playText:"Play",controlsContainer:"",manualControls:"",customDirectionNav:"",sync:"",asNavFor:"",itemWidth:0,itemMargin:0,minItems:1,maxItems:0,move:0,allowOneSlide:!0,isFirefox:!1,start:function(){},before:function(){},after:function(){},end:function(){},added:function(){},removed:function(){},init:function(){},rtl:!1},$.fn.flexslider=function(options){if("object"==typeof(options=void 0===options?{}:options))return this.each(function(){var $this=$(this),$slides=options.selector||".slides > li",$slides=$this.find($slides);1===$slides.length&&!1===options.allowOneSlide||0===$slides.length?($slides.fadeIn(400),options.start&&options.start($this)):void 0===$this.data("flexslider")&&new $.flexslider(this,options)});var $slider=$(this).data("flexslider");switch(options){case"play":$slider.play();break;case"pause":$slider.pause();break;case"stop":$slider.stop();break;case"next":$slider.flexAnimate($slider.getTarget("next"),!0);break;case"prev":case"previous":$slider.flexAnimate($slider.getTarget("prev"),!0);break;default:"number"==typeof options&&$slider.flexAnimate(options,!0)}}}(jQuery);
!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.PhotoSwipe=t()}(this,function(){"use strict";return function(e,t,n,i){var o={features:null,bind:function(e,t,n,i){var o=(i?"remove":"add")+"EventListener";t=t.split(" ");for(var a=0;a<t.length;a++)t[a]&&e[o](t[a],n,!1)},isArray:function(e){return e instanceof Array},createEl:function(e,t){var n=document.createElement(t||"div");return e&&(n.className=e),n},getScrollY:function(){var e=window.pageYOffset;return e!==undefined?e:document.documentElement.scrollTop},unbind:function(e,t,n){o.bind(e,t,n,!0)},removeClass:function(e,t){var n=new RegExp("(\\s|^)"+t+"(\\s|$)");e.className=e.className.replace(n," ").replace(/^\s\s*/,"").replace(/\s\s*$/,"")},addClass:function(e,t){o.hasClass(e,t)||(e.className+=(e.className?" ":"")+t)},hasClass:function(e,t){return e.className&&new RegExp("(^|\\s)"+t+"(\\s|$)").test(e.className)},getChildByClass:function(e,t){for(var n=e.firstChild;n;){if(o.hasClass(n,t))return n;n=n.nextSibling}},arraySearch:function(e,t,n){for(var i=e.length;i--;)if(e[i][n]===t)return i;return-1},extend:function(e,t,n){for(var i in t)if(t.hasOwnProperty(i)){if(n&&e.hasOwnProperty(i))continue;e[i]=t[i]}},easing:{sine:{out:function(e){return Math.sin(e*(Math.PI/2))},inOut:function(e){return-(Math.cos(Math.PI*e)-1)/2}},cubic:{out:function(e){return--e*e*e+1}}},detectFeatures:function(){if(o.features)return o.features;var e=o.createEl().style,t="",n={};if(n.oldIE=document.all&&!document.addEventListener,n.touch="ontouchstart"in window,window.requestAnimationFrame&&(n.raf=window.requestAnimationFrame,n.caf=window.cancelAnimationFrame),n.pointerEvent=!!window.PointerEvent||navigator.msPointerEnabled,!n.pointerEvent){var i=navigator.userAgent;if(/iP(hone|od)/.test(navigator.platform)){var a=navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/);a&&a.length>0&&(a=parseInt(a[1],10))>=1&&a<8&&(n.isOldIOSPhone=!0)}var r=i.match(/Android\s([0-9\.]*)/),l=r?r[1]:0;(l=parseFloat(l))>=1&&(l<4.4&&(n.isOldAndroid=!0),n.androidVersion=l),n.isMobileOpera=/opera mini|opera mobi/i.test(i)}for(var s,u,c=["transform","perspective","animationName"],d=["","webkit","Moz","ms","O"],m=0;m<4;m++){t=d[m];for(var p=0;p<3;p++)s=c[p],u=t+(t?s.charAt(0).toUpperCase()+s.slice(1):s),!n[s]&&u in e&&(n[s]=u);t&&!n.raf&&(t=t.toLowerCase(),n.raf=window[t+"RequestAnimationFrame"],n.raf&&(n.caf=window[t+"CancelAnimationFrame"]||window[t+"CancelRequestAnimationFrame"]))}if(!n.raf){var f=0;n.raf=function(e){var t=(new Date).getTime(),n=Math.max(0,16-(t-f)),i=window.setTimeout(function(){e(t+n)},n);return f=t+n,i},n.caf=function(e){clearTimeout(e)}}return n.svg=!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,o.features=n,n}};o.detectFeatures(),o.features.oldIE&&(o.bind=function(e,t,n,i){t=t.split(" ");for(var o,a=(i?"detach":"attach")+"Event",r=function(){n.handleEvent.call(n)},l=0;l<t.length;l++)if(o=t[l])if("object"==typeof n&&n.handleEvent){if(i){if(!n["oldIE"+o])return!1}else n["oldIE"+o]=r;e[a]("on"+o,n["oldIE"+o])}else e[a]("on"+o,n)});var a=this,r={allowPanToNext:!0,spacing:.12,bgOpacity:1,mouseUsed:!1,loop:!0,pinchToClose:!0,closeOnScroll:!0,closeOnVerticalDrag:!0,verticalDragRange:.75,hideAnimationDuration:333,showAnimationDuration:333,showHideOpacity:!1,focus:!0,escKey:!0,arrowKeys:!0,mainScrollEndFriction:.35,panEndFriction:.35,isClickableElement:function(e){return"A"===e.tagName},getDoubleTapZoom:function(e,t){return e?1:t.initialZoomLevel<.7?1:1.33},maxSpreadZoom:1.33,modal:!0,scaleMode:"fit"};o.extend(r,i);var l,s,u,c,d,m,p,f,h,y,x,v,g,w,b,I,C,D,T,M,S,A,E,O,k,R,P,Z,F,L,z,_,N,U,H,Y,W,B,G,X,V,K,q,$,j,J,Q,ee,te,ne,ie,oe,ae,re,le,se,ue={x:0,y:0},ce={x:0,y:0},de={x:0,y:0},me={},pe=0,fe={},he={x:0,y:0},ye=0,xe=!0,ve=[],ge={},we=!1,be=function(e,t){o.extend(a,t.publicMethods),ve.push(e)},Ie=function(e){var t=Ht();return e>t-1?e-t:e<0?t+e:e},Ce={},De=function(e,t){return Ce[e]||(Ce[e]=[]),Ce[e].push(t)},Te=function(e){var t=Ce[e];if(t){var n=Array.prototype.slice.call(arguments);n.shift();for(var i=0;i<t.length;i++)t[i].apply(a,n)}},Me=function(){return(new Date).getTime()},Se=function(e){re=e,a.bg.style.opacity=e*r.bgOpacity},Ae=function(e,t,n,i,o){(!we||o&&o!==a.currItem)&&(i/=o?o.fitRatio:a.currItem.fitRatio),e[A]=v+t+"px, "+n+"px"+g+" scale("+i+")"},Ee=function(e){te&&(e&&(y>a.currItem.fitRatio?we||($t(a.currItem,!1,!0),we=!0):we&&($t(a.currItem),we=!1)),Ae(te,de.x,de.y,y))},Oe=function(e){e.container&&Ae(e.container.style,e.initialPosition.x,e.initialPosition.y,e.initialZoomLevel,e)},ke=function(e,t){t[A]=v+e+"px, 0px"+g},Re=function(e,t){if(!r.loop&&t){var n=c+(he.x*pe-e)/he.x,i=Math.round(e-ct.x);(n<0&&i>0||n>=Ht()-1&&i<0)&&(e=ct.x+i*r.mainScrollEndFriction)}ct.x=e,ke(e,d)},Pe=function(e,t){var n=dt[e]-fe[e];return ce[e]+ue[e]+n-n*(t/x)},Ze=function(e,t){e.x=t.x,e.y=t.y,t.id&&(e.id=t.id)},Fe=function(e){e.x=Math.round(e.x),e.y=Math.round(e.y)},Le=null,ze=function(){Le&&(o.unbind(document,"mousemove",ze),o.addClass(e,"pswp--has_mouse"),r.mouseUsed=!0,Te("mouseUsed")),Le=setTimeout(function(){Le=null},100)},_e=function(e,t){var n=Xt(a.currItem,me,e);return t&&(ee=n),n},Ne=function(e){return e||(e=a.currItem),e.initialZoomLevel},Ue=function(e){return e||(e=a.currItem),e.w>0?r.maxSpreadZoom:1},He=function(e,t,n,i){return i===a.currItem.initialZoomLevel?(n[e]=a.currItem.initialPosition[e],!0):(n[e]=Pe(e,i),n[e]>t.min[e]?(n[e]=t.min[e],!0):n[e]<t.max[e]&&(n[e]=t.max[e],!0))},Ye=function(e){var t="";r.escKey&&27===e.keyCode?t="close":r.arrowKeys&&(37===e.keyCode?t="prev":39===e.keyCode&&(t="next")),t&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey||(e.preventDefault?e.preventDefault():e.returnValue=!1,a[t]()))},We=function(e){e&&(K||V||ne||W)&&(e.preventDefault(),e.stopPropagation())},Be=function(){a.setScrollOffset(0,o.getScrollY())},Ge={},Xe=0,Ve=function(e){Ge[e]&&(Ge[e].raf&&R(Ge[e].raf),Xe--,delete Ge[e])},Ke=function(e){Ge[e]&&Ve(e),Ge[e]||(Xe++,Ge[e]={})},qe=function(){for(var e in Ge)Ge.hasOwnProperty(e)&&Ve(e)},$e=function(e,t,n,i,o,a,r){var l,s=Me();Ke(e);var u=function(){if(Ge[e]){if((l=Me()-s)>=i)return Ve(e),a(n),void(r&&r());a((n-t)*o(l/i)+t),Ge[e].raf=k(u)}};u()},je={shout:Te,listen:De,viewportSize:me,options:r,isMainScrollAnimating:function(){return ne},getZoomLevel:function(){return y},getCurrentIndex:function(){return c},isDragging:function(){return G},isZooming:function(){return J},setScrollOffset:function(e,t){fe.x=e,L=fe.y=t,Te("updateScrollOffset",fe)},applyZoomPan:function(e,t,n,i){de.x=t,de.y=n,y=e,Ee(i)},init:function(){if(!l&&!s){var n;a.framework=o,a.template=e,a.bg=o.getChildByClass(e,"pswp__bg"),P=e.className,l=!0,z=o.detectFeatures(),k=z.raf,R=z.caf,A=z.transform,F=z.oldIE,a.scrollWrap=o.getChildByClass(e,"pswp__scroll-wrap"),a.container=o.getChildByClass(a.scrollWrap,"pswp__container"),d=a.container.style,a.itemHolders=I=[{el:a.container.children[0],wrap:0,index:-1},{el:a.container.children[1],wrap:0,index:-1},{el:a.container.children[2],wrap:0,index:-1}],I[0].el.style.display=I[2].el.style.display="none",function(){if(A){var t=z.perspective&&!O;return v="translate"+(t?"3d(":"("),void(g=z.perspective?", 0px)":")")}A="left",o.addClass(e,"pswp--ie"),ke=function(e,t){t.left=e+"px"},Oe=function(e){var t=e.fitRatio>1?1:e.fitRatio,n=e.container.style,i=t*e.w,o=t*e.h;n.width=i+"px",n.height=o+"px",n.left=e.initialPosition.x+"px",n.top=e.initialPosition.y+"px"},Ee=function(){if(te){var e=te,t=a.currItem,n=t.fitRatio>1?1:t.fitRatio,i=n*t.w,o=n*t.h;e.width=i+"px",e.height=o+"px",e.left=de.x+"px",e.top=de.y+"px"}}}(),h={resize:a.updateSize,orientationchange:function(){clearTimeout(_),_=setTimeout(function(){me.x!==a.scrollWrap.clientWidth&&a.updateSize()},500)},scroll:Be,keydown:Ye,click:We};var i=z.isOldIOSPhone||z.isOldAndroid||z.isMobileOpera;for(z.animationName&&z.transform&&!i||(r.showAnimationDuration=r.hideAnimationDuration=0),n=0;n<ve.length;n++)a["init"+ve[n]]();t&&(a.ui=new t(a,o)).init(),Te("firstUpdate"),c=c||r.index||0,(isNaN(c)||c<0||c>=Ht())&&(c=0),a.currItem=Ut(c),(z.isOldIOSPhone||z.isOldAndroid)&&(xe=!1),e.setAttribute("aria-hidden","false"),r.modal&&(xe?e.style.position="fixed":(e.style.position="absolute",e.style.top=o.getScrollY()+"px")),L===undefined&&(Te("initialLayout"),L=Z=o.getScrollY());var u="pswp--open ";for(r.mainClass&&(u+=r.mainClass+" "),r.showHideOpacity&&(u+="pswp--animate_opacity "),u+=O?"pswp--touch":"pswp--notouch",u+=z.animationName?" pswp--css_animation":"",u+=z.svg?" pswp--svg":"",o.addClass(e,u),a.updateSize(),m=-1,ye=null,n=0;n<3;n++)ke((n+m)*he.x,I[n].el.style);F||o.bind(a.scrollWrap,f,a),De("initialZoomInEnd",function(){a.setContent(I[0],c-1),a.setContent(I[2],c+1),I[0].el.style.display=I[2].el.style.display="block",r.focus&&e.focus(),o.bind(document,"keydown",a),z.transform&&o.bind(a.scrollWrap,"click",a),r.mouseUsed||o.bind(document,"mousemove",ze),o.bind(window,"resize scroll orientationchange",a),Te("bindEvents")}),a.setContent(I[1],c),a.updateCurrItem(),Te("afterInit"),xe||(w=setInterval(function(){Xe||G||J||y!==a.currItem.initialZoomLevel||a.updateSize()},1e3)),o.addClass(e,"pswp--visible")}},close:function(){l&&(l=!1,s=!0,Te("close"),o.unbind(window,"resize scroll orientationchange",a),o.unbind(window,"scroll",h.scroll),o.unbind(document,"keydown",a),o.unbind(document,"mousemove",ze),z.transform&&o.unbind(a.scrollWrap,"click",a),G&&o.unbind(window,p,a),clearTimeout(_),Te("unbindEvents"),Yt(a.currItem,null,!0,a.destroy))},destroy:function(){Te("destroy"),Lt&&clearTimeout(Lt),e.setAttribute("aria-hidden","true"),e.className=P,w&&clearInterval(w),o.unbind(a.scrollWrap,f,a),o.unbind(window,"scroll",a),ft(),qe(),Ce=null},panTo:function(e,t,n){n||(e>ee.min.x?e=ee.min.x:e<ee.max.x&&(e=ee.max.x),t>ee.min.y?t=ee.min.y:t<ee.max.y&&(t=ee.max.y)),de.x=e,de.y=t,Ee()},handleEvent:function(e){e=e||window.event,h[e.type]&&h[e.type](e)},goTo:function(e){var t=(e=Ie(e))-c;ye=t,c=e,a.currItem=Ut(c),pe-=t,Re(he.x*pe),qe(),ne=!1,a.updateCurrItem()},next:function(){a.goTo(c+1)},prev:function(){a.goTo(c-1)},updateCurrZoomItem:function(e){if(e&&Te("beforeChange",0),I[1].el.children.length){var t=I[1].el.children[0];te=o.hasClass(t,"pswp__zoom-wrap")?t.style:null}else te=null;ee=a.currItem.bounds,x=y=a.currItem.initialZoomLevel,de.x=ee.center.x,de.y=ee.center.y,e&&Te("afterChange")},invalidateCurrItems:function(){b=!0;for(var e=0;e<3;e++)I[e].item&&(I[e].item.needsUpdate=!0)},updateCurrItem:function(e){if(0!==ye){var t,n=Math.abs(ye);if(!(e&&n<2)){a.currItem=Ut(c),we=!1,Te("beforeChange",ye),n>=3&&(m+=ye+(ye>0?-3:3),n=3);for(var i=0;i<n;i++)ye>0?(t=I.shift(),I[2]=t,ke((++m+2)*he.x,t.el.style),a.setContent(t,c-n+i+1+1)):(t=I.pop(),I.unshift(t),ke(--m*he.x,t.el.style),a.setContent(t,c+n-i-1-1));if(te&&1===Math.abs(ye)){var o=Ut(C);o.initialZoomLevel!==y&&(Xt(o,me),$t(o),Oe(o))}ye=0,a.updateCurrZoomItem(),C=c,Te("afterChange")}}},updateSize:function(t){if(!xe&&r.modal){var n=o.getScrollY();if(L!==n&&(e.style.top=n+"px",L=n),!t&&ge.x===window.innerWidth&&ge.y===window.innerHeight)return;ge.x=window.innerWidth,ge.y=window.innerHeight,e.style.height=ge.y+"px"}if(me.x=a.scrollWrap.clientWidth,me.y=a.scrollWrap.clientHeight,Be(),he.x=me.x+Math.round(me.x*r.spacing),he.y=me.y,Re(he.x*pe),Te("beforeResize"),m!==undefined){for(var i,l,s,u=0;u<3;u++)i=I[u],ke((u+m)*he.x,i.el.style),s=c+u-1,r.loop&&Ht()>2&&(s=Ie(s)),(l=Ut(s))&&(b||l.needsUpdate||!l.bounds)?(a.cleanSlide(l),a.setContent(i,s),1===u&&(a.currItem=l,a.updateCurrZoomItem(!0)),l.needsUpdate=!1):-1===i.index&&s>=0&&a.setContent(i,s),l&&l.container&&(Xt(l,me),$t(l),Oe(l));b=!1}x=y=a.currItem.initialZoomLevel,(ee=a.currItem.bounds)&&(de.x=ee.center.x,de.y=ee.center.y,Ee(!0)),Te("resize")},zoomTo:function(e,t,n,i,a){t&&(x=y,dt.x=Math.abs(t.x)-de.x,dt.y=Math.abs(t.y)-de.y,Ze(ce,de));var r=_e(e,!1),l={};He("x",r,l,e),He("y",r,l,e);var s=y,u=de.x,c=de.y;Fe(l);var d=function(t){1===t?(y=e,de.x=l.x,de.y=l.y):(y=(e-s)*t+s,de.x=(l.x-u)*t+u,de.y=(l.y-c)*t+c),a&&a(t),Ee(1===t)};n?$e("customZoomTo",0,1,n,i||o.easing.sine.inOut,d):d(1)}},Je={},Qe={},et={},tt={},nt={},it=[],ot={},at=[],rt={},lt=0,st={x:0,y:0},ut=0,ct={x:0,y:0},dt={x:0,y:0},mt={x:0,y:0},pt=function(e,t){return rt.x=Math.abs(e.x-t.x),rt.y=Math.abs(e.y-t.y),Math.sqrt(rt.x*rt.x+rt.y*rt.y)},ft=function(){q&&(R(q),q=null)},ht=function(){G&&(q=k(ht),Et())},yt=function(e,t){return!(!e||e===document)&&!(e.getAttribute("class")&&e.getAttribute("class").indexOf("pswp__scroll-wrap")>-1)&&(t(e)?e:yt(e.parentNode,t))},xt={},vt=function(e,t){return xt.prevent=!yt(e.target,r.isClickableElement),Te("preventDragEvent",e,t,xt),xt.prevent},gt=function(e,t){return t.x=e.pageX,t.y=e.pageY,t.id=e.identifier,t},wt=function(e,t,n){n.x=.5*(e.x+t.x),n.y=.5*(e.y+t.y)},bt=function(){var e=de.y-a.currItem.initialPosition.y;return 1-Math.abs(e/(me.y/2))},It={},Ct={},Dt=[],Tt=function(e){for(;Dt.length>0;)Dt.pop();return E?(se=0,it.forEach(function(e){0===se?Dt[0]=e:1===se&&(Dt[1]=e),se++})):e.type.indexOf("touch")>-1?e.touches&&e.touches.length>0&&(Dt[0]=gt(e.touches[0],It),e.touches.length>1&&(Dt[1]=gt(e.touches[1],Ct))):(It.x=e.pageX,It.y=e.pageY,It.id="",Dt[0]=It),Dt},Mt=function(e,t){var n,i,o,l,s=de[e]+t[e],u=t[e]>0,c=ct.x+t.x,d=ct.x-ot.x;if(n=s>ee.min[e]||s<ee.max[e]?r.panEndFriction:1,s=de[e]+t[e]*n,(r.allowPanToNext||y===a.currItem.initialZoomLevel)&&(te?"h"!==ie||"x"!==e||V||(u?(s>ee.min[e]&&(n=r.panEndFriction,ee.min[e],i=ee.min[e]-ce[e]),(i<=0||d<0)&&Ht()>1?(l=c,d<0&&c>ot.x&&(l=ot.x)):ee.min.x!==ee.max.x&&(o=s)):(s<ee.max[e]&&(n=r.panEndFriction,ee.max[e],i=ce[e]-ee.max[e]),(i<=0||d>0)&&Ht()>1?(l=c,d>0&&c<ot.x&&(l=ot.x)):ee.min.x!==ee.max.x&&(o=s))):l=c,"x"===e))return l!==undefined&&(Re(l,!0),$=l!==ot.x),ee.min.x!==ee.max.x&&(o!==undefined?de.x=o:$||(de.x+=t.x*n)),l!==undefined;ne||$||y>a.currItem.fitRatio&&(de[e]+=t[e]*n)},St=function(e){if(!("mousedown"===e.type&&e.button>0))if(Nt)e.preventDefault();else if(!B||"mousedown"!==e.type){if(vt(e,!0)&&e.preventDefault(),Te("pointerDown"),E){var t=o.arraySearch(it,e.pointerId,"id");t<0&&(t=it.length),it[t]={x:e.pageX,y:e.pageY,id:e.pointerId}}var n=Tt(e),i=n.length;j=null,qe(),G&&1!==i||(G=oe=!0,o.bind(window,p,a),Y=le=ae=W=$=K=X=V=!1,ie=null,Te("firstTouchStart",n),Ze(ce,de),ue.x=ue.y=0,Ze(tt,n[0]),Ze(nt,tt),ot.x=he.x*pe,at=[{x:tt.x,y:tt.y}],U=N=Me(),_e(y,!0),ft(),ht()),!J&&i>1&&!ne&&!$&&(x=y,V=!1,J=X=!0,ue.y=ue.x=0,Ze(ce,de),Ze(Je,n[0]),Ze(Qe,n[1]),wt(Je,Qe,mt),dt.x=Math.abs(mt.x)-de.x,dt.y=Math.abs(mt.y)-de.y,Q=pt(Je,Qe))}},At=function(e){if(e.preventDefault(),E){var t=o.arraySearch(it,e.pointerId,"id");if(t>-1){var n=it[t];n.x=e.pageX,n.y=e.pageY}}if(G){var i=Tt(e);if(ie||K||J)j=i;else if(ct.x!==he.x*pe)ie="h";else{var a=Math.abs(i[0].x-tt.x)-Math.abs(i[0].y-tt.y);Math.abs(a)>=10&&(ie=a>0?"h":"v",j=i)}}},Et=function(){if(j){var e=j.length;if(0!==e)if(Ze(Je,j[0]),et.x=Je.x-tt.x,et.y=Je.y-tt.y,J&&e>1){if(tt.x=Je.x,tt.y=Je.y,!et.x&&!et.y&&function(e,t){return e.x===t.x&&e.y===t.y}(j[1],Qe))return;Ze(Qe,j[1]),V||(V=!0,Te("zoomGestureStarted"));var t=pt(Je,Qe),n=Zt(t);n>a.currItem.initialZoomLevel+a.currItem.initialZoomLevel/15&&(le=!0);var i=1,o=Ne(),l=Ue();if(n<o)if(r.pinchToClose&&!le&&x<=a.currItem.initialZoomLevel){var s=1-(o-n)/(o/1.2);Se(s),Te("onPinchClose",s),ae=!0}else(i=(o-n)/o)>1&&(i=1),n=o-i*(o/3);else n>l&&((i=(n-l)/(6*o))>1&&(i=1),n=l+i*o);i<0&&(i=0),wt(Je,Qe,st),ue.x+=st.x-mt.x,ue.y+=st.y-mt.y,Ze(mt,st),de.x=Pe("x",n),de.y=Pe("y",n),Y=n>y,y=n,Ee()}else{if(!ie)return;if(oe&&(oe=!1,Math.abs(et.x)>=10&&(et.x-=j[0].x-nt.x),Math.abs(et.y)>=10&&(et.y-=j[0].y-nt.y)),tt.x=Je.x,tt.y=Je.y,0===et.x&&0===et.y)return;if("v"===ie&&r.closeOnVerticalDrag&&"fit"===r.scaleMode&&y===a.currItem.initialZoomLevel){ue.y+=et.y,de.y+=et.y;var u=bt();return W=!0,Te("onVerticalDrag",u),Se(u),void Ee()}!function(e,t,n){if(e-U>50){var i=at.length>2?at.shift():{};i.x=t,i.y=n,at.push(i),U=e}}(Me(),Je.x,Je.y),K=!0,ee=a.currItem.bounds,Mt("x",et)||(Mt("y",et),Fe(de),Ee())}}},Ot=function(e){if(z.isOldAndroid){if(B&&"mouseup"===e.type)return;e.type.indexOf("touch")>-1&&(clearTimeout(B),B=setTimeout(function(){B=0},600))}var t;if(Te("pointerUp"),vt(e,!1)&&e.preventDefault(),E){var n=o.arraySearch(it,e.pointerId,"id");n>-1&&(t=it.splice(n,1)[0],navigator.msPointerEnabled?(t.type={4:"mouse",2:"touch",3:"pen"}[e.pointerType],t.type||(t.type=e.pointerType||"mouse")):t.type=e.pointerType||"mouse")}var i,l=Tt(e),s=l.length;if("mouseup"===e.type&&(s=0),2===s)return j=null,!0;1===s&&Ze(nt,l[0]),0!==s||ie||ne||(t||("mouseup"===e.type?t={x:e.pageX,y:e.pageY,type:"mouse"}:e.changedTouches&&e.changedTouches[0]&&(t={x:e.changedTouches[0].pageX,y:e.changedTouches[0].pageY,type:"touch"})),Te("touchRelease",e,t));var u=-1;if(0===s&&(G=!1,o.unbind(window,p,a),ft(),J?u=0:-1!==ut&&(u=Me()-ut)),ut=1===s?Me():-1,i=-1!==u&&u<150?"zoom":"swipe",J&&s<2&&(J=!1,1===s&&(i="zoomPointerUp"),Te("zoomGestureEnded")),j=null,K||V||ne||W)if(qe(),H||(H=kt()),H.calculateSwipeSpeed("x"),W)if(bt()<r.verticalDragRange)a.close();else{var c=de.y,d=re;$e("verticalDrag",0,1,300,o.easing.cubic.out,function(e){de.y=(a.currItem.initialPosition.y-c)*e+c,Se((1-d)*e+d),Ee()}),Te("onVerticalDrag",1)}else{if(($||ne)&&0===s){if(Pt(i,H))return;i="zoomPointerUp"}ne||("swipe"===i?!$&&y>a.currItem.fitRatio&&Rt(H):Ft())}},kt=function(){var e,t,n={lastFlickOffset:{},lastFlickDist:{},lastFlickSpeed:{},slowDownRatio:{},slowDownRatioReverse:{},speedDecelerationRatio:{},speedDecelerationRatioAbs:{},distanceOffset:{},backAnimDestination:{},backAnimStarted:{},calculateSwipeSpeed:function(i){at.length>1?(e=Me()-U+50,t=at[at.length-2][i]):(e=Me()-N,t=nt[i]),n.lastFlickOffset[i]=tt[i]-t,n.lastFlickDist[i]=Math.abs(n.lastFlickOffset[i]),n.lastFlickDist[i]>20?n.lastFlickSpeed[i]=n.lastFlickOffset[i]/e:n.lastFlickSpeed[i]=0,Math.abs(n.lastFlickSpeed[i])<.1&&(n.lastFlickSpeed[i]=0),n.slowDownRatio[i]=.95,n.slowDownRatioReverse[i]=1-n.slowDownRatio[i],n.speedDecelerationRatio[i]=1},calculateOverBoundsAnimOffset:function(e,t){n.backAnimStarted[e]||(de[e]>ee.min[e]?n.backAnimDestination[e]=ee.min[e]:de[e]<ee.max[e]&&(n.backAnimDestination[e]=ee.max[e]),n.backAnimDestination[e]!==undefined&&(n.slowDownRatio[e]=.7,n.slowDownRatioReverse[e]=1-n.slowDownRatio[e],n.speedDecelerationRatioAbs[e]<.05&&(n.lastFlickSpeed[e]=0,n.backAnimStarted[e]=!0,$e("bounceZoomPan"+e,de[e],n.backAnimDestination[e],t||300,o.easing.sine.out,function(t){de[e]=t,Ee()}))))},calculateAnimOffset:function(e){n.backAnimStarted[e]||(n.speedDecelerationRatio[e]=n.speedDecelerationRatio[e]*(n.slowDownRatio[e]+n.slowDownRatioReverse[e]-n.slowDownRatioReverse[e]*n.timeDiff/10),n.speedDecelerationRatioAbs[e]=Math.abs(n.lastFlickSpeed[e]*n.speedDecelerationRatio[e]),n.distanceOffset[e]=n.lastFlickSpeed[e]*n.speedDecelerationRatio[e]*n.timeDiff,de[e]+=n.distanceOffset[e])},panAnimLoop:function(){if(Ge.zoomPan&&(Ge.zoomPan.raf=k(n.panAnimLoop),n.now=Me(),n.timeDiff=n.now-n.lastNow,n.lastNow=n.now,n.calculateAnimOffset("x"),n.calculateAnimOffset("y"),Ee(),n.calculateOverBoundsAnimOffset("x"),n.calculateOverBoundsAnimOffset("y"),n.speedDecelerationRatioAbs.x<.05&&n.speedDecelerationRatioAbs.y<.05))return de.x=Math.round(de.x),de.y=Math.round(de.y),Ee(),void Ve("zoomPan")}};return n},Rt=function(e){if(e.calculateSwipeSpeed("y"),ee=a.currItem.bounds,e.backAnimDestination={},e.backAnimStarted={},Math.abs(e.lastFlickSpeed.x)<=.05&&Math.abs(e.lastFlickSpeed.y)<=.05)return e.speedDecelerationRatioAbs.x=e.speedDecelerationRatioAbs.y=0,e.calculateOverBoundsAnimOffset("x"),e.calculateOverBoundsAnimOffset("y"),!0;Ke("zoomPan"),e.lastNow=Me(),e.panAnimLoop()},Pt=function(e,t){var n,i,l;if(ne||(lt=c),"swipe"===e){var s=tt.x-nt.x,u=t.lastFlickDist.x<10;s>30&&(u||t.lastFlickOffset.x>20)?i=-1:s<-30&&(u||t.lastFlickOffset.x<-20)&&(i=1)}i&&((c+=i)<0?(c=r.loop?Ht()-1:0,l=!0):c>=Ht()&&(c=r.loop?0:Ht()-1,l=!0),l&&!r.loop||(ye+=i,pe-=i,n=!0));var d,m=he.x*pe,p=Math.abs(m-ct.x);return n||m>ct.x==t.lastFlickSpeed.x>0?(d=Math.abs(t.lastFlickSpeed.x)>0?p/Math.abs(t.lastFlickSpeed.x):333,d=Math.min(d,400),d=Math.max(d,250)):d=333,lt===c&&(n=!1),ne=!0,Te("mainScrollAnimStart"),$e("mainScroll",ct.x,m,d,o.easing.cubic.out,Re,function(){qe(),ne=!1,lt=-1,(n||lt!==c)&&a.updateCurrItem(),Te("mainScrollAnimComplete")}),n&&a.updateCurrItem(!0),n},Zt=function(e){return 1/Q*e*x},Ft=function(){var e=y,t=Ne(),n=Ue();y<t?e=t:y>n&&(e=n);var i,r=re;return ae&&!Y&&!le&&y<t?(a.close(),!0):(ae&&(i=function(e){Se((1-r)*e+r)}),a.zoomTo(e,0,200,o.easing.cubic.out,i),!0)};be("Gestures",{publicMethods:{initGestures:function(){var e=function(e,t,n,i,o){D=e+t,T=e+n,M=e+i,S=o?e+o:""};(E=z.pointerEvent)&&z.touch&&(z.touch=!1),E?navigator.msPointerEnabled?e("MSPointer","Down","Move","Up","Cancel"):e("pointer","down","move","up","cancel"):z.touch?(e("touch","start","move","end","cancel"),O=!0):e("mouse","down","move","up"),p=T+" "+M+" "+S,f=D,E&&!O&&(O=navigator.maxTouchPoints>1||navigator.msMaxTouchPoints>1),a.likelyTouchDevice=O,h[D]=St,h[T]=At,h[M]=Ot,S&&(h[S]=h[M]),z.touch&&(f+=" mousedown",p+=" mousemove mouseup",h.mousedown=h[D],h.mousemove=h[T],h.mouseup=h[M]),O||(r.allowPanToNext=!1)}}});var Lt,zt,_t,Nt,Ut,Ht,Yt=function(t,n,i,l){var s;Lt&&clearTimeout(Lt),Nt=!0,_t=!0,t.initialLayout?(s=t.initialLayout,t.initialLayout=null):s=r.getThumbBoundsFn&&r.getThumbBoundsFn(c);var d,m,p=i?r.hideAnimationDuration:r.showAnimationDuration,f=function(){Ve("initialZoom"),i?(a.template.removeAttribute("style"),a.bg.removeAttribute("style")):(Se(1),n&&(n.style.display="block"),o.addClass(e,"pswp--animated-in"),Te("initialZoom"+(i?"OutEnd":"InEnd"))),l&&l(),Nt=!1};if(!p||!s||s.x===undefined)return Te("initialZoom"+(i?"Out":"In")),y=t.initialZoomLevel,Ze(de,t.initialPosition),Ee(),e.style.opacity=i?0:1,Se(1),void(p?setTimeout(function(){f()},p):f());d=u,m=!a.currItem.src||a.currItem.loadError||r.showHideOpacity,t.miniImg&&(t.miniImg.style.webkitBackfaceVisibility="hidden"),i||(y=s.w/t.w,de.x=s.x,de.y=s.y-Z,a[m?"template":"bg"].style.opacity=.001,Ee()),Ke("initialZoom"),i&&!d&&o.removeClass(e,"pswp--animated-in"),m&&(i?o[(d?"remove":"add")+"Class"](e,"pswp--animate_opacity"):setTimeout(function(){o.addClass(e,"pswp--animate_opacity")},30)),Lt=setTimeout(function(){if(Te("initialZoom"+(i?"Out":"In")),i){var n=s.w/t.w,a={x:de.x,y:de.y},r=y,l=re,u=function(t){1===t?(y=n,de.x=s.x,de.y=s.y-L):(y=(n-r)*t+r,de.x=(s.x-a.x)*t+a.x,de.y=(s.y-L-a.y)*t+a.y),Ee(),m?e.style.opacity=1-t:Se(l-t*l)};d?$e("initialZoom",0,1,p,o.easing.cubic.out,u,f):(u(1),Lt=setTimeout(f,p+20))}else y=t.initialZoomLevel,Ze(de,t.initialPosition),Ee(),Se(1),m?e.style.opacity=1:Se(1),Lt=setTimeout(f,p+20)},i?25:90)},Wt={},Bt=[],Gt={index:0,errorMsg:'<div class="pswp__error-msg"><a href="%url%" target="_blank">The image</a> could not be loaded.</div>',forceProgressiveLoading:!1,preload:[1,1],getNumItemsFn:function(){return zt.length}},Xt=function(e,t,n){if(e.src&&!e.loadError){var i=!n;if(i&&(e.vGap||(e.vGap={top:0,bottom:0}),Te("parseVerticalMargin",e)),Wt.x=t.x,Wt.y=t.y-e.vGap.top-e.vGap.bottom,i){var o=Wt.x/e.w,a=Wt.y/e.h;e.fitRatio=o<a?o:a;var l=r.scaleMode;"orig"===l?n=1:"fit"===l&&(n=e.fitRatio),n>1&&(n=1),e.initialZoomLevel=n,e.bounds||(e.bounds={center:{x:0,y:0},max:{x:0,y:0},min:{x:0,y:0}})}if(!n)return;return function(e,t,n){var i=e.bounds;i.center.x=Math.round((Wt.x-t)/2),i.center.y=Math.round((Wt.y-n)/2)+e.vGap.top,i.max.x=t>Wt.x?Math.round(Wt.x-t):i.center.x,i.max.y=n>Wt.y?Math.round(Wt.y-n)+e.vGap.top:i.center.y,i.min.x=t>Wt.x?0:i.center.x,i.min.y=n>Wt.y?e.vGap.top:i.center.y}(e,e.w*n,e.h*n),i&&n===e.initialZoomLevel&&(e.initialPosition=e.bounds.center),e.bounds}return e.w=e.h=0,e.initialZoomLevel=e.fitRatio=1,e.bounds={center:{x:0,y:0},max:{x:0,y:0},min:{x:0,y:0}},e.initialPosition=e.bounds.center,e.bounds},Vt=function(e,t,n,i,o,r){t.loadError||i&&(t.imageAppended=!0,$t(t,i,t===a.currItem&&we),n.appendChild(i),r&&setTimeout(function(){t&&t.loaded&&t.placeholder&&(t.placeholder.style.display="none",t.placeholder=null)},500))},Kt=function(e){e.loading=!0,e.loaded=!1;var t=e.img=o.createEl("pswp__img","img"),n=function(){e.loading=!1,e.loaded=!0,e.loadComplete?e.loadComplete(e):e.img=null,t.onload=t.onerror=null,t=null};return t.onload=n,t.onerror=function(){e.loadError=!0,n()},t.src=e.src,t.alt=e.alt||"",t},qt=function(e,t){if(e.src&&e.loadError&&e.container)return t&&(e.container.innerHTML=""),e.container.innerHTML=r.errorMsg.replace("%url%",e.src),!0},$t=function(e,t,n){if(e.src){t||(t=e.container.lastChild);var i=n?e.w:Math.round(e.w*e.fitRatio),o=n?e.h:Math.round(e.h*e.fitRatio);e.placeholder&&!e.loaded&&(e.placeholder.style.width=i+"px",e.placeholder.style.height=o+"px"),t.style.width=i+"px",t.style.height=o+"px"}},jt=function(){if(Bt.length){for(var e,t=0;t<Bt.length;t++)(e=Bt[t]).holder.index===e.index&&Vt(e.index,e.item,e.baseDiv,e.img,0,e.clearPlaceholder);Bt=[]}};be("Controller",{publicMethods:{lazyLoadItem:function(e){e=Ie(e);var t=Ut(e);t&&(!t.loaded&&!t.loading||b)&&(Te("gettingData",e,t),t.src&&Kt(t))},initController:function(){o.extend(r,Gt,!0),a.items=zt=n,Ut=a.getItemAt,Ht=r.getNumItemsFn,r.loop,Ht()<3&&(r.loop=!1),De("beforeChange",function(e){var t,n=r.preload,i=null===e||e>=0,o=Math.min(n[0],Ht()),l=Math.min(n[1],Ht());for(t=1;t<=(i?l:o);t++)a.lazyLoadItem(c+t);for(t=1;t<=(i?o:l);t++)a.lazyLoadItem(c-t)}),De("initialLayout",function(){a.currItem.initialLayout=r.getThumbBoundsFn&&r.getThumbBoundsFn(c)}),De("mainScrollAnimComplete",jt),De("initialZoomInEnd",jt),De("destroy",function(){for(var e,t=0;t<zt.length;t++)(e=zt[t]).container&&(e.container=null),e.placeholder&&(e.placeholder=null),e.img&&(e.img=null),e.preloader&&(e.preloader=null),e.loadError&&(e.loaded=e.loadError=!1);Bt=null})},getItemAt:function(e){return e>=0&&zt[e]!==undefined&&zt[e]},allowProgressiveImg:function(){return r.forceProgressiveLoading||!O||r.mouseUsed||screen.width>1200},setContent:function(e,t){r.loop&&(t=Ie(t));var n=a.getItemAt(e.index);n&&(n.container=null);var i,s=a.getItemAt(t);if(s){Te("gettingData",t,s),e.index=t,e.item=s;var u=s.container=o.createEl("pswp__zoom-wrap");if(!s.src&&s.html&&(s.html.tagName?u.appendChild(s.html):u.innerHTML=s.html),qt(s),Xt(s,me),!s.src||s.loadError||s.loaded)s.src&&!s.loadError&&((i=o.createEl("pswp__img","img")).style.opacity=1,i.src=s.src,$t(s,i),Vt(0,s,u,i));else{if(s.loadComplete=function(n){if(l){if(e&&e.index===t){if(qt(n,!0))return n.loadComplete=n.img=null,Xt(n,me),Oe(n),void(e.index===c&&a.updateCurrZoomItem());n.imageAppended?!Nt&&n.placeholder&&(n.placeholder.style.display="none",n.placeholder=null):z.transform&&(ne||Nt)?Bt.push({item:n,baseDiv:u,img:n.img,index:t,holder:e,clearPlaceholder:!0}):Vt(0,n,u,n.img,0,!0)}n.loadComplete=null,n.img=null,Te("imageLoadComplete",t,n)}},o.features.transform){var d="pswp__img pswp__img--placeholder";d+=s.msrc?"":" pswp__img--placeholder--blank";var m=o.createEl(d,s.msrc?"img":"");s.msrc&&(m.src=s.msrc),$t(s,m),u.appendChild(m),s.placeholder=m}s.loading||Kt(s),a.allowProgressiveImg()&&(!_t&&z.transform?Bt.push({item:s,baseDiv:u,img:s.img,index:t,holder:e}):Vt(0,s,u,s.img,0,!0))}_t||t!==c?Oe(s):(te=u.style,Yt(s,i||s.img)),e.el.innerHTML="",e.el.appendChild(u)}else e.el.innerHTML=""},cleanSlide:function(e){e.img&&(e.img.onload=e.img.onerror=null),e.loaded=e.loading=e.img=e.imageAppended=!1}}});var Jt,Qt,en={},tn=function(e,t,n){var i=document.createEvent("CustomEvent"),o={origEvent:e,target:e.target,releasePoint:t,pointerType:n||"touch"};i.initCustomEvent("pswpTap",!0,!0,o),e.target.dispatchEvent(i)};be("Tap",{publicMethods:{initTap:function(){De("firstTouchStart",a.onTapStart),De("touchRelease",a.onTapRelease),De("destroy",function(){en={},Jt=null})},onTapStart:function(e){e.length>1&&(clearTimeout(Jt),Jt=null)},onTapRelease:function(e,t){var n,i;if(t&&!K&&!X&&!Xe&&a.container.contains(e.target)){var r=t;if(Jt&&(clearTimeout(Jt),Jt=null,n=r,i=en,Math.abs(n.x-i.x)<25&&Math.abs(n.y-i.y)<25))return void Te("doubleTap",r);if("mouse"===t.type)return void tn(e,t,"mouse");if("BUTTON"===e.target.tagName.toUpperCase()||o.hasClass(e.target,"pswp__single-tap"))return void tn(e,t);Ze(en,r),Jt=setTimeout(function(){tn(e,t),Jt=null},300)}}}}),be("DesktopZoom",{publicMethods:{initDesktopZoom:function(){F||(O?De("mouseUsed",function(){a.setupDesktopZoom()}):a.setupDesktopZoom(!0))},setupDesktopZoom:function(t){Qt={};var n="wheel mousewheel DOMMouseScroll";De("bindEvents",function(){o.bind(e,n,a.handleMouseWheel)}),De("unbindEvents",function(){Qt&&o.unbind(e,n,a.handleMouseWheel)}),a.mouseZoomedIn=!1;var i,r=function(){a.mouseZoomedIn&&(o.removeClass(e,"pswp--zoomed-in"),a.mouseZoomedIn=!1),y<1?o.addClass(e,"pswp--zoom-allowed"):o.removeClass(e,"pswp--zoom-allowed"),l()},l=function(){i&&(o.removeClass(e,"pswp--dragging"),i=!1)};De("resize",r),De("afterChange",r),De("pointerDown",function(){a.mouseZoomedIn&&(i=!0,o.addClass(e,"pswp--dragging"))}),De("pointerUp",l),t||r()},handleMouseWheel:function(e){if(y<=a.currItem.fitRatio)return r.modal&&(!r.closeOnScroll||Xe||G?e.preventDefault():A&&Math.abs(e.deltaY)>2&&(u=!0,a.close())),!0;if(e.stopPropagation(),Qt.x=0,"deltaX"in e)1===e.deltaMode?(Qt.x=18*e.deltaX,Qt.y=18*e.deltaY):(Qt.x=e.deltaX,Qt.y=e.deltaY);else if("wheelDelta"in e)e.wheelDeltaX&&(Qt.x=-.16*e.wheelDeltaX),e.wheelDeltaY?Qt.y=-.16*e.wheelDeltaY:Qt.y=-.16*e.wheelDelta;else{if(!("detail"in e))return;Qt.y=e.detail}_e(y,!0);var t=de.x-Qt.x,n=de.y-Qt.y;(r.modal||t<=ee.min.x&&t>=ee.max.x&&n<=ee.min.y&&n>=ee.max.y)&&e.preventDefault(),a.panTo(t,n)},toggleDesktopZoom:function(t){t=t||{x:me.x/2+fe.x,y:me.y/2+fe.y};var n=r.getDoubleTapZoom(!0,a.currItem),i=y===n;a.mouseZoomedIn=!i,a.zoomTo(i?a.currItem.initialZoomLevel:n,t,333),o[(i?"remove":"add")+"Class"](e,"pswp--zoomed-in")}}});var nn,on,an,rn,ln,sn,un,cn,dn,mn,pn,fn,hn={history:!0,galleryUID:1},yn=function(){return pn.hash.substring(1)},xn=function(){nn&&clearTimeout(nn),an&&clearTimeout(an)},vn=function(){var e=yn(),t={};if(e.length<5)return t;var n,i=e.split("&");for(n=0;n<i.length;n++)if(i[n]){var o=i[n].split("=");o.length<2||(t[o[0]]=o[1])}if(r.galleryPIDs){var a=t.pid;for(t.pid=0,n=0;n<zt.length;n++)if(zt[n].pid===a){t.pid=n;break}}else t.pid=parseInt(t.pid,10)-1;return t.pid<0&&(t.pid=0),t},gn=function(){if(an&&clearTimeout(an),Xe||G)an=setTimeout(gn,500);else{rn?clearTimeout(on):rn=!0;var e=c+1,t=Ut(c);t.hasOwnProperty("pid")&&(e=t.pid);var n=un+"&gid="+r.galleryUID+"&pid="+e;cn||-1===pn.hash.indexOf(n)&&(mn=!0);var i=pn.href.split("#")[0]+"#"+n;fn?"#"+n!==window.location.hash&&history[cn?"replaceState":"pushState"]("",document.title,i):cn?pn.replace(i):pn.hash=n,cn=!0,on=setTimeout(function(){rn=!1},60)}};be("History",{publicMethods:{initHistory:function(){if(o.extend(r,hn,!0),r.history){pn=window.location,mn=!1,dn=!1,cn=!1,un=yn(),fn="pushState"in history,un.indexOf("gid=")>-1&&(un=(un=un.split("&gid=")[0]).split("?gid=")[0]),De("afterChange",a.updateURL),De("unbindEvents",function(){o.unbind(window,"hashchange",a.onHashChange)});var e=function(){sn=!0,dn||(mn?history.back():un?pn.hash=un:fn?history.pushState("",document.title,pn.pathname+pn.search):pn.hash=""),xn()};De("unbindEvents",function(){u&&e()}),De("destroy",function(){sn||e()}),De("firstUpdate",function(){c=vn().pid});var t=un.indexOf("pid=");t>-1&&"&"===(un=un.substring(0,t)).slice(-1)&&(un=un.slice(0,-1)),setTimeout(function(){l&&o.bind(window,"hashchange",a.onHashChange)},40)}},onHashChange:function(){if(yn()===un)return dn=!0,void a.close();rn||(ln=!0,a.goTo(vn().pid),ln=!1)},updateURL:function(){xn(),ln||(cn?nn=setTimeout(gn,800):gn())}}}),o.extend(a,je)}});
!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.PhotoSwipeUI_Default=t()}(this,function(){"use strict";return function(e,t){var n,o,l,r,i,s,a,u,c,p,d,m,f,h,w,g,v,b,_=this,C=!1,T=!0,I=!0,E={barsSize:{top:44,bottom:"auto"},closeElClasses:["item","caption","zoom-wrap","ui","top-bar"],timeToIdle:4e3,timeToIdleOutside:1e3,loadingIndicatorDelay:1e3,addCaptionHTMLFn:function(e,t){return e.title?(t.children[0].innerHTML=e.title,!0):(t.children[0].innerHTML="",!1)},closeEl:!0,captionEl:!0,fullscreenEl:!0,zoomEl:!0,shareEl:!0,counterEl:!0,arrowEl:!0,preloaderEl:!0,tapToClose:!1,tapToToggleControls:!0,clickToCloseNonZoomable:!0,shareButtons:[{id:"facebook",label:"Share on Facebook",url:"https://www.facebook.com/sharer/sharer.php?u={{url}}"},{id:"twitter",label:"Tweet",url:"https://twitter.com/intent/tweet?text={{text}}&url={{url}}"},{id:"pinterest",label:"Pin it",url:"http://www.pinterest.com/pin/create/button/?url={{url}}&media={{image_url}}&description={{text}}"},{id:"download",label:"Download image",url:"{{raw_image_url}}",download:!0}],getImageURLForShare:function(){return e.currItem.src||""},getPageURLForShare:function(){return window.location.href},getTextForShare:function(){return e.currItem.title||""},indexIndicatorSep:" / ",fitControlsWidth:1200},F=function(e){if(g)return!0;e=e||window.event,w.timeToIdle&&w.mouseUsed&&!c&&z();for(var n,o,l=(e.target||e.srcElement).getAttribute("class")||"",r=0;r<P.length;r++)(n=P[r]).onTap&&l.indexOf("pswp__"+n.name)>-1&&(n.onTap(),o=!0);if(o){e.stopPropagation&&e.stopPropagation(),g=!0;var i=t.features.isOldAndroid?600:30;setTimeout(function(){g=!1},i)}},x=function(e,n,o){t[(o?"add":"remove")+"Class"](e,"pswp__"+n)},S=function(){var e=1===w.getNumItemsFn();e!==h&&(x(o,"ui--one-slide",e),h=e)},k=function(){x(a,"share-modal--hidden",I)},K=function(){return(I=!I)?(t.removeClass(a,"pswp__share-modal--fade-in"),setTimeout(function(){I&&k()},300)):(k(),setTimeout(function(){I||t.addClass(a,"pswp__share-modal--fade-in")},30)),I||O(),!1},L=function(t){var n=(t=t||window.event).target||t.srcElement;return e.shout("shareLinkClick",t,n),!(!n.href||!n.hasAttribute("download")&&(window.open(n.href,"pswp_share","scrollbars=yes,resizable=yes,toolbar=no,location=yes,width=550,height=420,top=100,left="+(window.screen?Math.round(screen.width/2-275):100)),I||K(),1))},O=function(){for(var e,t,n,o,l="",r=0;r<w.shareButtons.length;r++)e=w.shareButtons[r],t=w.getImageURLForShare(e),n=w.getPageURLForShare(e),o=w.getTextForShare(e),l+='<a href="'+e.url.replace("{{url}}",encodeURIComponent(n)).replace("{{image_url}}",encodeURIComponent(t)).replace("{{raw_image_url}}",t).replace("{{text}}",encodeURIComponent(o))+'" target="_blank" class="pswp__share--'+e.id+'"'+(e.download?"download":"")+">"+e.label+"</a>",w.parseShareButtonOut&&(l=w.parseShareButtonOut(e,l));a.children[0].innerHTML=l,a.children[0].onclick=L},R=function(e){for(var n=0;n<w.closeElClasses.length;n++)if(t.hasClass(e,"pswp__"+w.closeElClasses[n]))return!0},y=0,z=function(){clearTimeout(b),y=0,c&&_.setIdle(!1)},M=function(e){var t=(e=e||window.event).relatedTarget||e.toElement;t&&"HTML"!==t.nodeName||(clearTimeout(b),b=setTimeout(function(){_.setIdle(!0)},w.timeToIdleOutside))},D=function(e){m!==e&&(x(d,"preloader--active",!e),m=e)},A=function(n){var i=n.vGap;if(!e.likelyTouchDevice||w.mouseUsed||screen.width>w.fitControlsWidth){var s=w.barsSize;if(w.captionEl&&"auto"===s.bottom)if(r||((r=t.createEl("pswp__caption pswp__caption--fake")).appendChild(t.createEl("pswp__caption__center")),o.insertBefore(r,l),t.addClass(o,"pswp__ui--fit")),w.addCaptionHTMLFn(n,r,!0)){var a=r.clientHeight;i.bottom=parseInt(a,10)||44}else i.bottom=s.top;else i.bottom="auto"===s.bottom?0:s.bottom;i.top=s.top}else i.top=i.bottom=0},P=[{name:"caption",option:"captionEl",onInit:function(e){l=e}},{name:"share-modal",option:"shareEl",onInit:function(e){a=e},onTap:function(){K()}},{name:"button--share",option:"shareEl",onInit:function(e){s=e},onTap:function(){K()}},{name:"button--zoom",option:"zoomEl",onTap:e.toggleDesktopZoom},{name:"counter",option:"counterEl",onInit:function(e){i=e}},{name:"button--close",option:"closeEl",onTap:e.close},{name:"button--arrow--left",option:"arrowEl",onTap:e.prev},{name:"button--arrow--right",option:"arrowEl",onTap:e.next},{name:"button--fs",option:"fullscreenEl",onTap:function(){n.isFullscreen()?n.exit():n.enter()}},{name:"preloader",option:"preloaderEl",onInit:function(e){d=e}}];_.init=function(){var i;t.extend(e.options,E,!0),w=e.options,o=t.getChildByClass(e.scrollWrap,"pswp__ui"),(p=e.listen)("onVerticalDrag",function(e){T&&e<.95?_.hideControls():!T&&e>=.95&&_.showControls()}),p("onPinchClose",function(e){T&&e<.9?(_.hideControls(),i=!0):i&&!T&&e>.9&&_.showControls()}),p("zoomGestureEnded",function(){(i=!1)&&!T&&_.showControls()}),p("beforeChange",_.update),p("doubleTap",function(t){var n=e.currItem.initialZoomLevel;e.getZoomLevel()!==n?e.zoomTo(n,t,333):e.zoomTo(w.getDoubleTapZoom(!1,e.currItem),t,333)}),p("preventDragEvent",function(e,t,n){var o=e.target||e.srcElement;o&&o.getAttribute("class")&&e.type.indexOf("mouse")>-1&&(o.getAttribute("class").indexOf("__caption")>0||/(SMALL|STRONG|EM)/i.test(o.tagName))&&(n.prevent=!1)}),p("bindEvents",function(){t.bind(o,"pswpTap click",F),t.bind(e.scrollWrap,"pswpTap",_.onGlobalTap),e.likelyTouchDevice||t.bind(e.scrollWrap,"mouseover",_.onMouseOver)}),p("unbindEvents",function(){I||K(),v&&clearInterval(v),t.unbind(document,"mouseout",M),t.unbind(document,"mousemove",z),t.unbind(o,"pswpTap click",F),t.unbind(e.scrollWrap,"pswpTap",_.onGlobalTap),t.unbind(e.scrollWrap,"mouseover",_.onMouseOver),n&&(t.unbind(document,n.eventK,_.updateFullscreen),n.isFullscreen()&&(w.hideAnimationDuration=0,n.exit()),n=null)}),p("destroy",function(){w.captionEl&&(r&&o.removeChild(r),t.removeClass(l,"pswp__caption--empty")),a&&(a.children[0].onclick=null),t.removeClass(o,"pswp__ui--over-close"),t.addClass(o,"pswp__ui--hidden"),_.setIdle(!1)}),w.showAnimationDuration||t.removeClass(o,"pswp__ui--hidden"),p("initialZoomIn",function(){w.showAnimationDuration&&t.removeClass(o,"pswp__ui--hidden")}),p("initialZoomOut",function(){t.addClass(o,"pswp__ui--hidden")}),p("parseVerticalMargin",A),function(){var e,n,l,r=function(o){if(o)for(var r=o.length,i=0;i<r;i++){e=o[i],n=e.className;for(var s=0;s<P.length;s++)l=P[s],n.indexOf("pswp__"+l.name)>-1&&(w[l.option]?(t.removeClass(e,"pswp__element--disabled"),l.onInit&&l.onInit(e)):t.addClass(e,"pswp__element--disabled"))}};r(o.children);var i=t.getChildByClass(o,"pswp__top-bar");i&&r(i.children)}(),w.shareEl&&s&&a&&(I=!0),S(),w.timeToIdle&&p("mouseUsed",function(){t.bind(document,"mousemove",z),t.bind(document,"mouseout",M),v=setInterval(function(){2==++y&&_.setIdle(!0)},w.timeToIdle/2)}),w.fullscreenEl&&!t.features.isOldAndroid&&(n||(n=_.getFullscreenAPI()),n?(t.bind(document,n.eventK,_.updateFullscreen),_.updateFullscreen(),t.addClass(e.template,"pswp--supports-fs")):t.removeClass(e.template,"pswp--supports-fs")),w.preloaderEl&&(D(!0),p("beforeChange",function(){clearTimeout(f),f=setTimeout(function(){e.currItem&&e.currItem.loading?(!e.allowProgressiveImg()||e.currItem.img&&!e.currItem.img.naturalWidth)&&D(!1):D(!0)},w.loadingIndicatorDelay)}),p("imageLoadComplete",function(t,n){e.currItem===n&&D(!0)}))},_.setIdle=function(e){c=e,x(o,"ui--idle",e)},_.update=function(){T&&e.currItem?(_.updateIndexIndicator(),w.captionEl&&(w.addCaptionHTMLFn(e.currItem,l),x(l,"caption--empty",!e.currItem.title)),C=!0):C=!1,I||K(),S()},_.updateFullscreen=function(o){o&&setTimeout(function(){e.setScrollOffset(0,t.getScrollY())},50),t[(n.isFullscreen()?"add":"remove")+"Class"](e.template,"pswp--fs")},_.updateIndexIndicator=function(){w.counterEl&&(i.innerHTML=e.getCurrentIndex()+1+w.indexIndicatorSep+w.getNumItemsFn())},_.onGlobalTap=function(n){var o=(n=n||window.event).target||n.srcElement;if(!g)if(n.detail&&"mouse"===n.detail.pointerType){if(R(o))return void e.close();t.hasClass(o,"pswp__img")&&(1===e.getZoomLevel()&&e.getZoomLevel()<=e.currItem.fitRatio?w.clickToCloseNonZoomable&&e.close():e.toggleDesktopZoom(n.detail.releasePoint))}else if(w.tapToToggleControls&&(T?_.hideControls():_.showControls()),w.tapToClose&&(t.hasClass(o,"pswp__img")||R(o)))return void e.close()},_.onMouseOver=function(e){var t=(e=e||window.event).target||e.srcElement;x(o,"ui--over-close",R(t))},_.hideControls=function(){t.addClass(o,"pswp__ui--hidden"),T=!1},_.showControls=function(){T=!0,C||_.update(),t.removeClass(o,"pswp__ui--hidden")},_.supportsFullscreen=function(){var e=document;return!!(e.exitFullscreen||e.mozCancelFullScreen||e.webkitExitFullscreen||e.msExitFullscreen)},_.getFullscreenAPI=function(){var t,n=document.documentElement,o="fullscreenchange";return n.requestFullscreen?t={enterK:"requestFullscreen",exitK:"exitFullscreen",elementK:"fullscreenElement",eventK:o}:n.mozRequestFullScreen?t={enterK:"mozRequestFullScreen",exitK:"mozCancelFullScreen",elementK:"mozFullScreenElement",eventK:"moz"+o}:n.webkitRequestFullscreen?t={enterK:"webkitRequestFullscreen",exitK:"webkitExitFullscreen",elementK:"webkitFullscreenElement",eventK:"webkit"+o}:n.msRequestFullscreen&&(t={enterK:"msRequestFullscreen",exitK:"msExitFullscreen",elementK:"msFullscreenElement",eventK:"MSFullscreenChange"}),t&&(t.enter=function(){if(u=w.closeOnScroll,w.closeOnScroll=!1,"webkitRequestFullscreen"!==this.enterK)return e.template[this.enterK]();e.template[this.enterK](Element.ALLOW_KEYBOARD_INPUT)},t.exit=function(){return w.closeOnScroll=u,document[this.exitK]()},t.isFullscreen=function(){return document[this.elementK]}),t}}});
!function(t,a,i,e){var r=function(t){var a=this;a.$form=t,a.$attributeFields=t.find(".variations select"),a.$singleVariation=t.find(".single_variation"),a.$singleVariationWrap=t.find(".single_variation_wrap"),a.$resetVariations=t.find(".reset_variations"),a.$resetAlert=t.find(".reset_variations_alert"),a.$product=t.closest(".product"),a.variationData=t.data("product_variations"),a.useAjax=!1===a.variationData,a.xhr=!1,a.loading=!0,a.$singleVariationWrap.show(),a.$form.off(".wc-variation-form"),a.getChosenAttributes=a.getChosenAttributes.bind(a),a.findMatchingVariations=a.findMatchingVariations.bind(a),a.isMatch=a.isMatch.bind(a),a.toggleResetLink=a.toggleResetLink.bind(a),a.showNoMatchingVariationsMsg=a.showNoMatchingVariationsMsg.bind(a),t.on("click.wc-variation-form",".reset_variations",{variationForm:a},a.onReset),t.on("reload_product_variations",{variationForm:a},a.onReload),t.on("hide_variation",{variationForm:a},a.onHide),t.on("show_variation",{variationForm:a},a.onShow),t.on("click",".single_add_to_cart_button",{variationForm:a},a.onAddToCart),t.on("reset_data",{variationForm:a},a.onResetDisplayedVariation),t.on("reset_focus",{variationForm:a},a.onResetVariationFocus),t.on("announce_reset",{variationForm:a},a.onAnnounceReset),t.on("clear_reset_announcement",{variationForm:a},a.onClearResetAnnouncement),t.on("reset_image",{variationForm:a},a.onResetImage),t.on("change.wc-variation-form",".variations select",{variationForm:a},a.onChange),t.on("found_variation.wc-variation-form",{variationForm:a},a.onFoundVariation),t.on("check_variations.wc-variation-form",{variationForm:a},a.onFindVariation),t.on("update_variation_values.wc-variation-form",{variationForm:a},a.onUpdateAttributes),t.on("keydown.wc-variation-form",".reset_variations",{variationForm:a},a.onResetKeyDown),setTimeout(function(){t.trigger("check_variations"),t.trigger("wc_variation_form",a),a.loading=!1},100)};r.prototype.onReset=function(t){t.preventDefault(),t.data.variationForm.$attributeFields.val("").trigger("change"),t.data.variationForm.$form.trigger("announce_reset"),t.data.variationForm.$form.trigger("reset_data"),t.data.variationForm.$form.trigger("reset_focus")},r.prototype.onReload=function(t){var a=t.data.variationForm;a.variationData=a.$form.data("product_variations"),a.useAjax=!1===a.variationData,a.$form.trigger("check_variations")},r.prototype.onHide=function(t){t.preventDefault(),t.data.variationForm.$form.find(".single_add_to_cart_button").removeClass("wc-variation-is-unavailable").addClass("disabled wc-variation-selection-needed"),t.data.variationForm.$form.find(".woocommerce-variation-add-to-cart").removeClass("woocommerce-variation-add-to-cart-enabled").addClass("woocommerce-variation-add-to-cart-disabled")},r.prototype.onShow=function(a,i,e){a.preventDefault(),e?(a.data.variationForm.$form.find(".single_add_to_cart_button").removeClass("disabled wc-variation-selection-needed wc-variation-is-unavailable"),a.data.variationForm.$form.find(".woocommerce-variation-add-to-cart").removeClass("woocommerce-variation-add-to-cart-disabled").addClass("woocommerce-variation-add-to-cart-enabled")):(a.data.variationForm.$form.find(".single_add_to_cart_button").removeClass("wc-variation-selection-needed").addClass("disabled wc-variation-is-unavailable"),a.data.variationForm.$form.find(".woocommerce-variation-add-to-cart").removeClass("woocommerce-variation-add-to-cart-enabled").addClass("woocommerce-variation-add-to-cart-disabled")),wp.mediaelement&&a.data.variationForm.$form.find(".wp-audio-shortcode, .wp-video-shortcode").not(".mejs-container").filter(function(){return!t(this).parent().hasClass("mejs-mediaelement")}).mediaelementplayer(wp.mediaelement.settings)},r.prototype.onAddToCart=function(i){t(this).is(".disabled")&&(i.preventDefault(),t(this).is(".wc-variation-is-unavailable")?a.alert(wc_add_to_cart_variation_params.i18n_unavailable_text):t(this).is(".wc-variation-selection-needed")&&a.alert(wc_add_to_cart_variation_params.i18n_make_a_selection_text))},r.prototype.onResetDisplayedVariation=function(t){var a=t.data.variationForm;a.$product.find(".product_meta").find(".sku").wc_reset_content(),a.$product.find(".product_weight, .woocommerce-product-attributes-item--weight .woocommerce-product-attributes-item__value").wc_reset_content(),a.$product.find(".product_dimensions, .woocommerce-product-attributes-item--dimensions .woocommerce-product-attributes-item__value").wc_reset_content(),a.$form.trigger("reset_image"),a.$singleVariation.slideUp(200).trigger("hide_variation")},r.prototype.onAnnounceReset=function(t){t.data.variationForm.$resetAlert.text(wc_add_to_cart_variation_params.i18n_reset_alert_text)},r.prototype.onResetVariationFocus=function(t){t.data.variationForm.$attributeFields[0].focus()},r.prototype.onClearResetAnnouncement=function(t){t.data.variationForm.$resetAlert.text("")},r.prototype.onResetImage=function(t){t.data.variationForm.$form.wc_variations_image_update(!1)},r.prototype.onFindVariation=function(a,i){var e=a.data.variationForm,r=void 0!==i?i:e.getChosenAttributes(),o=r.data;if(r.count&&r.count===r.chosenCount)if(e.useAjax)e.xhr&&e.xhr.abort(),e.$form.block({message:null,overlayCSS:{background:"#fff",opacity:.6}}),o.product_id=parseInt(e.$form.data("product_id"),10),o.custom_data=e.$form.data("custom_data"),e.xhr=t.ajax({url:wc_add_to_cart_variation_params.wc_ajax_url.toString().replace("%%endpoint%%","get_variation"),type:"POST",data:o,success:function(t){t?e.$form.trigger("found_variation",[t]):(e.$form.trigger("reset_data"),r.chosenCount=0,e.loading||e.showNoMatchingVariationsMsg())},complete:function(){e.$form.unblock()}});else{e.$form.trigger("update_variation_values");var n=e.findMatchingVariations(e.variationData,o).shift();n?e.$form.trigger("found_variation",[n]):(e.$form.trigger("reset_data"),r.chosenCount=0,e.loading||e.showNoMatchingVariationsMsg())}else e.$form.trigger("update_variation_values"),e.$form.trigger("reset_data");e.toggleResetLink(r.chosenCount>0)},r.prototype.onFoundVariation=function(a,i){var e=a.data.variationForm,r=e.$product.find(".product_meta").find(".sku"),n=e.$product.find(".product_weight, .woocommerce-product-attributes-item--weight .woocommerce-product-attributes-item__value"),s=e.$product.find(".product_dimensions, .woocommerce-product-attributes-item--dimensions .woocommerce-product-attributes-item__value"),c=e.$singleVariationWrap.find('.quantity input.qty[name="quantity"]'),_=c.closest(".quantity"),d=!0,m=!1,v="";if(i.sku?r.wc_set_content(i.sku):r.wc_reset_content(),i.weight?n.wc_set_content(i.weight_html):n.wc_reset_content(),i.dimensions?s.wc_set_content(t.parseHTML(i.dimensions_html)[0].data):s.wc_reset_content(),e.$form.wc_variations_image_update(i),i.variation_is_visible?(m=o("variation-template"),i.variation_id):m=o("unavailable-variation-template"),v=(v=(v=m({variation:i})).replace("/*<![CDATA[*/","")).replace("/*]]>*/",""),e.$form.find('input[name="variation_id"], input.variation_id').val(i.variation_id).trigger("change"),"yes"===i.is_sold_individually)c.val("1").attr("min","1").attr("max","").trigger("change"),_.hide();else{var l=parseFloat(c.val());l=isNaN(l)?i.min_qty:(l=l>parseFloat(i.max_qty)?i.max_qty:l)<parseFloat(i.min_qty)?i.min_qty:l,c.attr("min",i.min_qty).attr("max",i.max_qty).val(l).trigger("change"),_.show()}i.is_purchasable&&i.is_in_stock&&i.variation_is_visible||(d=!1),setTimeout(function(){e.$singleVariation.html(v),e.$singleVariation.text().trim()?e.$singleVariation.slideDown(200).trigger("show_variation",[i,d]):e.$singleVariation.show().trigger("show_variation",[i,d])},300)},r.prototype.onChange=function(t){var a=t.data.variationForm;a.$form.find('input[name="variation_id"], input.variation_id').val("").trigger("change"),a.$form.trigger("clear_reset_announcement"),a.$form.find(".wc-no-matching-variations").parent().remove(),a.useAjax?a.$form.trigger("check_variations"):(a.$form.trigger("woocommerce_variation_select_change"),a.$form.trigger("check_variations")),a.$form.trigger("woocommerce_variation_has_changed")},r.prototype.addSlashes=function(t){return t=(t=t.replace(/'/g,"\\'")).replace(/"/g,'\\"')},r.prototype.onUpdateAttributes=function(a){var i=a.data.variationForm,e=i.getChosenAttributes().data;i.useAjax||(i.$attributeFields.each(function(a,r){var o,n=t(r),s=n.data("attribute_name")||n.attr("name"),c=t(r).data("show_option_none"),_=":gt(0)",d=t("<select/>"),m=n.val()||"",v=!0;if(!n.data("attribute_html")){var l=n.clone();l.find("option").removeAttr("attached").prop("disabled",!1).prop("selected",!1),n.data("attribute_options",l.find("option"+_).get()),n.data("attribute_html",l.html())}d.html(n.data("attribute_html"));var g=t.extend(!0,{},e);g[s]="";var u=i.findMatchingVariations(i.variationData,g);for(var f in u)if("undefined"!=typeof u[f]){var h=u[f].attributes;for(var p in h)if(h.hasOwnProperty(p)){var w=h[p],b="";if(p===s)if(u[f].variation_is_active&&(b="enabled"),w){w=t("<div/>").html(w).text();var $=d.find("option");if($.length)for(var y=0,F=$.length;y<F;y++){var x=t($[y]);if(w===x.val()){x.addClass("attached "+b);break}}}else d.find("option:gt(0)").addClass("attached "+b)}}o=d.find("option.attached").length,m&&(v=!1,0!==o&&d.find("option.attached.enabled").each(function(){var a=t(this).val();if(m===a)return v=!0,!1})),o>0&&m&&v&&"no"===c&&(d.find("option:first").remove(),_=""),d.find("option"+_+":not(.attached)").remove(),n.html(d.html()),n.find("option"+_+":not(.enabled)").prop("disabled",!0),m?v?n.val(m):n.val("").trigger("change"):n.val("")}),i.$form.trigger("woocommerce_update_variation_values"))},r.prototype.getChosenAttributes=function(){var a={},i=0,e=0;return this.$attributeFields.each(function(){var r=t(this).data("attribute_name")||t(this).attr("name"),o=t(this).val()||"";o.length>0&&e++,i++,a[r]=o}),{count:i,chosenCount:e,data:a}},r.prototype.findMatchingVariations=function(t,a){for(var i=[],e=0;e<t.length;e++){var r=t[e];this.isMatch(r.attributes,a)&&i.push(r)}return i},r.prototype.isMatch=function(t,a){var i=!0;for(var e in t)if(t.hasOwnProperty(e)){var r=t[e],o=a[e];void 0!==r&&void 0!==o&&0!==r.length&&0!==o.length&&r!==o&&(i=!1)}return i},r.prototype.toggleResetLink=function(t){t?"hidden"===this.$resetVariations.css("visibility")&&this.$resetVariations.css("visibility","visible").hide().fadeIn():this.$resetVariations.css("visibility","hidden")},r.prototype.showNoMatchingVariationsMsg=function(){this.$form.find(".single_variation").after('<div role="alert"><p class="wc-no-matching-variations woocommerce-info">'+wc_add_to_cart_variation_params.i18n_no_matching_variations_text+"</p></div>").next("div").find(".wc-no-matching-variations").slideDown(200)},r.prototype.onResetKeyDown=function(t){"Enter"!==t.code&&"Space"!==t.code||(t.preventDefault(),t.data.variationForm.onReset(t))},t.fn.wc_variation_form=function(){return new r(this),this},t.fn.wc_set_content=function(t){void 0===this.attr("data-o_content")&&this.attr("data-o_content",this.text()),this.text(t)},t.fn.wc_reset_content=function(){void 0!==this.attr("data-o_content")&&this.text(this.attr("data-o_content"))},t.fn.wc_set_variation_attr=function(t,a){void 0===this.attr("data-o_"+t)&&this.attr("data-o_"+t,this.attr(t)?this.attr(t):""),!1===a?this.removeAttr(t):this.attr(t,a)},t.fn.wc_reset_variation_attr=function(t){void 0!==this.attr("data-o_"+t)&&this.attr(t,this.attr("data-o_"+t))},t.fn.wc_maybe_trigger_slide_position_reset=function(a){var i=t(this),e=i.closest(".product").find(".images"),r=!1,o=a&&a.image_id?a.image_id:"";i.attr("current-image")!==o&&(r=!0),i.attr("current-image",o),r&&e.trigger("woocommerce_gallery_reset_slide_position")},t.fn.wc_variations_image_update=function(i){var e=this,r=e.closest(".product"),o=r.find(".images"),n=r.find(".flex-control-nav"),s=n.find("li:eq(0) img"),c=o.find(".woocommerce-product-gallery__image, .woocommerce-product-gallery__image--placeholder").eq(0),_=c.find(".wp-post-image"),d=c.find("a").eq(0);if(i&&i.image&&i.image.src&&i.image.src.length>1){n.find('li img[data-o_src="'+i.image.gallery_thumbnail_src+'"]').length>0&&e.wc_variations_image_reset();var m=n.find('li img[src="'+i.image.gallery_thumbnail_src+'"]');if(m.length>0)return m.trigger("flexslider-click"),e.attr("current-image",i.image_id),void a.setTimeout(function(){t(a).trigger("resize"),o.trigger("woocommerce_gallery_init_zoom")},20);_.wc_set_variation_attr("src",i.image.src),_.wc_set_variation_attr("height",i.image.src_h),_.wc_set_variation_attr("width",i.image.src_w),_.wc_set_variation_attr("srcset",i.image.srcset),_.wc_set_variation_attr("sizes",i.image.sizes),_.wc_set_variation_attr("title",i.image.title),_.wc_set_variation_attr("data-caption",i.image.caption),_.wc_set_variation_attr("alt",i.image.alt),_.wc_set_variation_attr("data-src",i.image.full_src),_.wc_set_variation_attr("data-large_image",i.image.full_src),_.wc_set_variation_attr("data-large_image_width",i.image.full_src_w),_.wc_set_variation_attr("data-large_image_height",i.image.full_src_h),c.wc_set_variation_attr("data-thumb",i.image.src),s.wc_set_variation_attr("src",i.image.gallery_thumbnail_src),d.wc_set_variation_attr("href",i.image.full_src)}else e.wc_variations_image_reset();a.setTimeout(function(){t(a).trigger("resize"),e.wc_maybe_trigger_slide_position_reset(i),o.trigger("woocommerce_gallery_init_zoom")},20)},t.fn.wc_variations_image_reset=function(){var t=this.closest(".product"),a=t.find(".images"),i=t.find(".flex-control-nav").find("li:eq(0) img"),e=a.find(".woocommerce-product-gallery__image, .woocommerce-product-gallery__image--placeholder").eq(0),r=e.find(".wp-post-image"),o=e.find("a").eq(0);r.wc_reset_variation_attr("src"),r.wc_reset_variation_attr("width"),r.wc_reset_variation_attr("height"),r.wc_reset_variation_attr("srcset"),r.wc_reset_variation_attr("sizes"),r.wc_reset_variation_attr("title"),r.wc_reset_variation_attr("data-caption"),r.wc_reset_variation_attr("alt"),r.wc_reset_variation_attr("data-src"),r.wc_reset_variation_attr("data-large_image"),r.wc_reset_variation_attr("data-large_image_width"),r.wc_reset_variation_attr("data-large_image_height"),e.wc_reset_variation_attr("data-thumb"),i.wc_reset_variation_attr("src"),o.wc_reset_variation_attr("href")},t(function(){"undefined"!=typeof wc_add_to_cart_variation_params&&t(".variations_form").each(function(){t(this).wc_variation_form()})});var o=function(t){var e=i.getElementById("tmpl-"+t).textContent,r=!1;return(r=(r=(r=r||/<#\s?data\./.test(e))||/{{{?\s?data\.(?!variation\.).+}}}?/.test(e))||/{{{?\s?data\.variation\.[\w-]*[^\s}]/.test(e))?wp.template(t):function(t){var i=t.variation||{};return e.replace(/({{{?)\s?data\.variation\.([\w-]*)\s?(}}}?)/g,function(t,e,r,o){if(e.length!==o.length)return"";var n=i[r]||"";return 2===e.length?a.escape(n):n})}}}(jQuery,window,document);
jQuery(function(t){if("undefined"==typeof wc_single_product_params)return!1;t("body").on("init",".wc-tabs-wrapper, .woocommerce-tabs",function(){t(this).find(".wc-tab, .woocommerce-tabs .panel:not(.panel .panel)").hide();var e=window.location.hash,i=window.location.href,o=t(this).find(".wc-tabs, ul.tabs").first();e.toLowerCase().indexOf("comment-")>=0||"#reviews"===e||"#tab-reviews"===e?o.find("li.reviews_tab a").trigger("click"):i.indexOf("comment-page-")>0||i.indexOf("cpage=")>0?o.find("li.reviews_tab a").trigger("click"):"#tab-additional_information"===e?o.find("li.additional_information_tab a").trigger("click"):o.find("li:first a").trigger("click")}).on("click",".wc-tabs li a, ul.tabs li a",function(e){e.preventDefault();var i=t(this),o=i.closest(".wc-tabs-wrapper, .woocommerce-tabs"),a=o.find(".wc-tabs, ul.tabs");a.find("li").removeClass("active"),a.find('a[role="tab"]').attr("aria-selected","false").attr("tabindex","-1"),o.find(".wc-tab, .panel:not(.panel .panel)").hide(),i.closest("li").addClass("active"),i.attr("aria-selected","true").attr("tabindex","0"),o.find("#"+i.attr("href").split("#")[1]).show()}).on("keydown",".wc-tabs li a, ul.tabs li a",function(e){var i="rtl"===document.documentElement.dir,o=e.key,a=i?"ArrowLeft":"ArrowRight",r=i?"ArrowRight":"ArrowLeft",n="ArrowDown",s="ArrowUp",l="Home",c="End";if([a,r,n,s,c,l].includes(o)){var d=t(this),p=d.closest(".wc-tabs-wrapper, .woocommerce-tabs").find(".wc-tabs, ul.tabs").find('a[role="tab"]'),h=p.length-1,g=p.index(d),u=o===r||o===s?g-1:g+1,m="horizontal";if(p.length>=2){var _=p[0].getBoundingClientRect(),f=p[1].getBoundingClientRect();m=Math.abs(f.top-_.top)>Math.abs(f.left-_.left)?"vertical":"horizontal"}("vertical"!==m||o!==r&&o!==a)&&("horizontal"!==m||o!==s&&o!==n)&&(e.preventDefault(),o===r&&0===g&&"horizontal"===m||o===s&&0===g&&"vertical"===m||o===c?u=h:(a===o&&g===h&&"horizontal"===m||n===o&&g===h&&"vertical"===m||o===l)&&(u=0),p.eq(u).focus())}}).on("click","a.woocommerce-review-link",function(){return t(".reviews_tab a").trigger("click"),!0}).on("init","#rating",function(){t(this).hide().before('<p class="stars">\t\t\t\t\t\t<span role="group" aria-labelledby="comment-form-rating-label">\t\t\t\t\t\t\t<a role="radio" tabindex="0" aria-checked="false" class="star-1" href="#">'+wc_single_product_params.i18n_rating_options[0]+'</a>\t\t\t\t\t\t\t<a role="radio" tabindex="-1" aria-checked="false" class="star-2" href="#">'+wc_single_product_params.i18n_rating_options[1]+'</a>\t\t\t\t\t\t\t<a role="radio" tabindex="-1" aria-checked="false" class="star-3" href="#">'+wc_single_product_params.i18n_rating_options[2]+'</a>\t\t\t\t\t\t\t<a role="radio" tabindex="-1" aria-checked="false" class="star-4" href="#">'+wc_single_product_params.i18n_rating_options[3]+'</a>\t\t\t\t\t\t\t<a role="radio" tabindex="-1" aria-checked="false" class="star-5" href="#">'+wc_single_product_params.i18n_rating_options[4]+"</a>\t\t\t\t\t\t</span>\t\t\t\t\t</p>")}).on("click","#respond p.stars a",function(){var e=t(this),i=e.closest("p.stars").find("a").index(e)+1,o=t(this).closest("#respond").find("#rating"),a=t(this).closest(".stars");return o.val(i),e.siblings("a").removeClass("active").attr("aria-checked","false").attr("tabindex","-1"),e.addClass("active").attr("aria-checked","true").attr("tabindex","0"),a.addClass("selected"),!1}).on("click","#respond #submit",function(){var e=t(this).closest("#respond").find("#rating"),i=e.val();if(e.length>0&&!i&&"yes"===wc_single_product_params.review_rating_required)return window.alert(wc_single_product_params.i18n_required_rating_text),!1}).on("keyup",".wc-tabs li a, ul.tabs li a, #respond p.stars a",function(e){var i=e.key,o=["ArrowRight","ArrowDown"];o.concat(["ArrowLeft","ArrowUp"]).includes(i)&&(e.preventDefault(),e.stopPropagation(),o.includes(i)?t(this).next().focus().click():t(this).prev().focus().click())}),t(".wc-tabs-wrapper, .woocommerce-tabs, #rating").trigger("init");var e=function(e,i){this.$target=e,this.$images=t(".woocommerce-product-gallery__image",e),0!==this.$images.length?(e.data("product_gallery",this),this.flexslider_enabled="function"==typeof t.fn.flexslider&&wc_single_product_params.flexslider_enabled,this.zoom_enabled="function"==typeof t.fn.zoom&&wc_single_product_params.zoom_enabled,this.photoswipe_enabled="undefined"!=typeof PhotoSwipe&&wc_single_product_params.photoswipe_enabled,i&&(this.flexslider_enabled=!1!==i.flexslider_enabled&&this.flexslider_enabled,this.zoom_enabled=!1!==i.zoom_enabled&&this.zoom_enabled,this.photoswipe_enabled=!1!==i.photoswipe_enabled&&this.photoswipe_enabled),1===this.$images.length&&(this.flexslider_enabled=!1),this.initFlexslider=this.initFlexslider.bind(this),this.initZoom=this.initZoom.bind(this),this.initZoomForTarget=this.initZoomForTarget.bind(this),this.initPhotoswipe=this.initPhotoswipe.bind(this),this.onResetSlidePosition=this.onResetSlidePosition.bind(this),this.getGalleryItems=this.getGalleryItems.bind(this),this.openPhotoswipe=this.openPhotoswipe.bind(this),this.trapFocusPhotoswipe=this.trapFocusPhotoswipe.bind(this),this.handlePswpTrapFocus=this.handlePswpTrapFocus.bind(this),this.flexslider_enabled?(this.initFlexslider(i.flexslider),e.on("woocommerce_gallery_reset_slide_position",this.onResetSlidePosition)):this.$target.css("opacity",1),this.zoom_enabled&&(this.initZoom(),e.on("woocommerce_gallery_init_zoom",this.initZoom)),this.photoswipe_enabled&&this.initPhotoswipe()):this.$target.css("opacity",1)};e.prototype.initFlexslider=function(e){var i=this.$target,o=this,a=t.extend({selector:".woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image",start:function(){i.css("opacity",1)},after:function(t){o.initZoomForTarget(o.$images.eq(t.currentSlide))}},e);i.flexslider(a),t(".woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:eq(0) .wp-post-image").one("load",function(){var e=t(this);e&&setTimeout(function(){var t=e.closest(".woocommerce-product-gallery__image").height(),i=e.closest(".flex-viewport");t&&i&&i.height(t)},100)}).each(function(){this.complete&&t(this).trigger("load")})},e.prototype.initZoom=function(){"complete"===document.readyState?this.initZoomForTarget(this.$images.first()):t(window).on("load",()=>{this.initZoomForTarget(this.$images.first())})},e.prototype.initZoomForTarget=function(e){if(!this.zoom_enabled)return!1;var i=this.$target.width(),o=!1;if(t(e).each(function(e,a){if(t(a).find("img").data("large_image_width")>i)return o=!0,!1}),o){var a=t.extend({touch:!1,callback:function(){var t=this;setTimeout(function(){t.removeAttribute("role"),t.setAttribute("alt",""),t.setAttribute("aria-hidden","true")},100)}},wc_single_product_params.zoom_options);"ontouchstart"in document.documentElement&&(a.on="click"),e.trigger("zoom.destroy"),e.zoom(a),setTimeout(function(){e.find(":hover").length&&e.trigger("mouseover")},100)}},e.prototype.initPhotoswipe=function(){this.zoom_enabled&&this.$images.length>0?(this.$target.prepend('<a href="#" role="button" class="woocommerce-product-gallery__trigger" aria-haspopup="dialog" aria-controls="photoswipe-fullscreen-dialog" aria-label="'+wc_single_product_params.i18n_product_gallery_trigger_text+'"><span aria-hidden="true">🔍</span></a>'),this.$target.on("click",".woocommerce-product-gallery__trigger",this.openPhotoswipe),this.$target.on("keydown",".woocommerce-product-gallery__trigger",t=>{" "===t.key&&this.openPhotoswipe(t)}),this.$target.on("click",".woocommerce-product-gallery__image a",function(t){t.preventDefault()}),this.flexslider_enabled||this.$target.on("click",".woocommerce-product-gallery__image a",this.openPhotoswipe)):this.$target.on("click",".woocommerce-product-gallery__image a",this.openPhotoswipe)},e.prototype.onResetSlidePosition=function(){this.$target.flexslider(0)},e.prototype.getGalleryItems=function(){var e=this.$images,i=[];return e.length>0&&e.each(function(e,o){var a=t(o).find("img");if(a.length){var r=a.attr("data-large_image"),n=a.attr("data-large_image_width"),s=a.attr("data-large_image_height"),l={alt:a.attr("alt"),src:r,w:n,h:s,title:a.attr("data-caption")?a.attr("data-caption"):a.attr("title")};i.push(l)}}),i},e.prototype.openPhotoswipe=function(e){e.preventDefault();var i,o=t(".pswp")[0],a=this.getGalleryItems(),r=t(e.target),n=e.currentTarget,s=this;i=0<r.closest(".woocommerce-product-gallery__trigger").length?this.$target.find(".flex-active-slide"):r.closest(".woocommerce-product-gallery__image");var l=t.extend({index:t(i).index(),addCaptionHTMLFn:function(t,e){return t.title?(e.children[0].textContent=t.title,!0):(e.children[0].textContent="",!1)},timeToIdle:0},wc_single_product_params.photoswipe_options),c=new PhotoSwipe(o,PhotoSwipeUI_Default,a,l);c.listen("afterInit",function(){s.trapFocusPhotoswipe(!0)}),c.listen("close",function(){s.trapFocusPhotoswipe(!1),n.focus()}),c.init()},e.prototype.trapFocusPhotoswipe=function(t){var e=document.querySelector(".pswp");e&&(t?e.addEventListener("keydown",this.handlePswpTrapFocus):e.removeEventListener("keydown",this.handlePswpTrapFocus))},e.prototype.handlePswpTrapFocus=function(t){var e=t.currentTarget.querySelectorAll("button:not([disabled])"),i=Array.from(e).filter(function(t){return"none"!==t.style.display&&"none"!==window.getComputedStyle(t).display});if(!(1>=i.length)){var o=i[0],a=i[i.length-1];"Tab"===t.key&&(t.shiftKey?document.activeElement===o&&(t.preventDefault(),a.focus()):document.activeElement===a&&(t.preventDefault(),o.focus()))}},t.fn.wc_product_gallery=function(t){return new e(this,t||wc_single_product_params),this},t(".woocommerce-product-gallery").each(function(){t(this).trigger("wc-product-gallery-before-init",[this,wc_single_product_params]),t(this).wc_product_gallery(wc_single_product_params),t(this).trigger("wc-product-gallery-after-init",[this,wc_single_product_params])})});