{"version":3,"sources":["speedbump.js","accessibility.js","accordions.js","article-accordions.js","article-columns.js","modal.js","article-modals.js","article-tabs.js","enquire.js","jquery.cycle2.js","jquery.magnific-popup.js","tabs.js","tables.js","article-tables.js"],"names":["openModal","$","addClass","closeModal","removeClass","jQuery","document","ready","myAnchor","location","hash","attr","on","this","removeAttr","focus","window","bind","replace","fn","accordions","contentCount","r","titleCount","each","Deferred","$this","id","hasClass","is","wrapInner","done","prev","e","preventDefault","panel","parent","urlAccordion","nextUntil","addBack","wrapAll","titleID","append","appendTo","html","length","console","log","find","next","articleColumns","modal","modalURL","modalID","modalCopy","modalFocus","modalHeight","modalHash","modalLink","undefined","modals","after","toggleClass","focusable","ClientID","sessionStorage","getItem","RecSiteID","setTimeout","reCaptchaID","recaptchaModal","recaptchaLoaded","grecaptcha","render","sitekey","setItem","alert","modalFocusable","modalFocusableFirst","first","modalFocusableLast","last","which","shiftKey","push","substr","inArray","clone","css","height","min-height","replaceWith","keydown","target","keyCode","remove","click","stopPropagation","modalTitle","text","tabs","options","screen","timers","settings","extend","dropdown","desktop","animated","waitForFinalEvent","callback","ms","uniqueId","clearTimeout","setSize","width","level3position","spans","level2position","resize","indicatorWidth","tabContainer","tabContainerIndex","index","tabsCount","tabLabel","wrapTabs","prepend","tabHeading","tabIcon","tabHeadingID","role","tabindex","substring","aria-selected","aria-hidden","tabTarget","tabCurrent","tabPrev","parents","children","tabNext","activeElement","tabOffset","tabPanelID","tabTitle","position","tabOffsetLeft","left","animate","tabsContainerWidth","outerWidth","tabsWidth","scrollLeft","name","context","factory","matchMedia","module","exports","define","amd","collection","i","isFunction","QueryHandler","deferSetup","setup","MediaQuery","query","isUnconditional","handlers","mql","self","listener","assess","addListener","MediaQueryDispatch","Error","queries","browserIsIncapable","matches","prototype","initialised","match","off","unmatch","destroy","equals","addHandler","handler","qh","removeHandler","h","splice","clear","removeListener","action","register","q","shouldDegrade","Object","toString","apply","unregister","lowerCase","s","toLowerCase","cycle","o","isReady","data","opts","val","container","p","noop","hasOwnProperty","test","shortName","defaults","timeoutId","paused","_maxZ","maxZ","API","_container","trigger","eventName","args","addInitialSlides","preInitSlideshow","slides","initSlideshow","selector","c","slideCount","jquery","random","sort","Math","add","tx","transitions","fx","preInit","_preInitialized","postInitSlideshow","postInit","pauseObj","calcFirstSlide","currSlide","opacity","display","visibility","stackSlides","nextSlide","reverse","pauseOnHover","hover","pause","resume","timeout","slideOpts","getSlideOpts","queueTransition","delay","_initialized","updateView","alreadyPaused","hoverPaused","_remainingTimeout","now","_lastQueue","isNaN","alreadyResumed","filter","oldSlideCount","type","trim","slide","buildSlideOpts","initSlide","len","firstSlideIndex","parseInt","startingSlide","calcNextSlide","roll","calcTx","manual","_tempFx","manualFx","fade","prepareTx","fwd","curr","busy","manualTrump","stopTransition","_tx","manualSpeed","speed","before","transition","doTransition","currEl","nextEl","animIn","easeIn","easing","cssBefore","animOut","easeOut","cssAfter","sync","specificTimeout","loop","continueAuto","stop","advanceSlide","slideNum","suggestedZindex","slideCss","speeds","_default","slideClass","isAfter","isDuring","forceEvent","slideActiveClass","eq","hideNonActive","getComponent","z","getSlideIndex","el","Array","join","call","arguments","version","custom","none","fadeout","scrollHorz","w","top","zIndex","allowWrap","autoSelector","initAutoHeight","sentinelIndex","max","autoHeight","outerHeight","_autoHeightRatio","_sentinelIndex","_sentinel","cloneNode","prependTo","onBefore","outgoing","incoming","forward","autoHeightSpeed","autoHeightEasing","onDestroy","_autoHeightOnResize","t","resizeThrottle","onResize","ratio","caption","captionTemplate","overlay","overlayTemplate","captionModule","template","tmpl","show","hide","empty","c2","cmd","cmdFn","makeArray","cmdArgs","shift","count","clean","_data","removeData","retainStylesOnDestroy","jump","num","reinit","slideToRemove","command","onHashChange","setStartingSlide","_hashFence","_onHashChange","loader","addFn","slideArr","sorter","a","b","images","imageLoaded","complete","load","src","buildPagerLink","markup","pager","pagerTemplate","pagerEvent","pagerEventBubble","page","currentTarget","pagerFx","pagerActiveClass","slideAdded","slideRemoved","nextEvent","disabledClass","prevEvent","swipe","swipeVert","swipeFx","cls","prevBoundry","nextBoundry","_prevBoundry","_nextBoundry","prop","progressive","nextFn","prevFn","prepareTxFn","scriptEl","parseJSON","err","split","RegExp","pop","slice","one","tmplRegex","str","regex","_","j","obj","names","require","Zepto","MagnificPopup","_mfpOn","f","mfp","ev","EVENT_NS","_getEl","className","raw","createElement","innerHTML","appendChild","_mfpTrigger","triggerHandler","st","callbacks","charAt","isArray","_getCloseBtn","_currPopupType","currTemplate","closeBtn","closeMarkup","tClose","_checkInstance","magnificPopup","instance","init","_putInlineElementsBack","_lastInlineElement","_inlinePlaceholder","_hiddenClass","detach","_removeAjaxCursor","_ajaxCur","body","_destroyAjaxRequest","req","abort","_prevStatus","_document","_prevContentType","_wrapClasses","CLOSE_EVENT","BEFORE_CLOSE_EVENT","MARKUP_PARSE_EVENT","OPEN_EVENT","READY_CLASS","REMOVING_CLASS","PREVENT_CLOSE_CLASS","_isJQ","_window","INLINE_NS","proto","constructor","appVersion","navigator","isLowIE","isIE8","all","addEventListener","isAndroid","isIOS","supportsTransition","style","v","supportsTransitions","probablyMobile","userAgent","popupsCache","open","isObj","items","toArray","item","parsed","isOpen","types","mainEl","key","fixedContentPos","closeOnContentClick","closeOnBgClick","showCloseBtn","enableEscapeKey","bgOverlay","close","wrap","_checkIfClose","contentContainer","preloader","tLoading","modules","n","toUpperCase","closeBtnInside","values","close_replaceWith","alignTop","overflow","overflowY","overflowX","scrollTop","fixedBgPos","updateSize","windowHeight","wH","windowStyles","classesToadd","_hasScrollBar","_getScrollbarSize","marginRight","isIE7","mainClass","_addClassToMFP","updateItemHTML","_lastFocusedEl","content","_setFocus","_onFocusIn","removalDelay","_close","classesToRemove","_removeClassFromMFP","currItem","autoFocusLast","prevHeight","winHeight","zoomLevel","documentElement","clientWidth","innerWidth","innerHeight","parseEl","newContent","appendContent","preloaded","tagName","addGroup","eHandler","mfpEl","_openClick","eName","delegate","midClick","ctrlKey","metaKey","altKey","disableOn","updateStatus","status","stopImmediatePropagation","closeOnContent","closeOnBg","contains","cName","scrollHeight","_parseMarkup","arr","value","scrollDiv","scrollbarSize","cssText","offsetWidth","removeChild","registerModule","itemOpts","jqEl","AJAX_NS","hiddenClass","tNotFound","initInline","getInline","inlineSt","inline","parentNode","inlineElement","cursor","tError","initAjax","ajax","getAjax","url","success","textStatus","jqXHR","temp","xhr","finished","error","loadError","_imgInterval","titleSrc","verticalFit","initImage","imgSt","image","ns","resizeImage","decr","img","_onImageHasSize","hasSize","clearInterval","isCheckingImgSize","imgHidden","findImageSize","mfpSetInterval","setInterval","naturalWidth","counter","getImage","onLoadComplete","loaded","guard","onLoadError","alt","title","_getTitle","img_replaceWith","loading","_fixIframeBugs","isShowing","IFRAME_NS","_getLoopedId","numSlides","_replaceCurrTotal","total","enabled","duration","opener","element","initZoom","getElToAnimate","showMainContent","openTimeout","animatedImg","zoomSt","zoom","newImg","cssObj","-webkit-backface-visibility","_allowZoom","_getItemToZoom","_getOffset","isLarge","offset","paddingTop","paddingBottom","offsetHeight","hasMozTransform","MozTransform","RETINA_NS","srcAction","patterns","youtube","vimeo","gmaps","initIframe","prevType","newType","getIframe","embedSrc","iframeSt","iframe","dataObj","indexOf","lastIndexOf","arrowMarkup","preload","navigateByImgClick","arrows","tPrev","tNext","tCounter","initGallery","gSt","gallery","direction","l","arrowLeft","arrowRight","_preloadTimeout","preloadNearbyImages","goTo","newIndex","preloadBefore","min","preloadAfter","_preloadItem","replaceSrc","m","initRetina","devicePixelRatio","retina","max-width","tabID","responsiveTables","tableContainer","responsiveTable","responsiveTableCell","responsiveTableHeader","closest","href","office","mobile"],"mappings":"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","file":"main.js","sourcesContent":["jQuery(document).ready(function ($) {\r\n\r\n // automatic speedbump\r\n // find all external links\r\n $('a:not([href=\"\"], [href^=\"http://carrolltonbankprod.lrsws.co/\"], [href^=\"https://carrolltonbankprod.lrsws.co/\"], [href^=\"http://carrolltonbanking.com\"], [href^=\"http://www.carrolltonbanking.com\"], [href^=\"https://carrolltonbanking.com\"], [href*=\".carrolltonbanking.com\"], [href=\"https://carrolltonbanking.mymortgage-online.com\"],[href^=\"tel\"], [href^=\"/\"], [href^=\"#\"], [class*=\"no-speedbump\"], [id*=\"url-link\"], [id*=\"close-speedbump\"], [class*=\"close-reveal-modal\"], [href*=\".mortgage-application.net\"], [href*=\"web5.secureinternetbank.com\"], [class*=\"btn-search\"])').addClass('external');\r\n\r\n $('[href^=\"https://vimeo.com/\"]').addClass('external no-redirect');\r\n\r\n $('[href^=\"mailto:\"]').addClass('email-link');\r\n\r\n // remove external class from links without href attribute\r\n $('a:not([href])').removeClass('external');\r\n\r\n // add the link and title to the continue button\r\n $('body').on('click', 'a.external', function (e) {\r\n e.preventDefault();\r\n if (!$(this).hasClass('no-redirect')) {\r\n var url = $(this).attr('href');\r\n var target = $(this).attr('target');\r\n $('#url-link').attr('href', url).attr('target', target);\r\n $('#em_url-link').attr('href', url).attr('target', target);\r\n\r\n if ($(this).hasClass('email-link')) {\r\n $('#email_speedbump').addClass('open');\r\n } else {\r\n $('#speedbump').addClass('open');\r\n }\r\n\r\n if ($(this).hasClass('login-btn')) {\r\n $('#login_speedbump').addClass('open');\r\n } else {\r\n $('#speedbump').addClass('open');\r\n }\r\n }\r\n });\r\n // close speedbump when clicking acknowledgment button\r\n $('#speedbump a#close-speedbump, #speedbump a#close-reveal-modal, #email_speedbump a#em_close-speedbump, #email_speedbump a#em_close-reveal-modal, #login_speedbump a#em_close-speedbump, #login_speedbump a#em_close-reveal-modal, #login_speedbump_mobile a#em_close-speedbump, #login_speedbump_mobile a#em_close-reveal-modal, .close-reveal-modal').on('click', function (e) {\r\n e.preventDefault();\r\n $('#speedbump').removeClass('open');\r\n $('#email_speedbump').removeClass('open');\r\n $('#login_speedbump').removeClass('open');\r\n $('#login_speedbump_mobile').removeClass('open');\r\n $('#video-modal').removeClass('open');\r\n $(\"body\").removeClass('overlay');\r\n });\r\n\r\n // close reveal if link is clicked\r\n $('a:not([id*=\"close-speedbump\"], [id*=\"close-reveal-modal\"], [id*=\"em_close-speedbump\"], [id*=\"em_close-reveal-modal\"])').click(function () {\r\n $('#speedbump').removeClass('open');\r\n $('#email_speedbump').removeClass('open');\r\n $('#login_speedbump').removeClass('open');\r\n\r\n });\r\n\r\n});\r\n\r\nfunction openModal() {\r\n $('body').addClass('overlay');\r\n $('#video-modal').addClass('open');\r\n}\r\n\r\nfunction closeModal(){\r\n $('#speedbump').removeClass('open');\r\n $('#email_speedbump').removeClass('open');\r\n $('#login_speedbump').removeClass('open');\r\n $('#login_speedbump_mobile').removeClass('open');\r\n $('#video-modal').removeClass('open');\r\n $(\"body\").removeClass('overlay');\r\n}","jQuery(document).ready(function ($) {\r\n\r\n\t// hash focus onload\r\n\tif (document.location.hash) {\r\n\t\tvar myAnchor = document.location.hash;\r\n\t\t$(myAnchor).attr('tabindex', -1).on('blur focusout', function () {\r\n\t\t\t$(this).removeAttr('tabindex');\r\n\t\t}).focus();\r\n\t}\r\n\r\n\t// hash focus inline\r\n\t$(window).bind('hashchange', function () {\r\n\t\tvar hash = \"#\" + window.location.hash.replace(/^#/, '');\r\n\t\tif (hash != \"#\") {\r\n\t\t\t$(hash).attr('tabindex', -1).on('blur focusout', function () {\r\n\t\t\t\t$(this).removeAttr('tabindex');\r\n\t\t\t}).focus();\r\n\t\t}\r\n\t\telse {\r\n\t\t\t$(\"#header\").attr('tabindex', -1).on('blur focusout', function () {\r\n\t\t\t\t$(this).removeAttr('tabindex');\r\n\t\t\t}).focus();\r\n\t\t}\r\n\t});\r\n});","$.fn.accordions = function () {\r\n $('.accordions').each(function () {\r\n var $this = $(this);\r\n $this.addClass('active');\r\n });\r\n function accordionTitles() {\r\n var r = $.Deferred();\r\n var titleCount = 0;\r\n $('.accordions .accordion-title').each(function () {\r\n titleCount++;\r\n var $this = $(this);\r\n var id = 'accordion-' + titleCount;\r\n if ($this.hasClass('open')) {\r\n $this.addClass('is-active');\r\n if ($this.is('div')) {\r\n $('h2', $this).wrapInner('');\r\n } else {\r\n $this.append('');\r\n }\r\n } else {\r\n if ($this.is('div')) {\r\n $('h2', $this).append('');\r\n } else {\r\n $this.append('');\r\n }\r\n }\r\n\r\n $('.accordions .accordion.alternate .accordion-title button').each(function () {\r\n $(this).appendTo($(this).parent().parent());\r\n });\r\n\r\n });\r\n return r;\r\n }\r\n\r\n function accordionContent() {\r\n var r = $.Deferred();\r\n var contentCount = 0;\r\n $('.accordions .accordion .accordion-content').each(function () {\r\n contentCount++;\r\n var $this = $(this);\r\n var id = 'accordion-' + contentCount;\r\n if ($this.prev('.accordion-title').hasClass('is-active')) {\r\n $this.attr('id', id).attr('aria-hidden', 'false');\r\n } else {\r\n $this.attr('id', id).attr('aria-hidden', 'true');\r\n }\r\n });\r\n return r;\r\n }\r\n\r\n function accordionContentAlternate() {\r\n var r = $.Deferred();\r\n var contentCount = 0;\r\n $('.accordions .accordion.alternate .accordion-content').each(function () {\r\n contentCount++;\r\n var $this = $(this);\r\n var id = 'accordion-alt-' + contentCount;\r\n if ($this.prev('.accordion-title').hasClass('is-active')) {\r\n $this.attr('id', id).attr('aria-hidden', 'false');\r\n } else {\r\n $this.attr('id', id).attr('aria-hidden', 'true');\r\n }\r\n });\r\n return r;\r\n }\r\n\r\n function accordionButtons() {\r\n $('.accordions .accordion button').on('click', function (e) {\r\n e.preventDefault();\r\n var id = $(this).attr('aria-controls');\r\n var state = $(this).attr('aria-expanded');\r\n var panel = $('.accordion-content#' + id);\r\n if ($(this).parent().hasClass('is-active')) {\r\n $(this).parent().removeClass('is-active').addClass('is-inactive');\r\n $(this).attr('aria-expanded', 'false');\r\n panel.attr('aria-hidden', 'true');\r\n } else {\r\n $(this).parent().removeClass('is-inactive').addClass('is-active');\r\n $(this).attr('aria-expanded', 'true');\r\n panel.attr('aria-hidden', 'false');\r\n }\r\n });\r\n\r\n $('.accordions .accordion.alternate button').on('click', function (e) {\r\n e.preventDefault();\r\n if ($(this).parent().hasClass('is-active')) {\r\n $(this).html(\"View Less \");\r\n } else {\r\n $(this).html(\"View More \");\r\n }\r\n });\r\n }\r\n\r\n gatherAccordions().done(accordionTitles().done(accordionTitlesAlternate().done(accordionContent().done(accordionContentAlternate().done(accordionButtons())))));\r\n\r\n if (window.location.hash) {\r\n var hash = window.location.hash;\r\n var urlAccordion = $('.accordion-title' + hash);\r\n if (urlAccordion.length) {\r\n console.log('has hash');\r\n urlAccordion.addClass('is-active');\r\n urlAccordion.find('> button').attr('aria-expanded', 'true');\r\n urlAccordion.next('.accordion-content').attr('aria-hidden', 'false');\r\n }\r\n }\r\n});","// $.fn.articleColumns = function () {\r\n$.articleColumns = function () {\r\n jQuery(document).ready(function ($) {\r\n $(':not(.col-2) + .col-2, * > .col-2:first-of-type').each(function () {\r\n $(this).nextUntil(':not(.col-2)').addBack().wrapAll('
');\r\n });\r\n $(':not(.col-3) + .col-3, * > .col-3:first-of-type').each(function () {\r\n $(this).nextUntil(':not(.col-3)').addBack().wrapAll('
');\r\n });\r\n $(':not(.col-4) + .col-4, * > .col-4:first-of-type').each(function () {\r\n $(this).nextUntil(':not(.col-4)').addBack().wrapAll('
');\r\n });\r\n $(':not(.col-5) + .col-5, * > .col-5:first-of-type').each(function () {\r\n $(this).nextUntil(':not(.col-5)').addBack().wrapAll('
');\r\n });\r\n $(':not(.col-6) + .col-6, * > .col-6:first-of-type').each(function () {\r\n $(this).nextUntil(':not(.col-6)').addBack().wrapAll('
');\r\n });\r\n });\r\n}","// create modal markup\r\n//
\r\n// \t
\r\n//\t\t

Sample Modal Title

\r\n//\t\t×\r\n// \t
\r\n//
\r\n// create modal link\r\n// Open Sample Modal\r\n// OR to open a modal without moving its content in the dom\r\n// Open Sample Modal\r\njQuery(document).ready(function ($) {\r\n\r\n // global variables\r\n var modalLink = undefined;\r\n var modal;\r\n var modalURL;\r\n var modalID;\r\n var modalCopy;\r\n var modalFocus;\r\n var modalHeight;\r\n\r\n // add overlay\r\n $('form').append('
');\r\n\r\n // collect all modals\r\n var modals = [];\r\n $('.modal').each(function () {\r\n $(this).attr('hidden', 'hidden').attr('role', 'dialog').attr('tabindex', '-1');\r\n modals.push($(this).attr('id'));\r\n });\r\n\r\n // if url has hash for modal open that modal\r\n if (window.location.hash) {\r\n var modalHash = window.location.hash.substr(1);\r\n if (jQuery.inArray(modalHash, modals) != '-1') {\r\n modalURL = '#' + modalHash;\r\n modalID = modalHash;\r\n modalCopy = $(modalURL).clone();\r\n modalHeight = $(modalURL).attr('data-modal-height');\r\n if (typeof modalHeight !== typeof undefined && modalHeight !== false) {\r\n $(modalURL).css({\r\n height: modalHeight + 'px',\r\n 'min-height': 'calc(' + modalHeight + 'px - 40px)'\r\n })\r\n }\r\n if ($(modalURL).hasClass('modal-inline')) {\r\n $(modalURL).parent().addClass('modal-inline-parent');\r\n $('html, body').toggleClass('modal-open');\r\n $('.modal-overlay').toggleClass('show-modal modal-inline');\r\n $(modalURL).toggleClass('show-modal');\r\n $(modalURL).removeAttr('hidden').attr('aria-hidden', 'false').attr('tabindex', '0');\r\n $('.modal-content .close-modal').addClass('modal-inline').attr('tabindex', '0');\r\n $(modalURL).focus();\r\n modalFocus = $(modalURL + ' > .modal-content');\r\n focusable(modalFocus);\r\n } else {\r\n modalCopy = $(modalURL).clone();\r\n $(modalURL).replaceWith('');\r\n modal(modalURL);\r\n }\r\n }\r\n }\r\n\r\n $(document).on('click', '.open-modal', function (e) {\r\n e.preventDefault();\r\n // set variables\r\n modalLink = $(this);\r\n modalURL = $(this).attr('href');\r\n modalID = modalURL.replace(/^#/, '');\r\n modalHeight = $(modalURL).attr('data-modal-height');\r\n\r\n // open modal if it exists in modals array\r\n if (jQuery.inArray(modalID, modals) != '-1') {\r\n if (typeof modalHeight !== typeof undefined && modalHeight !== false) {\r\n $(modalURL).css({\r\n height: modalHeight + 'px',\r\n 'min-height': 'calc(' + modalHeight + 'px - 40px)'\r\n })\r\n }\r\n if ($(modalURL).hasClass('modal-inline')) {\r\n $(modalURL).parent().addClass('modal-inline-parent');\r\n $('html, body').toggleClass('modal-open');\r\n $('.modal-overlay').toggleClass('show-modal modal-inline');\r\n $(modalURL).toggleClass('show-modal');\r\n $(modalURL).removeAttr('hidden').attr('aria-hidden', 'false').attr('tabindex', '0');\r\n $('.modal-content .close-modal').addClass('modal-inline').attr('tabindex', '0');\r\n $(modalURL).focus();\r\n modalFocus = $(modalURL + ' > .modal-content');\r\n focusable(modalFocus);\r\n } else {\r\n modalCopy = $(modalURL).clone();\r\n $(modalURL).replaceWith('');\r\n modal(modalURL);\r\n }\r\n }\r\n });\r\n\r\n // modal\r\n function modal() {\r\n $('.modal-overlay').after(modalCopy);\r\n $('html, body').toggleClass('modal-open');\r\n $('.modal-overlay').toggleClass('show-modal');\r\n $(modalURL).toggleClass('show-modal');\r\n $(modalURL).removeAttr('hidden').attr('aria-hidden', 'false').attr('tabindex', '0');\r\n $('.modal-content .close-modal').attr('tabindex', '0');\r\n $(modalURL).focus();\r\n modalFocus = $(modalURL + ' > .modal-content');\r\n focusable(modalFocus);\r\n\r\n var ClientID = sessionStorage.getItem(\"reCaptchaClientID\");\r\n var RecSiteID = sessionStorage.getItem(\"reCaptchaSiteID\");\r\n\r\n console.log(ClientID);\r\n console.log(RecSiteID);\r\n\r\n setTimeout(function () {\r\n\r\n var recaptchaModal = sessionStorage.getItem(\"modalRecaptchaID\");\r\n console.log(recaptchaModal);\r\n\r\n console.log(window.recaptchaLoaded);\r\n if (window.recaptchaLoaded != true) {\r\n var reCaptchaID = grecaptcha.render(ClientID, {\r\n 'sitekey': RecSiteID,\r\n });\r\n window.recaptchaLoaded = true;\r\n sessionStorage.setItem(\"modalRecaptchaID\", reCaptchaID);\r\n } else {\r\n if (recaptchaModal != null) {\r\n alert(\"Could not load the reCAPTCHA, please reload the page.\");\r\n }\r\n }\r\n\r\n }, 100);\r\n }\r\n\r\n // find focusable items\r\n function focusable() {\r\n var modalFocusable = $('span.close-modal, a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]', modalFocus);\r\n var modalFocusableFirst = modalFocusable.first();\r\n var modalFocusableLast = modalFocusable.last();\r\n modalFocusableLast.on('keydown', function (e) {\r\n if ((e.which === 9 && !e.shiftKey)) {\r\n e.preventDefault();\r\n modalFocusableFirst.focus();\r\n }\r\n });\r\n modalFocusableFirst.on('keydown', function (e) {\r\n if ((e.which === 9 && e.shiftKey)) {\r\n e.preventDefault();\r\n modalFocusableLast.focus();\r\n }\r\n });\r\n }\r\n\r\n // focus to modal content\r\n $(document).keydown(function (e) {\r\n if ($(e.target).is('.modal')) {\r\n if (e.keyCode === 9) {\r\n modalFocus = $(modalURL + ' > .modal-content');\r\n focusable(modalFocus);\r\n }\r\n }\r\n });\r\n\r\n // close when clicking overlay / outside of modal window\r\n $(document).on('click', '.modal-overlay', function () {\r\n $('html, body').removeClass('modal-open');\r\n $('.modal-overlay').removeClass('show-modal').removeClass('modal-overlay__show-modal');\r\n if (!$(this).hasClass('modal-inline')) {\r\n modalCopy.remove();\r\n $('span[data-modalid=\"' + modalID + '\"]').replaceWith(modalCopy);\r\n $(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n $('.modal').removeClass('show-modal');\r\n } else {\r\n $(modalURL).parent().removeClass('modal-inline-parent');\r\n $(modalURL).removeClass('show-modal');\r\n $(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\r\n }\r\n if (modalLink != undefined) {\r\n modalLink.focus();\r\n modalLink = undefined;\r\n }\r\n });\r\n\r\n // dont close modal if clicking anything but close button\r\n $('.modal-content *:not(.close-modal)').click(function (e) {\r\n e.stopPropagation();\r\n });\r\n\r\n // close modal with button\r\n $(document).on('click', '.close-modal', function () {\r\n $('html, body').removeClass('modal-open');\r\n $('.modal-overlay').removeClass('show-modal');\r\n if (!$(this).hasClass('modal-inline')) {\r\n modalCopy.remove();\r\n $('span[data-modalid=\"' + modalID + '\"]').replaceWith(modalCopy);\r\n $(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n $('.modal').removeClass('show-modal');\r\n } else {\r\n $(modalURL).parent().removeClass('modal-inline-parent');\r\n $(modalURL).removeClass('show-modal');\r\n $(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\r\n }\r\n if (modalLink != undefined) {\r\n modalLink.focus();\r\n modalLink = undefined;\r\n }\r\n });\r\n\r\n // close modal if close is focused and enter key pressed\r\n // focus to modal content\r\n $(document).on('keydown', function (e) {\r\n if ($(e.target).is('.close-modal')) {\r\n if (e.keyCode === 13) {\r\n $('html, body').removeClass('modal-open');\r\n $('.modal-overlay').removeClass('show-modal').removeClass('modal-overlay__show-modal');\r\n if (!$(this).hasClass('modal-inline')) {\r\n modalCopy.remove();\r\n $('span[data-modalid=\"' + modalID + '\"]').replaceWith(modalCopy);\r\n $(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n $('.modal').removeClass('show-modal');\r\n } else {\r\n $(modalURL).parent().removeClass('modal-inline-parent');\r\n $(modalURL).removeClass('show-modal');\r\n $(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\r\n }\r\n if (modalLink != undefined) {\r\n modalLink.focus();\r\n modalLink = undefined;\r\n }\r\n }\r\n }\r\n });\r\n\r\n // close modal with escape key\r\n $(document).on('keyup', function (e) {\r\n if (e.keyCode === 27) {\r\n e.preventDefault();\r\n $('html, body').removeClass('modal-open');\r\n $('.modal-overlay').removeClass('show-modal').removeClass('modal-overlay__show-modal');\r\n if (!$(this).hasClass('modal-inline')) {\r\n modalCopy.remove();\r\n $('span[data-modalid=\"' + modalID + '\"]').replaceWith(modalCopy);\r\n $(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n $('.modal').removeClass('show-modal');\r\n } else {\r\n $(modalURL).parent().removeClass('modal-inline-parent');\r\n $(modalURL).removeClass('show-modal');\r\n $(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\r\n }\r\n if (modalLink != undefined) {\r\n modalLink.focus();\r\n modalLink = undefined;\r\n }\r\n }\r\n });\r\n});","// create modal markup\r\n//
\r\n// \t
\r\n//\t\t

Sample Modal Title

\r\n//\t\t×\r\n// \t
\r\n//
\r\n// create modal link\r\n// Open Sample Modal\r\n// OR to open a modal without moving its content in the dom\r\n// Open Sample Modal\r\njQuery(function () {\r\n\r\n\t// global variables\r\n\tvar modalLink = undefined;\r\n\tvar modal;\r\n\tvar modalURL;\r\n\tvar modalID;\r\n\tvar modalTitle;\r\n\tvar modalCopy;\r\n\tvar modalFocus;\r\n\tvar modalHeight;\r\n\r\n\t// add overlay\r\n\t$('body').append('
');\r\n\r\n\t// collect all modals\r\n\tvar modals = [];\r\n\t$('.modal').each(function () {\r\n\t\t$(this).attr('hidden', 'hidden').attr('role', 'dialog').attr('tabindex', '-1');\r\n\t\tmodalTitle = $('.modal-content > h1', this).text();\r\n\t\t$(this).attr('aria-label', modalTitle);\r\n\t\tmodals.push($(this).attr('id'));\r\n\t});\r\n\r\n\t// if url has hash for modal open that modal\r\n\tif (window.location.hash) {\r\n\t\tvar modalHash = window.location.hash.substr(1);\r\n\t\tif (jQuery.inArray(modalHash, modals) != '-1') {\r\n\t\t\tmodalURL = '#' + modalHash;\r\n\t\t\tmodalID = modalHash;\r\n\t\t\tmodalCopy = $(modalURL).clone();\r\n\t\t\tmodalHeight = $(modalURL).attr('data-modal-height');\r\n\t\t\tif (typeof modalHeight !== typeof undefined && modalHeight !== false) {\r\n\t\t\t\t$(modalURL).css({\r\n\t\t\t\t\theight: modalHeight + 'px',\r\n\t\t\t\t\t'min-height': 'calc(' + modalHeight + 'px - 40px)'\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tif ($(modalURL).hasClass('modal-inline')) {\r\n\t\t\t\t$(modalURL).parent().addClass('modal-inline-parent');\r\n\t\t\t\t$('html, body').toggleClass('modal-open');\r\n\t\t\t\t$('.modal-overlay').toggleClass('modal-overlay__show-modal modal-inline');\r\n\t\t\t\t$(modalURL).toggleClass('show-modal');\r\n\t\t\t\t$(modalURL).removeAttr('hidden').attr('aria-hidden', 'false').attr('tabindex', '0');\r\n\t\t\t\t$('.modal-content .close-modal').addClass('modal-inline').attr('tabindex', '0');\r\n\t\t\t\t$(modalURL).focus();\r\n\t\t\t\tmodalFocus = $(modalURL + ' > .modal-content');\r\n\t\t\t\tfocusable(modalFocus);\r\n\t\t\t} else {\r\n\t\t\t\tmodalCopy = $(modalURL).clone();\r\n\t\t\t\t$(modalURL).replaceWith('');\r\n\t\t\t\tmodal(modalURL);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t$(document).on('click', '.open-modal', function (e) {\r\n\t\te.preventDefault();\r\n\t\t// set variables\r\n\t\tmodalLink = $(this);\r\n\t\tmodalURL = $(this).attr('href');\r\n\t\tmodalID = modalURL.replace(/^#/, '');\r\n\t\tmodalHeight = $(modalURL).attr('data-modal-height');\r\n\r\n\t\t// open modal if it exists in modals array\r\n\t\tif (jQuery.inArray(modalID, modals) != '-1') {\r\n\t\t\tif (typeof modalHeight !== typeof undefined && modalHeight !== false) {\r\n\t\t\t\t$(modalURL).css({\r\n\t\t\t\t\theight: modalHeight + 'px',\r\n\t\t\t\t\t'min-height': 'calc(' + modalHeight + 'px - 40px)'\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tif ($(modalURL).hasClass('modal-inline')) {\r\n\t\t\t\t$(modalURL).parent().addClass('modal-inline-parent');\r\n\t\t\t\t$('html, body').toggleClass('modal-open');\r\n\t\t\t\t$('.modal-overlay').toggleClass('modal-overlay__show-modal modal-inline');\r\n\t\t\t\t$(modalURL).toggleClass('show-modal');\r\n\t\t\t\t$(modalURL).removeAttr('hidden').attr('aria-hidden', 'false').attr('tabindex', '0');\r\n\t\t\t\t$('.modal-content .close-modal').addClass('modal-inline').attr('tabindex', '0');\r\n\t\t\t\t$(modalURL).focus();\r\n\t\t\t\tmodalFocus = $(modalURL + ' > .modal-content');\r\n\t\t\t\tfocusable(modalFocus);\r\n\t\t\t} else {\r\n\t\t\t\tmodalCopy = $(modalURL).clone();\r\n\t\t\t\t$(modalURL).replaceWith('');\r\n\t\t\t\tmodal(modalURL);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\t// modal\r\n\tfunction modal() {\r\n\t\t$('.modal-overlay').after(modalCopy);\r\n\t\t$('html, body').toggleClass('modal-open');\r\n\t\t$('.modal-overlay').toggleClass('modal-overlay__show-modal');\r\n\t\t$(modalURL).toggleClass('show-modal');\r\n\t\t$(modalURL).removeAttr('hidden').attr('aria-hidden', 'false').attr('tabindex', '0');\r\n\t\t$('.modal-content .close-modal').attr('tabindex', '0');\r\n\t\t$(modalURL).focus();\r\n\t\tmodalFocus = $(modalURL + ' > .modal-content');\r\n\t\tfocusable(modalFocus);\r\n\t}\r\n\r\n\t// find focusable items\r\n\tfunction focusable() {\r\n\t\tvar modalFocusable = $('span.close-modal, a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]', modalFocus);\r\n\t\tvar modalFocusableFirst = modalFocusable.first();\r\n\t\tvar modalFocusableLast = modalFocusable.last();\r\n\t\tmodalFocusableLast.on('keydown', function (e) {\r\n\t\t\tif ((e.which === 9 && !e.shiftKey)) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tmodalFocusableFirst.focus();\r\n\t\t\t}\r\n\t\t});\r\n\t\tmodalFocusableFirst.on('keydown', function (e) {\r\n\t\t\tif ((e.which === 9 && e.shiftKey)) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tmodalFocusableLast.focus();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t// focus to modal content\r\n\t$(document).keydown(function (e) {\r\n\t\tif ($(e.target).is('.modal')) {\r\n\t\t\tif (e.keyCode === 9) {\r\n\t\t\t\tmodalFocus = $(modalURL);\r\n\t\t\t\tfocusable(modalFocus);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\t// close when clicking overlay / outside of modal window\r\n\t$('.modal-overlay').click(function () {\r\n\t\t$('html, body').removeClass('modal-open');\r\n\t\t$(this).removeClass('modal-overlay__show-modal');\r\n\t\tif (!$(this).hasClass('modal-inline')) {\r\n\t\t\tmodalCopy.remove();\r\n\t\t\t$('span[data-modalid=\"' + modalID + '\"]').replaceWith(modalCopy);\r\n\t\t\t$(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\t\t\t$('.modal').removeClass('show-modal');\r\n\t\t} else {\r\n\t\t\t$(modalURL).parent().removeClass('modal-inline-parent');\r\n\t\t\t$(modalURL).removeClass('modal-overlay__show-modal');\r\n\t\t\t$(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\t\t}\r\n\t\tif (modalLink !== undefined) {\r\n\t\t\tmodalLink.focus();\r\n\t\t\tmodalLink = undefined;\r\n\t\t}\r\n\t});\r\n\r\n\t// dont close modal if clicking anything but close button\r\n\t$('.modal-content *:not(.close-modal)').click(function (e) {\r\n\t\te.stopPropagation();\r\n\t});\r\n\r\n\t// close modal with button\r\n\t$(document).on('click', '.close-modal', function () {\r\n\t\t$('html, body').removeClass('modal-open');\r\n\t\t$('.modal-overlay').removeClass('modal-overlay__show-modal');\r\n\t\tif (!$(this).hasClass('modal-inline')) {\r\n\t\t\tmodalCopy.remove();\r\n\t\t\t$('span[data-modalid=\"' + modalID + '\"]').replaceWith(modalCopy);\r\n\t\t\t$(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\t\t\t$('.modal').removeClass('show-modal');\r\n\t\t} else {\r\n\t\t\t$(modalURL).parent().removeClass('modal-inline-parent');\r\n\t\t\t$(modalURL).removeClass('modal-overlay__show-modal');\r\n\t\t\t$(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\r\n\t\t}\r\n\t\tif (modalLink != undefined) {\r\n\t\t\tmodalLink.focus();\r\n\t\t\tmodalLink = undefined;\r\n\t\t}\r\n\t});\r\n\r\n\t// close modal if close is focused and enter key pressed\r\n\t// focus to modal content\r\n\t$(document).keydown(function (e) {\r\n\t\tif ($(e.target).is('.close-modal')) {\r\n\t\t\tif (e.keyCode === 13) {\r\n\t\t\t\t$('html, body').removeClass('modal-open');\r\n\t\t\t\t$('.modal-overlay').removeClass('modal-overlay__show-modal');\r\n\t\t\t\tif (!$('.modal-overlay').hasClass('modal-inline')) {\r\n\t\t\t\t\tmodalCopy.remove();\r\n\t\t\t\t\t$('span[data-modalid=\"' + modalID + '\"]').replaceWith(modalCopy);\r\n\t\t\t\t\t$(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\t\t\t\t\t$('.modal').removeClass('show-modal');\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$(modalURL).parent().removeClass('modal-inline-parent');\r\n\t\t\t\t\t$(modalURL).removeClass('show-modal');\r\n\t\t\t\t\t$(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\t\t\t\t}\r\n\t\t\t\tif (modalLink !== undefined) {\r\n\t\t\t\t\tmodalLink.focus();\r\n\t\t\t\t\tmodalLink = undefined;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\t// close modal with escape key\r\n\t$(document).on('keyup', function (e) {\r\n\t\tif (e.keyCode === 27) {\r\n\t\t\te.preventDefault();\r\n\t\t\tif ($('body').hasClass('modal-open')) {\r\n\t\t\t\t$('html, body').removeClass('modal-open');\r\n\t\t\t\t$('.modal-overlay').removeClass('modal-overlay__show-modal');\r\n\t\t\t\tif (!$('.modal-overlay').hasClass('modal-inline')) {\r\n\t\t\t\t\tmodalCopy.remove();\r\n\t\t\t\t\t$('span[data-modalid=\"' + modalID + '\"]').replaceWith(modalCopy);\r\n\t\t\t\t\t$(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\t\t\t\t\t$('.modal').removeClass('show-modal');\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$(modalURL).parent().removeClass('modal-inline-parent');\r\n\t\t\t\t\t$(modalURL).removeClass('show-modal');\r\n\t\t\t\t\t$(modalURL).attr('hidden', 'hidden').attr('aria-hidden', 'true').attr('tabindex', '-1');\r\n\t\t\t\t}\r\n\t\t\t\tif (modalLink !== undefined) {\r\n\t\t\t\t\tmodalLink.focus();\r\n\t\t\t\t\tmodalLink = undefined;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n});","// Article Tabs\r\n// Element to search for tabs within\r\n// $('main').tabs({\r\n// Enable dropdown on mobile.\r\n// dropdown: true,\r\n// Dropdown to Tabs screen size\r\n// desktop: 1025,\r\n// Enable animated tab indicator\r\n// animated: true\r\n// });\r\n(function ($) {\r\n $.fn.tabs = function (options) {\r\n\r\n // default plugin settings\r\n var settings = $.extend({\r\n dropdown: false,\r\n desktop: 1025,\r\n animated: false\r\n }, options);\r\n\r\n // gather plugin settings\r\n var tabs = this;\r\n var dropdown = settings.dropdown;\r\n var desktop = settings.desktop;\r\n var animated = settings.animated;\r\n var screen;\r\n\r\n // window resize function\r\n var waitForFinalEvent = (function () {\r\n var timers = {};\r\n return function (callback, ms, uniqueId) {\r\n if (!uniqueId) {\r\n uniqueId = \"Don't call this twice without a uniqueId\";\r\n }\r\n if (timers[uniqueId]) {\r\n clearTimeout(timers[uniqueId]);\r\n }\r\n timers[uniqueId] = setTimeout(callback, ms);\r\n };\r\n })();\r\n\r\n // settings based on window size\r\n function setSize() {\r\n screen = $(window).width();\r\n if (screen >= desktop) {\r\n spans = settings.spans;\r\n level2position = settings.level2position;\r\n level3position = settings.level3position;\r\n } else {\r\n spans = 'show';\r\n level2position = 'vertical-bottom';\r\n level3position = 'vertical-bottom';\r\n }\r\n }\r\n setSize();\r\n $(window).resize(function () {\r\n waitForFinalEvent(function () {\r\n screen = $(this);\r\n setSize();\r\n }, 100, \"setSize\");\r\n });\r\n\r\n function gatherTabs() {\r\n // Wrap each tab group in appropriate container\r\n var r = $.Deferred();\r\n if (dropdown === true && animated === true) {\r\n $(':not(.tab-content) + .tab-content, * > .tab-content:first-of-type').each(function () {\r\n $(this).nextUntil(':not(.tab-content)').addBack().wrapAll('
');\r\n });\r\n } else if (animated === true) {\r\n $(':not(.tab-content) + .tab-content, * > .tab-content:first-of-type').each(function () {\r\n $(this).nextUntil(':not(.tab-content)').addBack().wrapAll('
');\r\n });\r\n } else if (dropdown === true) {\r\n $(':not(.tab-content) + .tab-content, * > .tab-content:first-of-type').each(function () {\r\n $(this).nextUntil(':not(.tab-content)').addBack().wrapAll('
');\r\n });\r\n } else {\r\n $(':not(.tab-content) + .tab-content, * > .tab-content:first-of-type').each(function () {\r\n $(this).nextUntil(':not(.tab-content)').addBack().wrapAll('
');\r\n });\r\n }\r\n return r;\r\n }\r\n function makeTabs() {\r\n $('.tabs', tabs).each(function () {\r\n // The class for the container div\r\n var tabContainer = $(this);\r\n var tabContainerIndex = $(this).index();\r\n var tabsCount = $('.tabs .tab-content').length;\r\n var tabLabel = $('.tab-content:first-child', tabContainer).addClass('tab-current').find('> .tab-title').html();\r\n // The setup\r\n tabContainer.prepend($('
').prepend($('
    ')));\r\n // if tabs have dropdown enabled insert dropdown label\r\n if (dropdown === true) {\r\n tabContainer.prepend('' + tabLabel + '');\r\n }\r\n if (animated === true) {\r\n tabContainer.prepend('');\r\n }\r\n $('.tab-content', tabContainer).each(function () {\r\n var tabHeading = $(this).find('> .tab-title').html();\r\n var tabIcon = $(this).find('> .tab-icon').html();\r\n var tabHeadingID = 'tabs' + tabContainerIndex + 'tab' + $(this).index();\r\n if (tabIcon == null) {\r\n $('.tab-list', tabContainer).append('
  • ' + tabHeading + '
  • ');\r\n $(this).attr('id', tabHeadingID);\r\n } else {\r\n $('.tab-list', tabContainer).append('
  • ' + tabIcon + tabHeading + '
  • ');\r\n $(this).attr('id', tabHeadingID);\r\n }\r\n });\r\n\r\n if (animated === true) {\r\n var indicatorWidth = $('[role=\"tablist\"] > li', tabContainer).width();\r\n $('.tab-indicator', tabContainer).css('width', indicatorWidth);\r\n $(window).resize(function () {\r\n indicatorWidth = $('[role=\"tablist\"] > li', tabContainer).width();\r\n $('.tab-indicator', tabContainer).css('width', indicatorWidth);\r\n });\r\n }\r\n $('[role=\"tablist\"] > li', tabContainer).attr('role', 'presentation');\r\n if (dropdown === true) {\r\n $('[role=\"tablist\"] a', tabContainer).attr({\r\n 'role': 'tab',\r\n 'tabindex': '0'\r\n });\r\n } else {\r\n $('[role=\"tablist\"] a', tabContainer).attr({\r\n 'role': 'tab',\r\n 'tabindex': '-1'\r\n });\r\n }\r\n // Make each aria-controls correspond id of targeted section (re href)\r\n $('[role=\"tablist\"] a', tabContainer).each(function () {\r\n $(this).attr('aria-controls', $(this).attr('href').substring(1));\r\n });\r\n // Make the first tab selected by default and allow it focus\r\n $('[role=\"tablist\"] li:first-child', tabContainer).addClass('tab-current');\r\n $('[role=\"tablist\"] li:first-child a', tabContainer).attr({\r\n 'aria-selected': 'true',\r\n 'tabindex': '0'\r\n });\r\n // Make each section focusable and give it the tabpanel role\r\n $('section', tabContainer).attr({\r\n 'role': 'tabpanel'\r\n });\r\n // Make first child of each panel focusable programmatically\r\n $('section > *:first-child', tabContainer).attr({\r\n 'tabindex': '0'\r\n });\r\n // Make all but the first section hidden (ARIA state and display CSS)\r\n $('.tab-content:not(:first-of-type)', tabContainer).attr({\r\n 'aria-hidden': 'true'\r\n });\r\n // Trigger label on keypress and add tabs open class\r\n $('.tab-label', tabContainer).on('click', function () {\r\n if ($('.tab-list', tabContainer).is(':visible')) {\r\n tabContainer.removeClass('tabs-open');\r\n } else {\r\n tabContainer.addClass('tabs-open');\r\n\r\n }\r\n });\r\n // Change focus between tabs with arrow keys\r\n $('[role=\"tab\"]', tabContainer).on('keydown', function (e) {\r\n // define current, previous and next (possible) tabs\r\n var tabCurrent = $(this);\r\n var tabPrev = $(this).parents('li').prev().children('[role=\"tab\"]');\r\n var tabNext = $(this).parents('li').next().children('[role=\"tab\"]');\r\n var tabTarget;\r\n // find the direction (prev or next)\r\n if (dropdown === true) {\r\n switch (e.keyCode) {\r\n case 'shiftKey' + 9:\r\n tabTarget = tabPrev;\r\n break;\r\n case 9:\r\n tabTarget = tabNext;\r\n break;\r\n default:\r\n tabTarget = false\r\n break;\r\n }\r\n } else {\r\n switch (e.keyCode) {\r\n case 37:\r\n tabTarget = tabPrev;\r\n break;\r\n case 39:\r\n tabTarget = tabNext;\r\n break;\r\n default:\r\n tabTarget = false\r\n break;\r\n }\r\n }\r\n\r\n if (tabTarget.length) {\r\n if (dropdown === true) {\r\n tabCurrent.attr({\r\n 'tabindex': '0',\r\n 'aria-selected': null\r\n });\r\n tabTarget.attr({\r\n 'tabindex': '0',\r\n 'aria-selected': true\r\n }).focus();\r\n } else {\r\n tabCurrent.attr({\r\n 'tabindex': '-1',\r\n 'aria-selected': null\r\n });\r\n tabTarget.attr({\r\n 'tabindex': '0',\r\n 'aria-selected': true\r\n }).focus();\r\n }\r\n }\r\n // Hide panels\r\n $('.tab-content', tabContainer).attr('aria-hidden', 'true').removeClass('tab-current');\r\n // Show panel which corresponds to target\r\n $('#' + $(document.activeElement).attr('href').substring(1)).attr('aria-hidden', null).addClass('tab-current');\r\n });\r\n // Handle click on tab to show + focus tabpanel\r\n $('[role=\"tab\"]', tabContainer).on('click', function (e) {\r\n e.preventDefault();\r\n var tab = $(this);\r\n var tabPanelID = $(this).attr('href');\r\n // var tabID = $(this).attr('aria-controls');\r\n var tabTitle = $(this).text();\r\n var tabOffset;\r\n // remove focusability and aria-selected\r\n if (dropdown === true && animated === true) {\r\n $('.tab-current', tabContainer).removeClass('tab-current');\r\n $(this, tabContainer).parent('li').addClass('tab-current');\r\n\r\n $('[role=\"tab\"]', tabContainer).attr({\r\n 'tabindex': '0',\r\n 'aria-selected': null\r\n });\r\n $('.tab-label').text(tabTitle);\r\n tabContainer.removeClass('tabs-open');\r\n\r\n $('[role=\"tab\"]', tabContainer).attr({\r\n 'tabindex': '0',\r\n 'aria-selected': null\r\n });\r\n $('.tab-label').text(tabTitle);\r\n\r\n tabOffset = $(this, tabContainer).parent('li').position();\r\n tabOffsetLeft = tabOffset.left + 'px';\r\n $('.tab-indicator', tabContainer).animate({\r\n left: tabOffsetLeft\r\n });\r\n } else if (animated === true) {\r\n tabOffset = $(this, tabContainer).parent('li').position();\r\n } else if (dropdown === true) {\r\n $('.tab-current', tabContainer).removeClass('tab-current');\r\n\r\n $(this, tabContainer).parent('li').addClass('tab-current');\r\n\r\n $('[role=\"tab\"]', tabContainer).attr({\r\n 'tabindex': '0',\r\n 'aria-selected': null\r\n });\r\n $('.tab-label').text(tabTitle);\r\n tabContainer.removeClass('tabs-open');\r\n } else {\r\n $('.tab-current', tabContainer).removeClass('tab-current');\r\n\r\n $(this, tabContainer).parent('li').addClass('tab-current');\r\n\r\n $('[role=\"tab\"]', tabContainer).attr({\r\n 'tabindex': '-1',\r\n 'aria-selected': null\r\n });\r\n }\r\n // replace above on clicked tab\r\n if (dropdown === true) {\r\n $(this).attr({\r\n 'aria-selected': true,\r\n });\r\n $(this).parent('li').addClass('tab-current');\r\n } else {\r\n $(this).attr({\r\n 'aria-selected': true,\r\n 'tabindex': '0'\r\n });\r\n $(this).parent('li').addClass('tab-current');\r\n }\r\n // Hide panels\r\n $('.tab-content', tabContainer).attr('aria-hidden', 'true').removeClass('tab-current');\r\n // show corresponding panel\r\n $('section' + tabPanelID).attr('aria-hidden', null).addClass('tab-current');\r\n });\r\n\r\n //Remove Animated class if other type of Tabs\r\n if ($('.tab-content.tab-open--underline').length) {\r\n $('.tab-content.tab-open--underline').parent().addClass('tab-open--underline').removeClass('animated');\r\n $('.tabs.tab-open--underline .tab-indicator').remove();\r\n }\r\n\r\n if ($('.tab-content.classic').length) {\r\n $('.tab-content.classic').parent().addClass('classic').removeClass('animated');\r\n $('.tabs.classic .tab-indicator').remove();\r\n }\r\n\r\n if ($('.tab-content.tab-open').length) {\r\n $('.tab-content.tab-open').parent().addClass('tab-open').removeClass('animated');\r\n $('.tabs.tab-open .tab-indicator').remove();\r\n }\r\n\r\n if ($('.tab-content.icon').length) {\r\n $('.tab-content.icon').parent().addClass('icon').removeClass('animated');\r\n $('.tabs.icon .tab-indicator').remove();\r\n }\r\n //Remove Animated class if other type of Tabs - END\r\n\r\n // wrap tabs\r\n var wrapTabs = $('.tab-con', tabContainer);\r\n var tabsContainerWidth = $('.tab-con', tabContainer).outerWidth();\r\n var tabsWidth = $('.tab-list', tabContainer).outerWidth();\r\n var scrollWidth = tabsWidth - tabsContainerWidth;\r\n\r\n if (tabsWidth > tabsContainerWidth) {\r\n tabContainer.addClass('scroll-right');\r\n wrapTabs.on('scroll', function () {\r\n if (wrapTabs.scrollLeft() >= tabsWidth - tabsContainerWidth) {\r\n tabContainer.removeClass('scroll-right');\r\n } else {\r\n tabContainer.addClass('scroll-right');\r\n }\r\n if (wrapTabs.scrollLeft() > 1) {\r\n tabContainer.addClass('scroll-left');\r\n } else {\r\n tabContainer.removeClass('scroll-left');\r\n }\r\n });\r\n }\r\n });\r\n }\r\n gatherTabs().done(makeTabs());\r\n };\r\n}(jQuery));","/*!\r\n * enquire.js v2.1.2 - Awesome Media Queries in JavaScript\r\n * Copyright (c) 2014 Nick Williams - http://wicky.nillia.ms/enquire.js\r\n * License: MIT (http://www.opensource.org/licenses/mit-license.php)\r\n */\r\n\r\n;(function (name, context, factory) {\r\n\tvar matchMedia = window.matchMedia;\r\n\r\n\tif (typeof module !== 'undefined' && module.exports) {\r\n\t\tmodule.exports = factory(matchMedia);\r\n\t}\r\n\telse if (typeof define === 'function' && define.amd) {\r\n\t\tdefine(function() {\r\n\t\t\treturn (context[name] = factory(matchMedia));\r\n\t\t});\r\n\t}\r\n\telse {\r\n\t\tcontext[name] = factory(matchMedia);\r\n\t}\r\n}('enquire', this, function (matchMedia) {\r\n\r\n\t'use strict';\r\n\r\n /*jshint unused:false */\r\n /**\r\n * Helper function for iterating over a collection\r\n *\r\n * @param collection\r\n * @param fn\r\n */\r\n function each(collection, fn) {\r\n var i = 0,\r\n length = collection.length,\r\n cont;\r\n\r\n for(i; i < length; i++) {\r\n cont = fn(collection[i], i);\r\n if(cont === false) {\r\n break; //allow early exit\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Helper function for determining whether target object is an array\r\n *\r\n * @param target the object under test\r\n * @return {Boolean} true if array, false otherwise\r\n */\r\n function isArray(target) {\r\n return Object.prototype.toString.apply(target) === '[object Array]';\r\n }\r\n\r\n /**\r\n * Helper function for determining whether target object is a function\r\n *\r\n * @param target the object under test\r\n * @return {Boolean} true if function, false otherwise\r\n */\r\n function isFunction(target) {\r\n return typeof target === 'function';\r\n }\r\n\r\n /**\r\n * Delegate to handle a media query being matched and unmatched.\r\n *\r\n * @param {object} options\r\n * @param {function} options.match callback for when the media query is matched\r\n * @param {function} [options.unmatch] callback for when the media query is unmatched\r\n * @param {function} [options.setup] one-time callback triggered the first time a query is matched\r\n * @param {boolean} [options.deferSetup=false] should the setup callback be run immediately, rather than first time query is matched?\r\n * @constructor\r\n */\r\n function QueryHandler(options) {\r\n this.options = options;\r\n !options.deferSetup && this.setup();\r\n }\r\n QueryHandler.prototype = {\r\n\r\n /**\r\n * coordinates setup of the handler\r\n *\r\n * @function\r\n */\r\n setup : function() {\r\n if(this.options.setup) {\r\n this.options.setup();\r\n }\r\n this.initialised = true;\r\n },\r\n\r\n /**\r\n * coordinates setup and triggering of the handler\r\n *\r\n * @function\r\n */\r\n on : function() {\r\n !this.initialised && this.setup();\r\n this.options.match && this.options.match();\r\n },\r\n\r\n /**\r\n * coordinates the unmatch event for the handler\r\n *\r\n * @function\r\n */\r\n off : function() {\r\n this.options.unmatch && this.options.unmatch();\r\n },\r\n\r\n /**\r\n * called when a handler is to be destroyed.\r\n * delegates to the destroy or unmatch callbacks, depending on availability.\r\n *\r\n * @function\r\n */\r\n destroy : function() {\r\n this.options.destroy ? this.options.destroy() : this.off();\r\n },\r\n\r\n /**\r\n * determines equality by reference.\r\n * if object is supplied compare options, if function, compare match callback\r\n *\r\n * @function\r\n * @param {object || function} [target] the target for comparison\r\n */\r\n equals : function(target) {\r\n return this.options === target || this.options.match === target;\r\n }\r\n\r\n };\r\n /**\r\n * Represents a single media query, manages it's state and registered handlers for this query\r\n *\r\n * @constructor\r\n * @param {string} query the media query string\r\n * @param {boolean} [isUnconditional=false] whether the media query should run regardless of whether the conditions are met. Primarily for helping older browsers deal with mobile-first design\r\n */\r\n function MediaQuery(query, isUnconditional) {\r\n this.query = query;\r\n this.isUnconditional = isUnconditional;\r\n this.handlers = [];\r\n this.mql = matchMedia(query);\r\n\r\n var self = this;\r\n this.listener = function(mql) {\r\n self.mql = mql;\r\n self.assess();\r\n };\r\n this.mql.addListener(this.listener);\r\n }\r\n MediaQuery.prototype = {\r\n\r\n /**\r\n * add a handler for this query, triggering if already active\r\n *\r\n * @param {object} handler\r\n * @param {function} handler.match callback for when query is activated\r\n * @param {function} [handler.unmatch] callback for when query is deactivated\r\n * @param {function} [handler.setup] callback for immediate execution when a query handler is registered\r\n * @param {boolean} [handler.deferSetup=false] should the setup callback be deferred until the first time the handler is matched?\r\n */\r\n addHandler : function(handler) {\r\n var qh = new QueryHandler(handler);\r\n this.handlers.push(qh);\r\n\r\n this.matches() && qh.on();\r\n },\r\n\r\n /**\r\n * removes the given handler from the collection, and calls it's destroy methods\r\n * \r\n * @param {object || function} handler the handler to remove\r\n */\r\n removeHandler : function(handler) {\r\n var handlers = this.handlers;\r\n each(handlers, function(h, i) {\r\n if(h.equals(handler)) {\r\n h.destroy();\r\n return !handlers.splice(i,1); //remove from array and exit each early\r\n }\r\n });\r\n },\r\n\r\n /**\r\n * Determine whether the media query should be considered a match\r\n * \r\n * @return {Boolean} true if media query can be considered a match, false otherwise\r\n */\r\n matches : function() {\r\n return this.mql.matches || this.isUnconditional;\r\n },\r\n\r\n /**\r\n * Clears all handlers and unbinds events\r\n */\r\n clear : function() {\r\n each(this.handlers, function(handler) {\r\n handler.destroy();\r\n });\r\n this.mql.removeListener(this.listener);\r\n this.handlers.length = 0; //clear array\r\n },\r\n\r\n /*\r\n * Assesses the query, turning on all handlers if it matches, turning them off if it doesn't match\r\n */\r\n assess : function() {\r\n var action = this.matches() ? 'on' : 'off';\r\n\r\n each(this.handlers, function(handler) {\r\n handler[action]();\r\n });\r\n }\r\n };\r\n /**\r\n * Allows for registration of query handlers.\r\n * Manages the query handler's state and is responsible for wiring up browser events\r\n *\r\n * @constructor\r\n */\r\n function MediaQueryDispatch () {\r\n if(!matchMedia) {\r\n throw new Error('matchMedia not present, legacy browsers require a polyfill');\r\n }\r\n\r\n this.queries = {};\r\n this.browserIsIncapable = !matchMedia('only all').matches;\r\n }\r\n\r\n MediaQueryDispatch.prototype = {\r\n\r\n /**\r\n * Registers a handler for the given media query\r\n *\r\n * @param {string} q the media query\r\n * @param {object || Array || Function} options either a single query handler object, a function, or an array of query handlers\r\n * @param {function} options.match fired when query matched\r\n * @param {function} [options.unmatch] fired when a query is no longer matched\r\n * @param {function} [options.setup] fired when handler first triggered\r\n * @param {boolean} [options.deferSetup=false] whether setup should be run immediately or deferred until query is first matched\r\n * @param {boolean} [shouldDegrade=false] whether this particular media query should always run on incapable browsers\r\n */\r\n register : function(q, options, shouldDegrade) {\r\n var queries = this.queries,\r\n isUnconditional = shouldDegrade && this.browserIsIncapable;\r\n\r\n if(!queries[q]) {\r\n queries[q] = new MediaQuery(q, isUnconditional);\r\n }\r\n\r\n //normalise to object in an array\r\n if(isFunction(options)) {\r\n options = { match : options };\r\n }\r\n if(!isArray(options)) {\r\n options = [options];\r\n }\r\n each(options, function(handler) {\r\n if (isFunction(handler)) {\r\n handler = { match : handler };\r\n }\r\n queries[q].addHandler(handler);\r\n });\r\n\r\n return this;\r\n },\r\n\r\n /**\r\n * unregisters a query and all it's handlers, or a specific handler for a query\r\n *\r\n * @param {string} q the media query to target\r\n * @param {object || function} [handler] specific handler to unregister\r\n */\r\n unregister : function(q, handler) {\r\n var query = this.queries[q];\r\n\r\n if(query) {\r\n if(handler) {\r\n query.removeHandler(handler);\r\n }\r\n else {\r\n query.clear();\r\n delete this.queries[q];\r\n }\r\n }\r\n\r\n return this;\r\n }\r\n };\r\n\r\n\treturn new MediaQueryDispatch();\r\n\r\n}));","/*!\r\n* jQuery Cycle2; version: 2.1.6 build: 20141007\r\n* http://jquery.malsup.com/cycle2/\r\n* Copyright (c) 2014 M. Alsup; Dual licensed: MIT/GPL\r\n*/\r\n\r\n/* Cycle2 core engine */\r\n;(function($) {\r\n\"use strict\";\r\n\r\nvar version = '2.1.6';\r\n\r\n$.fn.cycle = function( options ) {\r\n // fix mistakes with the ready state\r\n var o;\r\n if ( this.length === 0 && !$.isReady ) {\r\n o = { s: this.selector, c: this.context };\r\n $.fn.cycle.log('requeuing slideshow (dom not ready)');\r\n $(function() {\r\n $( o.s, o.c ).cycle(options);\r\n });\r\n return this;\r\n }\r\n\r\n return this.each(function() {\r\n var data, opts, shortName, val;\r\n var container = $(this);\r\n var log = $.fn.cycle.log;\r\n\r\n if ( container.data('cycle.opts') )\r\n return; // already initialized\r\n\r\n if ( container.data('cycle-log') === false || \r\n ( options && options.log === false ) ||\r\n ( opts && opts.log === false) ) {\r\n log = $.noop;\r\n }\r\n\r\n log('--c2 init--');\r\n data = container.data();\r\n for (var p in data) {\r\n // allow props to be accessed sans 'cycle' prefix and log the overrides\r\n if (data.hasOwnProperty(p) && /^cycle[A-Z]+/.test(p) ) {\r\n val = data[p];\r\n shortName = p.match(/^cycle(.*)/)[1].replace(/^[A-Z]/, lowerCase);\r\n log(shortName+':', val, '('+typeof val +')');\r\n data[shortName] = val;\r\n }\r\n }\r\n\r\n opts = $.extend( {}, $.fn.cycle.defaults, data, options || {});\r\n\r\n opts.timeoutId = 0;\r\n opts.paused = opts.paused || false; // #57\r\n opts.container = container;\r\n opts._maxZ = opts.maxZ;\r\n\r\n opts.API = $.extend ( { _container: container }, $.fn.cycle.API );\r\n opts.API.log = log;\r\n opts.API.trigger = function( eventName, args ) {\r\n opts.container.trigger( eventName, args );\r\n return opts.API;\r\n };\r\n\r\n container.data( 'cycle.opts', opts );\r\n container.data( 'cycle.API', opts.API );\r\n\r\n // opportunity for plugins to modify opts and API\r\n opts.API.trigger('cycle-bootstrap', [ opts, opts.API ]);\r\n\r\n opts.API.addInitialSlides();\r\n opts.API.preInitSlideshow();\r\n\r\n if ( opts.slides.length )\r\n opts.API.initSlideshow();\r\n });\r\n};\r\n\r\n$.fn.cycle.API = {\r\n opts: function() {\r\n return this._container.data( 'cycle.opts' );\r\n },\r\n addInitialSlides: function() {\r\n var opts = this.opts();\r\n var slides = opts.slides;\r\n opts.slideCount = 0;\r\n opts.slides = $(); // empty set\r\n \r\n // add slides that already exist\r\n slides = slides.jquery ? slides : opts.container.find( slides );\r\n\r\n if ( opts.random ) {\r\n slides.sort(function() {return Math.random() - 0.5;});\r\n }\r\n\r\n opts.API.add( slides );\r\n },\r\n\r\n preInitSlideshow: function() {\r\n var opts = this.opts();\r\n opts.API.trigger('cycle-pre-initialize', [ opts ]);\r\n var tx = $.fn.cycle.transitions[opts.fx];\r\n if (tx && $.isFunction(tx.preInit))\r\n tx.preInit( opts );\r\n opts._preInitialized = true;\r\n },\r\n\r\n postInitSlideshow: function() {\r\n var opts = this.opts();\r\n opts.API.trigger('cycle-post-initialize', [ opts ]);\r\n var tx = $.fn.cycle.transitions[opts.fx];\r\n if (tx && $.isFunction(tx.postInit))\r\n tx.postInit( opts );\r\n },\r\n\r\n initSlideshow: function() {\r\n var opts = this.opts();\r\n var pauseObj = opts.container;\r\n var slideOpts;\r\n opts.API.calcFirstSlide();\r\n\r\n if ( opts.container.css('position') == 'static' )\r\n opts.container.css('position', 'relative');\r\n\r\n $(opts.slides[opts.currSlide]).css({\r\n opacity: 1,\r\n display: 'block',\r\n visibility: 'visible'\r\n });\r\n opts.API.stackSlides( opts.slides[opts.currSlide], opts.slides[opts.nextSlide], !opts.reverse );\r\n\r\n if ( opts.pauseOnHover ) {\r\n // allow pauseOnHover to specify an element\r\n if ( opts.pauseOnHover !== true )\r\n pauseObj = $( opts.pauseOnHover );\r\n\r\n pauseObj.hover(\r\n function(){ opts.API.pause( true ); }, \r\n function(){ opts.API.resume( true ); }\r\n );\r\n }\r\n\r\n // stage initial transition\r\n if ( opts.timeout ) {\r\n slideOpts = opts.API.getSlideOpts( opts.currSlide );\r\n opts.API.queueTransition( slideOpts, slideOpts.timeout + opts.delay );\r\n }\r\n\r\n opts._initialized = true;\r\n opts.API.updateView( true );\r\n opts.API.trigger('cycle-initialized', [ opts ]);\r\n opts.API.postInitSlideshow();\r\n },\r\n\r\n pause: function( hover ) {\r\n var opts = this.opts(),\r\n slideOpts = opts.API.getSlideOpts(),\r\n alreadyPaused = opts.hoverPaused || opts.paused;\r\n\r\n if ( hover )\r\n opts.hoverPaused = true; \r\n else\r\n opts.paused = true;\r\n\r\n if ( ! alreadyPaused ) {\r\n opts.container.addClass('cycle-paused');\r\n opts.API.trigger('cycle-paused', [ opts ]).log('cycle-paused');\r\n\r\n if ( slideOpts.timeout ) {\r\n clearTimeout( opts.timeoutId );\r\n opts.timeoutId = 0;\r\n \r\n // determine how much time is left for the current slide\r\n opts._remainingTimeout -= ( $.now() - opts._lastQueue );\r\n if ( opts._remainingTimeout < 0 || isNaN(opts._remainingTimeout) )\r\n opts._remainingTimeout = undefined;\r\n }\r\n }\r\n },\r\n\r\n resume: function( hover ) {\r\n var opts = this.opts(),\r\n alreadyResumed = !opts.hoverPaused && !opts.paused,\r\n remaining;\r\n\r\n if ( hover )\r\n opts.hoverPaused = false; \r\n else\r\n opts.paused = false;\r\n\r\n \r\n if ( ! alreadyResumed ) {\r\n opts.container.removeClass('cycle-paused');\r\n // #gh-230; if an animation is in progress then don't queue a new transition; it will\r\n // happen naturally\r\n if ( opts.slides.filter(':animated').length === 0 )\r\n opts.API.queueTransition( opts.API.getSlideOpts(), opts._remainingTimeout );\r\n opts.API.trigger('cycle-resumed', [ opts, opts._remainingTimeout ] ).log('cycle-resumed');\r\n }\r\n },\r\n\r\n add: function( slides, prepend ) {\r\n var opts = this.opts();\r\n var oldSlideCount = opts.slideCount;\r\n var startSlideshow = false;\r\n var len;\r\n\r\n if ( $.type(slides) == 'string')\r\n slides = $.trim( slides );\r\n\r\n $( slides ).each(function(i) {\r\n var slideOpts;\r\n var slide = $(this);\r\n\r\n if ( prepend )\r\n opts.container.prepend( slide );\r\n else\r\n opts.container.append( slide );\r\n\r\n opts.slideCount++;\r\n slideOpts = opts.API.buildSlideOpts( slide );\r\n\r\n if ( prepend )\r\n opts.slides = $( slide ).add( opts.slides );\r\n else\r\n opts.slides = opts.slides.add( slide );\r\n\r\n opts.API.initSlide( slideOpts, slide, --opts._maxZ );\r\n\r\n slide.data('cycle.opts', slideOpts);\r\n opts.API.trigger('cycle-slide-added', [ opts, slideOpts, slide ]);\r\n });\r\n\r\n opts.API.updateView( true );\r\n\r\n startSlideshow = opts._preInitialized && (oldSlideCount < 2 && opts.slideCount >= 1);\r\n if ( startSlideshow ) {\r\n if ( !opts._initialized )\r\n opts.API.initSlideshow();\r\n else if ( opts.timeout ) {\r\n len = opts.slides.length;\r\n opts.nextSlide = opts.reverse ? len - 1 : 1;\r\n if ( !opts.timeoutId ) {\r\n opts.API.queueTransition( opts );\r\n }\r\n }\r\n }\r\n },\r\n\r\n calcFirstSlide: function() {\r\n var opts = this.opts();\r\n var firstSlideIndex;\r\n firstSlideIndex = parseInt( opts.startingSlide || 0, 10 );\r\n if (firstSlideIndex >= opts.slides.length || firstSlideIndex < 0)\r\n firstSlideIndex = 0;\r\n\r\n opts.currSlide = firstSlideIndex;\r\n if ( opts.reverse ) {\r\n opts.nextSlide = firstSlideIndex - 1;\r\n if (opts.nextSlide < 0)\r\n opts.nextSlide = opts.slides.length - 1;\r\n }\r\n else {\r\n opts.nextSlide = firstSlideIndex + 1;\r\n if (opts.nextSlide == opts.slides.length)\r\n opts.nextSlide = 0;\r\n }\r\n },\r\n\r\n calcNextSlide: function() {\r\n var opts = this.opts();\r\n var roll;\r\n if ( opts.reverse ) {\r\n roll = (opts.nextSlide - 1) < 0;\r\n opts.nextSlide = roll ? opts.slideCount - 1 : opts.nextSlide-1;\r\n opts.currSlide = roll ? 0 : opts.nextSlide+1;\r\n }\r\n else {\r\n roll = (opts.nextSlide + 1) == opts.slides.length;\r\n opts.nextSlide = roll ? 0 : opts.nextSlide+1;\r\n opts.currSlide = roll ? opts.slides.length-1 : opts.nextSlide-1;\r\n }\r\n },\r\n\r\n calcTx: function( slideOpts, manual ) {\r\n var opts = slideOpts;\r\n var tx;\r\n\r\n if ( opts._tempFx )\r\n tx = $.fn.cycle.transitions[opts._tempFx];\r\n else if ( manual && opts.manualFx )\r\n tx = $.fn.cycle.transitions[opts.manualFx];\r\n\r\n if ( !tx )\r\n tx = $.fn.cycle.transitions[opts.fx];\r\n\r\n opts._tempFx = null;\r\n this.opts()._tempFx = null;\r\n\r\n if (!tx) {\r\n tx = $.fn.cycle.transitions.fade;\r\n opts.API.log('Transition \"' + opts.fx + '\" not found. Using fade.');\r\n }\r\n return tx;\r\n },\r\n\r\n prepareTx: function( manual, fwd ) {\r\n var opts = this.opts();\r\n var after, curr, next, slideOpts, tx;\r\n\r\n if ( opts.slideCount < 2 ) {\r\n opts.timeoutId = 0;\r\n return;\r\n }\r\n if ( manual && ( !opts.busy || opts.manualTrump ) ) {\r\n opts.API.stopTransition();\r\n opts.busy = false;\r\n clearTimeout(opts.timeoutId);\r\n opts.timeoutId = 0;\r\n }\r\n if ( opts.busy )\r\n return;\r\n if ( opts.timeoutId === 0 && !manual )\r\n return;\r\n\r\n curr = opts.slides[opts.currSlide];\r\n next = opts.slides[opts.nextSlide];\r\n slideOpts = opts.API.getSlideOpts( opts.nextSlide );\r\n tx = opts.API.calcTx( slideOpts, manual );\r\n\r\n opts._tx = tx;\r\n\r\n if ( manual && slideOpts.manualSpeed !== undefined )\r\n slideOpts.speed = slideOpts.manualSpeed;\r\n\r\n // if ( opts.nextSlide === opts.currSlide )\r\n // opts.API.calcNextSlide();\r\n\r\n // ensure that:\r\n // 1. advancing to a different slide\r\n // 2. this is either a manual event (prev/next, pager, cmd) or \r\n // a timer event and slideshow is not paused\r\n if ( opts.nextSlide != opts.currSlide && \r\n (manual || (!opts.paused && !opts.hoverPaused && opts.timeout) )) { // #62\r\n\r\n opts.API.trigger('cycle-before', [ slideOpts, curr, next, fwd ]);\r\n if ( tx.before )\r\n tx.before( slideOpts, curr, next, fwd );\r\n\r\n after = function() {\r\n opts.busy = false;\r\n // #76; bail if slideshow has been destroyed\r\n if (! opts.container.data( 'cycle.opts' ) )\r\n return;\r\n\r\n if (tx.after)\r\n tx.after( slideOpts, curr, next, fwd );\r\n opts.API.trigger('cycle-after', [ slideOpts, curr, next, fwd ]);\r\n opts.API.queueTransition( slideOpts);\r\n opts.API.updateView( true );\r\n };\r\n\r\n opts.busy = true;\r\n if (tx.transition)\r\n tx.transition(slideOpts, curr, next, fwd, after);\r\n else\r\n opts.API.doTransition( slideOpts, curr, next, fwd, after);\r\n\r\n opts.API.calcNextSlide();\r\n opts.API.updateView();\r\n } else {\r\n opts.API.queueTransition( slideOpts );\r\n }\r\n },\r\n\r\n // perform the actual animation\r\n doTransition: function( slideOpts, currEl, nextEl, fwd, callback) {\r\n var opts = slideOpts;\r\n var curr = $(currEl), next = $(nextEl);\r\n var fn = function() {\r\n // make sure animIn has something so that callback doesn't trigger immediately\r\n next.animate(opts.animIn || { opacity: 1}, opts.speed, opts.easeIn || opts.easing, callback);\r\n };\r\n\r\n next.css(opts.cssBefore || {});\r\n curr.animate(opts.animOut || {}, opts.speed, opts.easeOut || opts.easing, function() {\r\n curr.css(opts.cssAfter || {});\r\n if (!opts.sync) {\r\n fn();\r\n }\r\n });\r\n if (opts.sync) {\r\n fn();\r\n }\r\n },\r\n\r\n queueTransition: function( slideOpts, specificTimeout ) {\r\n var opts = this.opts();\r\n var timeout = specificTimeout !== undefined ? specificTimeout : slideOpts.timeout;\r\n if (opts.nextSlide === 0 && --opts.loop === 0) {\r\n opts.API.log('terminating; loop=0');\r\n opts.timeout = 0;\r\n if ( timeout ) {\r\n setTimeout(function() {\r\n opts.API.trigger('cycle-finished', [ opts ]);\r\n }, timeout);\r\n }\r\n else {\r\n opts.API.trigger('cycle-finished', [ opts ]);\r\n }\r\n // reset nextSlide\r\n opts.nextSlide = opts.currSlide;\r\n return;\r\n }\r\n if ( opts.continueAuto !== undefined ) {\r\n if ( opts.continueAuto === false || \r\n ($.isFunction(opts.continueAuto) && opts.continueAuto() === false )) {\r\n opts.API.log('terminating automatic transitions');\r\n opts.timeout = 0;\r\n if ( opts.timeoutId )\r\n clearTimeout(opts.timeoutId);\r\n return;\r\n }\r\n }\r\n if ( timeout ) {\r\n opts._lastQueue = $.now();\r\n if ( specificTimeout === undefined )\r\n opts._remainingTimeout = slideOpts.timeout;\r\n\r\n if ( !opts.paused && ! opts.hoverPaused ) {\r\n opts.timeoutId = setTimeout(function() { \r\n opts.API.prepareTx( false, !opts.reverse ); \r\n }, timeout );\r\n }\r\n }\r\n },\r\n\r\n stopTransition: function() {\r\n var opts = this.opts();\r\n if ( opts.slides.filter(':animated').length ) {\r\n opts.slides.stop(false, true);\r\n opts.API.trigger('cycle-transition-stopped', [ opts ]);\r\n }\r\n\r\n if ( opts._tx && opts._tx.stopTransition )\r\n opts._tx.stopTransition( opts );\r\n },\r\n\r\n // advance slide forward or back\r\n advanceSlide: function( val ) {\r\n var opts = this.opts();\r\n clearTimeout(opts.timeoutId);\r\n opts.timeoutId = 0;\r\n opts.nextSlide = opts.currSlide + val;\r\n \r\n if (opts.nextSlide < 0)\r\n opts.nextSlide = opts.slides.length - 1;\r\n else if (opts.nextSlide >= opts.slides.length)\r\n opts.nextSlide = 0;\r\n\r\n opts.API.prepareTx( true, val >= 0 );\r\n return false;\r\n },\r\n\r\n buildSlideOpts: function( slide ) {\r\n var opts = this.opts();\r\n var val, shortName;\r\n var slideOpts = slide.data() || {};\r\n for (var p in slideOpts) {\r\n // allow props to be accessed sans 'cycle' prefix and log the overrides\r\n if (slideOpts.hasOwnProperty(p) && /^cycle[A-Z]+/.test(p) ) {\r\n val = slideOpts[p];\r\n shortName = p.match(/^cycle(.*)/)[1].replace(/^[A-Z]/, lowerCase);\r\n opts.API.log('['+(opts.slideCount-1)+']', shortName+':', val, '('+typeof val +')');\r\n slideOpts[shortName] = val;\r\n }\r\n }\r\n\r\n slideOpts = $.extend( {}, $.fn.cycle.defaults, opts, slideOpts );\r\n slideOpts.slideNum = opts.slideCount;\r\n\r\n try {\r\n // these props should always be read from the master state object\r\n delete slideOpts.API;\r\n delete slideOpts.slideCount;\r\n delete slideOpts.currSlide;\r\n delete slideOpts.nextSlide;\r\n delete slideOpts.slides;\r\n } catch(e) {\r\n // no op\r\n }\r\n return slideOpts;\r\n },\r\n\r\n getSlideOpts: function( index ) {\r\n var opts = this.opts();\r\n if ( index === undefined )\r\n index = opts.currSlide;\r\n\r\n var slide = opts.slides[index];\r\n var slideOpts = $(slide).data('cycle.opts');\r\n return $.extend( {}, opts, slideOpts );\r\n },\r\n \r\n initSlide: function( slideOpts, slide, suggestedZindex ) {\r\n var opts = this.opts();\r\n slide.css( slideOpts.slideCss || {} );\r\n if ( suggestedZindex > 0 )\r\n slide.css( 'zIndex', suggestedZindex );\r\n\r\n // ensure that speed settings are sane\r\n if ( isNaN( slideOpts.speed ) )\r\n slideOpts.speed = $.fx.speeds[slideOpts.speed] || $.fx.speeds._default;\r\n if ( !slideOpts.sync )\r\n slideOpts.speed = slideOpts.speed / 2;\r\n\r\n slide.addClass( opts.slideClass );\r\n },\r\n\r\n updateView: function( isAfter, isDuring, forceEvent ) {\r\n var opts = this.opts();\r\n if ( !opts._initialized )\r\n return;\r\n var slideOpts = opts.API.getSlideOpts();\r\n var currSlide = opts.slides[ opts.currSlide ];\r\n\r\n if ( ! isAfter && isDuring !== true ) {\r\n opts.API.trigger('cycle-update-view-before', [ opts, slideOpts, currSlide ]);\r\n if ( opts.updateView < 0 )\r\n return;\r\n }\r\n\r\n if ( opts.slideActiveClass ) {\r\n opts.slides.removeClass( opts.slideActiveClass )\r\n .eq( opts.currSlide ).addClass( opts.slideActiveClass );\r\n }\r\n\r\n if ( isAfter && opts.hideNonActive )\r\n opts.slides.filter( ':not(.' + opts.slideActiveClass + ')' ).css('visibility', 'hidden');\r\n\r\n if ( opts.updateView === 0 ) {\r\n setTimeout(function() {\r\n opts.API.trigger('cycle-update-view', [ opts, slideOpts, currSlide, isAfter ]);\r\n }, slideOpts.speed / (opts.sync ? 2 : 1) );\r\n }\r\n\r\n if ( opts.updateView !== 0 )\r\n opts.API.trigger('cycle-update-view', [ opts, slideOpts, currSlide, isAfter ]);\r\n \r\n if ( isAfter )\r\n opts.API.trigger('cycle-update-view-after', [ opts, slideOpts, currSlide ]);\r\n },\r\n\r\n getComponent: function( name ) {\r\n var opts = this.opts();\r\n var selector = opts[name];\r\n if (typeof selector === 'string') {\r\n // if selector is a child, sibling combinator, adjancent selector then use find, otherwise query full dom\r\n return (/^\\s*[\\>|\\+|~]/).test( selector ) ? opts.container.find( selector ) : $( selector );\r\n }\r\n if (selector.jquery)\r\n return selector;\r\n \r\n return $(selector);\r\n },\r\n\r\n stackSlides: function( curr, next, fwd ) {\r\n var opts = this.opts();\r\n if ( !curr ) {\r\n curr = opts.slides[opts.currSlide];\r\n next = opts.slides[opts.nextSlide];\r\n fwd = !opts.reverse;\r\n }\r\n\r\n // reset the zIndex for the common case:\r\n // curr slide on top, next slide beneath, and the rest in order to be shown\r\n $(curr).css('zIndex', opts.maxZ);\r\n\r\n var i;\r\n var z = opts.maxZ - 2;\r\n var len = opts.slideCount;\r\n if (fwd) {\r\n for ( i = opts.currSlide + 1; i < len; i++ )\r\n $( opts.slides[i] ).css( 'zIndex', z-- );\r\n for ( i = 0; i < opts.currSlide; i++ )\r\n $( opts.slides[i] ).css( 'zIndex', z-- );\r\n }\r\n else {\r\n for ( i = opts.currSlide - 1; i >= 0; i-- )\r\n $( opts.slides[i] ).css( 'zIndex', z-- );\r\n for ( i = len - 1; i > opts.currSlide; i-- )\r\n $( opts.slides[i] ).css( 'zIndex', z-- );\r\n }\r\n\r\n $(next).css('zIndex', opts.maxZ - 1);\r\n },\r\n\r\n getSlideIndex: function( el ) {\r\n return this.opts().slides.index( el );\r\n }\r\n\r\n}; // API\r\n\r\n// default logger\r\n$.fn.cycle.log = function log() {\r\n /*global console:true */\r\n if (window.console && console.log)\r\n console.log('[cycle2] ' + Array.prototype.join.call(arguments, ' ') );\r\n};\r\n\r\n$.fn.cycle.version = function() { return 'Cycle2: ' + version; };\r\n\r\n// helper functions\r\n\r\nfunction lowerCase(s) {\r\n return (s || '').toLowerCase();\r\n}\r\n\r\n// expose transition object\r\n$.fn.cycle.transitions = {\r\n custom: {\r\n },\r\n none: {\r\n before: function( opts, curr, next, fwd ) {\r\n opts.API.stackSlides( next, curr, fwd );\r\n opts.cssBefore = { opacity: 1, visibility: 'visible', display: 'block' };\r\n }\r\n },\r\n fade: {\r\n before: function( opts, curr, next, fwd ) {\r\n var css = opts.API.getSlideOpts( opts.nextSlide ).slideCss || {};\r\n opts.API.stackSlides( curr, next, fwd );\r\n opts.cssBefore = $.extend(css, { opacity: 0, visibility: 'visible', display: 'block' });\r\n opts.animIn = { opacity: 1 };\r\n opts.animOut = { opacity: 0 };\r\n }\r\n },\r\n fadeout: {\r\n before: function( opts , curr, next, fwd ) {\r\n var css = opts.API.getSlideOpts( opts.nextSlide ).slideCss || {};\r\n opts.API.stackSlides( curr, next, fwd );\r\n opts.cssBefore = $.extend(css, { opacity: 1, visibility: 'visible', display: 'block' });\r\n opts.animOut = { opacity: 0 };\r\n }\r\n },\r\n scrollHorz: {\r\n before: function( opts, curr, next, fwd ) {\r\n opts.API.stackSlides( curr, next, fwd );\r\n var w = opts.container.css('overflow','hidden').width();\r\n opts.cssBefore = { left: fwd ? w : - w, top: 0, opacity: 1, visibility: 'visible', display: 'block' };\r\n opts.cssAfter = { zIndex: opts._maxZ - 2, left: 0 };\r\n opts.animIn = { left: 0 };\r\n opts.animOut = { left: fwd ? -w : w };\r\n }\r\n }\r\n};\r\n\r\n// @see: http://jquery.malsup.com/cycle2/api\r\n$.fn.cycle.defaults = {\r\n allowWrap: true,\r\n autoSelector: '.cycle-slideshow[data-cycle-auto-init!=false]',\r\n delay: 0,\r\n easing: null,\r\n fx: 'fade',\r\n hideNonActive: true,\r\n loop: 0,\r\n manualFx: undefined,\r\n manualSpeed: undefined,\r\n manualTrump: true,\r\n maxZ: 100,\r\n pauseOnHover: false,\r\n reverse: false,\r\n slideActiveClass: 'cycle-slide-active',\r\n slideClass: 'cycle-slide',\r\n slideCss: { position: 'absolute', top: 0, left: 0 },\r\n slides: '> img',\r\n speed: 500,\r\n startingSlide: 0,\r\n sync: true,\r\n timeout: 4000,\r\n updateView: 0\r\n};\r\n\r\n// automatically find and run slideshows\r\n$(document).ready(function() {\r\n $( $.fn.cycle.defaults.autoSelector ).cycle();\r\n});\r\n\r\n})(jQuery);\r\n\r\n/*! Cycle2 autoheight plugin; Copyright (c) M.Alsup, 2012; version: 20130913 */\r\n(function($) {\r\n\"use strict\";\r\n\r\n$.extend($.fn.cycle.defaults, {\r\n autoHeight: 0, // setting this option to false disables autoHeight logic\r\n autoHeightSpeed: 250,\r\n autoHeightEasing: null\r\n}); \r\n\r\n$(document).on( 'cycle-initialized', function( e, opts ) {\r\n var autoHeight = opts.autoHeight;\r\n var t = $.type( autoHeight );\r\n var resizeThrottle = null;\r\n var ratio;\r\n\r\n if ( t !== 'string' && t !== 'number' )\r\n return;\r\n\r\n // bind events\r\n opts.container.on( 'cycle-slide-added cycle-slide-removed', initAutoHeight );\r\n opts.container.on( 'cycle-destroyed', onDestroy );\r\n\r\n if ( autoHeight == 'container' ) {\r\n opts.container.on( 'cycle-before', onBefore );\r\n }\r\n else if ( t === 'string' && /\\d+\\:\\d+/.test( autoHeight ) ) { \r\n // use ratio\r\n ratio = autoHeight.match(/(\\d+)\\:(\\d+)/);\r\n ratio = ratio[1] / ratio[2];\r\n opts._autoHeightRatio = ratio;\r\n }\r\n\r\n // if autoHeight is a number then we don't need to recalculate the sentinel\r\n // index on resize\r\n if ( t !== 'number' ) {\r\n // bind unique resize handler per slideshow (so it can be 'off-ed' in onDestroy)\r\n opts._autoHeightOnResize = function () {\r\n clearTimeout( resizeThrottle );\r\n resizeThrottle = setTimeout( onResize, 50 );\r\n };\r\n\r\n $(window).on( 'resize orientationchange', opts._autoHeightOnResize );\r\n }\r\n\r\n setTimeout( onResize, 30 );\r\n\r\n function onResize() {\r\n initAutoHeight( e, opts );\r\n }\r\n});\r\n\r\nfunction initAutoHeight( e, opts ) {\r\n var clone, height, sentinelIndex;\r\n var autoHeight = opts.autoHeight;\r\n\r\n if ( autoHeight == 'container' ) {\r\n height = $( opts.slides[ opts.currSlide ] ).outerHeight();\r\n opts.container.height( height );\r\n }\r\n else if ( opts._autoHeightRatio ) { \r\n opts.container.height( opts.container.width() / opts._autoHeightRatio );\r\n }\r\n else if ( autoHeight === 'calc' || ( $.type( autoHeight ) == 'number' && autoHeight >= 0 ) ) {\r\n if ( autoHeight === 'calc' )\r\n sentinelIndex = calcSentinelIndex( e, opts );\r\n else if ( autoHeight >= opts.slides.length )\r\n sentinelIndex = 0;\r\n else \r\n sentinelIndex = autoHeight;\r\n\r\n // only recreate sentinel if index is different\r\n if ( sentinelIndex == opts._sentinelIndex )\r\n return;\r\n\r\n opts._sentinelIndex = sentinelIndex;\r\n if ( opts._sentinel )\r\n opts._sentinel.remove();\r\n\r\n // clone existing slide as sentinel\r\n clone = $( opts.slides[ sentinelIndex ].cloneNode(true) );\r\n \r\n // #50; remove special attributes from cloned content\r\n clone.removeAttr( 'id name rel' ).find( '[id],[name],[rel]' ).removeAttr( 'id name rel' );\r\n\r\n clone.css({\r\n position: 'static',\r\n visibility: 'hidden',\r\n display: 'block'\r\n }).prependTo( opts.container ).addClass('cycle-sentinel cycle-slide').removeClass('cycle-slide-active');\r\n clone.find( '*' ).css( 'visibility', 'hidden' );\r\n\r\n opts._sentinel = clone;\r\n }\r\n} \r\n\r\nfunction calcSentinelIndex( e, opts ) {\r\n var index = 0, max = -1;\r\n\r\n // calculate tallest slide index\r\n opts.slides.each(function(i) {\r\n var h = $(this).height();\r\n if ( h > max ) {\r\n max = h;\r\n index = i;\r\n }\r\n });\r\n return index;\r\n}\r\n\r\nfunction onBefore( e, opts, outgoing, incoming, forward ) {\r\n var h = $(incoming).outerHeight();\r\n opts.container.animate( { height: h }, opts.autoHeightSpeed, opts.autoHeightEasing );\r\n}\r\n\r\nfunction onDestroy( e, opts ) {\r\n if ( opts._autoHeightOnResize ) {\r\n $(window).off( 'resize orientationchange', opts._autoHeightOnResize );\r\n opts._autoHeightOnResize = null;\r\n }\r\n opts.container.off( 'cycle-slide-added cycle-slide-removed', initAutoHeight );\r\n opts.container.off( 'cycle-destroyed', onDestroy );\r\n opts.container.off( 'cycle-before', onBefore );\r\n\r\n if ( opts._sentinel ) {\r\n opts._sentinel.remove();\r\n opts._sentinel = null;\r\n }\r\n}\r\n\r\n})(jQuery);\r\n\r\n/*! caption plugin for Cycle2; version: 20130306 */\r\n(function($) {\r\n\"use strict\";\r\n\r\n$.extend($.fn.cycle.defaults, {\r\n caption: '> .cycle-caption',\r\n captionTemplate: '{{slideNum}} / {{slideCount}}',\r\n overlay: '> .cycle-overlay',\r\n overlayTemplate: '
    {{title}}
    {{desc}}
    ',\r\n captionModule: 'caption'\r\n}); \r\n\r\n$(document).on( 'cycle-update-view', function( e, opts, slideOpts, currSlide ) {\r\n if ( opts.captionModule !== 'caption' )\r\n return;\r\n var el;\r\n $.each(['caption','overlay'], function() {\r\n var name = this; \r\n var template = slideOpts[name+'Template'];\r\n var el = opts.API.getComponent( name );\r\n if( el.length && template ) {\r\n el.html( opts.API.tmpl( template, slideOpts, opts, currSlide ) );\r\n el.show();\r\n }\r\n else {\r\n el.hide();\r\n }\r\n });\r\n});\r\n\r\n$(document).on( 'cycle-destroyed', function( e, opts ) {\r\n var el;\r\n $.each(['caption','overlay'], function() {\r\n var name = this, template = opts[name+'Template'];\r\n if ( opts[name] && template ) {\r\n el = opts.API.getComponent( 'caption' );\r\n el.empty();\r\n }\r\n });\r\n});\r\n\r\n})(jQuery);\r\n\r\n/*! command plugin for Cycle2; version: 20140415 */\r\n(function($) {\r\n\"use strict\";\r\n\r\nvar c2 = $.fn.cycle;\r\n\r\n$.fn.cycle = function( options ) {\r\n var cmd, cmdFn, opts;\r\n var args = $.makeArray( arguments );\r\n\r\n if ( $.type( options ) == 'number' ) {\r\n return this.cycle( 'goto', options );\r\n }\r\n\r\n if ( $.type( options ) == 'string' ) {\r\n return this.each(function() {\r\n var cmdArgs;\r\n cmd = options;\r\n opts = $(this).data('cycle.opts');\r\n\r\n if ( opts === undefined ) {\r\n c2.log('slideshow must be initialized before sending commands; \"' + cmd + '\" ignored');\r\n return;\r\n }\r\n else {\r\n cmd = cmd == 'goto' ? 'jump' : cmd; // issue #3; change 'goto' to 'jump' internally\r\n cmdFn = opts.API[ cmd ];\r\n if ( $.isFunction( cmdFn )) {\r\n cmdArgs = $.makeArray( args );\r\n cmdArgs.shift();\r\n return cmdFn.apply( opts.API, cmdArgs );\r\n }\r\n else {\r\n c2.log( 'unknown command: ', cmd );\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n return c2.apply( this, arguments );\r\n }\r\n};\r\n\r\n// copy props\r\n$.extend( $.fn.cycle, c2 );\r\n\r\n$.extend( c2.API, {\r\n next: function() {\r\n var opts = this.opts();\r\n if ( opts.busy && ! opts.manualTrump )\r\n return;\r\n\r\n var count = opts.reverse ? -1 : 1;\r\n if ( opts.allowWrap === false && ( opts.currSlide + count ) >= opts.slideCount )\r\n return;\r\n\r\n opts.API.advanceSlide( count );\r\n opts.API.trigger('cycle-next', [ opts ]).log('cycle-next');\r\n },\r\n\r\n prev: function() {\r\n var opts = this.opts();\r\n if ( opts.busy && ! opts.manualTrump )\r\n return;\r\n var count = opts.reverse ? 1 : -1;\r\n if ( opts.allowWrap === false && ( opts.currSlide + count ) < 0 )\r\n return;\r\n\r\n opts.API.advanceSlide( count );\r\n opts.API.trigger('cycle-prev', [ opts ]).log('cycle-prev');\r\n },\r\n\r\n destroy: function() {\r\n this.stop(); //#204\r\n\r\n var opts = this.opts();\r\n var clean = $.isFunction( $._data ) ? $._data : $.noop; // hack for #184 and #201\r\n clearTimeout(opts.timeoutId);\r\n opts.timeoutId = 0;\r\n opts.API.stop();\r\n opts.API.trigger( 'cycle-destroyed', [ opts ] ).log('cycle-destroyed');\r\n opts.container.removeData();\r\n clean( opts.container[0], 'parsedAttrs', false );\r\n\r\n // #75; remove inline styles\r\n if ( ! opts.retainStylesOnDestroy ) {\r\n opts.container.removeAttr( 'style' );\r\n opts.slides.removeAttr( 'style' );\r\n opts.slides.removeClass( opts.slideActiveClass );\r\n }\r\n opts.slides.each(function() {\r\n var slide = $(this);\r\n slide.removeData();\r\n slide.removeClass( opts.slideClass );\r\n clean( this, 'parsedAttrs', false );\r\n });\r\n },\r\n\r\n jump: function( index, fx ) {\r\n // go to the requested slide\r\n var fwd;\r\n var opts = this.opts();\r\n if ( opts.busy && ! opts.manualTrump )\r\n return;\r\n var num = parseInt( index, 10 );\r\n if (isNaN(num) || num < 0 || num >= opts.slides.length) {\r\n opts.API.log('goto: invalid slide index: ' + num);\r\n return;\r\n }\r\n if (num == opts.currSlide) {\r\n opts.API.log('goto: skipping, already on slide', num);\r\n return;\r\n }\r\n opts.nextSlide = num;\r\n clearTimeout(opts.timeoutId);\r\n opts.timeoutId = 0;\r\n opts.API.log('goto: ', num, ' (zero-index)');\r\n fwd = opts.currSlide < opts.nextSlide;\r\n opts._tempFx = fx;\r\n opts.API.prepareTx( true, fwd );\r\n },\r\n\r\n stop: function() {\r\n var opts = this.opts();\r\n var pauseObj = opts.container;\r\n clearTimeout(opts.timeoutId);\r\n opts.timeoutId = 0;\r\n opts.API.stopTransition();\r\n if ( opts.pauseOnHover ) {\r\n if ( opts.pauseOnHover !== true )\r\n pauseObj = $( opts.pauseOnHover );\r\n pauseObj.off('mouseenter mouseleave');\r\n }\r\n opts.API.trigger('cycle-stopped', [ opts ]).log('cycle-stopped');\r\n },\r\n\r\n reinit: function() {\r\n var opts = this.opts();\r\n opts.API.destroy();\r\n opts.container.cycle();\r\n },\r\n\r\n remove: function( index ) {\r\n var opts = this.opts();\r\n var slide, slideToRemove, slides = [], slideNum = 1;\r\n for ( var i=0; i < opts.slides.length; i++ ) {\r\n slide = opts.slides[i];\r\n if ( i == index ) {\r\n slideToRemove = slide;\r\n }\r\n else {\r\n slides.push( slide );\r\n $( slide ).data('cycle.opts').slideNum = slideNum;\r\n slideNum++;\r\n }\r\n }\r\n if ( slideToRemove ) {\r\n opts.slides = $( slides );\r\n opts.slideCount--;\r\n $( slideToRemove ).remove();\r\n if (index == opts.currSlide)\r\n opts.API.advanceSlide( 1 );\r\n else if ( index < opts.currSlide )\r\n opts.currSlide--;\r\n else\r\n opts.currSlide++;\r\n\r\n opts.API.trigger('cycle-slide-removed', [ opts, index, slideToRemove ]).log('cycle-slide-removed');\r\n opts.API.updateView();\r\n }\r\n }\r\n\r\n});\r\n\r\n// listen for clicks on elements with data-cycle-cmd attribute\r\n$(document).on('click.cycle', '[data-cycle-cmd]', function(e) {\r\n // issue cycle command\r\n e.preventDefault();\r\n var el = $(this);\r\n var command = el.data('cycle-cmd');\r\n var context = el.data('cycle-context') || '.cycle-slideshow';\r\n $(context).cycle(command, el.data('cycle-arg'));\r\n});\r\n\r\n\r\n})(jQuery);\r\n\r\n/*! hash plugin for Cycle2; version: 20130905 */\r\n(function($) {\r\n\"use strict\";\r\n\r\n$(document).on( 'cycle-pre-initialize', function( e, opts ) {\r\n onHashChange( opts, true );\r\n\r\n opts._onHashChange = function() {\r\n onHashChange( opts, false );\r\n };\r\n\r\n $( window ).on( 'hashchange', opts._onHashChange);\r\n});\r\n\r\n$(document).on( 'cycle-update-view', function( e, opts, slideOpts ) {\r\n if ( slideOpts.hash && ( '#' + slideOpts.hash ) != window.location.hash ) {\r\n opts._hashFence = true;\r\n window.location.hash = slideOpts.hash;\r\n }\r\n});\r\n\r\n$(document).on( 'cycle-destroyed', function( e, opts) {\r\n if ( opts._onHashChange ) {\r\n $( window ).off( 'hashchange', opts._onHashChange );\r\n }\r\n});\r\n\r\nfunction onHashChange( opts, setStartingSlide ) {\r\n var hash;\r\n if ( opts._hashFence ) {\r\n opts._hashFence = false;\r\n return;\r\n }\r\n \r\n hash = window.location.hash.substring(1);\r\n\r\n opts.slides.each(function(i) {\r\n if ( $(this).data( 'cycle-hash' ) == hash ) {\r\n if ( setStartingSlide === true ) {\r\n opts.startingSlide = i;\r\n }\r\n else {\r\n var fwd = opts.currSlide < i;\r\n opts.nextSlide = i;\r\n opts.API.prepareTx( true, fwd );\r\n }\r\n return false;\r\n }\r\n });\r\n}\r\n\r\n})(jQuery);\r\n\r\n/*! loader plugin for Cycle2; version: 20131121 */\r\n(function($) {\r\n\"use strict\";\r\n\r\n$.extend($.fn.cycle.defaults, {\r\n loader: false\r\n});\r\n\r\n$(document).on( 'cycle-bootstrap', function( e, opts ) {\r\n var addFn;\r\n\r\n if ( !opts.loader )\r\n return;\r\n\r\n // override API.add for this slideshow\r\n addFn = opts.API.add;\r\n opts.API.add = add;\r\n\r\n function add( slides, prepend ) {\r\n var slideArr = [];\r\n if ( $.type( slides ) == 'string' )\r\n slides = $.trim( slides );\r\n else if ( $.type( slides) === 'array' ) {\r\n for (var i=0; i < slides.length; i++ )\r\n slides[i] = $(slides[i])[0];\r\n }\r\n\r\n slides = $( slides );\r\n var slideCount = slides.length;\r\n\r\n if ( ! slideCount )\r\n return;\r\n\r\n slides.css('visibility','hidden').appendTo('body').each(function(i) { // appendTo fixes #56\r\n var count = 0;\r\n var slide = $(this);\r\n var images = slide.is('img') ? slide : slide.find('img');\r\n slide.data('index', i);\r\n // allow some images to be marked as unimportant (and filter out images w/o src value)\r\n images = images.filter(':not(.cycle-loader-ignore)').filter(':not([src=\"\"])');\r\n if ( ! images.length ) {\r\n --slideCount;\r\n slideArr.push( slide );\r\n return;\r\n }\r\n\r\n count = images.length;\r\n images.each(function() {\r\n // add images that are already loaded\r\n if ( this.complete ) {\r\n imageLoaded();\r\n }\r\n else {\r\n $(this).load(function() {\r\n imageLoaded();\r\n }).on(\"error\", function() {\r\n if ( --count === 0 ) {\r\n // ignore this slide\r\n opts.API.log('slide skipped; img not loaded:', this.src);\r\n if ( --slideCount === 0 && opts.loader == 'wait') {\r\n addFn.apply( opts.API, [ slideArr, prepend ] );\r\n }\r\n }\r\n });\r\n }\r\n });\r\n\r\n function imageLoaded() {\r\n if ( --count === 0 ) {\r\n --slideCount;\r\n addSlide( slide );\r\n }\r\n }\r\n });\r\n\r\n if ( slideCount )\r\n opts.container.addClass('cycle-loading');\r\n \r\n\r\n function addSlide( slide ) {\r\n var curr;\r\n if ( opts.loader == 'wait' ) {\r\n slideArr.push( slide );\r\n if ( slideCount === 0 ) {\r\n // #59; sort slides into original markup order\r\n slideArr.sort( sorter );\r\n addFn.apply( opts.API, [ slideArr, prepend ] );\r\n opts.container.removeClass('cycle-loading');\r\n }\r\n }\r\n else {\r\n curr = $(opts.slides[opts.currSlide]);\r\n addFn.apply( opts.API, [ slide, prepend ] );\r\n curr.show();\r\n opts.container.removeClass('cycle-loading');\r\n }\r\n }\r\n\r\n function sorter(a, b) {\r\n return a.data('index') - b.data('index');\r\n }\r\n }\r\n});\r\n\r\n})(jQuery);\r\n\r\n/*! pager plugin for Cycle2; version: 20140415 */\r\n(function($) {\r\n\"use strict\";\r\n\r\n$.extend($.fn.cycle.defaults, {\r\n pager: '> .cycle-pager',\r\n pagerActiveClass: 'cycle-pager-active',\r\n pagerEvent: 'click.cycle',\r\n pagerEventBubble: undefined,\r\n pagerTemplate: ''\r\n});\r\n\r\n$(document).on( 'cycle-bootstrap', function( e, opts, API ) {\r\n // add method to API\r\n API.buildPagerLink = buildPagerLink;\r\n});\r\n\r\n$(document).on( 'cycle-slide-added', function( e, opts, slideOpts, slideAdded ) {\r\n if ( opts.pager ) {\r\n opts.API.buildPagerLink ( opts, slideOpts, slideAdded );\r\n opts.API.page = page;\r\n }\r\n});\r\n\r\n$(document).on( 'cycle-slide-removed', function( e, opts, index, slideRemoved ) {\r\n if ( opts.pager ) {\r\n var pagers = opts.API.getComponent( 'pager' );\r\n pagers.each(function() {\r\n var pager = $(this);\r\n $( pager.children()[index] ).remove();\r\n });\r\n }\r\n});\r\n\r\n$(document).on( 'cycle-update-view', function( e, opts, slideOpts ) {\r\n var pagers;\r\n\r\n if ( opts.pager ) {\r\n pagers = opts.API.getComponent( 'pager' );\r\n pagers.each(function() {\r\n $(this).children().removeClass( opts.pagerActiveClass )\r\n .eq( opts.currSlide ).addClass( opts.pagerActiveClass );\r\n });\r\n }\r\n});\r\n\r\n$(document).on( 'cycle-destroyed', function( e, opts ) {\r\n var pager = opts.API.getComponent( 'pager' );\r\n\r\n if ( pager ) {\r\n pager.children().off( opts.pagerEvent ); // #202\r\n if ( opts.pagerTemplate )\r\n pager.empty();\r\n }\r\n});\r\n\r\nfunction buildPagerLink( opts, slideOpts, slide ) {\r\n var pagerLink;\r\n var pagers = opts.API.getComponent( 'pager' );\r\n pagers.each(function() {\r\n var pager = $(this);\r\n if ( slideOpts.pagerTemplate ) {\r\n var markup = opts.API.tmpl( slideOpts.pagerTemplate, slideOpts, opts, slide[0] );\r\n pagerLink = $( markup ).appendTo( pager );\r\n }\r\n else {\r\n pagerLink = pager.children().eq( opts.slideCount - 1 );\r\n }\r\n pagerLink.on( opts.pagerEvent, function(e) {\r\n if ( ! opts.pagerEventBubble )\r\n e.preventDefault();\r\n opts.API.page( pager, e.currentTarget);\r\n });\r\n });\r\n}\r\n\r\nfunction page( pager, target ) {\r\n /*jshint validthis:true */\r\n var opts = this.opts();\r\n if ( opts.busy && ! opts.manualTrump )\r\n return;\r\n\r\n var index = pager.children().index( target );\r\n var nextSlide = index;\r\n var fwd = opts.currSlide < nextSlide;\r\n if (opts.currSlide == nextSlide) {\r\n return; // no op, clicked pager for the currently displayed slide\r\n }\r\n opts.nextSlide = nextSlide;\r\n opts._tempFx = opts.pagerFx;\r\n opts.API.prepareTx( true, fwd );\r\n opts.API.trigger('cycle-pager-activated', [opts, pager, target ]);\r\n}\r\n\r\n})(jQuery);\r\n\r\n/*! prevnext plugin for Cycle2; version: 20140408 */\r\n(function($) {\r\n\"use strict\";\r\n\r\n$.extend($.fn.cycle.defaults, {\r\n next: '> .cycle-next',\r\n nextEvent: 'click.cycle',\r\n disabledClass: 'disabled',\r\n prev: '> .cycle-prev',\r\n prevEvent: 'click.cycle',\r\n swipe: false\r\n});\r\n\r\n$(document).on( 'cycle-initialized', function( e, opts ) {\r\n opts.API.getComponent( 'next' ).on( opts.nextEvent, function(e) {\r\n e.preventDefault();\r\n opts.API.next();\r\n });\r\n\r\n opts.API.getComponent( 'prev' ).on( opts.prevEvent, function(e) {\r\n e.preventDefault();\r\n opts.API.prev();\r\n });\r\n\r\n if ( opts.swipe ) {\r\n var nextEvent = opts.swipeVert ? 'swipeUp.cycle' : 'swipeLeft.cycle swipeleft.cycle';\r\n var prevEvent = opts.swipeVert ? 'swipeDown.cycle' : 'swipeRight.cycle swiperight.cycle';\r\n opts.container.on( nextEvent, function(e) {\r\n opts._tempFx = opts.swipeFx;\r\n opts.API.next();\r\n });\r\n opts.container.on( prevEvent, function() {\r\n opts._tempFx = opts.swipeFx;\r\n opts.API.prev();\r\n });\r\n }\r\n});\r\n\r\n$(document).on( 'cycle-update-view', function( e, opts, slideOpts, currSlide ) {\r\n if ( opts.allowWrap )\r\n return;\r\n\r\n var cls = opts.disabledClass;\r\n var next = opts.API.getComponent( 'next' );\r\n var prev = opts.API.getComponent( 'prev' );\r\n var prevBoundry = opts._prevBoundry || 0;\r\n var nextBoundry = (opts._nextBoundry !== undefined)?opts._nextBoundry:opts.slideCount - 1;\r\n\r\n if ( opts.currSlide == nextBoundry )\r\n next.addClass( cls ).prop( 'disabled', true );\r\n else\r\n next.removeClass( cls ).prop( 'disabled', false );\r\n\r\n if ( opts.currSlide === prevBoundry )\r\n prev.addClass( cls ).prop( 'disabled', true );\r\n else\r\n prev.removeClass( cls ).prop( 'disabled', false );\r\n});\r\n\r\n\r\n$(document).on( 'cycle-destroyed', function( e, opts ) {\r\n opts.API.getComponent( 'prev' ).off( opts.nextEvent );\r\n opts.API.getComponent( 'next' ).off( opts.prevEvent );\r\n opts.container.off( 'swipeleft.cycle swiperight.cycle swipeLeft.cycle swipeRight.cycle swipeUp.cycle swipeDown.cycle' );\r\n});\r\n\r\n})(jQuery);\r\n\r\n/*! progressive loader plugin for Cycle2; version: 20130315 */\r\n(function($) {\r\n\"use strict\";\r\n\r\n$.extend($.fn.cycle.defaults, {\r\n progressive: false\r\n});\r\n\r\n$(document).on( 'cycle-pre-initialize', function( e, opts ) {\r\n if ( !opts.progressive )\r\n return;\r\n\r\n var API = opts.API;\r\n var nextFn = API.next;\r\n var prevFn = API.prev;\r\n var prepareTxFn = API.prepareTx;\r\n var type = $.type( opts.progressive );\r\n var slides, scriptEl;\r\n\r\n if ( type == 'array' ) {\r\n slides = opts.progressive;\r\n }\r\n else if ($.isFunction( opts.progressive ) ) {\r\n slides = opts.progressive( opts );\r\n }\r\n else if ( type == 'string' ) {\r\n scriptEl = $( opts.progressive );\r\n slides = $.trim( scriptEl.html() );\r\n if ( !slides )\r\n return;\r\n // is it json array?\r\n if ( /^(\\[)/.test( slides ) ) {\r\n try {\r\n slides = $.parseJSON( slides );\r\n }\r\n catch(err) {\r\n API.log( 'error parsing progressive slides', err );\r\n return;\r\n }\r\n }\r\n else {\r\n // plain text, split on delimeter\r\n slides = slides.split( new RegExp( scriptEl.data('cycle-split') || '\\n') );\r\n \r\n // #95; look for empty slide\r\n if ( ! slides[ slides.length - 1 ] )\r\n slides.pop();\r\n }\r\n }\r\n\r\n\r\n\r\n if ( prepareTxFn ) {\r\n API.prepareTx = function( manual, fwd ) {\r\n var index, slide;\r\n\r\n if ( manual || slides.length === 0 ) {\r\n prepareTxFn.apply( opts.API, [ manual, fwd ] );\r\n return;\r\n }\r\n\r\n if ( fwd && opts.currSlide == ( opts.slideCount-1) ) {\r\n slide = slides[ 0 ];\r\n slides = slides.slice( 1 );\r\n opts.container.one('cycle-slide-added', function(e, opts ) {\r\n setTimeout(function() {\r\n opts.API.advanceSlide( 1 );\r\n },50);\r\n });\r\n opts.API.add( slide );\r\n }\r\n else if ( !fwd && opts.currSlide === 0 ) {\r\n index = slides.length-1;\r\n slide = slides[ index ];\r\n slides = slides.slice( 0, index );\r\n opts.container.one('cycle-slide-added', function(e, opts ) {\r\n setTimeout(function() {\r\n opts.currSlide = 1;\r\n opts.API.advanceSlide( -1 );\r\n },50);\r\n });\r\n opts.API.add( slide, true );\r\n }\r\n else {\r\n prepareTxFn.apply( opts.API, [ manual, fwd ] );\r\n }\r\n };\r\n }\r\n\r\n if ( nextFn ) {\r\n API.next = function() {\r\n var opts = this.opts();\r\n if ( slides.length && opts.currSlide == ( opts.slideCount - 1 ) ) {\r\n var slide = slides[ 0 ];\r\n slides = slides.slice( 1 );\r\n opts.container.one('cycle-slide-added', function(e, opts ) {\r\n nextFn.apply( opts.API );\r\n opts.container.removeClass('cycle-loading');\r\n });\r\n opts.container.addClass('cycle-loading');\r\n opts.API.add( slide );\r\n }\r\n else {\r\n nextFn.apply( opts.API ); \r\n }\r\n };\r\n }\r\n \r\n if ( prevFn ) {\r\n API.prev = function() {\r\n var opts = this.opts();\r\n if ( slides.length && opts.currSlide === 0 ) {\r\n var index = slides.length-1;\r\n var slide = slides[ index ];\r\n slides = slides.slice( 0, index );\r\n opts.container.one('cycle-slide-added', function(e, opts ) {\r\n opts.currSlide = 1;\r\n opts.API.advanceSlide( -1 );\r\n opts.container.removeClass('cycle-loading');\r\n });\r\n opts.container.addClass('cycle-loading');\r\n opts.API.add( slide, true );\r\n }\r\n else {\r\n prevFn.apply( opts.API );\r\n }\r\n };\r\n }\r\n});\r\n\r\n})(jQuery);\r\n\r\n/*! tmpl plugin for Cycle2; version: 20121227 */\r\n(function($) {\r\n\"use strict\";\r\n\r\n$.extend($.fn.cycle.defaults, {\r\n tmplRegex: '{{((.)?.*?)}}'\r\n});\r\n\r\n$.extend($.fn.cycle.API, {\r\n tmpl: function( str, opts /*, ... */) {\r\n var regex = new RegExp( opts.tmplRegex || $.fn.cycle.defaults.tmplRegex, 'g' );\r\n var args = $.makeArray( arguments );\r\n args.shift();\r\n return str.replace(regex, function(_, str) {\r\n var i, j, obj, prop, names = str.split('.');\r\n for (i=0; i < args.length; i++) {\r\n obj = args[i];\r\n if ( ! obj )\r\n continue;\r\n if (names.length > 1) {\r\n prop = obj;\r\n for (j=0; j < names.length; j++) {\r\n obj = prop;\r\n prop = prop[ names[j] ] || str;\r\n }\r\n } else {\r\n prop = obj[str];\r\n }\r\n\r\n if ($.isFunction(prop))\r\n return prop.apply(obj, args);\r\n if (prop !== undefined && prop !== null && prop != str)\r\n return prop;\r\n }\r\n return str;\r\n });\r\n }\r\n}); \r\n\r\n})(jQuery);\r\n","/*! Magnific Popup - v1.1.0 - 2016-02-20\r\n* http://dimsemenov.com/plugins/magnific-popup/\r\n* Copyright (c) 2016 Dmitry Semenov; */\r\n;(function (factory) { \r\nif (typeof define === 'function' && define.amd) { \r\n // AMD. Register as an anonymous module. \r\n define(['jquery'], factory); \r\n } else if (typeof exports === 'object') { \r\n // Node/CommonJS \r\n factory(require('jquery')); \r\n } else { \r\n // Browser globals \r\n factory(window.jQuery || window.Zepto); \r\n } \r\n }(function($) { \r\n\r\n/*>>core*/\r\n/**\r\n * \r\n * Magnific Popup Core JS file\r\n * \r\n */\r\n\r\n\r\n/**\r\n * Private static constants\r\n */\r\nvar CLOSE_EVENT = 'Close',\r\n\tBEFORE_CLOSE_EVENT = 'BeforeClose',\r\n\tAFTER_CLOSE_EVENT = 'AfterClose',\r\n\tBEFORE_APPEND_EVENT = 'BeforeAppend',\r\n\tMARKUP_PARSE_EVENT = 'MarkupParse',\r\n\tOPEN_EVENT = 'Open',\r\n\tCHANGE_EVENT = 'Change',\r\n\tNS = 'mfp',\r\n\tEVENT_NS = '.' + NS,\r\n\tREADY_CLASS = 'mfp-ready',\r\n\tREMOVING_CLASS = 'mfp-removing',\r\n\tPREVENT_CLOSE_CLASS = 'mfp-prevent-close';\r\n\r\n\r\n/**\r\n * Private vars \r\n */\r\n/*jshint -W079 */\r\nvar mfp, // As we have only one instance of MagnificPopup object, we define it locally to not to use 'this'\r\n\tMagnificPopup = function(){},\r\n\t_isJQ = !!(window.jQuery),\r\n\t_prevStatus,\r\n\t_window = $(window),\r\n\t_document,\r\n\t_prevContentType,\r\n\t_wrapClasses,\r\n\t_currPopupType;\r\n\r\n\r\n/**\r\n * Private functions\r\n */\r\nvar _mfpOn = function(name, f) {\r\n\t\tmfp.ev.on(NS + name + EVENT_NS, f);\r\n\t},\r\n\t_getEl = function(className, appendTo, html, raw) {\r\n\t\tvar el = document.createElement('div');\r\n\t\tel.className = 'mfp-'+className;\r\n\t\tif(html) {\r\n\t\t\tel.innerHTML = html;\r\n\t\t}\r\n\t\tif(!raw) {\r\n\t\t\tel = $(el);\r\n\t\t\tif(appendTo) {\r\n\t\t\t\tel.appendTo(appendTo);\r\n\t\t\t}\r\n\t\t} else if(appendTo) {\r\n\t\t\tappendTo.appendChild(el);\r\n\t\t}\r\n\t\treturn el;\r\n\t},\r\n\t_mfpTrigger = function(e, data) {\r\n\t\tmfp.ev.triggerHandler(NS + e, data);\r\n\r\n\t\tif(mfp.st.callbacks) {\r\n\t\t\t// converts \"mfpEventName\" to \"eventName\" callback and triggers it if it's present\r\n\t\t\te = e.charAt(0).toLowerCase() + e.slice(1);\r\n\t\t\tif(mfp.st.callbacks[e]) {\r\n\t\t\t\tmfp.st.callbacks[e].apply(mfp, $.isArray(data) ? data : [data]);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\t_getCloseBtn = function(type) {\r\n\t\tif(type !== _currPopupType || !mfp.currTemplate.closeBtn) {\r\n\t\t\tmfp.currTemplate.closeBtn = $( mfp.st.closeMarkup.replace('%title%', mfp.st.tClose ) );\r\n\t\t\t_currPopupType = type;\r\n\t\t}\r\n\t\treturn mfp.currTemplate.closeBtn;\r\n\t},\r\n\t// Initialize Magnific Popup only when called at least once\r\n\t_checkInstance = function() {\r\n\t\tif(!$.magnificPopup.instance) {\r\n\t\t\t/*jshint -W020 */\r\n\t\t\tmfp = new MagnificPopup();\r\n\t\t\tmfp.init();\r\n\t\t\t$.magnificPopup.instance = mfp;\r\n\t\t}\r\n\t},\r\n\t// CSS transition detection, http://stackoverflow.com/questions/7264899/detect-css-transitions-using-javascript-and-without-modernizr\r\n\tsupportsTransitions = function() {\r\n\t\tvar s = document.createElement('p').style, // 's' for style. better to create an element if body yet to exist\r\n\t\t\tv = ['ms','O','Moz','Webkit']; // 'v' for vendor\r\n\r\n\t\tif( s['transition'] !== undefined ) {\r\n\t\t\treturn true; \r\n\t\t}\r\n\t\t\t\r\n\t\twhile( v.length ) {\r\n\t\t\tif( v.pop() + 'Transition' in s ) {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t}\r\n\t\t\t\t\r\n\t\treturn false;\r\n\t};\r\n\r\n\r\n\r\n/**\r\n * Public functions\r\n */\r\nMagnificPopup.prototype = {\r\n\r\n\tconstructor: MagnificPopup,\r\n\r\n\t/**\r\n\t * Initializes Magnific Popup plugin. \r\n\t * This function is triggered only once when $.fn.magnificPopup or $.magnificPopup is executed\r\n\t */\r\n\tinit: function() {\r\n\t\tvar appVersion = navigator.appVersion;\r\n\t\tmfp.isLowIE = mfp.isIE8 = document.all && !document.addEventListener;\r\n\t\tmfp.isAndroid = (/android/gi).test(appVersion);\r\n\t\tmfp.isIOS = (/iphone|ipad|ipod/gi).test(appVersion);\r\n\t\tmfp.supportsTransition = supportsTransitions();\r\n\r\n\t\t// We disable fixed positioned lightbox on devices that don't handle it nicely.\r\n\t\t// If you know a better way of detecting this - let me know.\r\n\t\tmfp.probablyMobile = (mfp.isAndroid || mfp.isIOS || /(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent) );\r\n\t\t_document = $(document);\r\n\r\n\t\tmfp.popupsCache = {};\r\n\t},\r\n\r\n\t/**\r\n\t * Opens popup\r\n\t * @param data [description]\r\n\t */\r\n\topen: function(data) {\r\n\r\n\t\tvar i;\r\n\r\n\t\tif(data.isObj === false) { \r\n\t\t\t// convert jQuery collection to array to avoid conflicts later\r\n\t\t\tmfp.items = data.items.toArray();\r\n\r\n\t\t\tmfp.index = 0;\r\n\t\t\tvar items = data.items,\r\n\t\t\t\titem;\r\n\t\t\tfor(i = 0; i < items.length; i++) {\r\n\t\t\t\titem = items[i];\r\n\t\t\t\tif(item.parsed) {\r\n\t\t\t\t\titem = item.el[0];\r\n\t\t\t\t}\r\n\t\t\t\tif(item === data.el[0]) {\r\n\t\t\t\t\tmfp.index = i;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tmfp.items = $.isArray(data.items) ? data.items : [data.items];\r\n\t\t\tmfp.index = data.index || 0;\r\n\t\t}\r\n\r\n\t\t// if popup is already opened - we just update the content\r\n\t\tif(mfp.isOpen) {\r\n\t\t\tmfp.updateItemHTML();\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t\r\n\t\tmfp.types = []; \r\n\t\t_wrapClasses = '';\r\n\t\tif(data.mainEl && data.mainEl.length) {\r\n\t\t\tmfp.ev = data.mainEl.eq(0);\r\n\t\t} else {\r\n\t\t\tmfp.ev = _document;\r\n\t\t}\r\n\r\n\t\tif(data.key) {\r\n\t\t\tif(!mfp.popupsCache[data.key]) {\r\n\t\t\t\tmfp.popupsCache[data.key] = {};\r\n\t\t\t}\r\n\t\t\tmfp.currTemplate = mfp.popupsCache[data.key];\r\n\t\t} else {\r\n\t\t\tmfp.currTemplate = {};\r\n\t\t}\r\n\r\n\r\n\r\n\t\tmfp.st = $.extend(true, {}, $.magnificPopup.defaults, data ); \r\n\t\tmfp.fixedContentPos = mfp.st.fixedContentPos === 'auto' ? !mfp.probablyMobile : mfp.st.fixedContentPos;\r\n\r\n\t\tif(mfp.st.modal) {\r\n\t\t\tmfp.st.closeOnContentClick = false;\r\n\t\t\tmfp.st.closeOnBgClick = false;\r\n\t\t\tmfp.st.showCloseBtn = false;\r\n\t\t\tmfp.st.enableEscapeKey = false;\r\n\t\t}\r\n\t\t\r\n\r\n\t\t// Building markup\r\n\t\t// main containers are created only once\r\n\t\tif(!mfp.bgOverlay) {\r\n\r\n\t\t\t// Dark overlay\r\n\t\t\tmfp.bgOverlay = _getEl('bg').on('click'+EVENT_NS, function() {\r\n\t\t\t\tmfp.close();\r\n\t\t\t});\r\n\r\n\t\t\tmfp.wrap = _getEl('wrap').attr('tabindex', -1).on('click'+EVENT_NS, function(e) {\r\n\t\t\t\tif(mfp._checkIfClose(e.target)) {\r\n\t\t\t\t\tmfp.close();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tmfp.container = _getEl('container', mfp.wrap);\r\n\t\t}\r\n\r\n\t\tmfp.contentContainer = _getEl('content');\r\n\t\tif(mfp.st.preloader) {\r\n\t\t\tmfp.preloader = _getEl('preloader', mfp.container, mfp.st.tLoading);\r\n\t\t}\r\n\r\n\r\n\t\t// Initializing modules\r\n\t\tvar modules = $.magnificPopup.modules;\r\n\t\tfor(i = 0; i < modules.length; i++) {\r\n\t\t\tvar n = modules[i];\r\n\t\t\tn = n.charAt(0).toUpperCase() + n.slice(1);\r\n\t\t\tmfp['init'+n].call(mfp);\r\n\t\t}\r\n\t\t_mfpTrigger('BeforeOpen');\r\n\r\n\r\n\t\tif(mfp.st.showCloseBtn) {\r\n\t\t\t// Close button\r\n\t\t\tif(!mfp.st.closeBtnInside) {\r\n\t\t\t\tmfp.wrap.append( _getCloseBtn() );\r\n\t\t\t} else {\r\n\t\t\t\t_mfpOn(MARKUP_PARSE_EVENT, function(e, template, values, item) {\r\n\t\t\t\t\tvalues.close_replaceWith = _getCloseBtn(item.type);\r\n\t\t\t\t});\r\n\t\t\t\t_wrapClasses += ' mfp-close-btn-in';\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif(mfp.st.alignTop) {\r\n\t\t\t_wrapClasses += ' mfp-align-top';\r\n\t\t}\r\n\r\n\t\r\n\r\n\t\tif(mfp.fixedContentPos) {\r\n\t\t\tmfp.wrap.css({\r\n\t\t\t\toverflow: mfp.st.overflowY,\r\n\t\t\t\toverflowX: 'hidden',\r\n\t\t\t\toverflowY: mfp.st.overflowY\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tmfp.wrap.css({ \r\n\t\t\t\ttop: _window.scrollTop(),\r\n\t\t\t\tposition: 'absolute'\r\n\t\t\t});\r\n\t\t}\r\n\t\tif( mfp.st.fixedBgPos === false || (mfp.st.fixedBgPos === 'auto' && !mfp.fixedContentPos) ) {\r\n\t\t\tmfp.bgOverlay.css({\r\n\t\t\t\theight: _document.height(),\r\n\t\t\t\tposition: 'absolute'\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t\r\n\r\n\t\tif(mfp.st.enableEscapeKey) {\r\n\t\t\t// Close on ESC key\r\n\t\t\t_document.on('keyup' + EVENT_NS, function(e) {\r\n\t\t\t\tif(e.keyCode === 27) {\r\n\t\t\t\t\tmfp.close();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t_window.on('resize' + EVENT_NS, function() {\r\n\t\t\tmfp.updateSize();\r\n\t\t});\r\n\r\n\r\n\t\tif(!mfp.st.closeOnContentClick) {\r\n\t\t\t_wrapClasses += ' mfp-auto-cursor';\r\n\t\t}\r\n\t\t\r\n\t\tif(_wrapClasses)\r\n\t\t\tmfp.wrap.addClass(_wrapClasses);\r\n\r\n\r\n\t\t// this triggers recalculation of layout, so we get it once to not to trigger twice\r\n\t\tvar windowHeight = mfp.wH = _window.height();\r\n\r\n\t\t\r\n\t\tvar windowStyles = {};\r\n\r\n\t\tif( mfp.fixedContentPos ) {\r\n if(mfp._hasScrollBar(windowHeight)){\r\n var s = mfp._getScrollbarSize();\r\n if(s) {\r\n windowStyles.marginRight = s;\r\n }\r\n }\r\n }\r\n\r\n\t\tif(mfp.fixedContentPos) {\r\n\t\t\tif(!mfp.isIE7) {\r\n\t\t\t\twindowStyles.overflow = 'hidden';\r\n\t\t\t} else {\r\n\t\t\t\t// ie7 double-scroll bug\r\n\t\t\t\t$('body, html').css('overflow', 'hidden');\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\r\n\t\t\r\n\t\tvar classesToadd = mfp.st.mainClass;\r\n\t\tif(mfp.isIE7) {\r\n\t\t\tclassesToadd += ' mfp-ie7';\r\n\t\t}\r\n\t\tif(classesToadd) {\r\n\t\t\tmfp._addClassToMFP( classesToadd );\r\n\t\t}\r\n\r\n\t\t// add content\r\n\t\tmfp.updateItemHTML();\r\n\r\n\t\t_mfpTrigger('BuildControls');\r\n\r\n\t\t// remove scrollbar, add margin e.t.c\r\n\t\t$('html').css(windowStyles);\r\n\t\t\r\n\t\t// add everything to DOM\r\n\t\tmfp.bgOverlay.add(mfp.wrap).prependTo( mfp.st.prependTo || $(document.body) );\r\n\r\n\t\t// Save last focused element\r\n\t\tmfp._lastFocusedEl = document.activeElement;\r\n\t\t\r\n\t\t// Wait for next cycle to allow CSS transition\r\n\t\tsetTimeout(function() {\r\n\t\t\t\r\n\t\t\tif(mfp.content) {\r\n\t\t\t\tmfp._addClassToMFP(READY_CLASS);\r\n\t\t\t\tmfp._setFocus();\r\n\t\t\t} else {\r\n\t\t\t\t// if content is not defined (not loaded e.t.c) we add class only for BG\r\n\t\t\t\tmfp.bgOverlay.addClass(READY_CLASS);\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// Trap the focus in popup\r\n\t\t\t_document.on('focusin' + EVENT_NS, mfp._onFocusIn);\r\n\r\n\t\t}, 16);\r\n\r\n\t\tmfp.isOpen = true;\r\n\t\tmfp.updateSize(windowHeight);\r\n\t\t_mfpTrigger(OPEN_EVENT);\r\n\r\n\t\treturn data;\r\n\t},\r\n\r\n\t/**\r\n\t * Closes the popup\r\n\t */\r\n\tclose: function() {\r\n\t\tif(!mfp.isOpen) return;\r\n\t\t_mfpTrigger(BEFORE_CLOSE_EVENT);\r\n\r\n\t\tmfp.isOpen = false;\r\n\t\t// for CSS3 animation\r\n\t\tif(mfp.st.removalDelay && !mfp.isLowIE && mfp.supportsTransition ) {\r\n\t\t\tmfp._addClassToMFP(REMOVING_CLASS);\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\tmfp._close();\r\n\t\t\t}, mfp.st.removalDelay);\r\n\t\t} else {\r\n\t\t\tmfp._close();\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * Helper for close() function\r\n\t */\r\n\t_close: function() {\r\n\t\t_mfpTrigger(CLOSE_EVENT);\r\n\r\n\t\tvar classesToRemove = REMOVING_CLASS + ' ' + READY_CLASS + ' ';\r\n\r\n\t\tmfp.bgOverlay.detach();\r\n\t\tmfp.wrap.detach();\r\n\t\tmfp.container.empty();\r\n\r\n\t\tif(mfp.st.mainClass) {\r\n\t\t\tclassesToRemove += mfp.st.mainClass + ' ';\r\n\t\t}\r\n\r\n\t\tmfp._removeClassFromMFP(classesToRemove);\r\n\r\n\t\tif(mfp.fixedContentPos) {\r\n\t\t\tvar windowStyles = {marginRight: ''};\r\n\t\t\tif(mfp.isIE7) {\r\n\t\t\t\t$('body, html').css('overflow', '');\r\n\t\t\t} else {\r\n\t\t\t\twindowStyles.overflow = '';\r\n\t\t\t}\r\n\t\t\t$('html').css(windowStyles);\r\n\t\t}\r\n\t\t\r\n\t\t_document.off('keyup' + EVENT_NS + ' focusin' + EVENT_NS);\r\n\t\tmfp.ev.off(EVENT_NS);\r\n\r\n\t\t// clean up DOM elements that aren't removed\r\n\t\tmfp.wrap.attr('class', 'mfp-wrap').removeAttr('style');\r\n\t\tmfp.bgOverlay.attr('class', 'mfp-bg');\r\n\t\tmfp.container.attr('class', 'mfp-container');\r\n\r\n\t\t// remove close button from target element\r\n\t\tif(mfp.st.showCloseBtn &&\r\n\t\t(!mfp.st.closeBtnInside || mfp.currTemplate[mfp.currItem.type] === true)) {\r\n\t\t\tif(mfp.currTemplate.closeBtn)\r\n\t\t\t\tmfp.currTemplate.closeBtn.detach();\r\n\t\t}\r\n\r\n\r\n\t\tif(mfp.st.autoFocusLast && mfp._lastFocusedEl) {\r\n\t\t\t$(mfp._lastFocusedEl).focus(); // put tab focus back\r\n\t\t}\r\n\t\tmfp.currItem = null;\t\r\n\t\tmfp.content = null;\r\n\t\tmfp.currTemplate = null;\r\n\t\tmfp.prevHeight = 0;\r\n\r\n\t\t_mfpTrigger(AFTER_CLOSE_EVENT);\r\n\t},\r\n\t\r\n\tupdateSize: function(winHeight) {\r\n\r\n\t\tif(mfp.isIOS) {\r\n\t\t\t// fixes iOS nav bars https://github.com/dimsemenov/Magnific-Popup/issues/2\r\n\t\t\tvar zoomLevel = document.documentElement.clientWidth / window.innerWidth;\r\n\t\t\tvar height = window.innerHeight * zoomLevel;\r\n\t\t\tmfp.wrap.css('height', height);\r\n\t\t\tmfp.wH = height;\r\n\t\t} else {\r\n\t\t\tmfp.wH = winHeight || _window.height();\r\n\t\t}\r\n\t\t// Fixes #84: popup incorrectly positioned with position:relative on body\r\n\t\tif(!mfp.fixedContentPos) {\r\n\t\t\tmfp.wrap.css('height', mfp.wH);\r\n\t\t}\r\n\r\n\t\t_mfpTrigger('Resize');\r\n\r\n\t},\r\n\r\n\t/**\r\n\t * Set content of popup based on current index\r\n\t */\r\n\tupdateItemHTML: function() {\r\n\t\tvar item = mfp.items[mfp.index];\r\n\r\n\t\t// Detach and perform modifications\r\n\t\tmfp.contentContainer.detach();\r\n\r\n\t\tif(mfp.content)\r\n\t\t\tmfp.content.detach();\r\n\r\n\t\tif(!item.parsed) {\r\n\t\t\titem = mfp.parseEl( mfp.index );\r\n\t\t}\r\n\r\n\t\tvar type = item.type;\r\n\r\n\t\t_mfpTrigger('BeforeChange', [mfp.currItem ? mfp.currItem.type : '', type]);\r\n\t\t// BeforeChange event works like so:\r\n\t\t// _mfpOn('BeforeChange', function(e, prevType, newType) { });\r\n\r\n\t\tmfp.currItem = item;\r\n\r\n\t\tif(!mfp.currTemplate[type]) {\r\n\t\t\tvar markup = mfp.st[type] ? mfp.st[type].markup : false;\r\n\r\n\t\t\t// allows to modify markup\r\n\t\t\t_mfpTrigger('FirstMarkupParse', markup);\r\n\r\n\t\t\tif(markup) {\r\n\t\t\t\tmfp.currTemplate[type] = $(markup);\r\n\t\t\t} else {\r\n\t\t\t\t// if there is no markup found we just define that template is parsed\r\n\t\t\t\tmfp.currTemplate[type] = true;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif(_prevContentType && _prevContentType !== item.type) {\r\n\t\t\tmfp.container.removeClass('mfp-'+_prevContentType+'-holder');\r\n\t\t}\r\n\r\n\t\tvar newContent = mfp['get' + type.charAt(0).toUpperCase() + type.slice(1)](item, mfp.currTemplate[type]);\r\n\t\tmfp.appendContent(newContent, type);\r\n\r\n\t\titem.preloaded = true;\r\n\r\n\t\t_mfpTrigger(CHANGE_EVENT, item);\r\n\t\t_prevContentType = item.type;\r\n\r\n\t\t// Append container back after its content changed\r\n\t\tmfp.container.prepend(mfp.contentContainer);\r\n\r\n\t\t_mfpTrigger('AfterChange');\r\n\t},\r\n\r\n\r\n\t/**\r\n\t * Set HTML content of popup\r\n\t */\r\n\tappendContent: function(newContent, type) {\r\n\t\tmfp.content = newContent;\r\n\r\n\t\tif(newContent) {\r\n\t\t\tif(mfp.st.showCloseBtn && mfp.st.closeBtnInside &&\r\n\t\t\t\tmfp.currTemplate[type] === true) {\r\n\t\t\t\t// if there is no markup, we just append close button element inside\r\n\t\t\t\tif(!mfp.content.find('.mfp-close').length) {\r\n\t\t\t\t\tmfp.content.append(_getCloseBtn());\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tmfp.content = newContent;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tmfp.content = '';\r\n\t\t}\r\n\r\n\t\t_mfpTrigger(BEFORE_APPEND_EVENT);\r\n\t\tmfp.container.addClass('mfp-'+type+'-holder');\r\n\r\n\t\tmfp.contentContainer.append(mfp.content);\r\n\t},\r\n\r\n\r\n\t/**\r\n\t * Creates Magnific Popup data object based on given data\r\n\t * @param {int} index Index of item to parse\r\n\t */\r\n\tparseEl: function(index) {\r\n\t\tvar item = mfp.items[index],\r\n\t\t\ttype;\r\n\r\n\t\tif(item.tagName) {\r\n\t\t\titem = { el: $(item) };\r\n\t\t} else {\r\n\t\t\ttype = item.type;\r\n\t\t\titem = { data: item, src: item.src };\r\n\t\t}\r\n\r\n\t\tif(item.el) {\r\n\t\t\tvar types = mfp.types;\r\n\r\n\t\t\t// check for 'mfp-TYPE' class\r\n\t\t\tfor(var i = 0; i < types.length; i++) {\r\n\t\t\t\tif( item.el.hasClass('mfp-'+types[i]) ) {\r\n\t\t\t\t\ttype = types[i];\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\titem.src = item.el.attr('data-mfp-src');\r\n\t\t\tif(!item.src) {\r\n\t\t\t\titem.src = item.el.attr('href');\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\titem.type = type || mfp.st.type || 'inline';\r\n\t\titem.index = index;\r\n\t\titem.parsed = true;\r\n\t\tmfp.items[index] = item;\r\n\t\t_mfpTrigger('ElementParse', item);\r\n\r\n\t\treturn mfp.items[index];\r\n\t},\r\n\r\n\r\n\t/**\r\n\t * Initializes single popup or a group of popups\r\n\t */\r\n\taddGroup: function(el, options) {\r\n\t\tvar eHandler = function(e) {\r\n\t\t\te.mfpEl = this;\r\n\t\t\tmfp._openClick(e, el, options);\r\n\t\t};\r\n\r\n\t\tif(!options) {\r\n\t\t\toptions = {};\r\n\t\t}\r\n\r\n\t\tvar eName = 'click.magnificPopup';\r\n\t\toptions.mainEl = el;\r\n\r\n\t\tif(options.items) {\r\n\t\t\toptions.isObj = true;\r\n\t\t\tel.off(eName).on(eName, eHandler);\r\n\t\t} else {\r\n\t\t\toptions.isObj = false;\r\n\t\t\tif(options.delegate) {\r\n\t\t\t\tel.off(eName).on(eName, options.delegate , eHandler);\r\n\t\t\t} else {\r\n\t\t\t\toptions.items = el;\r\n\t\t\t\tel.off(eName).on(eName, eHandler);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\t_openClick: function(e, el, options) {\r\n\t\tvar midClick = options.midClick !== undefined ? options.midClick : $.magnificPopup.defaults.midClick;\r\n\r\n\r\n\t\tif(!midClick && ( e.which === 2 || e.ctrlKey || e.metaKey || e.altKey || e.shiftKey ) ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar disableOn = options.disableOn !== undefined ? options.disableOn : $.magnificPopup.defaults.disableOn;\r\n\r\n\t\tif(disableOn) {\r\n\t\t\tif($.isFunction(disableOn)) {\r\n\t\t\t\tif( !disableOn.call(mfp) ) {\r\n\t\t\t\t\treturn true;\r\n\t\t\t\t}\r\n\t\t\t} else { // else it's number\r\n\t\t\t\tif( _window.width() < disableOn ) {\r\n\t\t\t\t\treturn true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif(e.type) {\r\n\t\t\te.preventDefault();\r\n\r\n\t\t\t// This will prevent popup from closing if element is inside and popup is already opened\r\n\t\t\tif(mfp.isOpen) {\r\n\t\t\t\te.stopPropagation();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\toptions.el = $(e.mfpEl);\r\n\t\tif(options.delegate) {\r\n\t\t\toptions.items = el.find(options.delegate);\r\n\t\t}\r\n\t\tmfp.open(options);\r\n\t},\r\n\r\n\r\n\t/**\r\n\t * Updates text on preloader\r\n\t */\r\n\tupdateStatus: function(status, text) {\r\n\r\n\t\tif(mfp.preloader) {\r\n\t\t\tif(_prevStatus !== status) {\r\n\t\t\t\tmfp.container.removeClass('mfp-s-'+_prevStatus);\r\n\t\t\t}\r\n\r\n\t\t\tif(!text && status === 'loading') {\r\n\t\t\t\ttext = mfp.st.tLoading;\r\n\t\t\t}\r\n\r\n\t\t\tvar data = {\r\n\t\t\t\tstatus: status,\r\n\t\t\t\ttext: text\r\n\t\t\t};\r\n\t\t\t// allows to modify status\r\n\t\t\t_mfpTrigger('UpdateStatus', data);\r\n\r\n\t\t\tstatus = data.status;\r\n\t\t\ttext = data.text;\r\n\r\n\t\t\tmfp.preloader.html(text);\r\n\r\n\t\t\tmfp.preloader.find('a').on('click', function(e) {\r\n\t\t\t\te.stopImmediatePropagation();\r\n\t\t\t});\r\n\r\n\t\t\tmfp.container.addClass('mfp-s-'+status);\r\n\t\t\t_prevStatus = status;\r\n\t\t}\r\n\t},\r\n\r\n\r\n\t/*\r\n\t\t\"Private\" helpers that aren't private at all\r\n\t */\r\n\t// Check to close popup or not\r\n\t// \"target\" is an element that was clicked\r\n\t_checkIfClose: function(target) {\r\n\r\n\t\tif($(target).hasClass(PREVENT_CLOSE_CLASS)) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar closeOnContent = mfp.st.closeOnContentClick;\r\n\t\tvar closeOnBg = mfp.st.closeOnBgClick;\r\n\r\n\t\tif(closeOnContent && closeOnBg) {\r\n\t\t\treturn true;\r\n\t\t} else {\r\n\r\n\t\t\t// We close the popup if click is on close button or on preloader. Or if there is no content.\r\n\t\t\tif(!mfp.content || $(target).hasClass('mfp-close') || (mfp.preloader && target === mfp.preloader[0]) ) {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\r\n\t\t\t// if click is outside the content\r\n\t\t\tif( (target !== mfp.content[0] && !$.contains(mfp.content[0], target)) ) {\r\n\t\t\t\tif(closeOnBg) {\r\n\t\t\t\t\t// last check, if the clicked element is in DOM, (in case it's removed onclick)\r\n\t\t\t\t\tif( $.contains(document, target) ) {\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} else if(closeOnContent) {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\r\n\t\t}\r\n\t\treturn false;\r\n\t},\r\n\t_addClassToMFP: function(cName) {\r\n\t\tmfp.bgOverlay.addClass(cName);\r\n\t\tmfp.wrap.addClass(cName);\r\n\t},\r\n\t_removeClassFromMFP: function(cName) {\r\n\t\tthis.bgOverlay.removeClass(cName);\r\n\t\tmfp.wrap.removeClass(cName);\r\n\t},\r\n\t_hasScrollBar: function(winHeight) {\r\n\t\treturn ( (mfp.isIE7 ? _document.height() : document.body.scrollHeight) > (winHeight || _window.height()) );\r\n\t},\r\n\t_setFocus: function() {\r\n\t\t(mfp.st.focus ? mfp.content.find(mfp.st.focus).eq(0) : mfp.wrap).focus();\r\n\t},\r\n\t_onFocusIn: function(e) {\r\n\t\tif( e.target !== mfp.wrap[0] && !$.contains(mfp.wrap[0], e.target) ) {\r\n\t\t\tmfp._setFocus();\r\n\t\t\treturn false;\r\n\t\t}\r\n\t},\r\n\t_parseMarkup: function(template, values, item) {\r\n\t\tvar arr;\r\n\t\tif(item.data) {\r\n\t\t\tvalues = $.extend(item.data, values);\r\n\t\t}\r\n\t\t_mfpTrigger(MARKUP_PARSE_EVENT, [template, values, item] );\r\n\r\n\t\t$.each(values, function(key, value) {\r\n\t\t\tif(value === undefined || value === false) {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t\tarr = key.split('_');\r\n\t\t\tif(arr.length > 1) {\r\n\t\t\t\tvar el = template.find(EVENT_NS + '-'+arr[0]);\r\n\r\n\t\t\t\tif(el.length > 0) {\r\n\t\t\t\t\tvar attr = arr[1];\r\n\t\t\t\t\tif(attr === 'replaceWith') {\r\n\t\t\t\t\t\tif(el[0] !== value[0]) {\r\n\t\t\t\t\t\t\tel.replaceWith(value);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if(attr === 'img') {\r\n\t\t\t\t\t\tif(el.is('img')) {\r\n\t\t\t\t\t\t\tel.attr('src', value);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tel.replaceWith( $('').attr('src', value).attr('class', el.attr('class')) );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tel.attr(arr[1], value);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t} else {\r\n\t\t\t\ttemplate.find(EVENT_NS + '-'+key).html(value);\r\n\t\t\t}\r\n\t\t});\r\n\t},\r\n\r\n\t_getScrollbarSize: function() {\r\n\t\t// thx David\r\n\t\tif(mfp.scrollbarSize === undefined) {\r\n\t\t\tvar scrollDiv = document.createElement(\"div\");\r\n\t\t\tscrollDiv.style.cssText = 'width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;';\r\n\t\t\tdocument.body.appendChild(scrollDiv);\r\n\t\t\tmfp.scrollbarSize = scrollDiv.offsetWidth - scrollDiv.clientWidth;\r\n\t\t\tdocument.body.removeChild(scrollDiv);\r\n\t\t}\r\n\t\treturn mfp.scrollbarSize;\r\n\t}\r\n\r\n}; /* MagnificPopup core prototype end */\r\n\r\n\r\n\r\n\r\n/**\r\n * Public static functions\r\n */\r\n$.magnificPopup = {\r\n\tinstance: null,\r\n\tproto: MagnificPopup.prototype,\r\n\tmodules: [],\r\n\r\n\topen: function(options, index) {\r\n\t\t_checkInstance();\r\n\r\n\t\tif(!options) {\r\n\t\t\toptions = {};\r\n\t\t} else {\r\n\t\t\toptions = $.extend(true, {}, options);\r\n\t\t}\r\n\r\n\t\toptions.isObj = true;\r\n\t\toptions.index = index || 0;\r\n\t\treturn this.instance.open(options);\r\n\t},\r\n\r\n\tclose: function() {\r\n\t\treturn $.magnificPopup.instance && $.magnificPopup.instance.close();\r\n\t},\r\n\r\n\tregisterModule: function(name, module) {\r\n\t\tif(module.options) {\r\n\t\t\t$.magnificPopup.defaults[name] = module.options;\r\n\t\t}\r\n\t\t$.extend(this.proto, module.proto);\r\n\t\tthis.modules.push(name);\r\n\t},\r\n\r\n\tdefaults: {\r\n\r\n\t\t// Info about options is in docs:\r\n\t\t// http://dimsemenov.com/plugins/magnific-popup/documentation.html#options\r\n\r\n\t\tdisableOn: 0,\r\n\r\n\t\tkey: null,\r\n\r\n\t\tmidClick: false,\r\n\r\n\t\tmainClass: '',\r\n\r\n\t\tpreloader: true,\r\n\r\n\t\tfocus: '', // CSS selector of input to focus after popup is opened\r\n\r\n\t\tcloseOnContentClick: false,\r\n\r\n\t\tcloseOnBgClick: true,\r\n\r\n\t\tcloseBtnInside: true,\r\n\r\n\t\tshowCloseBtn: true,\r\n\r\n\t\tenableEscapeKey: true,\r\n\r\n\t\tmodal: false,\r\n\r\n\t\talignTop: false,\r\n\r\n\t\tremovalDelay: 0,\r\n\r\n\t\tprependTo: null,\r\n\r\n\t\tfixedContentPos: 'auto',\r\n\r\n\t\tfixedBgPos: 'auto',\r\n\r\n\t\toverflowY: 'auto',\r\n\r\n\t\tcloseMarkup: '',\r\n\r\n\t\ttClose: 'Close (Esc)',\r\n\r\n\t\ttLoading: 'Loading...',\r\n\r\n\t\tautoFocusLast: true\r\n\r\n\t}\r\n};\r\n\r\n\r\n\r\n$.fn.magnificPopup = function(options) {\r\n\t_checkInstance();\r\n\r\n\tvar jqEl = $(this);\r\n\r\n\t// We call some API method of first param is a string\r\n\tif (typeof options === \"string\" ) {\r\n\r\n\t\tif(options === 'open') {\r\n\t\t\tvar items,\r\n\t\t\t\titemOpts = _isJQ ? jqEl.data('magnificPopup') : jqEl[0].magnificPopup,\r\n\t\t\t\tindex = parseInt(arguments[1], 10) || 0;\r\n\r\n\t\t\tif(itemOpts.items) {\r\n\t\t\t\titems = itemOpts.items[index];\r\n\t\t\t} else {\r\n\t\t\t\titems = jqEl;\r\n\t\t\t\tif(itemOpts.delegate) {\r\n\t\t\t\t\titems = items.find(itemOpts.delegate);\r\n\t\t\t\t}\r\n\t\t\t\titems = items.eq( index );\r\n\t\t\t}\r\n\t\t\tmfp._openClick({mfpEl:items}, jqEl, itemOpts);\r\n\t\t} else {\r\n\t\t\tif(mfp.isOpen)\r\n\t\t\t\tmfp[options].apply(mfp, Array.prototype.slice.call(arguments, 1));\r\n\t\t}\r\n\r\n\t} else {\r\n\t\t// clone options obj\r\n\t\toptions = $.extend(true, {}, options);\r\n\r\n\t\t/*\r\n\t\t * As Zepto doesn't support .data() method for objects\r\n\t\t * and it works only in normal browsers\r\n\t\t * we assign \"options\" object directly to the DOM element. FTW!\r\n\t\t */\r\n\t\tif(_isJQ) {\r\n\t\t\tjqEl.data('magnificPopup', options);\r\n\t\t} else {\r\n\t\t\tjqEl[0].magnificPopup = options;\r\n\t\t}\r\n\r\n\t\tmfp.addGroup(jqEl, options);\r\n\r\n\t}\r\n\treturn jqEl;\r\n};\r\n\r\n/*>>core*/\r\n\r\n/*>>inline*/\r\n\r\nvar INLINE_NS = 'inline',\r\n\t_hiddenClass,\r\n\t_inlinePlaceholder,\r\n\t_lastInlineElement,\r\n\t_putInlineElementsBack = function() {\r\n\t\tif(_lastInlineElement) {\r\n\t\t\t_inlinePlaceholder.after( _lastInlineElement.addClass(_hiddenClass) ).detach();\r\n\t\t\t_lastInlineElement = null;\r\n\t\t}\r\n\t};\r\n\r\n$.magnificPopup.registerModule(INLINE_NS, {\r\n\toptions: {\r\n\t\thiddenClass: 'hide', // will be appended with `mfp-` prefix\r\n\t\tmarkup: '',\r\n\t\ttNotFound: 'Content not found'\r\n\t},\r\n\tproto: {\r\n\r\n\t\tinitInline: function() {\r\n\t\t\tmfp.types.push(INLINE_NS);\r\n\r\n\t\t\t_mfpOn(CLOSE_EVENT+'.'+INLINE_NS, function() {\r\n\t\t\t\t_putInlineElementsBack();\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInline: function(item, template) {\r\n\r\n\t\t\t_putInlineElementsBack();\r\n\r\n\t\t\tif(item.src) {\r\n\t\t\t\tvar inlineSt = mfp.st.inline,\r\n\t\t\t\t\tel = $(item.src);\r\n\r\n\t\t\t\tif(el.length) {\r\n\r\n\t\t\t\t\t// If target element has parent - we replace it with placeholder and put it back after popup is closed\r\n\t\t\t\t\tvar parent = el[0].parentNode;\r\n\t\t\t\t\tif(parent && parent.tagName) {\r\n\t\t\t\t\t\tif(!_inlinePlaceholder) {\r\n\t\t\t\t\t\t\t_hiddenClass = inlineSt.hiddenClass;\r\n\t\t\t\t\t\t\t_inlinePlaceholder = _getEl(_hiddenClass);\r\n\t\t\t\t\t\t\t_hiddenClass = 'mfp-'+_hiddenClass;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t// replace target inline element with placeholder\r\n\t\t\t\t\t\t_lastInlineElement = el.after(_inlinePlaceholder).detach().removeClass(_hiddenClass);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tmfp.updateStatus('ready');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tmfp.updateStatus('error', inlineSt.tNotFound);\r\n\t\t\t\t\tel = $('
    ');\r\n\t\t\t\t}\r\n\r\n\t\t\t\titem.inlineElement = el;\r\n\t\t\t\treturn el;\r\n\t\t\t}\r\n\r\n\t\t\tmfp.updateStatus('ready');\r\n\t\t\tmfp._parseMarkup(template, {}, item);\r\n\t\t\treturn template;\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/*>>inline*/\r\n\r\n/*>>ajax*/\r\nvar AJAX_NS = 'ajax',\r\n\t_ajaxCur,\r\n\t_removeAjaxCursor = function() {\r\n\t\tif(_ajaxCur) {\r\n\t\t\t$(document.body).removeClass(_ajaxCur);\r\n\t\t}\r\n\t},\r\n\t_destroyAjaxRequest = function() {\r\n\t\t_removeAjaxCursor();\r\n\t\tif(mfp.req) {\r\n\t\t\tmfp.req.abort();\r\n\t\t}\r\n\t};\r\n\r\n$.magnificPopup.registerModule(AJAX_NS, {\r\n\r\n\toptions: {\r\n\t\tsettings: null,\r\n\t\tcursor: 'mfp-ajax-cur',\r\n\t\ttError: 'The content could not be loaded.'\r\n\t},\r\n\r\n\tproto: {\r\n\t\tinitAjax: function() {\r\n\t\t\tmfp.types.push(AJAX_NS);\r\n\t\t\t_ajaxCur = mfp.st.ajax.cursor;\r\n\r\n\t\t\t_mfpOn(CLOSE_EVENT+'.'+AJAX_NS, _destroyAjaxRequest);\r\n\t\t\t_mfpOn('BeforeChange.' + AJAX_NS, _destroyAjaxRequest);\r\n\t\t},\r\n\t\tgetAjax: function(item) {\r\n\r\n\t\t\tif(_ajaxCur) {\r\n\t\t\t\t$(document.body).addClass(_ajaxCur);\r\n\t\t\t}\r\n\r\n\t\t\tmfp.updateStatus('loading');\r\n\r\n\t\t\tvar opts = $.extend({\r\n\t\t\t\turl: item.src,\r\n\t\t\t\tsuccess: function(data, textStatus, jqXHR) {\r\n\t\t\t\t\tvar temp = {\r\n\t\t\t\t\t\tdata:data,\r\n\t\t\t\t\t\txhr:jqXHR\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\t_mfpTrigger('ParseAjax', temp);\r\n\r\n\t\t\t\t\tmfp.appendContent( $(temp.data), AJAX_NS );\r\n\r\n\t\t\t\t\titem.finished = true;\r\n\r\n\t\t\t\t\t_removeAjaxCursor();\r\n\r\n\t\t\t\t\tmfp._setFocus();\r\n\r\n\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\tmfp.wrap.addClass(READY_CLASS);\r\n\t\t\t\t\t}, 16);\r\n\r\n\t\t\t\t\tmfp.updateStatus('ready');\r\n\r\n\t\t\t\t\t_mfpTrigger('AjaxContentAdded');\r\n\t\t\t\t},\r\n\t\t\t\terror: function() {\r\n\t\t\t\t\t_removeAjaxCursor();\r\n\t\t\t\t\titem.finished = item.loadError = true;\r\n\t\t\t\t\tmfp.updateStatus('error', mfp.st.ajax.tError.replace('%url%', item.src));\r\n\t\t\t\t}\r\n\t\t\t}, mfp.st.ajax.settings);\r\n\r\n\t\t\tmfp.req = $.ajax(opts);\r\n\r\n\t\t\treturn '';\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/*>>ajax*/\r\n\r\n/*>>image*/\r\nvar _imgInterval,\r\n\t_getTitle = function(item) {\r\n\t\tif(item.data && item.data.title !== undefined)\r\n\t\t\treturn item.data.title;\r\n\r\n\t\tvar src = mfp.st.image.titleSrc;\r\n\r\n\t\tif(src) {\r\n\t\t\tif($.isFunction(src)) {\r\n\t\t\t\treturn src.call(mfp, item);\r\n\t\t\t} else if(item.el) {\r\n\t\t\t\treturn item.el.attr(src) || '';\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn '';\r\n\t};\r\n\r\n$.magnificPopup.registerModule('image', {\r\n\r\n\toptions: {\r\n\t\tmarkup: '
    '+\r\n\t\t\t\t\t'
    '+\r\n\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t'
    '+\r\n\t\t\t\t'
    ',\r\n\t\tcursor: 'mfp-zoom-out-cur',\r\n\t\ttitleSrc: 'title',\r\n\t\tverticalFit: true,\r\n\t\ttError: 'The image could not be loaded.'\r\n\t},\r\n\r\n\tproto: {\r\n\t\tinitImage: function() {\r\n\t\t\tvar imgSt = mfp.st.image,\r\n\t\t\t\tns = '.image';\r\n\r\n\t\t\tmfp.types.push('image');\r\n\r\n\t\t\t_mfpOn(OPEN_EVENT+ns, function() {\r\n\t\t\t\tif(mfp.currItem.type === 'image' && imgSt.cursor) {\r\n\t\t\t\t\t$(document.body).addClass(imgSt.cursor);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t_mfpOn(CLOSE_EVENT+ns, function() {\r\n\t\t\t\tif(imgSt.cursor) {\r\n\t\t\t\t\t$(document.body).removeClass(imgSt.cursor);\r\n\t\t\t\t}\r\n\t\t\t\t_window.off('resize' + EVENT_NS);\r\n\t\t\t});\r\n\r\n\t\t\t_mfpOn('Resize'+ns, mfp.resizeImage);\r\n\t\t\tif(mfp.isLowIE) {\r\n\t\t\t\t_mfpOn('AfterChange', mfp.resizeImage);\r\n\t\t\t}\r\n\t\t},\r\n\t\tresizeImage: function() {\r\n\t\t\tvar item = mfp.currItem;\r\n\t\t\tif(!item || !item.img) return;\r\n\r\n\t\t\tif(mfp.st.image.verticalFit) {\r\n\t\t\t\tvar decr = 0;\r\n\t\t\t\t// fix box-sizing in ie7/8\r\n\t\t\t\tif(mfp.isLowIE) {\r\n\t\t\t\t\tdecr = parseInt(item.img.css('padding-top'), 10) + parseInt(item.img.css('padding-bottom'),10);\r\n\t\t\t\t}\r\n\t\t\t\titem.img.css('max-height', mfp.wH-decr);\r\n\t\t\t}\r\n\t\t},\r\n\t\t_onImageHasSize: function(item) {\r\n\t\t\tif(item.img) {\r\n\r\n\t\t\t\titem.hasSize = true;\r\n\r\n\t\t\t\tif(_imgInterval) {\r\n\t\t\t\t\tclearInterval(_imgInterval);\r\n\t\t\t\t}\r\n\r\n\t\t\t\titem.isCheckingImgSize = false;\r\n\r\n\t\t\t\t_mfpTrigger('ImageHasSize', item);\r\n\r\n\t\t\t\tif(item.imgHidden) {\r\n\t\t\t\t\tif(mfp.content)\r\n\t\t\t\t\t\tmfp.content.removeClass('mfp-loading');\r\n\r\n\t\t\t\t\titem.imgHidden = false;\r\n\t\t\t\t}\r\n\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Function that loops until the image has size to display elements that rely on it asap\r\n\t\t */\r\n\t\tfindImageSize: function(item) {\r\n\r\n\t\t\tvar counter = 0,\r\n\t\t\t\timg = item.img[0],\r\n\t\t\t\tmfpSetInterval = function(delay) {\r\n\r\n\t\t\t\t\tif(_imgInterval) {\r\n\t\t\t\t\t\tclearInterval(_imgInterval);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// decelerating interval that checks for size of an image\r\n\t\t\t\t\t_imgInterval = setInterval(function() {\r\n\t\t\t\t\t\tif(img.naturalWidth > 0) {\r\n\t\t\t\t\t\t\tmfp._onImageHasSize(item);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif(counter > 200) {\r\n\t\t\t\t\t\t\tclearInterval(_imgInterval);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tcounter++;\r\n\t\t\t\t\t\tif(counter === 3) {\r\n\t\t\t\t\t\t\tmfpSetInterval(10);\r\n\t\t\t\t\t\t} else if(counter === 40) {\r\n\t\t\t\t\t\t\tmfpSetInterval(50);\r\n\t\t\t\t\t\t} else if(counter === 100) {\r\n\t\t\t\t\t\t\tmfpSetInterval(500);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, delay);\r\n\t\t\t\t};\r\n\r\n\t\t\tmfpSetInterval(1);\r\n\t\t},\r\n\r\n\t\tgetImage: function(item, template) {\r\n\r\n\t\t\tvar guard = 0,\r\n\r\n\t\t\t\t// image load complete handler\r\n\t\t\t\tonLoadComplete = function() {\r\n\t\t\t\t\tif(item) {\r\n\t\t\t\t\t\tif (item.img[0].complete) {\r\n\t\t\t\t\t\t\titem.img.off('.mfploader');\r\n\r\n\t\t\t\t\t\t\tif(item === mfp.currItem){\r\n\t\t\t\t\t\t\t\tmfp._onImageHasSize(item);\r\n\r\n\t\t\t\t\t\t\t\tmfp.updateStatus('ready');\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\titem.hasSize = true;\r\n\t\t\t\t\t\t\titem.loaded = true;\r\n\r\n\t\t\t\t\t\t\t_mfpTrigger('ImageLoadComplete');\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t// if image complete check fails 200 times (20 sec), we assume that there was an error.\r\n\t\t\t\t\t\t\tguard++;\r\n\t\t\t\t\t\t\tif(guard < 200) {\r\n\t\t\t\t\t\t\t\tsetTimeout(onLoadComplete,100);\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tonLoadError();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// image error handler\r\n\t\t\t\tonLoadError = function() {\r\n\t\t\t\t\tif(item) {\r\n\t\t\t\t\t\titem.img.off('.mfploader');\r\n\t\t\t\t\t\tif(item === mfp.currItem){\r\n\t\t\t\t\t\t\tmfp._onImageHasSize(item);\r\n\t\t\t\t\t\t\tmfp.updateStatus('error', imgSt.tError.replace('%url%', item.src) );\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\titem.hasSize = true;\r\n\t\t\t\t\t\titem.loaded = true;\r\n\t\t\t\t\t\titem.loadError = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\timgSt = mfp.st.image;\r\n\r\n\r\n\t\t\tvar el = template.find('.mfp-img');\r\n\t\t\tif(el.length) {\r\n\t\t\t\tvar img = document.createElement('img');\r\n\t\t\t\timg.className = 'mfp-img';\r\n\t\t\t\tif(item.el && item.el.find('img').length) {\r\n\t\t\t\t\timg.alt = item.el.find('img').attr('alt');\r\n\t\t\t\t}\r\n\t\t\t\titem.img = $(img).on('load.mfploader', onLoadComplete).on('error.mfploader', onLoadError);\r\n\t\t\t\timg.src = item.src;\r\n\r\n\t\t\t\t// without clone() \"error\" event is not firing when IMG is replaced by new IMG\r\n\t\t\t\t// TODO: find a way to avoid such cloning\r\n\t\t\t\tif(el.is('img')) {\r\n\t\t\t\t\titem.img = item.img.clone();\r\n\t\t\t\t}\r\n\r\n\t\t\t\timg = item.img[0];\r\n\t\t\t\tif(img.naturalWidth > 0) {\r\n\t\t\t\t\titem.hasSize = true;\r\n\t\t\t\t} else if(!img.width) {\r\n\t\t\t\t\titem.hasSize = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tmfp._parseMarkup(template, {\r\n\t\t\t\ttitle: _getTitle(item),\r\n\t\t\t\timg_replaceWith: item.img\r\n\t\t\t}, item);\r\n\r\n\t\t\tmfp.resizeImage();\r\n\r\n\t\t\tif(item.hasSize) {\r\n\t\t\t\tif(_imgInterval) clearInterval(_imgInterval);\r\n\r\n\t\t\t\tif(item.loadError) {\r\n\t\t\t\t\ttemplate.addClass('mfp-loading');\r\n\t\t\t\t\tmfp.updateStatus('error', imgSt.tError.replace('%url%', item.src) );\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttemplate.removeClass('mfp-loading');\r\n\t\t\t\t\tmfp.updateStatus('ready');\r\n\t\t\t\t}\r\n\t\t\t\treturn template;\r\n\t\t\t}\r\n\r\n\t\t\tmfp.updateStatus('loading');\r\n\t\t\titem.loading = true;\r\n\r\n\t\t\tif(!item.hasSize) {\r\n\t\t\t\titem.imgHidden = true;\r\n\t\t\t\ttemplate.addClass('mfp-loading');\r\n\t\t\t\tmfp.findImageSize(item);\r\n\t\t\t}\r\n\r\n\t\t\treturn template;\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/*>>image*/\r\n\r\n/*>>zoom*/\r\nvar hasMozTransform,\r\n\tgetHasMozTransform = function() {\r\n\t\tif(hasMozTransform === undefined) {\r\n\t\t\thasMozTransform = document.createElement('p').style.MozTransform !== undefined;\r\n\t\t}\r\n\t\treturn hasMozTransform;\r\n\t};\r\n\r\n$.magnificPopup.registerModule('zoom', {\r\n\r\n\toptions: {\r\n\t\tenabled: false,\r\n\t\teasing: 'ease-in-out',\r\n\t\tduration: 300,\r\n\t\topener: function(element) {\r\n\t\t\treturn element.is('img') ? element : element.find('img');\r\n\t\t}\r\n\t},\r\n\r\n\tproto: {\r\n\r\n\t\tinitZoom: function() {\r\n\t\t\tvar zoomSt = mfp.st.zoom,\r\n\t\t\t\tns = '.zoom',\r\n\t\t\t\timage;\r\n\r\n\t\t\tif(!zoomSt.enabled || !mfp.supportsTransition) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tvar duration = zoomSt.duration,\r\n\t\t\t\tgetElToAnimate = function(image) {\r\n\t\t\t\t\tvar newImg = image.clone().removeAttr('style').removeAttr('class').addClass('mfp-animated-image'),\r\n\t\t\t\t\t\ttransition = 'all '+(zoomSt.duration/1000)+'s ' + zoomSt.easing,\r\n\t\t\t\t\t\tcssObj = {\r\n\t\t\t\t\t\t\tposition: 'fixed',\r\n\t\t\t\t\t\t\tzIndex: 9999,\r\n\t\t\t\t\t\t\tleft: 0,\r\n\t\t\t\t\t\t\ttop: 0,\r\n\t\t\t\t\t\t\t'-webkit-backface-visibility': 'hidden'\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tt = 'transition';\r\n\r\n\t\t\t\t\tcssObj['-webkit-'+t] = cssObj['-moz-'+t] = cssObj['-o-'+t] = cssObj[t] = transition;\r\n\r\n\t\t\t\t\tnewImg.css(cssObj);\r\n\t\t\t\t\treturn newImg;\r\n\t\t\t\t},\r\n\t\t\t\tshowMainContent = function() {\r\n\t\t\t\t\tmfp.content.css('visibility', 'visible');\r\n\t\t\t\t},\r\n\t\t\t\topenTimeout,\r\n\t\t\t\tanimatedImg;\r\n\r\n\t\t\t_mfpOn('BuildControls'+ns, function() {\r\n\t\t\t\tif(mfp._allowZoom()) {\r\n\r\n\t\t\t\t\tclearTimeout(openTimeout);\r\n\t\t\t\t\tmfp.content.css('visibility', 'hidden');\r\n\r\n\t\t\t\t\t// Basically, all code below does is clones existing image, puts in on top of the current one and animated it\r\n\r\n\t\t\t\t\timage = mfp._getItemToZoom();\r\n\r\n\t\t\t\t\tif(!image) {\r\n\t\t\t\t\t\tshowMainContent();\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tanimatedImg = getElToAnimate(image);\r\n\r\n\t\t\t\t\tanimatedImg.css( mfp._getOffset() );\r\n\r\n\t\t\t\t\tmfp.wrap.append(animatedImg);\r\n\r\n\t\t\t\t\topenTimeout = setTimeout(function() {\r\n\t\t\t\t\t\tanimatedImg.css( mfp._getOffset( true ) );\r\n\t\t\t\t\t\topenTimeout = setTimeout(function() {\r\n\r\n\t\t\t\t\t\t\tshowMainContent();\r\n\r\n\t\t\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\t\t\tanimatedImg.remove();\r\n\t\t\t\t\t\t\t\timage = animatedImg = null;\r\n\t\t\t\t\t\t\t\t_mfpTrigger('ZoomAnimationEnded');\r\n\t\t\t\t\t\t\t}, 16); // avoid blink when switching images\r\n\r\n\t\t\t\t\t\t}, duration); // this timeout equals animation duration\r\n\r\n\t\t\t\t\t}, 16); // by adding this timeout we avoid short glitch at the beginning of animation\r\n\r\n\r\n\t\t\t\t\t// Lots of timeouts...\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t_mfpOn(BEFORE_CLOSE_EVENT+ns, function() {\r\n\t\t\t\tif(mfp._allowZoom()) {\r\n\r\n\t\t\t\t\tclearTimeout(openTimeout);\r\n\r\n\t\t\t\t\tmfp.st.removalDelay = duration;\r\n\r\n\t\t\t\t\tif(!image) {\r\n\t\t\t\t\t\timage = mfp._getItemToZoom();\r\n\t\t\t\t\t\tif(!image) {\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tanimatedImg = getElToAnimate(image);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tanimatedImg.css( mfp._getOffset(true) );\r\n\t\t\t\t\tmfp.wrap.append(animatedImg);\r\n\t\t\t\t\tmfp.content.css('visibility', 'hidden');\r\n\r\n\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\tanimatedImg.css( mfp._getOffset() );\r\n\t\t\t\t\t}, 16);\r\n\t\t\t\t}\r\n\r\n\t\t\t});\r\n\r\n\t\t\t_mfpOn(CLOSE_EVENT+ns, function() {\r\n\t\t\t\tif(mfp._allowZoom()) {\r\n\t\t\t\t\tshowMainContent();\r\n\t\t\t\t\tif(animatedImg) {\r\n\t\t\t\t\t\tanimatedImg.remove();\r\n\t\t\t\t\t}\r\n\t\t\t\t\timage = null;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_allowZoom: function() {\r\n\t\t\treturn mfp.currItem.type === 'image';\r\n\t\t},\r\n\r\n\t\t_getItemToZoom: function() {\r\n\t\t\tif(mfp.currItem.hasSize) {\r\n\t\t\t\treturn mfp.currItem.img;\r\n\t\t\t} else {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t// Get element postion relative to viewport\r\n\t\t_getOffset: function(isLarge) {\r\n\t\t\tvar el;\r\n\t\t\tif(isLarge) {\r\n\t\t\t\tel = mfp.currItem.img;\r\n\t\t\t} else {\r\n\t\t\t\tel = mfp.st.zoom.opener(mfp.currItem.el || mfp.currItem);\r\n\t\t\t}\r\n\r\n\t\t\tvar offset = el.offset();\r\n\t\t\tvar paddingTop = parseInt(el.css('padding-top'),10);\r\n\t\t\tvar paddingBottom = parseInt(el.css('padding-bottom'),10);\r\n\t\t\toffset.top -= ( $(window).scrollTop() - paddingTop );\r\n\r\n\r\n\t\t\t/*\r\n\r\n\t\t\tAnimating left + top + width/height looks glitchy in Firefox, but perfect in Chrome. And vice-versa.\r\n\r\n\t\t\t */\r\n\t\t\tvar obj = {\r\n\t\t\t\twidth: el.width(),\r\n\t\t\t\t// fix Zepto height+padding issue\r\n\t\t\t\theight: (_isJQ ? el.innerHeight() : el[0].offsetHeight) - paddingBottom - paddingTop\r\n\t\t\t};\r\n\r\n\t\t\t// I hate to do this, but there is no another option\r\n\t\t\tif( getHasMozTransform() ) {\r\n\t\t\t\tobj['-moz-transform'] = obj['transform'] = 'translate(' + offset.left + 'px,' + offset.top + 'px)';\r\n\t\t\t} else {\r\n\t\t\t\tobj.left = offset.left;\r\n\t\t\t\tobj.top = offset.top;\r\n\t\t\t}\r\n\t\t\treturn obj;\r\n\t\t}\r\n\r\n\t}\r\n});\r\n\r\n\r\n\r\n/*>>zoom*/\r\n\r\n/*>>iframe*/\r\n\r\nvar IFRAME_NS = 'iframe',\r\n\t_emptyPage = '//about:blank',\r\n\r\n\t_fixIframeBugs = function(isShowing) {\r\n\t\tif(mfp.currTemplate[IFRAME_NS]) {\r\n\t\t\tvar el = mfp.currTemplate[IFRAME_NS].find('iframe');\r\n\t\t\tif(el.length) {\r\n\t\t\t\t// reset src after the popup is closed to avoid \"video keeps playing after popup is closed\" bug\r\n\t\t\t\tif(!isShowing) {\r\n\t\t\t\t\tel[0].src = _emptyPage;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// IE8 black screen bug fix\r\n\t\t\t\tif(mfp.isIE8) {\r\n\t\t\t\t\tel.css('display', isShowing ? 'block' : 'none');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n$.magnificPopup.registerModule(IFRAME_NS, {\r\n\r\n\toptions: {\r\n\t\tmarkup: '
    '+\r\n\t\t\t\t\t'
    '+\r\n\t\t\t\t\t''+\r\n\t\t\t\t'
    ',\r\n\r\n\t\tsrcAction: 'iframe_src',\r\n\r\n\t\t// we don't care and support only one default type of URL by default\r\n\t\tpatterns: {\r\n\t\t\tyoutube: {\r\n\t\t\t\tindex: 'youtube.com',\r\n\t\t\t\tid: 'v=',\r\n\t\t\t\tsrc: '//www.youtube.com/embed/%id%?autoplay=1'\r\n\t\t\t},\r\n\t\t\tvimeo: {\r\n\t\t\t\tindex: 'vimeo.com/',\r\n\t\t\t\tid: '/',\r\n\t\t\t\tsrc: '//player.vimeo.com/video/%id%?autoplay=1'\r\n\t\t\t},\r\n\t\t\tgmaps: {\r\n\t\t\t\tindex: '//maps.google.',\r\n\t\t\t\tsrc: '%id%&output=embed'\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\tproto: {\r\n\t\tinitIframe: function() {\r\n\t\t\tmfp.types.push(IFRAME_NS);\r\n\r\n\t\t\t_mfpOn('BeforeChange', function(e, prevType, newType) {\r\n\t\t\t\tif(prevType !== newType) {\r\n\t\t\t\t\tif(prevType === IFRAME_NS) {\r\n\t\t\t\t\t\t_fixIframeBugs(); // iframe if removed\r\n\t\t\t\t\t} else if(newType === IFRAME_NS) {\r\n\t\t\t\t\t\t_fixIframeBugs(true); // iframe is showing\r\n\t\t\t\t\t}\r\n\t\t\t\t}// else {\r\n\t\t\t\t\t// iframe source is switched, don't do anything\r\n\t\t\t\t//}\r\n\t\t\t});\r\n\r\n\t\t\t_mfpOn(CLOSE_EVENT + '.' + IFRAME_NS, function() {\r\n\t\t\t\t_fixIframeBugs();\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetIframe: function(item, template) {\r\n\t\t\tvar embedSrc = item.src;\r\n\t\t\tvar iframeSt = mfp.st.iframe;\r\n\r\n\t\t\t$.each(iframeSt.patterns, function() {\r\n\t\t\t\tif(embedSrc.indexOf( this.index ) > -1) {\r\n\t\t\t\t\tif(this.id) {\r\n\t\t\t\t\t\tif(typeof this.id === 'string') {\r\n\t\t\t\t\t\t\tembedSrc = embedSrc.substr(embedSrc.lastIndexOf(this.id)+this.id.length, embedSrc.length);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tembedSrc = this.id.call( this, embedSrc );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tembedSrc = this.src.replace('%id%', embedSrc );\r\n\t\t\t\t\treturn false; // break;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tvar dataObj = {};\r\n\t\t\tif(iframeSt.srcAction) {\r\n\t\t\t\tdataObj[iframeSt.srcAction] = embedSrc;\r\n\t\t\t}\r\n\t\t\tmfp._parseMarkup(template, dataObj, item);\r\n\r\n\t\t\tmfp.updateStatus('ready');\r\n\r\n\t\t\treturn template;\r\n\t\t}\r\n\t}\r\n});\r\n\r\n\r\n\r\n/*>>iframe*/\r\n\r\n/*>>gallery*/\r\n/**\r\n * Get looped index depending on number of slides\r\n */\r\nvar _getLoopedId = function(index) {\r\n\t\tvar numSlides = mfp.items.length;\r\n\t\tif(index > numSlides - 1) {\r\n\t\t\treturn index - numSlides;\r\n\t\t} else if(index < 0) {\r\n\t\t\treturn numSlides + index;\r\n\t\t}\r\n\t\treturn index;\r\n\t},\r\n\t_replaceCurrTotal = function(text, curr, total) {\r\n\t\treturn text.replace(/%curr%/gi, curr + 1).replace(/%total%/gi, total);\r\n\t};\r\n\r\n$.magnificPopup.registerModule('gallery', {\r\n\r\n\toptions: {\r\n\t\tenabled: false,\r\n\t\tarrowMarkup: '',\r\n\t\tpreload: [0,2],\r\n\t\tnavigateByImgClick: true,\r\n\t\tarrows: true,\r\n\r\n\t\ttPrev: 'Previous (Left arrow key)',\r\n\t\ttNext: 'Next (Right arrow key)',\r\n\t\ttCounter: '%curr% of %total%'\r\n\t},\r\n\r\n\tproto: {\r\n\t\tinitGallery: function() {\r\n\r\n\t\t\tvar gSt = mfp.st.gallery,\r\n\t\t\t\tns = '.mfp-gallery';\r\n\r\n\t\t\tmfp.direction = true; // true - next, false - prev\r\n\r\n\t\t\tif(!gSt || !gSt.enabled ) return false;\r\n\r\n\t\t\t_wrapClasses += ' mfp-gallery';\r\n\r\n\t\t\t_mfpOn(OPEN_EVENT+ns, function() {\r\n\r\n\t\t\t\tif(gSt.navigateByImgClick) {\r\n\t\t\t\t\tmfp.wrap.on('click'+ns, '.mfp-img', function() {\r\n\t\t\t\t\t\tif(mfp.items.length > 1) {\r\n\t\t\t\t\t\t\tmfp.next();\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\t_document.on('keydown'+ns, function(e) {\r\n\t\t\t\t\tif (e.keyCode === 37) {\r\n\t\t\t\t\t\tmfp.prev();\r\n\t\t\t\t\t} else if (e.keyCode === 39) {\r\n\t\t\t\t\t\tmfp.next();\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t_mfpOn('UpdateStatus'+ns, function(e, data) {\r\n\t\t\t\tif(data.text) {\r\n\t\t\t\t\tdata.text = _replaceCurrTotal(data.text, mfp.currItem.index, mfp.items.length);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t_mfpOn(MARKUP_PARSE_EVENT+ns, function(e, element, values, item) {\r\n\t\t\t\tvar l = mfp.items.length;\r\n\t\t\t\tvalues.counter = l > 1 ? _replaceCurrTotal(gSt.tCounter, item.index, l) : '';\r\n\t\t\t});\r\n\r\n\t\t\t_mfpOn('BuildControls' + ns, function() {\r\n\t\t\t\tif(mfp.items.length > 1 && gSt.arrows && !mfp.arrowLeft) {\r\n\t\t\t\t\tvar markup = gSt.arrowMarkup,\r\n\t\t\t\t\t\tarrowLeft = mfp.arrowLeft = $( markup.replace(/%title%/gi, gSt.tPrev).replace(/%dir%/gi, 'left') ).addClass(PREVENT_CLOSE_CLASS),\r\n\t\t\t\t\t\tarrowRight = mfp.arrowRight = $( markup.replace(/%title%/gi, gSt.tNext).replace(/%dir%/gi, 'right') ).addClass(PREVENT_CLOSE_CLASS);\r\n\r\n\t\t\t\t\tarrowLeft.click(function() {\r\n\t\t\t\t\t\tmfp.prev();\r\n\t\t\t\t\t});\r\n\t\t\t\t\tarrowRight.click(function() {\r\n\t\t\t\t\t\tmfp.next();\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tmfp.container.append(arrowLeft.add(arrowRight));\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t_mfpOn(CHANGE_EVENT+ns, function() {\r\n\t\t\t\tif(mfp._preloadTimeout) clearTimeout(mfp._preloadTimeout);\r\n\r\n\t\t\t\tmfp._preloadTimeout = setTimeout(function() {\r\n\t\t\t\t\tmfp.preloadNearbyImages();\r\n\t\t\t\t\tmfp._preloadTimeout = null;\r\n\t\t\t\t}, 16);\r\n\t\t\t});\r\n\r\n\r\n\t\t\t_mfpOn(CLOSE_EVENT+ns, function() {\r\n\t\t\t\t_document.off(ns);\r\n\t\t\t\tmfp.wrap.off('click'+ns);\r\n\t\t\t\tmfp.arrowRight = mfp.arrowLeft = null;\r\n\t\t\t});\r\n\r\n\t\t},\r\n\t\tnext: function() {\r\n\t\t\tmfp.direction = true;\r\n\t\t\tmfp.index = _getLoopedId(mfp.index + 1);\r\n\t\t\tmfp.updateItemHTML();\r\n\t\t},\r\n\t\tprev: function() {\r\n\t\t\tmfp.direction = false;\r\n\t\t\tmfp.index = _getLoopedId(mfp.index - 1);\r\n\t\t\tmfp.updateItemHTML();\r\n\t\t},\r\n\t\tgoTo: function(newIndex) {\r\n\t\t\tmfp.direction = (newIndex >= mfp.index);\r\n\t\t\tmfp.index = newIndex;\r\n\t\t\tmfp.updateItemHTML();\r\n\t\t},\r\n\t\tpreloadNearbyImages: function() {\r\n\t\t\tvar p = mfp.st.gallery.preload,\r\n\t\t\t\tpreloadBefore = Math.min(p[0], mfp.items.length),\r\n\t\t\t\tpreloadAfter = Math.min(p[1], mfp.items.length),\r\n\t\t\t\ti;\r\n\r\n\t\t\tfor(i = 1; i <= (mfp.direction ? preloadAfter : preloadBefore); i++) {\r\n\t\t\t\tmfp._preloadItem(mfp.index+i);\r\n\t\t\t}\r\n\t\t\tfor(i = 1; i <= (mfp.direction ? preloadBefore : preloadAfter); i++) {\r\n\t\t\t\tmfp._preloadItem(mfp.index-i);\r\n\t\t\t}\r\n\t\t},\r\n\t\t_preloadItem: function(index) {\r\n\t\t\tindex = _getLoopedId(index);\r\n\r\n\t\t\tif(mfp.items[index].preloaded) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tvar item = mfp.items[index];\r\n\t\t\tif(!item.parsed) {\r\n\t\t\t\titem = mfp.parseEl( index );\r\n\t\t\t}\r\n\r\n\t\t\t_mfpTrigger('LazyLoad', item);\r\n\r\n\t\t\tif(item.type === 'image') {\r\n\t\t\t\titem.img = $('').on('load.mfploader', function() {\r\n\t\t\t\t\titem.hasSize = true;\r\n\t\t\t\t}).on('error.mfploader', function() {\r\n\t\t\t\t\titem.hasSize = true;\r\n\t\t\t\t\titem.loadError = true;\r\n\t\t\t\t\t_mfpTrigger('LazyLoadError', item);\r\n\t\t\t\t}).attr('src', item.src);\r\n\t\t\t}\r\n\r\n\r\n\t\t\titem.preloaded = true;\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/*>>gallery*/\r\n\r\n/*>>retina*/\r\n\r\nvar RETINA_NS = 'retina';\r\n\r\n$.magnificPopup.registerModule(RETINA_NS, {\r\n\toptions: {\r\n\t\treplaceSrc: function(item) {\r\n\t\t\treturn item.src.replace(/\\.\\w+$/, function(m) { return '@2x' + m; });\r\n\t\t},\r\n\t\tratio: 1 // Function or number. Set to 1 to disable.\r\n\t},\r\n\tproto: {\r\n\t\tinitRetina: function() {\r\n\t\t\tif(window.devicePixelRatio > 1) {\r\n\r\n\t\t\t\tvar st = mfp.st.retina,\r\n\t\t\t\t\tratio = st.ratio;\r\n\r\n\t\t\t\tratio = !isNaN(ratio) ? ratio : ratio();\r\n\r\n\t\t\t\tif(ratio > 1) {\r\n\t\t\t\t\t_mfpOn('ImageHasSize' + '.' + RETINA_NS, function(e, item) {\r\n\t\t\t\t\t\titem.img.css({\r\n\t\t\t\t\t\t\t'max-width': item.img[0].naturalWidth / ratio,\r\n\t\t\t\t\t\t\t'width': '100%'\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t\t_mfpOn('ElementParse' + '.' + RETINA_NS, function(e, item) {\r\n\t\t\t\t\t\titem.src = st.replaceSrc(item, ratio);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/*>>retina*/\r\n _checkInstance(); }));","jQuery(document).ready(function ($) {\r\n $('.tabs').each(function () {\r\n // The class for the container div\r\n var tabContainer = $(this);\r\n var tabContainerIndex = $(this).index();\r\n var wrapTabs = $('.tab-con', tabContainer);\r\n // The setup\r\n $('ul.tab-list', tabContainer).empty().attr('role', 'tablist');\r\n $('.tab-content', tabContainer).each(function () {\r\n var tabHeading = $(this).find(\"> .tab-title\").html();\r\n var tabHeadingID = 'tabs' + tabContainerIndex + 'tab' + $(this).index();\r\n $('ul.tab-list', tabContainer).append('
  • ' + tabHeading + '
  • ');\r\n $(this).attr('id', tabHeadingID);\r\n });\r\n $('[role=\"tablist\"] > li', tabContainer).attr('role', 'presentation');\r\n $('[role=\"tablist\"] a', tabContainer).attr({\r\n 'role': 'tab',\r\n 'tabindex': '-1'\r\n });\r\n // Make each aria-controls correspond id of targeted section (re href)\r\n $('[role=\"tablist\"] a', tabContainer).each(function () {\r\n $(this).attr('aria-controls', $(this).attr('href').substring(1));\r\n });\r\n // Make the first tab selected by default and allow it focus\r\n $('[role=\"tablist\"] li:first-child a', tabContainer).attr({\r\n 'aria-selected': 'true',\r\n 'tabindex': '0'\r\n });\r\n // Make each section focusable and give it the tabpanel role\r\n $('section', tabContainer).attr({\r\n 'role': 'tabpanel'\r\n });\r\n // Make first child of each panel focusable programmatically\r\n $('section > *:first-child', tabContainer).attr({\r\n 'tabindex': '0'\r\n });\r\n // Make all but the first section hidden (ARIA state and display CSS)\r\n $('[role=\"tabpanel\"]:not(:first-of-type)', tabContainer).attr({\r\n 'aria-hidden': 'true'\r\n });\r\n // Change focus between tabs with arrow keys\r\n $('[role=\"tab\"]', tabContainer).on('keydown', function (e) {\r\n // define current, previous and next (possible) tabs\r\n var tabCurrent = $(this);\r\n var tabPrev = $(this).parents('li').prev().children('[role=\"tab\"]');\r\n var tabNext = $(this).parents('li').next().children('[role=\"tab\"]');\r\n var tabTarget;\r\n // find the direction (prev or next)\r\n switch (e.keyCode) {\r\n case 37:\r\n tabTarget = tabPrev;\r\n break;\r\n case 39:\r\n tabTarget = tabNext;\r\n break;\r\n default:\r\n tabTarget = false\r\n break;\r\n }\r\n if (tabTarget.length) {\r\n tabCurrent.attr({\r\n 'tabindex': '-1',\r\n 'aria-selected': null\r\n });\r\n tabTarget.attr({\r\n 'tabindex': '0',\r\n 'aria-selected': true\r\n }).focus();\r\n }\r\n // Hide panels\r\n $('[role=\"tabpanel\"]', tabContainer).attr('aria-hidden', 'true');\r\n // Show panel which corresponds to target\r\n $('#' + $(document.activeElement).attr('href').substring(1)).attr('aria-hidden', null);\r\n });\r\n // Handle click on tab to show + focus tabpanel\r\n $('[role=\"tab\"]', tabContainer).on('click', function (e) {\r\n e.preventDefault();\r\n var tabID = $(this).attr('href');\r\n // remove focusability [sic] and aria-selected\r\n $('[role=\"tab\"]', tabContainer).attr({\r\n 'tabindex': '-1',\r\n 'aria-selected': null\r\n });\r\n // replace above on clicked tab\r\n $(this).attr({\r\n 'aria-selected': true,\r\n 'tabindex': '0'\r\n });\r\n // Hide panels\r\n $('[role=\"tabpanel\"]', tabContainer).attr('aria-hidden', 'true');\r\n // show corresponding panel\r\n // $('#' + $(this).attr('href').substring(1)).attr('aria-hidden', null);\r\n $('section' + tabID).attr('aria-hidden', null);\r\n });\r\n\r\n var tabsContainerWidth = $('.tab-con', tabContainer).outerWidth();\r\n var tabsWidth = $('ul.tab-list', tabContainer).outerWidth();\r\n var scrollWidth = tabsWidth - tabsContainerWidth;\r\n\r\n if (tabsWidth > tabsContainerWidth) {\r\n tabContainer.addClass('scroll-right');\r\n wrapTabs.on('scroll', function () {\r\n if (wrapTabs.scrollLeft() >= tabsWidth - tabsContainerWidth) {\r\n tabContainer.removeClass('scroll-right');\r\n } else {\r\n tabContainer.addClass('scroll-right');\r\n }\r\n if (wrapTabs.scrollLeft() > 1) {\r\n tabContainer.addClass('scroll-left');\r\n } else {\r\n tabContainer.removeClass('scroll-left');\r\n }\r\n });\r\n }\r\n });\r\n});","// in your main.js, homepage.js or subpage.js use $('SELECTORS').responsiveTables();\r\n// the container will be searched for tables to make responsive\r\n$.fn.responsiveTables = function () {\r\n var tableContainer = this;\r\n jQuery(document).ready(function ($) {\r\n if (!$('body').hasClass('dnnEditState')) {\r\n $('table', tableContainer).each(function () {\r\n\r\n var responsiveTable = $(this);\r\n\r\n responsiveTable.removeAttr('border').removeAttr('cell-spacing').removeAttr('cellpadding');\r\n\r\n if (responsiveTable.find('tbody>tr>th').length > 0) {\r\n responsiveTable.find('tbody').before('');\r\n responsiveTable.find('thead tr').append(responsiveTable.find('th'));\r\n responsiveTable.find('tbody tr:first').remove();\r\n }\r\n\r\n if (!$(responsiveTable).parents('.search-results').length) {\r\n $(responsiveTable).addClass('responsive-table').attr('style', '');\r\n }\r\n\r\n $('td', responsiveTable).each(function () {\r\n var responsiveTableCell = $(this);\r\n var responsiveTableHeader = responsiveTableCell.closest('table').find('th').eq(responsiveTableCell.index()).text();\r\n $(responsiveTableCell).wrapInner('').prepend('' + responsiveTableHeader + '');\r\n });\r\n });\r\n }\r\n });\r\n}","// in your main.js, homepage.js or subpage.js use $('SELECTORS').responsiveTables();\r\n// the container will be searched for tables to make responsive\r\n$.fn.responsiveTables = function () {\r\n var tableContainer = this;\r\n $('table', tableContainer).each(function () {\r\n // $('table:not(.pagenation > table')', tableContainer).each(function () {\r\n var responsiveTable = $(this);\r\n\r\n responsiveTable.removeAttr('border').removeAttr('cell-spacing').removeAttr('cellpadding');\r\n\r\n if (responsiveTable.find('thead').length === 0 && responsiveTable.find('tbody>tr>th').length === 0) {\r\n responsiveTable.find('tbody').before('');\r\n responsiveTable.find('thead tr').append(responsiveTable.find('tbody tr:first td'));\r\n // responsiveTable.find('thead tr td').replaceWith('' + $(this).text() + '');\r\n $('thead td', responsiveTable).each(function () {\r\n $(this).replaceWith('' + $(this).text() + '');\r\n });\r\n responsiveTable.find('tbody tr:first').remove();\r\n } else if (responsiveTable.find('tbody>tr>th').length > 0) {\r\n responsiveTable.find('tbody').before('');\r\n responsiveTable.find('thead tr').append(responsiveTable.find('th'));\r\n responsiveTable.find('tbody tr:first').remove();\r\n }\r\n\r\n if (!$(responsiveTable).parents('.search-results').length) {\r\n $(responsiveTable).addClass('responsive-table').attr('style', '');\r\n }\r\n\r\n $('td', responsiveTable).each(function () {\r\n var responsiveTableCell = $(this);\r\n var responsiveTableHeader = responsiveTableCell.closest('table').find('th').eq(responsiveTableCell.index()).text();\r\n $(responsiveTableCell).wrapInner('').prepend('' + responsiveTableHeader + '');\r\n });\r\n });\r\n}"]}