{"version":3,"sources":["accessible_dropdown.js","jquery-accessibleMenu.js","jquery-accessibleScaffold.js","anchors.js","browser_detection.js","cookies.js","force_aspect_ratio.js","lazy_loading.js","match_window_height.js","scroll_events.js","slick_helper.js","environment.js","polyfill.js","video_backgrounds.js","alert_bar.js","awards_page.js","basic_page_hero.js","basic_page_image_grid.js","blog.js","blog_buzz_slider.js","blog_single.js","booking.js","checklist_grid.js","content_listing.js","events.js","faqs.js","gallery.js","global_booking_cta.js","header.js","hero_slider.js","holiday_events.js","image_bar.js","image_slider_grid.js","instagram_slider.js","listing_landing.js","local_area.js","menu.js","newsletter.js","ninja_form.js","only_at_alohilani_slider.js","popup.js","rooms.js","rooms_single.js","school_of_surf_grid.js","show_hide_content.js","sidebar.js","sitemap.js","specials.js","specials_landing.js","specials_offer_listing.js","special_single.js","travel_partners.js","wysiwyg.js","site.js"],"names":["_instanceof","left","right","Symbol","hasInstance","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","iter","iterator","isArray","len","length","i","arr2","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","enumerable","configurable","writable","defineProperty","key","_createClass","protoProps","staticProps","jQuery","fn","accessibleMenu","toggleControl","opts","uid","menuWrapper","this","state","currentFocusedItem","defaults","menuRoleSelector","menuParentSelector","menuItemSelector","menuItemParentSelector","menuItemParentCrawl","menuVisibilityClass","toggleControlClass","menuFocusedClass","menuExpandedClass","idPrefix","onItemExpanded","focusedItem","expandedMenu","onItemCollapsed","itemParent","onItemFocused","item","onMenuOpened","onMenuClosed","orientation","window","$","extend","menu","find","onKey","element","func","bindings","data","tab","enter","down","up","escape","keydown","e","which","stopImmediatePropagation","getOrientation","depth","lodash","takeRight","click","api","toggleMenu","showMenu","focusItem","semanticTree","hideMenu","ascend","navigatePrevious","descend","navigateNext","parent","controller","letter","String","fromCharCode","current","postMatches","preMatches","each","getCurrentSiblings","text","toLowerCase","startsWith","push","matches","concat","tree","children","getUniqueId","slug","resetStateDecorations","attr","removeClass","tabStopFix","addClass","focus","child","controls","navigate","dir","index","siblings","hasClass","doFocus","semanticEntry","parents","eq","closestParent","console","log","owns","newID","join","accessibleScaffold","accessibility_uid","active","roleWrapper","ariaRole","items","roleWrapperVisibilityClass","onActivate","onDeactivate","onSelectItem","onEnterKey","focusedClass","applicationWrapper","toggle","activate","deactivate","role","decorateMenu","detailSelect","container","document","querySelector","options","querySelectorAll","value","textContent","mouseDown","_addEventListeners","_setAria","updateValue","_this","addEventListener","open","removeAttribute","forEach","opt","keycode","indexOf","preventDefault","setAttribute","setChecked","summary","that","setValue","checked","pos","parentNode","classList","remove","add","dispatchEvent","Event","Anchors","hash","top","location","substr","anchorSelector","anchors","not","triggerAnchor","animate","scrollTop","offset","$target","is","closest","show","ie_version","navigator","userAgent","is_mobile_safari","createCookie","cname","days","date","Date","setTime","getTime","expires","toGMTString","cookie","host","replace","getCookie","ca","decodeURIComponent","split","c","charAt","substring","deleteCookie","resizeElement","height","width","aspectRatio","$window","LazyLoading","scheduled","loading","onAllLoadedCallback","onLoadedCallback","preloader","scheduleLazyLoad","elem","imageUrl","callback","doLazyLoad","next","shift","done","isImage","loaderImage","loaded","clearTimeout","timeout","setTimeout","loadingClass","loadedClass","css","unbind","triggerHandler","load","lazyLoad","bind","lazyImageSelector","lazyBackgroundSelector","lazyImages","lazyBackgrounds","onLoaded","onAllLoaded","MatchWindowHeight","windowHeight","matchWindowHeightAttribute","matchWindowHeightSelector","matchedElements","getOffset","_","includes","parseInt","matchHeight","mobileOffset","is_mobile","on","matchedElement","onlyOnce","isUndefined","splice","trigger","match","ScrollEvents","onVisibleClass","onVisibleOffsetAttribute","onVisibleSelector","scrollAwareElements","scroll","scrollAwareElement","onVisibleOffset","becomesVisible","onVisibleRevert","initializeSlick","slick_params","onInit","slider","slick","get","play","interactedWithSlider","keyup","$body","handleFirstTab","keyCode","body","removeEventListener","resize","forced","Number","isInteger","isFinite","Math","floor","tabBlurred","backgroundVideos","video","readyState","resizeVideos","videoWidth","videoHeight","parentAspectRatio","alert_bar","alerts","prev_alert","next_alert","autoplay","shownIndex","min","focusin","clearInterval","undefined","originalEvent","isTrigger","maxWidth","max","setInterval","currentSlidersState","toggles","prev","slideDown","slideUp","event","first","hero","scrollDown","accessibility","dots","infinite","speed","slidesToShow","fade","pauseOnFocus","pauseOnHover","nextArrow","prevArrow","arrows","currentSlideEl","pauseSlider","section","sectionPos","postsContainer","loadMoreButton","activeCategory","page","isHome","slides","currentSlide","toggleClass","loadMorePosts","searchWrapper","searchInput","keypress","val","category","reset","fetch_path","response","no_more","hide","newContainer","append","html","insertBefore","slidesToScroll","slide","collapseOthers","keep","navs","nav","socialNav","categoriesNav","archivesNav","searchNav","blur","postHero","heroTop","contentHeight","blogNav","blogNavWrapper","heroTopInViewport","outerHeight","datepicker","noConflict","bootstrapDatepicker","wrapper","calendars","bookingExperienceLaunchers","mobileBookingButtons","arriveHeader","departHeader","guestsHeader","bookingWindow","guestButtons","topScroll","bookingExperienceBookButton","close","nextStep","prevStep","ourDate","today","day","getDate","month","getMonth","year","getFullYear","displayedDate","triggeredRefresh","arriveDate","departDate","guests","stopClick","language","getLinkerParam","joinChar","ga","tracker","getAll","linkerParam","bookingUrl","href","updateDatePicker","getDayElement","betweenDate","limitCount","limit","getDateMagnitude","magnitude","updateChosenDays","labelPastDays","second","_defaults","monthNamesShort","nextDay","buildDateString","moment","format","onSelect","picker","splitDate","step_2","step_3","step_1","dayElement","filtered","pad","num","size","s","calendar","calendarDays","previousDays","stopPropagation","setDefaults","regional","dayNamesMin","minDate","defaultDate","incrementDate","localized","dateString","closeBookingExperience","cloned","dateString1","dateString2","builtBookingUrl","promoCode","groupCode","_gatag","xlink","__updateDatepicker","_updateDatepicker","inst","id","onUpdateDatepicker","submit","email","confirmation_code","error","url","existingBooking","checklistGrids","checklistGrid","selector","viewMoreToggle","expandableGridItems","expandableGridItemsHeight","contentListings","contentListing","readMoreToggle","expandableContent","iframeSrc","expandableContentHeight","truncatedContentHeight","recalculateHeights","content","sibling","order","scrollHeight","initGallery","modal","galleryThumbs","galleryLinks","filteredGalleryThumbs","categories","clicked","updateUrl","image","history","pushState","filter","thumbsToLoad","lazyLoader","origin","pathname","currentUrl","query","stopVideo","iframe","contentWindow","postMessage","URI","currentlySelected","ieVersion","nextSlide","img","manageStreamSrcAttribute","stop","start","streamImages","nextStreamImage","closeModal","thumbsComponent","openSlider","currentTarget","initialImage","src","currentImage","imagesToLoad","continueLoading","toLoad","waitForReady","$header","headerLogo","mobileLogo","heroHeader","header","collapseTimeout","viewportHeight","min_inner_height","max_inner_height","header_height","reduced_header_height","current_header_height","scrolled_header_height","win_inner_h","innerHeight","topLevelElements","mainMenuElement","collapse","link","initialTouchY","touches","screenY","newTouchY","abs","subMenu","collapseHeader","delay","menuImage","menuList","ulImages","ulList","prepend","elementUL","submenu","expandedHeight","expandHeader","rightEdge","outerWidth","homeHero","homeHeroVideo","showedSecondBlurb","currentTime","awaitVideo","specials","requestUrl","holidayListing","currentCategory","myul","lis","dropdown","monthHeadings","cat","ready","displayEvents","parseJSON","holidays","post","isRoom","slide_index","caption","caption_index","responsive","breakpoint","settings","clicked_category","filter_category","hovered","popup","modaal","hide_close","background","overlay_opacity","variableWidth","siblingsCount","slideWidthWithPadding","siblingWidth","mouseenter","mouseleave","sliders","loadedCount","rows","focusOnSelect","localAreaFilter","localAreaCategory","localAreaCards","markers","map","lat","long","title","change","googleMap","positionCards","filterLocalAreaCards","filterPins","documentElement","initGoogleMap","marker","prevActiveCard","currActiveCard","scrollAnimating","latlng","google","maps","LatLng","cards","allMarkers","mapDiv","zoom","ALO_pin","mapOptions","center","disableDefaultUI","scrollwheel","streetViewControl","mapTypeControl","fullscreenControl","draggable","zoomControlOptions","position","ControlPosition","LEFT_BOTTOM","icon","Map","markerALO","Marker","opacity","zIndex","addListener","scrollToCard","resetMarkers","panTo","setOptions","cardID","duration","complete","visible","cardPosition","cardHeight","cardCategory","card","docViewTop","markersArray","makeArray","activeCardId","some","getActiveCard","slideToggle","category_index","fadeOut","fadeIn","hex","r","round","g","b","hexBrightness","$element","phone","form","error_txt","success_msg","consent_box","IntersectionObserver","entries","isIntersecting","threshold","rootMargin","observe","email_address","phone_number","success","PostData","emailAddress","ajax","type","contentType","crossDomain","dataType","JSON","stringify","result","Status","fail","XMLHttpRequest","textStatus","errorThrown","loadOrder","Marionette","initialize","listenTo","Backbone","Radio","channel","modifyDatepicker","dateObject","fieldModel","pikaday","input","inputs","errorElements","timestamps","timestamp","unix","validateDates","whichChanged","functionStart","functionEnd","arrivalStart","arrivalEnd","page_id","item_arr","initPopup","popup_container","popup_frequency","popup_id","activatePopup","interval","after","appendTo","rooms","filteredRooms","filterCategory","displayRooms","slidersBuilt","club_access_sliders","roomContent","contentTop","roomsNav","roomsNavWrapper","roomsBottom","contentBottom","roomsTop","wheelDelta","sidebarMenu","path","a","li","matchMedia","glide","update","peek","before","lastImage","last","lastSlide","transitionImage","clone","transitionImageRight","transitionContainer","transitionTarget","observer","unobserve","Glide","startAt","perView","dragThreshold","gap","bound","rewind","breakpoints","mount","specialsImages","filteredSpecialsImages","currentCat","initSpecials","layoutView","formContainer","addGuestTrigger","guestCount","groups","fontsOnlyLoadOnce","onFontsLoaded","fontsLoaded","background_scroll"],"mappings":"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","file":"../site.compiled.js","sourcesContent":["function _instanceof(left, right) { if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) { return !!right[Symbol.hasInstance](left); } else { return left instanceof right; } }\r\n\r\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\r\n\r\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\r\n\r\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\r\n\r\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\r\n\r\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\r\n\r\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\r\n\r\nfunction _classCallCheck(instance, Constructor) { if (!_instanceof(instance, Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\r\n\r\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\r\n\r\nvar detailSelect = /*#__PURE__*/function () {\r\n  function detailSelect(container) {\r\n    _classCallCheck(this, detailSelect);\r\n\r\n    this.container = document.querySelector(container);\r\n    this.options = document.querySelectorAll(\"\".concat(container, \" > .select > .select__option\"));\r\n    this.value = this.container.querySelector('summary').textContent;\r\n    this.mouseDown = false;\r\n\r\n    this._addEventListeners();\r\n\r\n    this._setAria();\r\n\r\n    this.updateValue();\r\n  } // Private function to set event listeners\r\n\r\n\r\n  _createClass(detailSelect, [{\r\n    key: \"_addEventListeners\",\r\n    value: function _addEventListeners() {\r\n      var _this = this;\r\n\r\n      this.container.addEventListener('toggle', function () {\r\n        if (_this.container.open) return;\r\n\r\n        _this.updateValue();\r\n      });\r\n      this.container.addEventListener('click', function () {\r\n        if (_this.container.open) return;\r\n\r\n        _this.updateValue();\r\n      });\r\n      this.container.addEventListener('focusout', function (e) {\r\n        if (_this.mouseDown) return;\r\n\r\n        _this.container.removeAttribute('open');\r\n      });\r\n      this.options.forEach(function (opt) {\r\n        opt.addEventListener('mousedown', function () {\r\n          _this.mouseDown = true;\r\n        });\r\n        opt.addEventListener('mouseup', function () {\r\n          _this.mouseDown = false;\r\n\r\n          _this.container.removeAttribute('open');\r\n        });\r\n      });\r\n      this.container.addEventListener('keyup', function (e) {\r\n        var keycode = e.which;\r\n\r\n        var current = _toConsumableArray(_this.options).indexOf(_this.container.querySelector('.active'));\r\n\r\n        switch (keycode) {\r\n          case 27:\r\n            // ESC\r\n            _this.container.removeAttribute('open');\r\n\r\n            break;\r\n\r\n          case 35:\r\n            // END\r\n            e.preventDefault();\r\n            if (!_this.container.open) _this.container.setAttribute('open', '');\r\n\r\n            _this.setChecked(_this.options[_this.options.length - 1].querySelector('input'));\r\n\r\n            break;\r\n\r\n          case 36:\r\n            // HOME\r\n            e.preventDefault();\r\n            if (!_this.container.open) _this.container.setAttribute('open', '');\r\n\r\n            _this.setChecked(_this.options[0].querySelector('input'));\r\n\r\n            break;\r\n\r\n          case 38:\r\n            // UP\r\n            e.preventDefault();\r\n            if (!_this.container.open) _this.container.setAttribute('open', '');\r\n\r\n            _this.setChecked(_this.options[current > 0 ? current - 1 : 0].querySelector('input'));\r\n\r\n            break;\r\n\r\n          case 40:\r\n            // DOWN\r\n            e.preventDefault();\r\n            if (!_this.container.open) _this.container.setAttribute('open', '');\r\n\r\n            _this.setChecked(_this.options[current < _this.options.length - 1 ? current + 1 : _this.options.length - 1].querySelector('input'));\r\n\r\n            break;\r\n        }\r\n      });\r\n    }\r\n  }, {\r\n    key: \"_setAria\",\r\n    value: function _setAria() {\r\n      this.container.setAttribute('aria-haspopup', 'listbox');\r\n      this.container.querySelector('.select').setAttribute('role', 'listbox');\r\n      var summary = this.container.querySelector('summary');\r\n      summary.setAttribute('aria-label', \"unselected listbox\");\r\n      summary.setAttribute('aria-live', \"polite\");\r\n      this.options.forEach(function (opt) {\r\n        opt.setAttribute('role', 'option');\r\n      });\r\n    }\r\n  }, {\r\n    key: \"updateValue\",\r\n    value: function updateValue(e) {\r\n      var that = this.container.querySelector('input:checked');\r\n      if (!that) return;\r\n      this.setValue(that);\r\n    }\r\n  }, {\r\n    key: \"setChecked\",\r\n    value: function setChecked(that) {\r\n      that.checked = true;\r\n      this.setValue(that);\r\n    }\r\n  }, {\r\n    key: \"setValue\",\r\n    value: function setValue(that) {\r\n      if (this.value == that.value) return;\r\n      var summary = this.container.querySelector('summary');\r\n      var pos = _toConsumableArray(this.options).indexOf(that.parentNode) + 1;\r\n      summary.textContent = that.parentNode.textContent;\r\n      summary.setAttribute('aria-label', \"\".concat(that.value, \", listbox \").concat(pos, \" of \").concat(this.options.length));\r\n      this.value = that.value;\r\n      this.options.forEach(function (opt) {\r\n        opt.classList.remove('active');\r\n        opt.setAttribute('aria-selected', 'false');\r\n      });\r\n      that.parentNode.classList.add('active');\r\n      that.parentNode.setAttribute('aria-selected', 'true');\r\n      this.container.dispatchEvent(new Event('change'));\r\n    }\r\n  }]);\r\n\r\n  return detailSelect;\r\n}();","// Options Object\r\n// menuRoleSelector: Overall parent element that takes the aria role attribute, and receives focus to activate the menu when toggleControl isn't set.\r\n// menuParentSelector: Selector for parent element that contains menu items.\r\n// menuItemSelector: Selector for menu items.\r\n// menuItemParentSelector: Selector for menu item parent\r\n// menuItemParentCrawl: Whether to use .parents() or .parent() when looking for menuItemParentSelector. Can be useful if your menu structure isn't a repeated pattern.\r\n// menuVisibilityClass: Class for when menu is visible\r\n// toggleControlClass: Class to assign to the toggle control when the menu is active\r\n// menuFocusedClass: Class to assign when a menu receives focus\r\n// menuExpandedClass: Class to assign when a menu is expanded\r\n// idPrefix: Prefix for unique ids that are generated for menu items\r\n// onItemExpanded: Callback for when a sub-menu is expanded\r\n// onItemCollapsed: Callback for when a sub-menu is collapsed\r\n// onItemFocused: Callback for when an item is focused\r\n// onMenuOpened: Callback for when the overall menu is activated\r\n// onMenuClosed: Callback for when the overall menu is closed\r\n// orientation: Orientation used matches depth of current menu\r\n\r\n// Example:\r\n// var mainMenuElement = $('#main_menu');\r\n// mainMenuElement.accessibleMenu(null, {\r\n// \tmenuItemSelector: 'a',\r\n// \torientation: window.is_mobile ? 'vertical' : ['horizontal', 'vertical'],\r\n// \tonItemExpanded: function(item, parent) {\r\n// \t\tconsole.log('expanded');\r\n// \t},\r\n// \tonItemCollapsed: function(item, parent) {\r\n// \t\tconsole.log('collapsed');\r\n// \t}\r\n// });\r\n\r\njQuery.fn.accessibleMenu = function(toggleControl, opts) {\r\n\tvar uid = 0;\r\n\tvar menuWrapper = this;\r\n\tvar state = {\r\n\t\tcurrentFocusedItem: null\r\n\t};\r\n\r\n\tvar defaults = {\r\n\t\tmenuRoleSelector: 'nav',\r\n\t\tmenuParentSelector: 'ul',\r\n\t\tmenuItemSelector: 'a',\r\n\t\tmenuItemParentSelector: 'li',\r\n\t\tmenuItemParentCrawl: false,\r\n\t\tmenuVisibilityClass: 'visible',\r\n\t\ttoggleControlClass: 'active',\r\n\t\tmenuFocusedClass: 'focused',\r\n\t\tmenuExpandedClass: 'expanded',\r\n\t\tidPrefix: 'menu-id-',\r\n\t\tonItemExpanded: function(focusedItem, expandedMenu) {},\r\n\t\tonItemCollapsed: function(itemParent) {},\r\n\t\tonItemFocused: function(item) {},\r\n\t\tonMenuOpened: function(menuWrapper) {},\r\n\t\tonMenuClosed: function(menuWrapper) {},\r\n\t\torientation: ['horizontal', 'vertical']\r\n\t}\r\n\r\n\twindow.uid = typeof window.uid == 'undefined' ? 1 : window.uid+1\r\n\r\n\topts = $.extend(defaults, opts);\r\n\r\n\tvar menu = menuWrapper.find(opts.menuRoleSelector);\r\n\r\n\tvar onKey = function(element, key, func) {\r\n\t\tvar keys = {tab: 9, enter: 13, down: 40, up: 38, left: 37, right: 39, escape: 27};\r\n\t\tvar bindings = element.data('bindings') || {};\r\n\t\tbindings[keys[key]] = func;\r\n\t\telement.data('bindings', bindings);\r\n\r\n\t\tif ($(element).data('listener')) return;\r\n\r\n\t\telement.data('listener', true);\r\n\r\n\t\telement.keydown(function (e) {\r\n\t\t\tif (bindings[e.which]) {\r\n\t\t\t\te.stopImmediatePropagation(0);\r\n\t\t\t\treturn bindings[e.which]();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tvar getOrientation = function() {\r\n\t\tvar depth = state.currentFocusedItem ? state.currentFocusedItem.depth : 0;\r\n\r\n\t\tif (!opts.orientation[depth])\r\n\t\t\treturn lodash.takeRight(opts.orientation, 1);\r\n\r\n\t\treturn opts.orientation[depth];\r\n\t}\r\n\r\n\tif (toggleControl) {\r\n\t\ttoggleControl.click(function() {\r\n\t\t\tapi.toggleMenu();\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tonKey(toggleControl, 'enter', function(e) {\r\n\t\t\tapi.toggleMenu();\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tonKey(toggleControl, 'down', function() {\r\n\t\t\tapi.showMenu();\r\n\t\t\tapi.focusItem(opts.semanticTree[0]);\r\n\t\t\treturn false;\r\n\t\t});\r\n\t} else {\r\n\t\tonKey(menuWrapper, 'enter', function(e) {\r\n\t\t\tapi.showMenu();\r\n\t\t\tapi.focusItem(opts.semanticTree[0]);\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tonKey(menuWrapper, 'down', function() {\r\n\t\t\tapi.showMenu();\r\n\t\t\tapi.focusItem(opts.semanticTree[0]);\r\n\t\t\treturn false;\r\n\t\t});\r\n\t}\r\n\r\n\tonKey(menu, 'tab', function() {\r\n\t\tapi.hideMenu();\r\n\t\treturn false;\r\n\t});\r\n\r\n\tonKey(menu, 'left', function() {\r\n\t\tif (getOrientation() == 'vertical') {\r\n\t\t\tapi.ascend();\r\n\t\t} else {\r\n\t\t\tapi.navigatePrevious();\r\n\t\t}\r\n\t\treturn false;\r\n\t});\r\n\r\n\tonKey(menu, 'right', function() {\r\n\t\tif (getOrientation() == 'vertical') {\r\n\t\t\tapi.descend();\r\n\t\t} else {\r\n\t\t\tapi.navigateNext();\r\n\t\t}\r\n\t\treturn false;\r\n\t});\r\n\r\n\tonKey(menu, 'up', function() {\r\n\t\tif (getOrientation() == 'horizontal') {\r\n\t\t\tapi.ascend();\r\n\t\t} else {\r\n\t\t\tapi.navigatePrevious();\r\n\t\t}\r\n\t\treturn false;\r\n\t});\r\n\r\n\tonKey(menu, 'down', function() {\r\n\t\tif (getOrientation() == 'horizontal') {\r\n\t\t\tapi.descend();\r\n\t\t} else {\r\n\t\t\tapi.navigateNext();\r\n\t\t}\r\n\t\treturn false;\r\n\t});\r\n\r\n\tonKey(menu, 'enter', function() {\r\n\t\tif (api.descend())\r\n\t\t\treturn false;\r\n\t});\r\n\r\n\tonKey(menu, 'escape', function() {\r\n\t\tif (state.currentFocusedItem.parent.controller) {\r\n\t\t\tapi.ascend();\r\n\t\t} else {\r\n\t\t\tapi.hideMenu();\r\n\t\t}\r\n\t\treturn false;\r\n\t});\r\n\r\n\t// Select menu sibling that starts with the letter/number pressed.\r\n\tmenu.keydown(function(e) {\r\n\t\tvar letter = String.fromCharCode(e.which);\r\n\t\tvar pattern = /[\\w\\d]/;\r\n\t\tif (!letter || !pattern.test(letter)) return true;\r\n\r\n\t\tvar current = null;\r\n\t\tvar postMatches = [];\r\n\t\tvar preMatches = [];\r\n\t\t$.each(getCurrentSiblings(), function(i) {\r\n\t\t\tif (this == state.currentFocusedItem)\r\n\t\t\t\treturn current = i;\r\n\r\n\t\t\tif ($(this.element).text().toLowerCase().startsWith(letter.toLowerCase())) {\r\n\t\t\t\tif (current) {\r\n\t\t\t\t\tpostMatches.push(this);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tpreMatches.push(this);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tmatches = postMatches.concat(preMatches);\r\n\t\tapi.focusItem(matches[0]);\r\n\t\tif (matches.length)\r\n\t\t\treturn false;\r\n\t});\r\n\r\n\tvar getCurrentSiblings = function() {\r\n\t\tif (!state.currentFocusedItem) return [];\r\n\r\n\t\treturn state.currentFocusedItem.parent.children;\r\n\t}\r\n\r\n\tvar getItemDepth = function(item) {\r\n\t\treturn $(item).parents(defaults.menuParentSelector).length;\r\n\t}\r\n\r\n\tvar getUniqueId = function(slug) {\r\n\t\tuid += 1;\r\n\t\treturn opts.idPrefix + slug + '-' + window.uid + '-' + uid;\r\n\t}\r\n\r\n\t// Clear current state\r\n\tvar resetStateDecorations = function() {\r\n\t\tmenu.find(opts.menuItemSelector).each(function() {\r\n\t\t\t$(this).attr('aria-expanded', false);\r\n\t\t});\r\n\t\tmenu.find('.' + opts.menuExpandedClass).removeClass(opts.menuExpandedClass);\r\n\t\tmenu.find('.' + opts.menuFocusedClass).removeClass(opts.menuFocusedClass);\r\n\t}\r\n\r\n\tvar expandParents = function() {\r\n\t\tresetStateDecorations();\r\n\t\t// Set expanded states.\r\n\t\t$(state.currentFocusedItem.parent.element).parent().addClass(opts.menuExpandedClass);\r\n\t\t$(state.currentFocusedItem.parent.element).addClass(opts.menuExpandedClass);\r\n\r\n\t\topts.onItemExpanded(state.currentFocusedItem, state.currentFocusedItem.parent);\r\n\r\n\t\tif (state.currentFocusedItem.parent.controller) {\r\n\t\t\t$(state.currentFocusedItem.parent.controller.element).attr('aria-expanded', true).addClass(opts.menuExpandedClass);\r\n\t\t}\r\n\t}\r\n\r\n\tvar buildSemanticTree = function() {\r\n\t\tvar tree = [];\r\n\t\tvar menus = menu.find(opts.menuParentSelector);\r\n\t\tmenus.each(function(i) {\r\n\t\t\tvar depth = getItemDepth(this);\r\n\t\t\tvar semanticEntry = {depth: depth, children: [], element: this};\r\n\r\n\t\t\t$(this).data('tree', semanticEntry);\r\n\r\n\t\t\ttree.push(semanticEntry);\r\n\t\t});\r\n\r\n\t\tmenu.find(opts.menuItemSelector).each(function() {\r\n\t\t\tvar controls = null\r\n\t\t\tif (opts.menuItemParentCrawl) {\r\n\t\t\t\tcontrols = $(this).parents(opts.menuItemParentSelector).eq(0).find(opts.menuParentSelector).eq(0).data('tree');\r\n\t\t\t} else {\r\n\t\t\t\tcontrols = $(this).parent(opts.menuItemParentSelector).eq(0).find(opts.menuParentSelector).eq(0).data('tree');\r\n\t\t\t}\r\n\t\t\tvar closestParent = $(this).parents(opts.menuParentSelector).eq(0).data('tree');\r\n\t\t\tvar semanticEntry = {index: closestParent.children.length, depth: closestParent.depth, parent: closestParent, element: this, controls: controls ? controls : null};\r\n\t\t\tif (controls)\r\n\t\t\t\tcontrols.controller = semanticEntry;\r\n\t\t\tclosestParent.children.push(semanticEntry);\r\n\t\t\t$(this).data('tree', semanticEntry);\r\n\t\t});\r\n\r\n\t\topts.semanticTree = tree;\r\n\t}\r\n\r\n\t// Add Aria stuff\r\n\tvar decorateMenu = function() {\r\n\t\t// menuWrapper.attr('role', 'menubar');\r\n\t\tvar id = 0;\r\n\r\n\t\tconsole.log(opts.semanticTree);\r\n\r\n\t\t$.each(opts.semanticTree, function() {\r\n\t\t\tif (!$(this.element).attr('id'))\r\n\t\t\t\t$(this.element).attr('id', getUniqueId('menu'));\r\n\r\n\t\t\tif(this.depth = 0)\r\n\t\t\t\t$(this.element).attr('role', 'menubar');\r\n\r\n\t\t\tif(this.depth = 1)\r\n\t\t\t\tif($(this.element).hasClass('sub-menu'))\r\n\t\t\t\t\t$(this.element).attr('role', 'menu');\r\n\t\t\t\telse\r\n\t\t\t\t\t$(this.element).attr('role', 'menubar');\r\n\r\n\t\t\tvar children = this.children;\r\n\t\t\tvar owns = [];\r\n\t\t\t$.each(children, function() {\r\n\t\t\t\tvar newID = getUniqueId('item');\r\n\t\t\t\towns.push(newID);\r\n\t\t\t\t$(this.element).attr('id', newID);\r\n\t\t\t\t$(this.element).attr('aria-posinset', this.index+1);\r\n\t\t\t\t$(this.element).attr('role', 'menuitem');\r\n\t\t\t\t$(this.element).attr('aria-setsize', children.length);\r\n\t\t\t\t$(this.element).parent().attr('role', 'none');\r\n\t\t\t\tif (this.controls) {\r\n\t\t\t\t\t$(this.element).attr('aria-haspopup', true);\r\n\t\t\t\t\t$(this.element).attr('aria-expanded', false);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t$(this.element).attr('aria-owns', owns.join(' '));\r\n\t\t});\r\n\t}\r\n\r\n\t// Make menu items not tab stops.\r\n\tvar tabStopFix = function() {\r\n\t\tvar items = menu.find(defaults.menuItemSelector).attr('tabindex', -1);\r\n\t\tif (!toggleControl)\r\n\t\t\tmenuWrapper.attr('tabindex', 0);\r\n\t}\r\n\r\n\tvar api = menu.api = {\r\n\t\tfocusItem: function(item) {\r\n\t\t\tif (!item) return;\r\n\r\n\t\t\tif (item.children) {\r\n\t\t\t\titem = item.children[0];\r\n\t\t\t}\r\n\r\n\t\t\tif (state.currentFocusedItem && item.parent != state.currentFocusedItem.parent)\r\n\t\t\t\topts.onItemCollapsed(state.currentFocusedItem.parent);\r\n\r\n\t\t\tstate.currentFocusedItem = item;\r\n\t\t\ttabStopFix();\r\n\t\t\texpandParents();\r\n\t\t\t$(item.element).attr('tabindex', 0).focus();\r\n\t\t\t$(item.element).addClass(opts.menuFocusedClass);\r\n\t\t\topts.onItemFocused(item.element);\r\n\t\t},\r\n\r\n\t\tascend: function() {\r\n\t\t\tif (!state.currentFocusedItem || !state.currentFocusedItem.parent.controller) return;\r\n\r\n\t\t\tvar focusedItem = state.currentFocusedItem.parent.controller\r\n\t\t\tapi.focusItem(focusedItem);\r\n\t\t},\r\n\r\n\t\tdescend: function() {\r\n\t\t\tif (!state.currentFocusedItem) return;\r\n\r\n\t\t\tvar child = state.currentFocusedItem.controls;\r\n\t\t\tif (child && child.children) {\r\n\t\t\t\tapi.focusItem(child.children[0]);\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t\treturn false;\r\n\t\t},\r\n\r\n\t\tnavigate: function(dir) {\r\n\t\t\tif (!state.currentFocusedItem) return;\r\n\r\n\t\t\tvar index = state.currentFocusedItem.index;\r\n\t\t\tvar focusedItem = getCurrentSiblings()[index + dir];\r\n\t\t\tif (focusedItem) {\r\n\t\t\t\tapi.focusItem(focusedItem);\r\n\t\t\t} else {\r\n\t\t\t\tvar siblings = getCurrentSiblings();\r\n\t\t\t\tapi.focusItem(siblings[dir == -1 ? siblings.length-1 : 0]);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tnavigateNext: function() {\r\n\t\t\tapi.navigate(1);\r\n\t\t},\r\n\r\n\t\tnavigatePrevious: function() {\r\n\t\t\tapi.navigate(-1);\r\n\t\t},\r\n\r\n\t\ttoggleMenu: function() {\r\n\t\t\tif (menu.hasClass(opts.menuVisibilityClass)) {\r\n\t\t\t\tapi.hideMenu();\r\n\t\t\t} else {\r\n\t\t\t\tapi.showMenu();\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tshowMenu: function() {\r\n\t\t\tmenu.addClass(opts.menuVisibilityClass);\r\n\t\t\tif (toggleControl)\r\n\t\t\t\ttoggleControl.addClass(opts.toggleControlClass)\r\n\t\t\tapi.focusItem(opts.semanticTree[0]);\r\n\t\t\topts.onMenuOpened(menuWrapper);\r\n\t\t},\r\n\r\n\t\thideMenu: function(doFocus) {\r\n\t\t\tdoFocus = (typeof doFocus !== 'undefined') ?  doFocus : true;\r\n\r\n\t\t\ttabStopFix();\r\n\t\t\tresetStateDecorations();\r\n\t\t\tmenu.removeClass(opts.menuVisibilityClass);\r\n\t\t\tstate.currentFocusedItem = null;\r\n\t\t\tif (doFocus) {\r\n\t\t\t\tif (toggleControl) {\r\n\t\t\t\t\ttoggleControl.removeClass(opts.toggleControlClass)\r\n\t\t\t\t\ttoggleControl.focus();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tmenuWrapper.focus();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\topts.onMenuClosed(menuWrapper);\r\n\t\t}\r\n\t}\r\n\r\n\ttabStopFix();\r\n\tif (!opts.semanticTree)\r\n\t\tbuildSemanticTree();\r\n\tdecorateMenu();\r\n\r\n\tthis.api = api;\r\n\treturn this;\r\n}\r\n","// Lib for making a js component that is keyboard navigable and aria-decorated.\r\n\r\n// toggleControl: Element or selector for the control to toggle the accessible component,\r\n// roleWrapper: Overall parent element that takes the aria role attribute, and receives focus to activate the component when toggleControl isn't set.\r\n// ariaRole: The aria-role attribute to apply to the roleWrapper. Behaves somewhat differently if it is set to 'menu'\r\n// items: Selector for selectable items,\r\n// onActivate: Callback for when an component is activated,\r\n// onDeactivate: Callback for when component is deactivated,\r\n// onSelectItem: Callback for when item is focused,\r\n// onEnterKey: Callback for when item has enter key pressed while focused,\r\n// orientation: 'vertical' or 'horizontal'. Adjusts behavior of arrow keys for navigation.\r\n// idPrefix: Prefix for generated ids.\r\n// focusedClass: Class to add when item is focused.\r\n\r\njQuery.fn.accessibleScaffold = function(opts) {\r\n\twindow.accessibility_uid = 0;\r\n\tvar state = {\r\n\t\tcurrentFocusedItem: null,\r\n\t\tactive: false\r\n\t};\r\n\r\n\tvar defaults = {\r\n\t\ttoggleControl: '',\r\n\t\troleWrapper: 'nav',\r\n\t\tariaRole: 'menu',\r\n\t\titems: '',\r\n\t\troleWrapperVisibilityClass: 'visible',\r\n\t\tonActivate: function() {},\r\n\t\tonDeactivate: function() {},\r\n\t\tonSelectItem: function(item, index) {},\r\n\t\tonEnterKey: function(item, index) {},\r\n\t\torientation: 'vertical',\r\n\t\tidPrefix: 'accessible-',\r\n\t\tfocusedClass: 'focused'\r\n\t}\r\n\r\n\topts = $.extend(defaults, opts);\r\n\r\n\tif (!opts.roleWrapper || !opts.items)\r\n\t\treturn console.log('roleWrapper and items are required');\r\n\r\n\tvar toggleControl = opts.toggleControl ? $(opts.toggleControl) : false;\r\n\tvar applicationWrapper = $(this);\r\n\tvar roleWrapper = applicationWrapper.find(opts.roleWrapper);\r\n\tvar items = applicationWrapper.find(opts.items);\r\n\r\n\tvar onKey = function(element, key, func) {\r\n\t\tvar keys = {tab: 9, enter: 13, down: 40, up: 38, left: 37, right: 39, escape: 27};\r\n\t\tvar bindings = element.data('bindings') || {};\r\n\t\tbindings[keys[key]] = func;\r\n\t\telement.data('bindings', bindings);\r\n\r\n\t\tif ($(element).data('listener')) return;\r\n\r\n\t\telement.data('listener', true);\r\n\r\n\t\telement.keydown(function (e) {\r\n\t\t\tif (bindings[e.which]) {\r\n\t\t\t\te.stopImmediatePropagation(0);\r\n\t\t\t\treturn bindings[e.which](e);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tif (toggleControl) {\r\n\t\ttoggleControl.click(function() {\r\n\t\t\tapi.toggle()\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tonKey(toggleControl, 'enter', function(e) {\r\n\t\t\tapi.toggle();\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tonKey(toggleControl, opts.orientation == 'vertical' ? 'down' : 'right', function() {\r\n\t\t\tapi.activate();\r\n\t\t\tapi.focusItem(items[0]);\r\n\t\t\treturn false;\r\n\t\t});\r\n\t} else {\r\n\t\tonKey(applicationWrapper, 'enter', function(e) {\r\n\t\t\tapi.activate();\r\n\t\t\tapi.focusItem(items[0]);\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tonKey(applicationWrapper, 'down', function() {\r\n\t\t\tapi.activate();\r\n\t\t\tapi.focusItem(items[0]);\r\n\t\t\treturn false;\r\n\t\t});\r\n\t}\r\n\r\n\tonKey(roleWrapper, 'tab', function() {\r\n\t\tif (opts.ariaRole == 'menu') {\r\n\t\t\tapi.deactivate();\r\n\t\t\treturn false;\r\n\t\t} else {\r\n\t\t\tapi.navigateNext();\r\n\t\t\treturn false;\r\n\t\t}\r\n\t});\r\n\r\n\tonKey(roleWrapper, 'left', function() {\r\n\t\tapi.navigatePrevious();\r\n\t\treturn false;\r\n\t});\r\n\r\n\tonKey(roleWrapper, 'right', function() {\r\n\t\tapi.navigateNext();\r\n\t\treturn false;\r\n\t});\r\n\r\n\tonKey(roleWrapper, 'up', function() {\r\n\t\tapi.navigatePrevious();\r\n\t\treturn false;\r\n\t});\r\n\r\n\tonKey(roleWrapper, 'down', function() {\r\n\t\tapi.navigateNext();\r\n\t\treturn false;\r\n\t});\r\n\r\n\tonKey(roleWrapper, 'enter', function(e) {\r\n\t\topts.onEnterKey(state.currentFocusedItem, items.index(state.currentFocusedItem));\r\n\t\te.stopImmediatePropagation();\r\n\t});\r\n\r\n\tonKey(roleWrapper, 'escape', function() {\r\n\t\tapi.deactivate();\r\n\t\treturn false;\r\n\t});\r\n\r\n\t// Select menu sibling that starts with the letter/number pressed.\r\n\troleWrapper.keydown(function(e) {\r\n\t\tvar letter = String.fromCharCode(e.which);\r\n\t\tvar pattern = /[\\w\\d]/;\r\n\t\tif (!letter || !pattern.test(letter)) return true;\r\n\r\n\t\tvar current = null;\r\n\t\tvar postMatches = [];\r\n\t\tvar preMatches = [];\r\n\t\t$.each(items, function(i) {\r\n\t\t\tif (this == state.currentFocusedItem)\r\n\t\t\t\treturn current = i;\r\n\r\n\t\t\tif ($(this).text().toLowerCase().startsWith(letter.toLowerCase())) {\r\n\t\t\t\tif (current) {\r\n\t\t\t\t\tpostMatches.push(this);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tpreMatches.push(this);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tmatches = postMatches.concat(preMatches);\r\n\t\tapi.focusItem(matches[0]);\r\n\t\tif (matches.length)\r\n\t\t\treturn false;\r\n\t});\r\n\r\n\tvar getUniqueId = function(slug) {\r\n\t\twindow.accessibility_uid += 1;\r\n\t\treturn opts.idPrefix + slug + '-' + window.accessibility_uid;\r\n\t}\r\n\r\n\t// Add Aria stuff\r\n\tvar decorateMenu = function() {\r\n\t\tapplicationWrapper.attr('role', 'application');\r\n\t\tvar role = opts.ariaRole;\r\n\r\n\t\tif (role)\r\n\t\t\troleWrapper.attr('role', role)\r\n\r\n\t\tvar owns = [];\r\n\t\t$.each(items, function(i) {\r\n\t\t\tvar newID = getUniqueId('item');\r\n\t\t\towns.push(newID);\r\n\t\t\t$(this.element).attr('id', newID);\r\n\t\t\t$(this.element).attr('aria-posinset', i+1);\r\n\t\t\t$(this.element).attr('aria-setsize', items.length);\r\n\t\t});\r\n\r\n\t\troleWrapper.attr('aria-owns', owns.join(' '));\r\n\t}\r\n\r\n\t// Make menu items not tab stops.\r\n\tvar tabStopFix = function() {\r\n\t\tif (opts.ariaRole == 'menu') {\r\n\t\t\titems.attr('tabindex', -1);\r\n\t\t\tif (!toggleControl)\r\n\t\t\t\tapplicationWrapper.attr('tabindex', 0);\r\n\t\t}\r\n\t}\r\n\r\n\tvar api = applicationWrapper.api = {\r\n\t\tfocusItem: function(item) {\r\n\t\t\tif (!item) return;\r\n\r\n\t\t\tstate.currentFocusedItem = item;\r\n\t\t\ttabStopFix();\r\n\t\t\t$(item).attr('tabindex', 0).focus();\r\n\t\t\titems.removeClass(opts.focusedClass);\r\n\t\t\t$(item).addClass(opts.focusedClass);\r\n\t\t\topts.onSelectItem(state.currentFocusedItem, items.index(state.currentFocusedItem));\r\n\t\t},\r\n\r\n\t\tnavigate: function(dir) {\r\n\t\t\tif (!state.currentFocusedItem) return;\r\n\r\n\t\t\tvar index = items.index(state.currentFocusedItem);\r\n\t\t\tvar focusedItem = items[index + dir];\r\n\t\t\tif (focusedItem) {\r\n\t\t\t\tapi.focusItem(focusedItem);\r\n\t\t\t} else {\r\n\t\t\t\tapi.focusItem(items[dir == -1 ? items.length-1 : 0]);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tnavigateNext: function() {\r\n\t\t\tapi.navigate(1);\r\n\t\t},\r\n\r\n\t\tnavigatePrevious: function() {\r\n\t\t\tapi.navigate(-1);\r\n\t\t},\r\n\r\n\t\ttoggle: function() {\r\n\t\t\tif (state.active) {\r\n\t\t\t\tapi.deactivate()\r\n\t\t\t} else {\r\n\t\t\t\tapi.activate()\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tactivate: function(i) {\r\n\t\t\tif (typeof i == 'undefined')\r\n\t\t\t\ti = 0;\r\n\t\t\tstate.active = true\r\n\t\t\troleWrapper.addClass(opts.roleWrapperVisibilityClass);\r\n\t\t\topts.onActivate();\r\n\t\t\tapi.focusItem(items[i]);\r\n\t\t},\r\n\r\n\t\tdeactivate: function(doFocus) {\r\n\t\t\tdoFocus = (typeof doFocus !== 'undefined') ?  doFocus : true;\r\n\r\n\t\t\tstate.active = false\r\n\t\t\troleWrapper.removeClass(opts.roleWrapperVisibilityClass);\r\n\t\t\ttabStopFix();\r\n\t\t\tstate.currentFocusedItem = null;\r\n\t\t\tif (doFocus) {\r\n\t\t\t\tif (toggleControl) {\r\n\t\t\t\t\ttoggleControl.focus();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tapplicationWrapper.focus();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\topts.onDeactivate();\r\n\t\t}\r\n\t}\r\n\r\n\ttabStopFix();\r\n\tdecorateMenu();\r\n\r\n\tthis.api = api;\r\n\treturn this;\r\n}\r\n","function Anchors(opts) {\r\n\tvar hash = window.top.location.hash.substr(1);\r\n\r\n\tvar defaults = {\r\n\t\tanchorSelector: 'a[href^=\"#\"]',\r\n\t}\r\n\r\n\tif (!opts) opts = {};\r\n\topts = $.extend(defaults, opts);\r\n\r\n\t// Remove links that don't actually link to anything\r\n\tvar anchors = $(opts.anchorSelector).not('[href=\"#\"]').not('[href=\"#0\"]').not('.modaal_trigger');\r\n\r\n\tvar triggerAnchor = function(e, target){\r\n\t\t// Does a scroll target exist?\r\n\t\tif (target.length) {\r\n\t\t\t$('html, body').animate({\r\n\t\t\t\tscrollTop: target.offset().top - 230\r\n\t\t\t}, 1000, function() {\r\n\t\t\t\t// Callback after animation\r\n\t\t\t\t// Must change focus!\r\n\t\t\t\tvar $target = $(target);\r\n\t\t\t\t$target.focus();\r\n\t\t\t\tif ($target.is(\":focus\")) { // Checking if the target was focused\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$target.attr('tabindex','-1'); // Adding tabindex for elements not focusable\r\n\t\t\t\t\t$target.focus(); // Set focus again\r\n\t\t\t\t};\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tif(hash){\r\n\t\tvar target = $('[id=' + hash + ']');\r\n\t\ttarget.closest('.wysiwyg_content').show();\r\n\t\ttriggerAnchor('', target);\r\n\t}\r\n\r\n\tanchors.click(function(e) {\r\n\t\t// Figure out element to scroll to\r\n\t\tvar target = $(this.hash);\r\n\t\ttarget = target.length ? target : $('[name=' + this.hash.slice(1) + ']');\r\n\t\te.preventDefault();\r\n\r\n\t\ttriggerAnchor(e, target);\r\n\t});\r\n\r\n\t//on back to top link click scroll to top of page\r\n\t$('.back_to_top').click(function(e){\r\n\t\te.preventDefault();\r\n\t\t$('html, body').animate({\r\n\t\t\tscrollTop: 0\r\n\t\t}, 1000);\r\n\t});\r\n}","function ie_version() {\r\n\tif (/MSIE 10/i.test(navigator.userAgent)) {\r\n\t\treturn 10;\r\n\t}\r\n\r\n\tif (/MSIE 9/i.test(navigator.userAgent)) {\r\n\t\treturn 9;\r\n\t}\r\n\r\n\tif (/rv:11.0/i.test(navigator.userAgent)) {\r\n\t\treturn 11;\r\n\t}\r\n\r\n\tif (/Edge\\/\\d./i.test(navigator.userAgent)){\r\n\t\treturn 'edge';\r\n\t}\r\n\r\n\treturn null;\r\n}\r\n\r\nfunction is_mobile_safari(){\r\n\tif ((/iPad|iPhone|iPod/.test(navigator.userAgent)) && (/Safari/i.test(navigator.userAgent)) && !(/Chrome/i.test(navigator.userAgent))) {\r\n\t\treturn true;\r\n\t}\r\n}","function createCookie(cname,value,days) {\r\n\tif (days) {\r\n\t\tvar date = new Date();\r\n\t\tdate.setTime(date.getTime()+(days*24*60*60*1000));\r\n\t\tvar expires = \"; expires=\"+date.toGMTString();\r\n\t} else {\r\n\t\tvar expires = \"\";\r\n\t}\r\n\r\n\tdocument.cookie = cname+\"=\"+value+expires+\"; path=/; domain=.\"+document.location.host.replace('www.', '');\r\n}\r\n\r\nfunction getCookie(cname) {\r\n\tvar name = cname + \"=\";\r\n\tvar decodedCookie = decodeURIComponent(document.cookie);\r\n\tvar ca = decodedCookie.split(';');\r\n\tfor(var i = 0; i <ca.length; i++) {\r\n\t\tvar c = ca[i];\r\n\t\twhile (c.charAt(0) == ' ') {\r\n\t\t\tc = c.substring(1);\r\n\t\t}\r\n\t\tif (c.indexOf(name) == 0) {\r\n\t\t\treturn c.substring(name.length, c.length);\r\n\t\t}\r\n\t}\r\n\treturn \"\";\r\n}\r\n\r\nfunction deleteCookie(cname) {\r\n\tcreateCookie(cname, '', -1);\r\n}","// Tool to help with maintaining ideal aspect ratios.\r\n$(function() {\r\n\tvar attribute = 'force-aspect-ratio';\r\n\tvar forced = $('[' + attribute + ']');\r\n\r\n\tforced.each(function() {\r\n\t\tvar aspectRatio = forced.attr(attribute).split('x');\r\n\t\tvar aspectRatio = aspectRatio[1] / aspectRatio[0];\r\n\t\t$(this).data('aspectRatio', aspectRatio);\r\n\t});\r\n\r\n\t$window.resize(function() {\r\n\t\tforced.each(function() {\r\n\t\t\tresizeElement(this);\r\n\t\t});\r\n\t}).trigger('resize');\r\n});\r\n\r\nfunction resizeElement(element){\r\n\t$(element).height('');\r\n\t$(element).width('');\r\n\tvar aspectRatio = $(element).data('aspectRatio');\r\n\t$(element).removeClass('width_constrained height_constrained');\r\n\tif ($window.height() > $window.width() * aspectRatio) {\r\n\t\t$(element).addClass('width_constrained');\r\n\t\t$(element).height($(element).width() * aspectRatio);\r\n\t} else {\r\n\t\t$(element).addClass('height_constrained');\r\n\t\t$(element).width($(element).height() / aspectRatio);\r\n\t}\r\n};","// To use add the lazy-load=\"someurl\" attribute to an image tag or the lazy-background=\"someurl\" to any tag.\r\n\r\n// Initialize thusly: var lazyLoader = new LazyLoading();\r\n\r\n// Access api methods using the returned object. Example: lazyLoader.onLoaded(function() {});\r\n\r\n// Broadcasts lazy-loaded event for jquery event listeners.\r\n\r\n// Options Object\r\n// loadedClass: Class to apply when the element is loaded\r\n// loadingClass: Class to apply while the element is loading\r\n// lazyImageSelector: Selector to use when finding images to lazy load.\r\n// lazyBackgroundSelector: Selector to use when finding elements with background images to lazy load\r\n// timeout: How long to wait before giving up waiting for the asset to load.\r\n\r\nfunction LazyLoading(opts) {\r\n\tvar that = this;\r\n\tvar scheduled = [];\r\n\tvar loading = false;\r\n\tvar onAllLoadedCallback = null;\r\n\tvar onLoadedCallback = null;\r\n\tvar preloader = $('<img class=\"preloader\">');\r\n\r\n\tvar defaults = {\r\n\t\tloadedClass: 'loaded',\r\n\t\tloadingClass: 'loading',\r\n\t\tlazyImageSelector: '[lazy-load]',\r\n\t\tlazyBackgroundSelector: '[lazy-background]',\r\n\t\ttimeout: 1000\r\n\t}\r\n\r\n\tif (!opts) opts = {};\r\n\topts = $.extend(defaults, opts);\r\n\r\n\tlazyImages = $(opts.lazyImageSelector);\r\n\tlazyBackgrounds = $(opts.lazyBackgroundSelector);\r\n\r\n\tlazyBackgrounds.each(function() {\r\n\t\tscheduleLazyLoad($(this), $(this).attr('lazy-background'));\r\n\t});\r\n\r\n\tlazyImages.each(function() {\r\n\t\tscheduleLazyLoad($(this), $(this).attr('lazy-load'));\r\n\t});\r\n\r\n\tfunction scheduleLazyLoad(elem, imageUrl, callback) {\r\n\t\tscheduled.push({elem: elem, imageUrl: imageUrl, callback: callback});\r\n\t\tif (!loading)\r\n\t\t\tdoLazyLoad();\r\n\t}\r\n\r\n\tfunction doLazyLoad() {\r\n\t\tvar next = scheduled.shift();\r\n\t\tif (!next) {\r\n\t\t\tif (onAllLoadedCallback)\r\n\t\t\t\tonAllLoadedCallback();\r\n\t\t\treturn loading = false;\r\n\t\t}\r\n\r\n\t\tlazyLoad(next.elem, next.imageUrl, function() {\r\n\t\t\tif (next.callback)\r\n\t\t\t\tnext.callback.bind(next.elem)();\r\n\t\t\tdoLazyLoad();\r\n\t\t});\r\n\t}\r\n\r\n\tfunction lazyLoad(element, imageUrl, done) {\r\n\t\tvar isImage = false;\r\n\t\tif (element.is('img'))\r\n\t\t\tisImage = true;\r\n\r\n\t\tvar loaderImage = isImage ? element : preloader;\r\n\r\n\t\tfunction loaded() {\r\n\t\t\tclearTimeout(timeout);\r\n\r\n\t\t\t// Give a slight delay for the browser to render.\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\telement.removeClass(opts.loadingClass);\r\n\t\t\t\telement.addClass(opts.loadedClass);\r\n\t\t\t}, 100);\r\n\r\n\t\t\tif (onLoadedCallback)\r\n\t\t\t\tonLoadedCallback(element);\r\n\r\n\t\t\tif (!isImage) {\r\n\t\t\t\telement.css('background-image', 'url(\"' + imageUrl + '\")');\r\n\t\t\t\tloaderImage.unbind('load').remove();\r\n\t\t\t}\r\n\r\n\t\t\t// Broadcast that this has run, so we can have code run after it is sized\r\n\t\t\telement.triggerHandler('lazy-loaded');\r\n\r\n\t\t\tdone();\r\n\t\t}\r\n\t\tvar timeout = setTimeout(loaded, opts.timeout);\r\n\t\tloaderImage.load(loaded);\r\n\t\tloaderImage.attr('src', imageUrl);\r\n\t\telement.addClass(opts.loadingClass);\r\n\t}\r\n\r\n\t// API\r\n\r\n\t// Register a callback for when an asset finishes laoding.\r\n\tthis.onLoaded = function(callback) {\r\n\t\tonLoadedCallback = callback;\r\n\t}\r\n\t// Register a callback for when all assets have finished loading.\r\n\tthis.onAllLoaded = function(callback) {\r\n\t\tonAllLoadedCallback = callback;\r\n\t}\r\n\t// Initiate a manual lazy load. Useful for when asynchronously loading html that includes lazy load attributes.\r\n\tthis.lazyLoad = function(elem, imageUrl, callback) {\r\n\t\tscheduleLazyLoad(elem, imageUrl, callback);\r\n\t}\r\n\treturn this;\r\n}\r\n\r\n","// Initialize with something like: var matchWindowHeight = new MatchWindowHeight();\r\n// You can trigger a resize using the above variable by doing: matchWindowHeight.resize(elem, height);\r\n\r\n// Example: <div class=\"hero\" match-window-height=\"-100|-300\"></div>\r\n\r\n// Attribute descriptions:\r\n// match-window-height (Element will match the window height. Values passed here will add or subtract from that height.) Example values: -100, 100, -50%, -100|-200\r\n// match-only-once (Only resize once, instead of every time the window is resized)\r\n\r\n// When match-window-height values are separated by a | the first value is for desktop, and the second is for mobile. Percentage values are % of total viewport height.\r\n\r\n// Broadcasts match-window-height event for jquery event listeners.\r\n\r\n// Options Object\r\n// matchWindowHeightAttribute: Attribute with the offset to use\r\n// matchWindowHeightSelector: Selector to use when finding elements to match window height.\r\n\r\nfunction MatchWindowHeight(opts) {\r\n\tvar windowHeight = $(window).height();\r\n\r\n\tvar defaults = {\r\n\t\tmatchWindowHeightAttribute: 'match-window-height',\r\n\t\tmatchWindowHeightSelector: '[match-window-height]'\r\n\t}\r\n\r\n\tif (!opts) opts = {};\r\n\topts = $.extend(defaults, opts);\r\n\r\n\tmatchedElements = $(opts.matchWindowHeightSelector);\r\n\r\n\tvar getOffset = function(offset) {\r\n\t\tif (_.includes(offset, '%')) {\r\n\t\t\treturn (parseInt(offset)/100) * windowHeight;\r\n\t\t} else {\r\n\t\t\treturn parseInt(offset);\r\n\t\t}\r\n\t}\r\n\r\n\tvar matchHeight = function(element, offset) {\r\n\t\toffset = element.attr(opts.matchWindowHeightAttribute) || offset;\r\n\t\tvar mobileOffset = null;\r\n\t\tif (offset) {\r\n\t\t\toffset = offset.split('|');\r\n\t\t\tmobileOffset = parseInt(offset[1]);\r\n\t\t\tif (typeof mobileOffset === typeof NaN) {\r\n\t\t\t\tmobileOffset = false;\r\n\t\t\t} else {\r\n\t\t\t\tmobileOffset = getOffset(offset[1]) || 0;\r\n\t\t\t}\r\n\t\t\toffset = getOffset(offset[0]) || 0;\r\n\t\t}\r\n\r\n\t\tif (window.is_mobile && mobileOffset !== false) {\r\n\t\t\toffset = mobileOffset;\r\n\t\t}\r\n\r\n\t\tvar height = windowHeight + offset;\r\n\t\telement.css('height', height);\r\n\r\n\t\t// Broadcast that this has run, so we can have code run after it is sized\r\n\t\telement.triggerHandler('match-window-height');\r\n\t}\r\n\r\n\t$(window).on('resize', function() {\r\n\t\twindowHeight = $(window).height();\r\n\t\tmatchedElements.each(function(index, element) {\r\n\t\t\tif (!element) return;\r\n\r\n\t\t\tmatchedElement = $(element);\r\n\t\t\tmatchHeight(matchedElement);\r\n\t\t\tonlyOnce = matchedElement.attr('match-only-once');\r\n\t\t\tif (!_.isUndefined(onlyOnce)) {\r\n\t\t\t\tmatchedElements.splice(index, 1, null)\r\n\t\t\t}\r\n\t\t});\r\n\t}).trigger('resize');\r\n\r\n\t// API\r\n\r\n\t// Manually trigger a resize.\r\n\tthis.match = function(elem, offset) {\r\n\t\twindowHeight = $(window).height();\r\n\t\tmatchHeight(elem, offset);\r\n\t}\r\n\treturn this;\r\n}","// Initialize using: var scrollEvents = new ScrollEvents();\r\n\r\n// Example: <h1 on-visible on-visible-class=\"some_class\" on-visible-offset=\"-100\" on-visible-revert></h1>\r\n\r\n// Attribute descriptions:\r\n// on-visible (Element will be registered as one to track. Argument will set an offset to adjust when it appears)\r\n// on-visible-class (What class it will receive when visible. This is in addition to the class that is set when you init the lib)\r\n// on-visible-revert (Remove the classes when the element is no longer visible)\r\n\r\n// Broadcasts on-visible and on-visible-revert events for jquery event listeners.\r\n\r\n// Options Object\r\n// onVisibleClass: Class to add when the element is visible.\r\n// onVisibleOffsetAttribute: Attribute with the offset to use\r\n// onVisibleSelector: Selector to use when finding elements to become visible on scroll.\r\n\r\nfunction ScrollEvents(opts) {\r\n\r\n\tvar defaults = {\r\n\t\tonVisibleClass: 'visible',\r\n\t\tonVisibleOffsetAttribute: 'on-visible',\r\n\t\tonVisibleSelector: '[on-visible]'\r\n\t}\r\n\r\n\tif (!opts) opts = {};\r\n\topts = $.extend(defaults, opts);\r\n\r\n\tscrollAwareElements = $(opts.onVisibleSelector);\r\n\r\n\tvar getOffset = function(offset) {\r\n\t\tif (_.includes(offset, '%')) {\r\n\t\t\treturn (parseInt(offset)/100) * windowHeight;\r\n\t\t} else {\r\n\t\t\treturn parseInt(offset);\r\n\t\t}\r\n\t}\r\n\r\n\t$(window).scroll(function() {\r\n\t\tvar windowHeight = $(window).height();\r\n\t\tvar scrollTop = $(window).scrollTop();\r\n\t\tscrollAwareElements.each(function(index, scrollAwareElement) {\r\n\t\t\tscrollAwareElement = $(scrollAwareElement);\r\n\t\t\tvar onVisibleOffset = getOffset(scrollAwareElement.attr(opts.onVisibleOffsetAttribute)) || 0;\r\n\r\n\t\t\tvar becomesVisible = scrollAwareElement.offset().top - windowHeight + onVisibleOffset + scrollAwareElement.height()/2;\r\n\r\n\t\t\tif (scrollTop > becomesVisible) {\r\n\t\t\t\tscrollAwareElement.addClass(opts.onVisibleClass).addClass(scrollAwareElement.attr('on-visible-class'));\r\n\t\t\t\t// Broadcast that this has run, so we can have it trigger other code.\r\n\t\t\t\tscrollAwareElement.triggerHandler('on-visible');\r\n\t\t\t} else {\r\n\t\t\t\tvar onVisibleRevert = scrollAwareElement.attr('on-visible-revert');\r\n\t\t\t\tif (!_.isUndefined(onVisibleRevert)) {\r\n\t\t\t\t\tscrollAwareElement.removeClass(opts.onVisibleClass).removeClass(scrollAwareElement.attr('on-visible-class'));\r\n\t\t\t\t\t// Broadcast that this has run, so we can have it trigger other code.\r\n\t\t\t\t\tscrollAwareElement.triggerHandler('on-visible-revert');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\t$(window).load(function() {\r\n\t\t$(window).trigger('scroll');\r\n\t});\r\n}","// Wrapper function for slick that starts autoplay videos inside a slick slider.\r\n// This gets around a bug where videos will not autoplay when the DOM changes around them.\r\nfunction initializeSlick(element, slick_params, onInit) {\r\n\tvar slider = $(element);\r\n\tslider.on('init', function(slick){\r\n\t\tslider.find('video').each(function() {\r\n\t\t\t$(this).get(0).play();\r\n\t\t});\r\n\t\t// setTimeout(function(){\r\n\t\t// \tslider.find('.slick-slide').each(function() {\r\n\t\t// \t\t$(this).removeAttr('tabindex');\r\n\t\t// \t});\r\n\t\t// }, 1000);\r\n\t\tif (onInit && typeof onInit !== 'undefined')\r\n\t\t\tonInit(slick);\r\n\t});\r\n\tslider.slick(slick_params);\r\n\r\n\tvar interactedWithSlider = function(e) {\r\n\t\tslider.slick('slickPause');\r\n\t}\r\n\tslider.click(interactedWithSlider);\r\n\tslider.keyup(interactedWithSlider);\r\n\treturn slider;\r\n}","// Track relevant things about application state.\r\n$(function() {\r\n\twindow.$body = $('body');\r\n\twindow.$window = $(window);\r\n\r\n\tvar mobileWidth = 1024;\r\n\r\n\tfunction handleFirstTab(e) {\r\n\t\tif (e.keyCode === 9) { // the \"I am a keyboard user\" key\r\n\t\t\tdocument.body.classList.add('user_is_tabbing');\r\n\t\t\twindow.removeEventListener('keydown', handleFirstTab);\r\n\t\t}\r\n\t}\r\n\r\n\twindow.addEventListener('keydown', handleFirstTab);\r\n\r\n\t$window.resize(function() {\r\n\t\tif ($(window).width() > mobileWidth) {\r\n\t\t\twindow.is_mobile = false;\r\n\t\t} else {\r\n\t\t\twindow.is_mobile = true;\r\n\t\t}\r\n\t}).trigger('resize');\r\n\r\n});","Number.isInteger = Number.isInteger || function(value) {\r\n\treturn typeof value === \"number\" &&\r\n\t\tisFinite(value) &&\r\n\t\tMath.floor(value) === value;\r\n};","// Utilities for background video elements.\r\n\r\n$(function() {\r\n\tvar tabBlurred = false;\r\n\r\n\t// Include a timeout so that Slick does its thing first.\r\n\tsetTimeout(function() {\r\n\t\tvar backgroundVideos = $('.background_media video');\r\n\r\n\t\tbackgroundVideos.each(function() {\r\n\t\t\tvar video = this;\r\n\t\t\tif (video.readyState == 4)\r\n\t\t\t\t$(video).addClass('loaded');\r\n\r\n\t\t\tvideo.addEventListener(\"playing\", function(e) {\r\n\t\t\t\t// Loaded\r\n\t\t\t\tif (video.readyState == 4) {\r\n\t\t\t\t\t$(video).addClass('loaded');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\r\n\r\n\t\tvar resizeVideos = function() {\r\n\t\t\tbackgroundVideos.each(function() {\r\n\t\t\t\tvar video = $(this);\r\n\r\n\t\t\t\tvideo.css('width', '').css('height', '');\r\n\t\t\t\tvar videoWidth = video.width();\r\n\t\t\t\tvar videoHeight = video.height();\r\n\r\n\t\t\t\tvar parent = video.parent();\r\n\t\t\t\tvar parentWidth = parent.width();\r\n\t\t\t\tvar parentHeight = parent.height();\r\n\r\n\t\t\t\tvar aspectRatio = videoWidth/videoHeight;\r\n\t\t\t\tvar parentAspectRatio = parentWidth/parentHeight;\r\n\r\n\t\t\t\t// Landscape aspect ratio\r\n\t\t\t\tif (videoWidth > videoHeight) {\r\n\t\t\t\t\tif (parentAspectRatio > aspectRatio) {\r\n\t\t\t\t\t\tvideo.css('width', '100%').css('height', 'auto');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tvideo.css('height', '100%').css('width', 'auto');\r\n\t\t\t\t\t}\r\n\t\t\t\t// Portrait aspect ratio\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (parentAspectRatio < aspectRatio) {\r\n\t\t\t\t\t\tvideo.css('height', '100%').css('width', 'auto');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tvideo.css('height', 'auto').css('width', '100%');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tvideo.addClass('resized');\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t// Cover parent container.\r\n\t\t$(window).resize(resizeVideos);\r\n\t\tresizeVideos();\r\n\r\n\t\t// Resize when tab is refocused so if browser is resizes with tab in background everything looks good.\r\n\t\t$(window).on('focus', function() {\r\n\t\t\tif (tabBlurred) {\r\n\t\t\t\tresizeVideos();\r\n\t\t\t\ttabBlurred = false;\r\n\t\t\t}\r\n\t\t}).on('blur', function() {\r\n\t\t\ttabBlurred = true;\r\n\t\t});\r\n\t}, 500);\r\n});","$(function() {\r\n\t$(\"._bar\").each(function(){\r\n\t\tvar alert_bar = $(this);\r\n\t\tvar alerts = $(this).find('.alert');\r\n\t\tvar alert_inner = $(this).find('alert_inner');\r\n\t\tvar prev_alert = $(this).find('.prev_alert');\r\n\t\tvar next_alert = $(this).find('.next_alert');\r\n\r\n\t\tif (!alerts.length)\r\n\t\t\treturn;\r\n\r\n\t\tvar height = 54;\r\n\t\tvar autoplay = null;\r\n\t\t// if ($('body').hasClass('admin-bar'))\r\n\t\t// \theight = 45;\r\n\r\n\t\tvar shownIndex = 0;\r\n\t\talerts.eq(shownIndex).addClass('show').attr('tabindex', '0');\r\n\r\n\r\n\t\t$(window).scroll(function() {\r\n\t\t\tvar scrollTop = $(window).scrollTop();\r\n\t\t\tvar offset = height - Math.min(scrollTop, height);\r\n\r\n\t\t\t$('.site_container > header').css('transform', 'translateY(' + offset + 'px)');\r\n\t\t});\r\n\r\n\t\talert_bar.focusin(function(){\r\n\t\t\tclearInterval(autoplay);\r\n\t\t});\r\n\r\n\t\tprev_alert.on( \"click change\", function(e) {\r\n\t\t\tclearInterval(autoplay);\r\n\t\t\tshownIndex -= 1;\r\n\t\t\tif (shownIndex < 0)\r\n\t\t\t\tshownIndex = alerts.length-1;\r\n\r\n\t\t\talerts.removeClass('show').attr('tabindex', -1).eq(shownIndex).addClass('show').attr('tabindex', '0');\r\n\t\t\tif (e.originalEvent !== undefined)\r\n\t\t\t\talert_bar.find('.show').focus();\r\n\t\t});\r\n\r\n\t\tnext_alert.on( \"click change\", function(e) {\r\n\t\t\tif (!e.isTrigger)\r\n\t\t\t\tclearInterval(autoplay);\r\n\r\n\t\t\tshownIndex += 1;\r\n\t\t\tif (shownIndex > alerts.length-1)\r\n\t\t\t\tshownIndex = 0;\r\n\r\n\t\t\talerts.removeClass('show').attr('tabindex', -1).eq(shownIndex).addClass('show').attr('tabindex', '0');\r\n\t\t\tif (e.originalEvent !== undefined)\r\n\t\t\t\talert_bar.find('.show').focus();\r\n\t\t});\r\n\r\n\t\tvar sizeAlerts = function() {\r\n\t\t\tvar maxWidth = 0;\r\n\t\t\talerts.each(function() {\r\n\t\t\t\tmaxWidth = Math.max(maxWidth, $(this).width());\r\n\t\t\t});\r\n\t\t\t$('.alert_bar .alert_inner').width(maxWidth);\r\n\t\t}\r\n\r\n\t\t$(window).load(function() {\r\n\t\t\t$('body').addClass('reveal_alerts');\r\n\t\t\tsizeAlerts();\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\t$('.site_container > header').addClass('alerts_revealed');\r\n\t\t\t}, 500);\r\n\r\n\t\t\tif (alerts.length > 1) {\r\n\t\t\t\tautoplay = setInterval(function() {\r\n\t\t\t\t\tif(alert_bar.hasClass(\"visible\")){\r\n\t\t\t\t\t\tif (window.currentSlidersState == 2)\r\n\t\t\t\t\t\t\treturn clearInterval(autoplay)\r\n\t\t\t\t\t\tnext_alert.trigger('change');\r\n\t\t\t\t\t}\r\n\t\t\t\t}, 4500);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t});\r\n\r\n\t// var interval = setInterval(function() {\r\n\t// \tif ($('body').hasClass('load_step_2')) {\r\n\t// \t\tclearInterval(interval);\r\n\t// \t\t$('body').addClass('reveal_alerts');\r\n\t// \t\tsizeAlerts();\r\n\t// \t\tsetTimeout(function() {\r\n\t// \t\t\t$('header').addClass('alerts_revealed');\r\n\t// \t\t}, 500);\r\n\t// \t}\r\n\t// }, 50);\r\n\r\n});","jQuery(function($) {\r\n    if (!$(\".awards_listing\").length) return;\r\n  \r\n    var awardsContent = $(\".awards_listing\");\r\n    var toggles = awardsContent.find(\".toggle\");\r\n    console.log(toggles)\r\n  \r\n    toggles.click(function() {\r\n      \r\n      var prev = $(this).prev()\r\n      var siblings = prev.siblings('div:visible');\r\n      var year = prev.data('year')\r\n      var text = 'VIEW ' + year + ' ACCOLADES'\r\n    //   var next = siblings.next();\r\n      console.log(siblings)\r\n      if ($body.hasClass(\"page-template-page-awards\") && prev.is(':hidden')) {\r\n        // siblings.slideUp();\r\n        prev.slideDown();\r\n        $(this).addClass('open')\r\n        prev.focus();\r\n        $(this).text(\"CLOSE ACCOLADES\");\r\n        // next.text(\"View Details\");\r\n      } else {\r\n        prev.slideUp();\r\n        prev.focus();\r\n        $(this).removeClass('open')\r\n        $(this).text(text);\r\n      }\r\n    });\r\n  });\r\n  ","jQuery(function($) {\r\n\tif ((!$body.hasClass('page-template-default') &&\r\n\t\t!$body.hasClass('page-template-page-rooms') &&\r\n\t\t!$body.hasClass('page-template-page-suites') &&\r\n\t\t!$body.hasClass('page-template-page-meetings') &&\r\n\t\t!$body.hasClass('page-template-page-club-access') &&\r\n\t\t!$body.hasClass('page-template-page-landing') &&\r\n\t\t!$body.hasClass('page-template-page-slider-grid') &&\r\n\t\t!$body.hasClass('page-template-page-faq') &&\r\n\t\t!$body.hasClass('page-template-page-contact') &&\r\n\t\t!$body.hasClass('page-template-page-dine') &&\r\n\t\t!$body.hasClass('page-template-page-awards') &&\r\n\t\t!$body.hasClass('page-template-page-listing')) ||\r\n\t\t$body.hasClass('page-template-page-specials') ||\r\n\t\t$body.hasClass('home')) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t$('.hero .slider').on('init', function(event){\r\n\t\t$('.hero .slider .slick-slide:not(.slick-active)').find('.content *').attr('tabindex', -1);\r\n\r\n\t\t$('.hero .slick-arrow').on('click', function() {\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tvar currentSlideEl = $('.hero .slider .slick-active');\r\n\t\t\t\tcurrentSlideEl.find('.content *').first().focus();\r\n\t\t\t}, 100);\r\n\t\t});\r\n\t});\r\n\r\n\tvar hero = $('.hero');\r\n\tvar slider = hero.find('.slider');\r\n\tvar slides = slider.find('.slide');\r\n\tvar scrollDown = $('.scroll_down');\r\n\tvar gdpr = $('#gdpr_message')\r\n\tinitializeSlick(slider, {\r\n\t\taccessibility: true,\r\n\t\tdots: false,\r\n\t\tinfinite: true,\r\n\t\tspeed: 700,\r\n\t\tslidesToShow: 1,\r\n\t\tfade: true,\r\n\t\tpauseOnFocus: true,\r\n\t\tpauseOnHover: false,\r\n\t\tautoplay: false,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>',\r\n\t\tarrows: hero.hasClass('single_panel_hero') ? true : false\r\n\t}, function(e) {\r\n\t\tvar hero = slider.parents('.hero');\r\n\t\tslider.addClass('ready');\r\n\t\thero.addClass('ready');\r\n\r\n\t\tif (hero.hasClass('single_panel_hero')) {\r\n\t\t\tslider.on('beforeChange', function() {\r\n\t\t\t\thero.find('.darken').addClass('hide');\r\n\t\t\t\thero.find('.darken_alternate').addClass('show');\r\n\t\t\t\thero.find('.title').addClass('hide');\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n\r\n\t$('.hero .slider').on('afterChange', function() {\r\n\t\tsetTimeout(function(){\r\n\t\t\tcurrentSlideEl = $('.hero .slider .slick-active');\r\n\t\t\t$('.hero .slider .slick-slide').find('.content *').attr('tabindex', -1);\r\n\t\t\tcurrentSlideEl.find('.content *').attr('tabindex', 0);\r\n\t\t}, 100);\r\n\t});\r\n\r\n\r\n\t$(window).on('panelsLoaded', function() {\r\n\t\tsetTimeout(function() {\r\n\t\t\tif (window.currentSlidersState != 2) {\r\n\t\t\t\tslider.slick('slickPlay');\r\n\t\t\t} else {\r\n\t\t\t\tslider.data('autoplay', 1);\r\n\t\t\t}\r\n\t\t}, 100);\r\n\t});\r\n\r\n\tvar pauseSlider = function() {\r\n\t\tslider.slick('slickPause');\r\n\t}\r\n\r\n\tslider.on('swipe', function() {\r\n\t\tpauseSlider();\r\n\t});\r\n\r\n\tslider.on('click', '.slider_arrow', pauseSlider);\r\n\r\n\t$(window).on('panelsLoaded', function() {\r\n\t\tsetTimeout(function() {\r\n\t\t\tif (scrollDown) {\r\n\t\t\t\tscrollDown.css('display', 'flex');\r\n\t\t\t\tscrollDown.css('opacity', '.5');\r\n\t\t\t}\r\n\t\t}, 200);\r\n\r\n\r\n\t\t$(scrollDown).on(\"click\", function(){\r\n\t\t\tvar section = hero;\r\n\t\t\tvar sectionPos = section.offset().top\r\n\t\t\tconsole.log(sectionPos)\r\n\t\t\t$('html, body').animate({\r\n\t\t\t\tscrollTop: section.offset().top+450\r\n\t\t\t}, 500);\r\n\t\t});\r\n\t});\r\n});","jQuery(function($) {\r\n\tif (!$('.basic_page_image_grid .slider').length)\r\n\t\treturn;\r\n\r\n\t$('.basic_page_image_grid .slider').on('init', function(event){\r\n\t\t$('.basic_page_image_grid .slider .slick-slide:not(.slick-active)').find('.content_wrapper *:not(object)').attr('tabindex', -1);\r\n\r\n\t\t$('.basic_page_image_grid .slider .slick-arrow').on('click', function() {\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tvar currentSlideEl = $('.basic_page_image_grid .slider .slick-active');\r\n\t\t\t\tcurrentSlideEl.find('.content_wrapper *:not(object)').first().focus();\r\n\t\t\t}, 100);\r\n\t\t});\r\n\t});\r\n\r\n\tinitializeSlick('.basic_page_image_grid .slider', {\r\n\t\taccessibility: true,\r\n\t\tinfinite: true,\r\n\t\tspeed: 500,\r\n\t\tslidesToShow: 1,\r\n\t\tarrows: true,\r\n\t\tautoplay: true,\r\n\t\tfade: true,\r\n\t\tpauseOnFocus: true,\r\n\t\tpauseOnHover: false,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>'\r\n\t});\r\n\r\n\t$('.basic_page_image_grid .slider').on('afterChange', function() {\r\n\t\tsetTimeout(function(){\r\n\t\t\tcurrentSlideEl = $('.basic_page_image_grid .slider .slick-active');\r\n\t\t\t$('.basic_page_image_grid .slider .slick-slide').find('.content_wrapper *:not(object)').attr('tabindex', -1);\r\n\t\t\tcurrentSlideEl.find('.content_wrapper *:not(object)').attr('tabindex', 0);\r\n\t\t}, 100);\r\n\t});\r\n});","$(function() {\r\n\tif (!$body.hasClass('page-template-page-blog') && !$body.hasClass('page-template-page-press') && !$body.hasClass('page-template-page-specials') && !$body.hasClass('page-template-page-shops') && !$body.hasClass('page-template-page-events'))\r\n\t\treturn;\r\n\r\n\tvar slider = $('.hero.featured_posts_slider');\r\n\tvar postsContainer = $('section.posts');\r\n\tvar loadMoreButton = $('#load_more_posts');\r\n\tvar activeCategory = 'all';\r\n\tvar page = 0;\r\n\r\n\tif (slider.length) {\r\n\t\tvar isHome = $('body').hasClass('home');\r\n\r\n\t\tvar slides = slider.find('.slide');\r\n\r\n\t\t$('.hero.featured_posts_slider').on('init', function(event){\r\n\t\t\t$('.hero.featured_posts_slider .slick-slide:not(.slick-active)').find('.content *').attr('tabindex', -1);\r\n\r\n\t\t\t$('.hero .slick-arrow').on('click', function() {\r\n\t\t\t\tsetTimeout(function(){\r\n\t\t\t\t\tvar currentSlideEl = $('.hero.featured_posts_slider .slick-active');\r\n\t\t\t\t\tcurrentSlideEl.find('.content *').first().focus();\r\n\t\t\t\t}, 100);\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\tinitializeSlick(slider, {\r\n\t\t\tdots: false,\r\n\t\t\tinfinite: true,\r\n\t\t\tspeed: 700,\r\n\t\t\tslidesToShow: 1,\r\n\t\t\tfade: true,\r\n\t\t\tpauseOnFocus: true,\r\n\t\t\tpauseOnHover: false,\r\n\t\t\tautoplay: false,\r\n\t\t\tarrows: isHome ? false : true,\r\n\t\t\tnextArrow: '<button class=\"slider_arrow white next_arrow\">Next</button>',\r\n\t\t\tprevArrow: '<button class=\"slider_arrow white prev_arrow\">Previous</button>'\r\n\t\t}, function(e) {\r\n\t\t\tvar hero = slider.parents('.hero');\r\n\t\t\tslider.addClass('ready');\r\n\t\t\thero.addClass('ready');\r\n\t\t});\r\n\r\n\t\tslider.on('afterChange', function(e, slick) {\r\n\t\t\tslides.eq(0).removeClass('initial_load');\r\n\t\t\tslides.removeClass('current_slide').eq(slick.currentSlide).addClass('current_slide');\r\n\r\n\t\t\tif (isHome && slick.currentSlide == slides.length-1)\r\n\t\t\t\tslider.slick('slickPause');\r\n\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tcurrentSlideEl = $('.hero.featured_posts_slider .slick-active');\r\n\t\t\t\t$('.hero.featured_posts_slider .slick-slide').find('.content *').attr('tabindex', -1);\r\n\t\t\t\tcurrentSlideEl.find('.content *').attr('tabindex', 0);\r\n\t\t\t}, 100);\r\n\t\t});\r\n\r\n\t\tvar interactedWithSlider = function(e) {\r\n\t\t\tslider.slick('slickPause');\r\n\t\t}\r\n\t\tslider.click(interactedWithSlider);\r\n\t\tslider.keyup(interactedWithSlider);\r\n\r\n\t\t$(window).on('panelsLoaded', function() {\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\tslides.eq(0).addClass('initial_load');\r\n\t\t\t\tif (window.currentSlidersState != 2) {\r\n\t\t\t\t\tslider.slick('slickPlay');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tslider.data('autoplay', 1);\r\n\t\t\t\t}\r\n\t\t\t}, isHome ? 1500 : 500);\r\n\t\t});\r\n\t}\r\n\r\n\t$('#filter_mobile_button').click(function(){\r\n\t\t$('#blog_categories nav').toggleClass('open');\r\n\t})\r\n\r\n\tfunction loadMorePosts(category, page, reset) {\r\n\t\tif (reset === true) {\r\n\t\t\tpostsContainer.find('>*:not(#load_more_posts)').remove();\r\n\t\t}\r\n\r\n\t\tif (category)\r\n\t\t\tcategory += '/';\r\n\r\n\t\tvar fetch_path = '/blog_api/' + category + page;\r\n\t\tif ($body.hasClass('page-template-page-press'))\r\n\t\t\tfetch_path = '/press_api/' + page;\r\n\t\tif ($body.hasClass('page-template-page-events'))\r\n\t\t\tfetch_path = '/events_api/' + category + page;\r\n\r\n\t\t$.get(fetch_path, function(response) {\r\n\t\t\tif (response.no_more) {\r\n\t\t\t\tloadMoreButton.hide();\r\n\t\t\t} else {\r\n\t\t\t\tloadMoreButton.show();\r\n\t\t\t}\r\n\r\n\t\t\tvar newContainer = $('<div></div>');\r\n\t\t\tnewContainer.append(response.html);\r\n\t\t\tif (loadMoreButton.length) {\r\n\t\t\t\tnewContainer.insertBefore(loadMoreButton);\r\n\t\t\t} else {\r\n\t\t\t\tpostsContainer.append(newContainer)\r\n\t\t\t}\r\n\r\n\t\t\t// filterCategory($('.active_category'));\r\n\r\n\t\t\t// newContainer.find('.post').each(function() {\r\n\t\t\t// \tlazyLoader.lazyLoad($(this), $(this).find('.image').attr('lazy-background'));\r\n\t\t\t// });\r\n\t\t});\r\n\t}\r\n\r\n\tloadMoreButton.click(function() {\r\n\t\tpage += 1;\r\n\t\tloadMorePosts(activeCategory, page);\r\n\t});\r\n\r\n\tvar filterCategory = function(element) {\r\n\t\tif (element)\r\n\t\t\telement = $(element);\r\n\r\n\t\t$('.active_category').removeClass('active_category');\r\n\t\telement.addClass('active_category');\r\n\r\n\t\tpage = 0\r\n\t\tif (element.hasClass('category_reset')) {\r\n\t\t\tactiveCategory = 'all';\r\n\t\t\tloadMorePosts(activeCategory, page, true);\r\n\t\t} else {\r\n\t\t\tactiveCategory = element.attr('href').slice(1);\r\n\t\t\tloadMorePosts(activeCategory, page, true);\r\n\t\t}\r\n\t}\r\n\r\n\t$('#blog_categories a').click(function() {\r\n\t\tfilterCategory(this);\r\n\t});\r\n\r\n\t// $('#blog_categories').accessibleScaffold({\r\n\t// \titems: 'a',\r\n\t// \torientation: 'horizontal',\r\n\t// \tonEnterKey: function(item) {\r\n\t// \t\tfilterCategory(item);\r\n\t// \t}\r\n\t// });\r\n\r\n\r\n\tvar searchWrapper = $('#landing_search');\r\n\tvar searchInput = searchWrapper.find('#search_input');\r\n\tsearchWrapper.click(function() {\r\n\t\tsearchWrapper.addClass('searching');\r\n\t\tsearchInput.focus();\r\n\t});\r\n\r\n\tsearchInput.keypress(function(e) {\r\n\t\tif (e.key == 'Enter') {\r\n\t\t\tvar val = $(this).val();\r\n\t\t\tif (val)\r\n\t\t\t\twindow.location = '/?s=' + val + '&t=' + ($(this).attr('data-type') || 'post');\r\n\t\t\treturn false;\r\n\t\t}\r\n\t})\r\n});","jQuery(function($) {\r\n\tif (!$('.from_blog .slider').length)\r\n\t\treturn;\r\n\r\n\t$('.from_blog .slider').on('init', function(event){\r\n\t\t$('.blog_and_buzz .slick-arrow').on('click', function() {\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tcurrentSlideEl = $('.from_blog .slider .slick-active');\r\n\t\t\t\tcurrentSlideEl.find('.slide_wrapper h3').focus();\r\n\t\t\t}, 300);\r\n\t\t});\r\n\t});\r\n\r\n\tinitializeSlick('.from_blog .slider', {\r\n\t\tdots: false,\r\n\t\tinfinite: true,\r\n\t\tspeed: 300,\r\n\t\tslidesToShow: 1,\r\n\t\tslidesToScroll: 1,\r\n\t\tautoplay: false,\r\n\t\tarrows: true,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow\">Previous</button>',\r\n\t});\r\n});","$(function() {\r\n\tif (!($body.hasClass('single-post') || $body.hasClass('single-room') || $body.hasClass('single-press') || $body.hasClass('single-special') || $body.hasClass('single-shop') || $body.hasClass('single-event')))\r\n\t\treturn;\r\n\r\n\tinitializeSlick('.post_hero', {\r\n\t\taccessibility: true,\r\n\t\tslide: '.slide',\r\n\t\tdots: false,\r\n\t\tinfinite: true,\r\n\t\tspeed: 300,\r\n\t\tslidesToShow: 1,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow\">Previous</button>',\r\n\t});\r\n\r\n\tvar collapseOthers = function(keep) {\r\n\t\t_.each(navs, function(nav) {\r\n\t\t\tif (keep != nav) {\r\n\t\t\t\tnav.api.hideMenu();\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tvar socialNav = $('#share div.menu').accessibleMenu($('#share > button'), {\r\n\t\tmenuItemSelector: 'li button',\r\n\t\torientation: 'vertical',\r\n\t\tonItemExpanded: function(item, parent) {\r\n\t\t\tcollapseOthers(socialNav);\r\n\t\t},\r\n\t\tonItemCollapsed: function(item, parent) {\r\n\t\t}\r\n\t});\r\n\r\n\tvar categoriesNav = $('#categories .menu').accessibleMenu($('#categories button'), {\r\n\t\tmenuItemSelector: 'a',\r\n\t\torientation: 'vertical',\r\n\t\tonItemExpanded: function(item, parent) {\r\n\t\t\tcollapseOthers(categoriesNav);\r\n\t\t},\r\n\t\tonItemCollapsed: function(item, parent) {\r\n\t\t}\r\n\t});\r\n\r\n\tvar archivesNav = $('#archives .menu').accessibleMenu($('#archives button'), {\r\n\t\tmenuItemSelector: 'a',\r\n\t\torientation: 'vertical',\r\n\t\tonItemExpanded: function(item, parent) {\r\n\t\t\tcollapseOthers(archivesNav);\r\n\t\t},\r\n\t\tonItemCollapsed: function(item, parent) {\r\n\t\t}\r\n\t});\r\n\r\n\tvar searchNav = $('#post_search');\r\n\t// .accessibleScaffold({\r\n\t// \ttoggleControl: '#post_search button',\r\n\t// \troleWrapper: 'nav',\r\n\t// \tariaRole: 'form',\r\n\t// \titems: 'input',\r\n\t// \tonActivate: function() {\r\n\t// \t\tsearchNav.addClass('searching');\r\n\t// \t},\r\n\t// \tonDeactivate: function() {\r\n\t// \t}\r\n\t// });\r\n\r\n\tsearchNav.on(\"click keypress\", function(){\r\n\t\tsearchNav.addClass('searching');\r\n\t});\r\n\r\n\tsearchNav.find('#search_input').keypress(function(e) {\r\n\t\tif (e.key == 'Enter') {\r\n\t\t\tvar val = $(this).val();\r\n\t\t\tif (val) {\r\n\t\t\t\twindow.location = '/?s=' + val + '&t=' + ($(this).attr('data-type') || 'post');\r\n\t\t\t}\r\n\t\t\treturn false;\r\n\t\t}\r\n\t}).blur(function(e) {\r\n\t\tsearchNav.removeClass('searching');\r\n\t\tsearchNav.api.deactivate();\r\n\t});\r\n\r\n\tvar navs = [socialNav, categoriesNav, archivesNav];\r\n\t$('#share ul').addClass('expanded');\r\n\r\n\r\n\tif ($('.single-post').length || $('.single-press').length) {\r\n\t\t// Keep menu on screen as long as it doesn't overlap footer\r\n\t\t$(window).load(function() {\r\n\t\t\tvar postHero = $('.post_hero');\r\n\t\t\tvar heroTop = postHero.length ? postHero.offset().top : 0;\r\n\t\t\tvar contentHeight = $('.page_body').height();\r\n\t\t\tvar blogNav = $('#blog_nav');\r\n\t\t\tvar blogNavWrapper = $('.aside_wrapper');\r\n\t\t\tvar initialTop = blogNavWrapper.css('top');\r\n\r\n\t\t\t$(window).scroll(function() {\r\n\t\t\t\tvar heroTopInViewport = heroTop - $(window).scrollTop();\r\n\t\t\t\tvar scrollTop = $(window).scrollTop();\r\n\r\n\t\t\t\tif (scrollTop + 700 > contentHeight) {\r\n\t\t\t\t\tblogNavWrapper.removeClass('attached');\r\n\t\t\t\t\tblogNavWrapper.css('top', contentHeight - 410);\r\n\t\t\t\t} else if (heroTopInViewport < $window.height()/2 - blogNav.outerHeight()/2) {\r\n\t\t\t\t\tblogNavWrapper.addClass('attached');\r\n\t\t\t\t\tblogNavWrapper.css('top', '');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tblogNavWrapper.removeClass('attached');\r\n\t\t\t\t\tblogNavWrapper.css('top', heroTop);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t})\r\n\t}\r\n});","$(function() {\r\n\r\n\tif ( \"undefined\" !== typeof $.fn.datepicker && \"undefined\" !== typeof $.fn.datepicker.noConflict ) {\r\n\t\tvar datepicker = $.fn.datepicker.noConflict();\r\n\t\t$.fn.bootstrapDatepicker = datepicker;\r\n\t}\r\n\r\n\tvar wrapper = $('.booking_experience');\r\n\tvar calendars = wrapper.find('.calendars_panel');\r\n\tvar dayNames = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];\r\n\tvar bookingExperienceLaunchers = $('.booking_bar, #booking_button_top');\r\n\tvar bookingBar = $('.booking_bar');\r\n\tvar mobileBookingButtons = $('#booking_button_top .mobile_booking_button, #booking_button_bottom .mobile_booking_button');\r\n\tvar arriveHeader = wrapper.find('.arrive');\r\n\tvar departHeader = wrapper.find('.depart');\r\n\tvar guestsHeader = wrapper.find('.guests');\r\n\tvar bookingWindow = wrapper.find('.booking_window');\r\n\tvar guestButtons = wrapper.find('.guests_panel button');\r\n\tvar topScroll = 0;\r\n\tvar bookingExperienceBookButton = $('#book_now');\r\n\tvar close = $('#close_booking_experience, button.close');\r\n\tvar nextStep = wrapper.find('#booking_next');\r\n\tvar prevStep = wrapper.find('#booking_prev');\r\n\tvar ourDate = new Date();\r\n\tvar today = {day: ourDate.getDate(), month: ourDate.getMonth()+1, year: ourDate.getFullYear()};\r\n\tvar displayedDate = $.extend({},today);\r\n\tvar triggeredRefresh = false;\r\n\tvar arriveDate = null;\r\n\tvar departDate = null;\r\n\tvar guests = 2;\r\n\tvar stopClick = false;\r\n\r\n\tvar dateSuffix = '';\r\n\tvar guestSuffix = '';\r\n\r\n\tlanguage = $('html').attr('lang');\r\n\r\n\tvar getLinkerParam = function(joinChar) {\r\n\t\t//get CID\r\n\t\tvar linkerParam = \"\";\r\n\t\tga(function() {\r\n\t\t\tif (typeof ga !== 'undefined') {\r\n\t\t\t\tvar tracker = ga.getAll()[0];\r\n\t\r\n\t\t\t\tif (typeof tracker !== 'undefined') {\r\n\t\t\t\t\tvar linkerParam = tracker.get('linkerParam');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn joinChar + linkerParam;\r\n\t\t})\r\n\t\treturn linkerParam\r\n\t}\r\n\r\n\tvar bookingUrl = 'https://be.synxis.com/?Hotel=79928&Chain=10237'\r\n\tvar mobileBookingUrl = 'https://be.synxis.com/?Hotel=79928&Chain=10237';\r\n\r\n\r\n\tmobileBookingButtons.on(\"click keydown\", function(e){\r\n\t\tvar keycode = (e.keyCode ? e.keyCode : e.which);\r\n\r\n\t\tif ($(window).width() <= 1025  || keycode == '13') {\r\n\t\t\twindow.location.href = mobileBookingUrl + getLinkerParam('?');\r\n\t\t}\r\n\t});\r\n\r\n\tif ($(window).width() > 1025 ) {\r\n\r\n\t\tvar onUpdateDatepicker = function(inst) {\r\n\t\t\tupdateDatePicker();\r\n\r\n\t\t\tif (!inst || triggeredRefresh) {\r\n\t\t\t\ttriggeredRefresh = false;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif (inst.id == 'booking_calendar_1') {\r\n\t\t\t\ttriggeredRefresh = true;\r\n\t\t\t\tsecond.datepicker('refresh');\r\n\t\t\t} else if (inst.id == 'booking_calendar_2') {\r\n\t\t\t\ttriggeredRefresh = true;\r\n\t\t\t\tfirst.datepicker('refresh');\r\n\t\t\t}\r\n\r\n\r\n\t\t}\r\n\r\n\t\tvar updateDatePicker = function() {\r\n\t\t\tupdateChosenDays();\r\n\t\t\tlabelPastDays(first);\r\n\t\t\tlabelPastDays(second);\r\n\t\t\tif (arriveDate) {\r\n\t\t\t\tarriveHeader.find('.date').text(' ' + $.datepicker._defaults.monthNamesShort[arriveDate.month-1] + ' ');\r\n\t\t\t\tarriveHeader.find('.num').text(arriveDate.day + dateSuffix);\r\n\r\n\t\t\t\tvar cloned = $.extend({}, arriveDate);\r\n\t\t\t\tvar nextDay = buildDateString(cloned, false);\r\n\r\n\t\t\t\tdepartHeader.find('.date').text(' ' + $.datepicker._defaults.monthNamesShort[moment(nextDay).add(1, 'day').format('M')-1] + ' ');\r\n\t\t\t\tdepartHeader.find('.num').text(moment(nextDay).add(1, 'day').format('D') + dateSuffix);\r\n\t\t\t}\r\n\r\n\t\t\tif (departDate) {\r\n\t\t\t\tdepartHeader.find('.date').text(' ' + $.datepicker._defaults.monthNamesShort[departDate.month-1] + ' ');\r\n\t\t\t\tdepartHeader.find('.num').text(departDate.day + dateSuffix);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tvar onSelect = function(date, picker) {\r\n\t\t\tif (stopClick) {\r\n\t\t\t\tstopClick = false;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tdate = splitDate(date);\r\n\r\n\t\t\tif (date.magnitude < today.magnitude)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tif (arriveDate && departDate) {\r\n\t\t\t\tdepartDate = null;\r\n\t\t\t\tarriveDate = date;\r\n\t\t\t\tstep_2();\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif (arriveDate && date.magnitude < arriveDate.magnitude) {\r\n\t\t\t\tdepartDate = arriveDate;\r\n\t\t\t\tarriveDate = date;\r\n\t\t\t\tstep_3();\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif (!arriveDate) {\r\n\t\t\t\tarriveDate = date;\r\n\t\t\t} else {\r\n\t\t\t\tdepartDate = date;\r\n\t\t\t}\r\n\r\n\t\t\tif (!arriveDate) {\r\n\t\t\t\tstep_1();\r\n\t\t\t} else if (!departDate) {\r\n\t\t\t\tstep_2();\r\n\t\t\t} else {\r\n\t\t\t\tstep_3();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction updateChosenDays() {\r\n\t\t\t// We want first day to be grey unless we're showing an orange range of days.\r\n\t\t\tif (arriveDate && departDate)\r\n\t\t\t\tfirst.find('.ui-datepicker-today.active-day').addClass('today-active');\r\n\r\n\t\t\tif (arriveDate) {\r\n\t\t\t\tgetDayElement(arriveDate).addClass('active-day');\r\n\t\t\t}\r\n\r\n\t\t\tif (departDate) {\r\n\t\t\t\tgetDayElement(departDate).addClass('active-day');\r\n\t\t\t}\r\n\r\n\t\t\tif (arriveDate && departDate) {\r\n\t\t\t\tvar betweenDate = jQuery.extend({}, arriveDate);\r\n\t\t\t\tvar limitCount = 0;\r\n\t\t\t\tvar limit = 100;\r\n\t\t\t\twhile (getDateMagnitude(betweenDate) < departDate.magnitude && limitCount < limit) {\r\n\t\t\t\t\tlimitCount += 1;\r\n\t\t\t\t\tbetweenDate.day += 1;\r\n\t\t\t\t\tvar element = getDayElement(betweenDate);\r\n\t\t\t\t\telement.addClass('active-day');\r\n\t\t\t\t\tif (!element.length) {\r\n\t\t\t\t\t\tbetweenDate.day = 0;\r\n\t\t\t\t\t\tbetweenDate.month += 1;\r\n\t\t\t\t\t\tif (betweenDate.month > 12) {\r\n\t\t\t\t\t\t\tbetweenDate.month = 1;\r\n\t\t\t\t\t\t\tbetweenDate.year += 1;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction getDayElement(date) {\r\n\t\t\t// Subtract 1 because the attribute jquery sets is a 0 index.\r\n\t\t\tvar dayElement = calendars.find('td:contains(' + date.day + ')[data-month=' + (date.month-1) + ']');\r\n\t\t\tvar filtered = [];\r\n\t\t\tdayElement.each(function() {\r\n\t\t\t\tif (parseInt($(this).text()) == date.day) {\r\n\t\t\t\t\tfiltered.push(this);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\treturn $(filtered);\r\n\t\t}\r\n\r\n\t\tfunction splitDate(date) {\r\n\t\t\tvar split = date.split('/');\r\n\t\t\tif (language == 'ja') {\r\n\t\t\t\tdate = {month: parseInt(split[1]), day: parseInt(split[2]), year: parseInt(split[0])};\r\n\t\t\t\tdate.magnitude = getDateMagnitude(date);\r\n\t\t\t} else {\r\n\t\t\t\tdate = {month: parseInt(split[0]), day: parseInt(split[1]), year: parseInt(split[2])};\r\n\t\t\t\tdate.magnitude = getDateMagnitude(date);\r\n\t\t\t}\r\n\t\t\treturn date;\r\n\t\t}\r\n\r\n\t\t// Get a number representing which date comes before/after other dates.\r\n\t\tfunction getDateMagnitude(date) {\r\n\t\t\tfunction pad(num, size) {\r\n\t\t\t\tvar s = \"000000000\" + num;\r\n\t\t\t\treturn s.substr(s.length-size);\r\n\t\t\t}\r\n\t\t\tvar magnitude = parseInt(date.year + pad(date.month, 2) + pad(date.day, 2));\r\n\t\t\treturn magnitude;\r\n\t\t}\r\n\r\n\t\tfunction labelPastDays(calendar) {\r\n\t\t\tvar today = calendar.find('.ui-datepicker-today');\r\n\t\t\tif (!today.length)\r\n\t\t\t\treturn;\r\n\t\t\tvar calendarDays = calendar.find('td');\r\n\t\t\tvar previousDays = [];\r\n\r\n\t\t\tfor (var i=0; i<calendarDays.length; i++) {\r\n\t\t\t\tif (calendarDays.eq(i)[0] == today[0]) {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tpreviousDays.push(calendarDays[i]);\r\n\t\t\t}\r\n\r\n\t\t\t$(previousDays).addClass('past');\r\n\t\t}\r\n\r\n\t\t// Make past days not respond to clicks\r\n\t\t$('.calendars_panel').on('mousedown', '.past', function(e) {\r\n\t\t\tstopClick = true;\r\n\t\t\te.stopPropagation();\r\n\t\t\te.preventDefault();\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tif (language == 'ja') {\r\n\t\t\t$.datepicker.setDefaults($.datepicker.regional['ja']);\r\n\t\t} else {\r\n\t\t\t$.datepicker.regional[''].dayNamesMin = dayNames;\r\n\t\t\t$.datepicker.setDefaults($.datepicker.regional['']);\r\n\t\t}\r\n\r\n\t\tvar first = $('#booking_calendar_1').datepicker({\r\n\t\t\tonSelect: onSelect,\r\n\t\t\t// dayNamesMin: dayNames,\r\n\t\t\tminDate: new Date(2017, 10 - 1, 1),\r\n\t\t});\r\n\t\tvar second = $('#booking_calendar_2').datepicker({\r\n\t\t\tonSelect: onSelect,\r\n\t\t\tminDate: new Date(2017, 11 - 1, 1),\r\n\t\t\tdefaultDate: '+1m',\r\n\t\t\t// dayNamesMin: dayNames\r\n\t\t});\r\n\r\n\r\n\t\tfunction highlightInitialDays() {\r\n\t\t\tvar dayElements = first.find('td:not(.ui-datepicker-unselectable)');\r\n\t\t\tdayElements.each(function(i) {\r\n\t\t\t\t// if ($(this).hasClass('ui-datepicker-current-day')) {\r\n\t\t\t\t// \t$(this).trigger('click');\r\n\t\t\t\t\t// Commented code was for selecting the next available day. We changed how this works.\r\n\t\t\t\t\t// dayElements = first.find('td:not(.ui-datepicker-unselectable)');\r\n\t\t\t\t\t// if (dayElements.eq(i+1).length) {\r\n\t\t\t\t\t// \tdayElements.eq(i+1).trigger('click');\r\n\t\t\t\t\t// } else {\r\n\t\t\t\t\t// \tsecond.find('td:not(.ui-datepicker-unselectable)').eq(0).trigger('click');\r\n\t\t\t\t\t// }\r\n\t\t\t\t// }\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tarriveHeader.click(step_1);\r\n\t\tdepartHeader.click(step_2);\r\n\t\tguestsHeader.click(step_4);\r\n\r\n\t\tfunction step_1() {\r\n\t\t\twrapper.find('.guests, .arrive, .depart').addClass('disabled');\r\n\t\t\twrapper.find('.arrive').removeClass('disabled');\r\n\t\t\tbookingWindow.addClass('show_calendar').removeClass('show_guests');\r\n\t\t\tupdateDatePicker();\r\n\t\t}\r\n\r\n\t\tfunction step_2() {\r\n\t\t\twrapper.find('.guests, .arrive, .depart').addClass('disabled');\r\n\t\t\twrapper.find('.depart').removeClass('disabled');\r\n\t\t\tbookingWindow.addClass('show_calendar').removeClass('show_guests');\r\n\t\t}\r\n\r\n\t\tfunction step_3() {\r\n\t\t\twrapper.find('.guests, .arrive, .depart').addClass('disabled');\r\n\t\t\twrapper.find('.guests').removeClass('disabled');\r\n\t\t}\r\n\r\n\t\tfunction step_4() {\r\n\t\t\twrapper.find('.guests, .arrive, .depart').addClass('disabled');\r\n\t\t\twrapper.find('.guests').removeClass('disabled');\r\n\t\t\tbookingWindow.removeClass('show_calendar').addClass('show_guests');\r\n\t\t}\r\n\r\n\t\tfunction incrementDate(date) {\r\n\t\t\tdate.day = 1;\r\n\t\t\tdate.month += 1;\r\n\t\t\tif (date.month == 13) {\r\n\t\t\t\tdate.month = 1;\r\n\t\t\t\tdate.year += 1;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction decrementDate(date) {\r\n\t\t\tdate.day = 1;\r\n\t\t\tdate.month -= 1;\r\n\t\t\tif (date.month == 0) {\r\n\t\t\t\tdate.month = 12;\r\n\t\t\t\tdate.year -= 1;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction buildDateString(date, localized) {\r\n\t\t\tif (language == 'ja' && localized) {\r\n\t\t\t\tvar dateString = date.year + '/' + date.month + '/' + date.day;\r\n\t\t\t} else {\r\n\t\t\t\tvar dateString = date.month + '/' + date.day + '/' + date.year;\r\n\t\t\t}\r\n\t\t\treturn dateString;\r\n\t\t}\r\n\r\n\t\tfunction getLengthOfStay(arrival, departure){\r\n\t\t\tvar msPerDay = 1000 * 60 * 60 * 24;\r\n\t\t\tarriveDate = new Date(arrival.year, arrival.month-1, arrival.day);\r\n\t\t\tdepartDate = new Date(departure.year, departure.month-1, departure.day);\r\n\t\t\tvar milli_secs = departDate.getTime() - arriveDate.getTime();\r\n\t\t  \r\n\t\t\treturn Math.floor(milli_secs / msPerDay);\r\n\t\t}\r\n\r\n\t\tnextStep.click(function() {\r\n\t\t\tincrementDate(displayedDate);\r\n\t\t\tvar cloned = $.extend({}, displayedDate);\r\n\t\t\tvar dateString1 = buildDateString(displayedDate, true);\r\n\t\t\tincrementDate(cloned);\r\n\t\t\tvar dateString2 = buildDateString(cloned, true);\r\n\t\t\tfirst.datepicker(\"setDate\", dateString1);\r\n\t\t\tsecond.datepicker(\"setDate\", dateString2);\r\n\t\t\tprevStep.removeClass('hide');\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tprevStep.click(function() {\r\n\t\t\tdecrementDate(displayedDate);\r\n\t\t\tif (today.month == displayedDate.month && today.year == displayedDate.year)\r\n\t\t\t\tprevStep.addClass('hide');\r\n\t\t\tvar cloned = $.extend({}, displayedDate);\r\n\t\t\tvar dateString1 = buildDateString(displayedDate, true);\r\n\t\t\tincrementDate(cloned);\r\n\t\t\tvar dateString2 = buildDateString(cloned, true);\r\n\t\t\tfirst.datepicker(\"setDate\", dateString1);\r\n\t\t\tsecond.datepicker(\"setDate\", dateString2);\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tguestButtons.click(function() {\r\n\t\t\tguestButtons.removeClass('selected');\r\n\t\t\tguests = $(this).text();\r\n\t\t\t$(this).addClass('selected');\r\n\t\t\twrapper.find('.guests .num').text(guests + guestSuffix);\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tbookingExperienceBookButton.click(function() {\r\n\t\t\tvar builtBookingUrl = bookingUrl;\r\n\t\t\tvar promoCode = $('#promo').val();\r\n\t\t\tvar groupCode = $('#group').val();\r\n\r\n\t\t\tbuiltBookingUrl += '&adult=' + guests;\r\n\r\n\t\t\tif (language == 'ja')\r\n\t\t\t\tbuiltBookingUrl += '&locale=ja';\r\n\r\n\t\t\tif (promoCode)\r\n\t\t\t\tbuiltBookingUrl += '&promo=' + promoCode;\r\n\t\t\t\r\n\t\t\tif (groupCode)\r\n\t\t\t\tbuiltBookingUrl += '&group=' + groupCode;\r\n\r\n\t\t\tif (arriveDate){\r\n\t\t\t\tbuiltBookingUrl += '&arrive=' + arriveDate.year + '-' + arriveDate.month + '-' + arriveDate.day;\r\n\t\t\t} else {\r\n\t\t\t\tarriveDate = new Date(today.year, today.month, today.day);\r\n\t\t\t\tarriveDate = {day: arriveDate.getDate(), month: arriveDate.getMonth(), year: arriveDate.getFullYear()};\r\n\t\t\t\tbuiltBookingUrl += '&arrive=' + arriveDate.year + '-' + arriveDate.month + '-' + arriveDate.day;\r\n\t\t\t}\r\n\r\n\t\t\tif (departDate){\r\n\t\t\t\tdepartDate = new Date(departDate.year, departDate.month, departDate.day);\r\n\t\t\t\tdepartDate = {day: departDate.getDate(), month: departDate.getMonth(), year: departDate.getFullYear()};\r\n\t\t\t\tbuiltBookingUrl += '&depart=' + departDate.year + '-' + departDate.month + '-' + departDate.day;\r\n\t\t\t} else {\r\n\t\t\t\tdepartDate = new Date(arriveDate.year, arriveDate.month, arriveDate.day+1);\r\n\t\t\t\tdepartDate = {day: departDate.getDate(), month: departDate.getMonth(), year: departDate.getFullYear()};\r\n\t\t\t\tbuiltBookingUrl += '&depart=' + departDate.year + '-' + departDate.month + '-' + departDate.day;\r\n\t\t\t}\r\n\r\n\t\t\ttry {\r\n\t\t\t\t_gatag.xlink(builtBookingUrl + getLinkerParam('&'));\r\n\t\t\t} catch (e) {\r\n\t\t\t\twindow.location = builtBookingUrl + getLinkerParam('&');\r\n\t\t\t}\r\n\r\n\t\t\tcloseBookingExperience();\r\n\t\t});\r\n\r\n\t\tfunction closeBookingExperience() {\r\n\t\t\t$('body').removeClass('modal_open');\r\n\t\t\t$(window).scrollTop(topScroll);\r\n\t\t\t$('header').removeClass('booking_experience_open');\r\n\t\t\twrapper.removeClass('show start_showing');\r\n\t\t\t// Delay resetting the step till after the wrapper is hidden\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\tstep_1();\r\n\t\t\t}, 500);\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tfunction openBookingExperience(e) {\r\n\t\t\tif($(e.target).hasClass('my_reservation'))\r\n\t\t\t\treturn true;\r\n\r\n\t\t\twrapper.addClass('start_showing');\r\n\t\t\tarriveHeader.click();\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\twrapper.addClass('show');\r\n\t\t\t});\r\n\t\t\t$('header').addClass('booking_experience_open');\r\n\t\t\ttopScroll = $(window).scrollTop();\r\n\t\t\t$('.ui-datepicker-today a').get(0).focus();\r\n\t\t\t$('body').addClass('modal_open');\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tbookingExperienceLaunchers.click(openBookingExperience);\r\n\r\n\t\tclose.click(function() {\r\n\t\t\tcloseBookingExperience();\r\n\t\t});\r\n\r\n\t\t// Insert an intermediary so we can respond to the datepicker redrawing.\r\n\t\t$.datepicker.__updateDatepicker = $.datepicker._updateDatepicker;\r\n\t\t$.datepicker._updateDatepicker = function(inst) {\r\n\t\t\t$.datepicker.__updateDatepicker(inst);\r\n\t\t\tonUpdateDatepicker(inst);\r\n\t\t}\r\n\r\n\t\t$('[href=#promo]').click(function() {\r\n\t\t\t$(this).parents('li').siblings().removeClass('show_input')\r\n\t\t\t$(this).parents('li').addClass('show_input').find('input').focus();\r\n\t\t\treturn false;\r\n\t\t});\r\n\t\t$('#promo_form').submit(function() {\r\n\t\t\tbookingExperienceBookButton.trigger('click');\r\n\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\t$('[href=#group]').click(function() {\r\n\t\t\t$(this).parents('li').siblings().removeClass('show_input')\r\n\t\t\t$(this).parents('li').addClass('show_input').find('input').focus();\r\n\t\t\treturn false;\r\n\t\t});\r\n\t\t$('#group_form').submit(function() {\r\n\t\t\tbookingExperienceBookButton.trigger('click');\r\n\t\t\treturn false;\r\n\t\t});\r\n\t\t// $('[href=#modify]').click(function() {\r\n\t\t// \t$(this).parents('li').siblings().removeClass('show_input')\r\n\t\t// \t$(this).parents('li').addClass('show_input').find('input').first().focus();\r\n\t\t// \treturn false;\r\n\t\t// });\r\n\r\n\t\t// Init booking bar dates.\r\n\t\t$('.arrive .num').text(' ' + moment().format('D') + dateSuffix);\r\n\t\t$('.arrive .date').text(' ' + $.datepicker._defaults.monthNamesShort[moment().format('M')-1]);\r\n\t\t$('.depart .num').text(' ' + moment().add(1, 'days').format('D') + dateSuffix);\r\n\t\t$('.depart .date').text(' ' + $.datepicker._defaults.monthNamesShort[moment().add(1, 'day').format('M')-1]);\r\n\r\n\t\t// bookingBar.find('.arrive .date').text(' ' + $.datepicker._defaults.monthNamesShort[moment().format('M')-1]);\r\n\t\t// bookingBar.find('.depart .date').text(' ' + $.datepicker._defaults.monthNamesShort[moment().add(1, 'day').format('M')-1]);\r\n\r\n\t\tupdateDatePicker();\r\n\t\thighlightInitialDays();\r\n\t}\r\n\r\n\t$('#my_reservation').submit(function() {\r\n\t\temail = $(this).find('#my_reservation_email').val()\r\n\t\tconfirmation_code = $(this).find('#my_reservation_confirmation').val()\r\n\t\terror = $(this).find('.error');\r\n\r\n\t\tif(email == \"reservations@alohilaniresort.com\"){\r\n\t\t\terror.text('Please enter a valid email address.');\r\n\t\t\treturn false;\r\n\t\t} else {\r\n\t\t\terror.text();\r\n\t\t}\r\n\r\n\t\texistingBooking(email, confirmation_code)\r\n\t\treturn false;\r\n\t});\r\n\r\n\tfunction existingBooking(email, confirmation_code){\r\n\t\tvar url = bookingUrl + 'bookings/retrieve?'\r\n\r\n\t\tif (email)\r\n\t\t\turl += 'email=' + email\r\n\t\tif (confirmation_code)\r\n\t\t\turl += '&confirmation_code=' + confirmation_code\r\n\r\n\t\tif (typeof ga != 'undefined') {\r\n\t\t\tif (typeof ga.getAll == 'function') {\r\n\t\t\t\tvar tracker = ga.getAll()[0];\r\n\t\t\t\tif (typeof tracker != 'undefined') {\r\n\t\t\t\t\turl += '&' + tracker.get('linkerParam');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tvar bookingWin = window.open(url, '_blank');\r\n\t\tbookingWin.focus();\r\n\r\n\t\tcloseBookingExperience();\r\n\r\n\t\treturn false\r\n\t}\r\n});","jQuery(function($) {\r\n\r\n  const checklistGrids = $('[data-checklist-grid]')\r\n\r\n  function checklistGrid(selector) {\r\n    const checklistGrid = $(selector)\r\n    const viewMoreToggle = checklistGrid.find('[data-view-more]')\r\n    const expandableGridItems = checklistGrid.find('[data-expandable-grid-items]')\r\n\r\n    $(window).load(function() {\r\n      const expandableGridItemsHeight = expandableGridItems.outerHeight()\r\n      //set data height attribute to height\r\n      expandableGridItems.attr('data-height', expandableGridItemsHeight)\r\n      expandableGridItems.addClass('hidden')\r\n    })\r\n\r\n    viewMoreToggle.on('click', function() {\r\n      if(expandableGridItems.height() == expandableGridItems.attr('data-height')) {\r\n        expandableGridItems.height(0)\r\n      } else {\r\n        expandableGridItems.height(expandableGridItems.attr('data-height'))\r\n      }\r\n\r\n      expandableGridItems.toggleClass('hidden')\r\n      viewMoreToggle.toggleClass('active')\r\n\r\n      if(viewMoreToggle.hasClass('active')) {\r\n        viewMoreToggle.find('.view_more_text').text('View Less')\r\n      } else {\r\n        viewMoreToggle.find('.view_more_text').text('View More')\r\n      }\r\n    })\r\n  }\r\n\r\n  if(checklistGrids.length) {\r\n    //for each checlistGrids item pass selector into checklistGrid function\r\n    checklistGrids.each(function() {\r\n      new checklistGrid('#' + $(this).attr('id'))\r\n    })\r\n  }\r\n});\r\n","jQuery(function($) {\r\n\r\n  const contentListings = $('[data-content-listing-item]')\r\n\r\n  function contentListing(selector) {\r\n    const contentListing = $(selector)\r\n    const readMoreToggle = contentListing.find('[data-read-more]')\r\n    const expandableContent = contentListing.find('[data-expandable-content]')\r\n    const mediaItems = contentListing.find('.media')\r\n\r\n    mediaItems.on('click', function() {\r\n      //if has class video_play return false\r\n      if($(this).hasClass('video_playing')) {\r\n        return false\r\n      }\r\n      \r\n      //find iframe data-src attribute and populate src attribute with it, also add class video-active to media item\r\n      const iframeSrc = $(this).find('iframe').attr('data-src')\r\n      $(this).find('iframe').attr('src', iframeSrc)\r\n      $(this).addClass('video_playing')\r\n    })\r\n\r\n    $(window).on('load', function() {\r\n      const expandableContentHeight = expandableContent.outerHeight()\r\n      expandableContent.attr('data-height', expandableContentHeight)\r\n      expandableContent.addClass('truncate')\r\n\r\n      const truncatedContentHeight = expandableContent.outerHeight()\r\n      expandableContent.attr('data-truncated-height', truncatedContentHeight)\r\n\r\n      if(expandableContentHeight > 0 && expandableContentHeight > truncatedContentHeight) {\r\n        expandableContent.height(expandableContent.attr('data-truncated-height'))\r\n        readMoreToggle.removeClass('hidden')\r\n        expandableContent.parent().addClass('expandable')\r\n      }\r\n    })\r\n\r\n    readMoreToggle.on('click', function() {\r\n      if(expandableContent.height() == expandableContent.attr('data-height')) {\r\n        expandableContent.height(expandableContent.attr('data-truncated-height'))\r\n      } else {\r\n        expandableContent.height(expandableContent.attr('data-height'))\r\n      }\r\n\r\n      expandableContent.toggleClass('truncate')\r\n\r\n      if(expandableContent.hasClass('truncate')) {\r\n        readMoreToggle.text('Read More')\r\n      } else {\r\n        readMoreToggle.text('Read Less')\r\n      }\r\n      // readMoreToggle.toggleClass('active')\r\n    })\r\n  }\r\n\r\n  if(contentListings.length) {\r\n    //for each checlistGrids item pass selector into contentListing function\r\n    contentListings.each(function() {\r\n      new contentListing('#' + $(this).attr('id'))\r\n    })\r\n  }\r\n});\r\n","$(function() {\r\n\t$(document).on('click', '#filter_mobile_button', function(e) {\r\n\t\te.stopPropagation();\r\n\t\t$('#event_category_nav nav').toggleClass('open');\r\n\t})\r\n\r\n\t$(document).click(function(){\r\n\t\tif($('#event_category_nav nav').hasClass('open')){\r\n\t\t\t$('#event_category_nav nav').toggleClass('open');\r\n\t\t}\r\n\t})\r\n});","jQuery(function($) {\r\n\r\n  if (!$(\".faqs\").length) return;\r\n\r\n  var expandableContent = $(\".faqs\");\r\n  var toggles = expandableContent.find(\"h3\");\r\n\r\n  // Function to recalculate heights\r\n  function recalculateHeights() {\r\n    toggles.each(function() {\r\n      var toggle = $(this);\r\n      var content = toggle.next(\".expandable\");\r\n      var height = content[0].scrollHeight;\r\n      content.attr(\"data-height\", height);\r\n\r\n      // If the toggle is open, update the height\r\n      if (toggle.hasClass(\"open\")) {\r\n        content.css(\"height\", height);\r\n      }\r\n    });\r\n  }\r\n\r\n  // Initial calculation of heights\r\n  recalculateHeights();\r\n\r\n  // Recalculate heights on window resize\r\n  $(window).resize(function() {\r\n    recalculateHeights();\r\n  });\r\n\r\n  toggles.click(function() {\r\n    var toggle = $(this);\r\n    var content = toggle.next(\".expandable\");\r\n\r\n    if (!toggle.hasClass(\"open\")) {\r\n      // Remove open class from all other faqs and reset height of all other content\r\n      toggles.not(toggle).removeClass(\"open\").parent().removeClass('open');\r\n      toggles.not(toggle).next(\".expandable\").css(\"height\", 0);\r\n\r\n      toggle.addClass(\"open\").parent().addClass('open');\r\n      content.css(\"height\", content.attr(\"data-height\"));\r\n\r\n      // Loop through siblings and add data-order attribute based on how far from the clicked toggle they are\r\n      toggle.parent().siblings('.faq').each(function() {\r\n        var sibling = $(this);\r\n        var order = sibling.index() - toggle.parent().index();\r\n\r\n        // Convert negative number to positive\r\n        if (order < 0) {\r\n          order = order * -1;\r\n        }\r\n\r\n        sibling.attr(\"data-order\", order).addClass('closed');\r\n        toggle.parent().attr(\"data-order\", 0);\r\n      });\r\n\r\n      return;\r\n    } else {\r\n      toggle.removeClass(\"open\").parent().removeClass('open');\r\n      content.css(\"height\", 0);\r\n      // Remove class closed from all siblings\r\n      toggle.parent().siblings('.faq').removeClass('closed');\r\n\r\n      //hide all other faqs\r\n      // toggles.not(toggle).removeClass(\"open\");\r\n      // toggle.toggleClass(\"open\");\r\n    }\r\n  });\r\n});\r\n","$(function() {\r\n\tif (!$body.hasClass('page-gallery'))\r\n\t\treturn;\r\n\r\n\t$body = $('body');\r\n\r\n\tvar initGallery = function() {\r\n\t\t// Fix issue with videos loading in at wrong size initially.\r\n\t\t$('iframe').each(function() {\r\n\t\t\t$(this).load(function() {\r\n\t\t\t\tresizeElement(this);\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\tvar slider = $('.gallery_slider');\r\n\t\tvar modal = $('.gallery_modal');\r\n\t\tvar activeCategory = 'resort';\r\n\t\tvar galleryThumbs = $('.gallery_item');\r\n\t\tvar galleryLinks = $('.gallery_link');\r\n\t\tvar filteredGalleryThumbs = galleryThumbs;\r\n\t\tvar categories = $('#gallery_categories a');\r\n\t\tvar clicked = null;\r\n\t\tvar mobile_size = 480;\r\n\r\n\t\t$('#filter_mobile_button').click(function(){\r\n\t\t\t$('#gallery_categories nav').toggleClass('open');\r\n\t\t});\r\n\r\n\t\tvar updateUrl = function(url, image, category) {\r\n\t\t\tif (Number.isInteger(parseInt(image))) {\r\n\t\t\t\turl += '?image=' + image;\r\n\t\t\t}\r\n\r\n\t\t\tif (category && category != '#')\r\n\t\t\t\turl += category;\r\n\r\n\t\t\tif (url != window.location.href)\r\n\t\t\t\twindow.history.pushState('', '', url);\r\n\t\t}\r\n\t\tvar filterCategory = function(element) {\r\n\t\t\tgalleryThumbs.removeClass('appear');\r\n\t\t\tif (element) {\r\n\t\t\t\telement = $(element);\r\n\t\t\t\tactiveCategory = element.attr('href').slice(1);\r\n\t\t\t}\r\n\r\n\t\t\tgalleryThumbs.hide().removeClass('first_item').removeClass('second_item');\r\n\t\t\tfilteredGalleryThumbs = galleryThumbs.filter('[cat=' + activeCategory + ']');\r\n\t\t\tfilteredGalleryThumbs.show().eq(0).addClass('first_item');\r\n\t\t\tfilteredGalleryThumbs.show().eq(1).addClass('second_item');\r\n\r\n\t\t\tthumbsToLoad = filteredGalleryThumbs.find('[load-on-show]:not(.loaded)');\r\n\t\t\tthumbsToLoad.each(function() {\r\n\t\t\t\tvar image = $(this);\r\n\t\t\t\twindow.lazyLoader.lazyLoad(image, image.attr('load-on-show'));\r\n\t\t\t\timage.on('lazy-loaded', function() {\r\n\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\timage.addClass('delayed_loaded');\r\n\t\t\t\t\t}, 1000);\r\n\t\t\t\t});\r\n\t\t\t})\r\n\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\tfilteredGalleryThumbs.addClass('appear');\r\n\t\t\t}, 50);\r\n\r\n\t\t\tupdateUrl(document.location.origin + document.location.pathname, currentUrl.query(true).image, '#' + activeCategory);\r\n\t\t}\r\n\r\n\t\tcategories.click(function() {\r\n\t\t\tcategories.removeClass('active_category');\r\n\t\t\t$(this).addClass('active_category');\r\n\t\t\tfilterCategory(this);\r\n\t\t});\r\n\r\n\r\n\t\tvar stopVideo = function (element) {\r\n\t\t\tvar iframe = element.find('.slick-current iframe');\r\n\t\t\tif (iframe.length) {\r\n\t\t\t\tvar func = 'stopVideo';\r\n\t\t\t\tiframe[0].contentWindow.postMessage('{\"event\":\"command\",\"func\":\"' + func + '\",\"args\":\"\"}','*');\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tvar stopStream = function (element) {\r\n\t\t\telement.find('img.stream').attr('src', '');\r\n\t\t}\r\n\r\n\t\t// Activate the proper category and imageon page load\r\n\t\tvar currentUrl = URI(document.location);\r\n\t\tif (currentUrl.hash()) {\r\n\t\t\tvar currentlySelected = categories.filter('[href=\"' + currentUrl.hash() + '\"]');\r\n\r\n\t\t\tif (currentlySelected.length) {\r\n\t\t\t\tcurrentlySelected.trigger('click')\r\n\t\t\t} else {\r\n\t\t\t\tcategories.eq(0).trigger('click');\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tcategories.eq(0).trigger('click');\r\n\t\t}\r\n\r\n\t\tgalleryLinks.click(function(e) {\r\n\t\t\tif ($window.width() > mobile_size)\r\n\t\t\t\te.preventDefault();\r\n\t\t});\r\n\r\n\t\tif ($window.width() > mobile_size) {\r\n\r\n\t\t\tvar ieVersion = ie_version();\r\n\t\t\tif (ieVersion && ieVersion != 'edge') {\r\n\t\t\t\t$('.ie_message').addClass('is_ie');\r\n\t\t\t\t$('.open_gallery_item .ie_only').addClass('is_ie');\r\n\t\t\t\t$('.open_gallery_item .not_ie').hide();\r\n\t\t\t}\r\n\r\n\t\t\t// $('#gallery_categories').accessibleScaffold({\r\n\t\t\t// \titems: 'a',\r\n\t\t\t// \torientation: 'horizontal',\r\n\t\t\t// \tonEnterKey: function(item) {\r\n\t\t\t// \t\tfilterCategory(item);\r\n\t\t\t// \t}\r\n\t\t\t// });\r\n\r\n\t\t\t$(slider).on('init', function() {\r\n\t\t\t\tslider.find('cite').attr(\"tabindex\", -1);\r\n\t\t\t\tslider.find('.slick-current cite').attr(\"tabindex\", 0).focus();\r\n\t\t\t});\r\n\r\n\t\t\tinitializeSlick(slider, {\r\n\t\t\t\taccessibility: true,\r\n\t\t\t\tdots: false,\r\n\t\t\t\tinfinite: true,\r\n\t\t\t\tspeed: 700,\r\n\t\t\t\tslidesToShow: 1,\r\n\t\t\t\tarrows: true,\r\n\t\t\t\tfade: true,\r\n\t\t\t\tnextArrow: '<button class=\"slider_arrow next_arrow\">Next</button>',\r\n\t\t\t\tprevArrow: '<button class=\"slider_arrow prev_arrow\">Previous</button>',\r\n\t\t\t\t// focusOnSelect: true,\r\n\t\t\t});\r\n\r\n\t\t\tvar openSlider = function(index) {\r\n\t\t\t\tclicked = index;\r\n\t\t\t\tslider.slick('slickUnfilter');\r\n\t\t\t\tif (activeCategory != 'all')\r\n\t\t\t\t\tslider.slick('slickFilter', '[cat=' + activeCategory + ']');\r\n\t\t\t\tslider.slick('slickGoTo', index);\r\n\t\t\t\tmodal.addClass('open');\r\n\t\t\t\tslider.focus();\r\n\r\n\t\t\t\tslider.find('.cite').attr(\"tabindex\", 0);\r\n\t\t\t\tslider.find('.slick-current cite').focus();\r\n\r\n\t\t\t\tslider.find('.slick-current').find('.alert_bar').addClass(\"visible\");\r\n\r\n\t\t\t\tvar img = slider.find('.slick-current').find('img.gallery_image');\r\n\t\t\t\tif (!img.attr('src'))\r\n\t\t\t\t\twindow.lazyLoader.lazyLoad(img, img.attr('load-on-show'));\r\n\r\n\t\t\t\tif (slider.find('video').length)\r\n\t\t\t\t\tslider.find('video').get(0).play();\r\n\r\n\t\t\t\tmanageStreamSrcAttribute(null, index);\r\n\r\n\t\t\t\t$body.addClass('modal_open');\r\n\r\n\t\t\t\t$body.find(\"*[tabindex='0'], a, button, input, .site_container > .alert_bar\").not('.gallery_modal, .gallery_modal *').attr(\"tabindex-changed\", true).attr(\"tabindex\", -1);\r\n\r\n\t\t\t\t// Update url so user can link to this specific image.\r\n\t\t\t\tupdateUrl(document.location.origin + document.location.pathname, index, document.location.hash);\r\n\t\t\t}\r\n\r\n\t\t\t// var thumbsComponent = $('section.gallery').accessibleScaffold({\r\n\t\t\t// \titems: 'div.gallery_item',\r\n\t\t\t// \torientation: 'horizontal',\r\n\t\t\t// \tariaRole: 'Grid',\r\n\t\t\t// \tonEnterKey: function(elem, i) {\r\n\t\t\t// \t\topenSlider(i);\r\n\t\t\t// \t}\r\n\t\t\t// });\r\n\r\n\t\t\t//On slide change, check if video and stop playing\r\n\t\t\t$(slider).on('beforeChange', function(event, slick, currentSlide, nextSlide){\r\n\t\t\t\tvar slideCat = $('.slick-current').attr('cat');\r\n\t\t\t\tif(slideCat == \"video\"){\r\n\t\t\t  \t\tstopVideo(modal);\r\n\t\t\t  \t};\r\n\r\n\t\t\t\tslider.find('.slick-current').find('.alert_bar').removeClass(\"visible\");\r\n\t\t\t\tslider.find('.open_gallery_item').eq(nextSlide).find('.alert_bar').addClass(\"visible\");\r\n\r\n\t\t\t\tvar img = slider.find('.open_gallery_item').eq(nextSlide).find('img.gallery_image');\r\n\r\n\t\t\t\tif (!img.attr('src'))\r\n\t\t\t\t\twindow.lazyLoader.lazyLoad(img, img.attr('load-on-show'));\r\n\r\n\t\t\t\tmanageStreamSrcAttribute(currentSlide, nextSlide);\r\n\r\n\t\t\t});\r\n\r\n\t\t\t$(slider).on('afterChange', function(event, slick, currentSlide, nextSlide){\r\n\t\t\t\tslider.find('.cite').attr(\"tabindex\", 0);\r\n\t\t\t\tslider.find('.slick-current cite').focus();\r\n\t\t\t});\r\n\r\n\t\t\tvar manageStreamSrcAttribute = function(stop, start) {\r\n\t\t\t\tif (activeCategory == 'live-cam') {\r\n\t\t\t\t\tvar streamImages = $('.open_gallery_item[cat=\"live-cam\"]');\r\n\t\t\t\t\tvar nextStreamImage = streamImages.eq(start).find('img.stream');\r\n\r\n\t\t\t\t\tif (nextStreamImage.length)\r\n\t\t\t\t\t\tnextStreamImage.attr('src', nextStreamImage.attr('_src'));\r\n\r\n\t\t\t\t\tif (stop !== null) {\r\n\t\t\t\t\t\tvar prevStreamImage = streamImages.eq(stop).find('img.stream');\r\n\t\t\t\t\t\tprevStreamImage.attr('src', '');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tvar closeModal = function() {\r\n\t\t\t\tmodal.removeClass('open');\r\n\t\t\t\t$body.removeClass('modal_open');\r\n\t\t\t\tstopVideo(modal);\r\n\t\t\t\tstopStream(modal);\r\n\t\t\t\tupdateUrl(document.location.origin + document.location.pathname, null, document.location.hash);\r\n\t\t\t\t$body.find(\"*[tabindex-changed='true'], a, button, input\").not('.gallery_modal, .gallery_modal *').attr(\"tabindex\", 0);\r\n\t\t\t}\r\n\r\n\t\t\tmodal.click(function(e) {\r\n\t\t\t\tif ($(e.target).hasClass('gallery_modal') || $(e.target).hasClass('close')) {\r\n\t\t\t\t\tcloseModal();\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t$('.close.gallery_close').on(\"click keypress\", function(e) {\r\n\t\t\t\tcloseModal();\r\n\t\t\t});\r\n\r\n\t\t\t$('.gallery_image').on('lazy-loaded', function(e) {\r\n\t\t\t\t$(e.target).parent().parent().addClass('loaded');\r\n\t\t\t});\r\n\r\n\t\t\t$(window).keydown(function(e) {\r\n\t\t\t\tif (e.key == 'Escape') {\r\n\t\t\t\t\tcloseModal();\r\n\t\t\t\t\tthumbsComponent.api.activate(clicked);\r\n\t\t\t\t\tclicked = null;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tgalleryThumbs.on(\"click keypress\", function(e) {\r\n\t\t\t\tvar index = filteredGalleryThumbs.index(e.currentTarget);\r\n\t\t\t\topenSlider(index);\r\n\t\t\t\treturn false;\r\n\t\t\t})\r\n\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\tvar initialImage = currentUrl.query(true).image;\r\n\r\n\t\t\t\tif (initialImage) {\r\n\t\t\t\t\tgalleryThumbs.filter(':visible').eq(initialImage).trigger('click');\r\n\t\t\t\t}\r\n\t\t\t}, 100);\r\n\t\t} else {\r\n\t\t\t$('.gallery_item.webcam').on(\"click keypress\", function() {\r\n\t\t\t\tvar index = $(this).index();\r\n\t\t\t\tvar src = $('.open_gallery_item').eq(index).find('.stream_wrapper iframe').attr('src');\r\n\r\n\t\t\t\twindow.open(\r\n\t\t\t\t\tsrc,\r\n\t\t\t\t\t'_blank'\r\n\t\t\t\t);\r\n\t\t\t\treturn false;\r\n\t\t\t})\r\n\t\t}\r\n\r\n\r\n\t\tsetTimeout(function() {\r\n\t\t\tif ($window.width() < mobile_size) {\r\n\t\t\t\tvar currentImage = currentUrl.query(true).image\r\n\t\t\t\tconsole.log('doneLoading', currentImage, galleryThumbs.filter(':visible').eq(currentImage), galleryThumbs.eq(currentImage).offset())\r\n\t\t\t\tif (Number.isInteger(parseInt(currentImage))) {\r\n\t\t\t\t\t$(window).scrollTop(galleryThumbs.filter(':visible').eq(currentImage).offset().top - 105);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, 2000);\r\n\r\n\t\t$(window).load(function() {\r\n\t\t\timagesToLoad = $('.gallery [load-on-show]:not(.loaded)');\r\n\r\n\t\t\tvar continueLoading = function(i) {\r\n\t\t\t\tvar toLoad = imagesToLoad.eq(i);\r\n\r\n\t\t\t\tif (!toLoad.length) {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (toLoad.hasClass('loaded'))\r\n\t\t\t\t\treturn continueLoading(i+1);\r\n\r\n\t\t\t\twindow.lazyLoader.lazyLoad(toLoad, toLoad.attr('load-on-show'));\r\n\t\t\t\ttoLoad.on('lazy-loaded', function() {\r\n\t\t\t\t\ttoLoad.addClass('delayed_loaded');\r\n\t\t\t\t\tcontinueLoading(i+1);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tcontinueLoading(0);\r\n\t\t});\r\n\t}\r\n\r\n\tvar waitForReady = setInterval(function() {\r\n\t\tif ($('body').hasClass('ready')) {\r\n\t\t\tinitGallery();\r\n\t\t\tclearInterval(waitForReady);\r\n\t\t}\r\n\t}, 50);\r\n});","jQuery(function($) {\r\n  //on scroll of window if scrollTop is greater than half of viewport height, add fade_out class to global_cta\r\n  $(window).scroll(function() {\r\n    if ($(window).scrollTop() > 100) {\r\n      $(\".global_cta\").addClass(\"fade_out\");\r\n    } else {\r\n      $(\".global_cta\").removeClass(\"fade_out\");\r\n    }\r\n  });\r\n});\r\n  ","$(function() {\r\n\t$window = $(window);\r\n\t$header = $('.site_container > header');\r\n\t$body = $('body');\r\n\tvar headerLogo = $('#logo')\r\n\tvar mobileLogo = $('#mobile-logo')\r\n\tvar heroHeader = $('.hero-logo')\r\n\r\n\tvar header = $('.site_container > header');\r\n\tvar collapseTimeout = null;\r\n\tvar viewportHeight = $window.height();\r\n\r\n\tvar min_inner_height = false;\r\n\tvar max_inner_height = false;\r\n\r\n\tvar header_height = 70\r\n\tvar reduced_header_height = 50\r\n\tvar current_header_height = $header.height();\r\n\r\n\r\n\tfunction scrolled_header_height(){\r\n\t\tvar scrollTop = $window.scrollTop();\r\n\t\tif(scrollTop > viewportHeight - header_height){\r\n\t\t\treturn reduced_header_height\r\n\t\t} else {\r\n\t\t\treturn header_height\r\n\t\t}\r\n\t}\r\n\r\n\t// var debug = $('<div class=\"debug\" />').appendTo('body');\r\n\r\n\t$window.scroll(function() {\r\n\t\tvar scrollTop = $window.scrollTop();\r\n\t\tvar win_inner_h = window.innerHeight;\r\n\r\n\r\n\r\n\t\tif (scrollTop > 0) {\r\n\t\t\t$header.addClass('scrolled');\r\n\t\t\t$body.addClass('scrolled');\r\n\t\t\theroHeader.removeClass('fade-in');\r\n\t\t\tmobileLogo.addClass('fade-in');\r\n\t\t\theaderLogo.addClass('fade-in');\r\n\t\t\tif(current_header_height == reduced_header_height) {\r\n\t\t\t\tvar menuItems = header.find('.expanded');\r\n\t\t\t\tmenuItems.removeClass('expanded');\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\t$header.removeClass('scrolled');\r\n\t\t\t$body.removeClass('scrolled');\r\n\t\t\theroHeader.addClass('fade-in');\r\n\t\t\tmobileLogo.removeClass('fade-in');\r\n\t\t\theaderLogo.removeClass('fade-in');\r\n\t\t}\r\n\r\n\t\tif (!window.is_mobile) {\r\n\t\t\tif (scrollTop > viewportHeight - header_height) {\r\n\t\t\t\t$header.css('height', reduced_header_height)\r\n\t\t\t\t$body.addClass('attach_booking reduced_height_header');\r\n\t\t\t} else {\r\n\t\t\t\t$header.css('height', header_height)\r\n\t\t\t\t$body.removeClass('attach_booking reduced_height_header');\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t    if (is_mobile_safari()) {\r\n\t        if (min_inner_height === false || win_inner_h < min_inner_height) {\r\n\t            min_inner_height = win_inner_h;\r\n\t        }\r\n\t        if ((max_inner_height === false || win_inner_h > max_inner_height) && win_inner_h > min_inner_height) {\r\n\t            max_inner_height = win_inner_h;\r\n\t        }\r\n\t        if (max_inner_height !== false && max_inner_height == win_inner_h) {\r\n\t            $('body').addClass('UI_hidden');\r\n\t        } else {\r\n\t            $('body').removeClass('UI_hidden');\r\n\t        }\r\n\t    }\r\n\t});\r\n\r\n\r\n\tif (!window.is_mobile) {\r\n\t\tvar mainMenuElement = $('#main_menu');\r\n\t\tvar topLevelElements = mainMenuElement.find('nav > ul > li, nav > ul > span');\r\n\t\tvar subMenu = $('.sub-menu-wrapper');\r\n\t\tif ($('#menu-main-menu').hasClass('is_blog')) {\r\n\t\t\tvar blogLink = mainMenuElement.find('a:contains(\"Blog\")');\r\n\t\t\tblogLink.parent('li').addClass('current-menu-ancestor');\r\n\t\t}\r\n\r\n\r\n\t\tsubMenu.each((function() {\r\n\t\t\tvar menuImage = $(this).find('.menu-item-image');\r\n\t\t\tvar menuList = $(this).find('.menu-item-list');\r\n\t\t\tvar ulImages = $('<ul class=\"contains-images\"></ul>');\r\n\t\t\tvar ulList = $('<ul class=\"contains-list\"></ul>');\r\n\r\n\t\t\tif(menuImage.length > 0) {\r\n\t\t\t\t$(this).prepend(ulImages);\r\n\t\t\t\tmenuImage.each((function() {\r\n\t\t\t\t}));\r\n\t\t\t\tvar elementUL = $(this).find('.contains-images');\r\n\t\t\t\telementUL.each((function() {\r\n\t\t\t\t\tvar elementImages = $(this).siblings()\r\n\t\t\t\t\telementImages.each((function() {\r\n\t\t\t\t\t\tif($(this).hasClass('menu-item-image')) {\r\n\t\t\t\t\t\t\telementUL.append($(this))\r\n\t\t\t\t\t\t} \r\n\t\t\t\t\t}));\r\n\t\t\t\t}));\r\n\t\t\t}  \r\n\r\n\r\n\t\t\tif(menuList.length > 0) {\r\n\t\t\t\t$(this).append(ulList);\r\n\t\t\t\tmenuList.each((function() {\r\n\t\t\t\t\tif($(this).hasClass('menu-item-list')) {\r\n\t\t\t\t\t\tulList.append($(this))\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\tulList.each(function() {\r\n\t\t\t\t\tvar span = $(this).children().find('span');\r\n\t\t\t\t\tspan.each(function() {\r\n\t\t\t\t\t\tvar text = $(this).text()\r\n\r\n\t\t\t\t\t\tif(text.length > 20) {\r\n\t\t\t\t\t\t\t$(this).css(\"white-space\", \"pre-wrap\")\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t})\r\n\t\t\t\t\r\n\t\t\t}  \r\n\r\n\t\t}));\r\n\r\n\t\ttopLevelElements.click(function(e) {\r\n\t\t\tif ($(e.target).attr('href') == '#')\r\n\t\t\t\treturn false;\r\n\t\t});\r\n\r\n\t\tfunction expandHeader(submenu) {\r\n\t\t\tclearTimeout(collapseTimeout);\r\n\t\t\tvar submenu = $(submenu);\r\n\t\t\tvar expandedHeight = submenu.data('expandedHeight');\r\n\t\t\theader.css('height', scrolled_header_height() + expandedHeight);\r\n\t\t\theader.addClass('expanded');\r\n\t\t}\r\n\r\n\t\tfunction collapseHeader(delay) {\r\n\t\t\theader.find('.expanded').removeClass('expanded');\r\n\t\t\theader.css('height', scrolled_header_height());\r\n\t\t\tclearTimeout(collapseTimeout);\r\n\t\t\tif (delay) {\r\n\t\t\t\tcollapseTimeout = setTimeout(function() {\r\n\t\t\t\t\theader.removeClass('expanded');\r\n\t\t\t\t}, 500);\r\n\t\t\t} else {\r\n\t\t\t\theader.removeClass('expanded');\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\theader.on('mouseleave focusout', function() {\r\n\t\t\tif (!header.hasClass('calculated'))\r\n\t\t\t\treturn;\r\n\r\n\t\t\tcollapseHeader(true);\r\n\t\t});\r\n\r\n\t\ttopLevelElements.on('mouseenter focusin', function() {\r\n\t\t\tif (!header.hasClass('calculated'))\r\n\t\t\t\treturn;\r\n\r\n\t\t\ttopLevelElements.removeClass('expanded');\r\n\t\t\tvar subMenu = $(this).find('.sub-menu');\r\n\t\t\t$(this).addClass('expanded');\r\n\t\t\tif (subMenu.length) {\r\n\t\t\t\texpandHeader(subMenu);\r\n\t\t\t} else {\r\n\t\t\t\tcollapseHeader(true);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tfunction initMainMenu() {\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\t// Store the heights of the submenus\r\n\t\t\t\tvar subMenus = mainMenuElement.find('.sub-menu');\r\n\t\t\t\tsubMenus.each(function() {\r\n\t\t\t\t\t$(this).data('expandedHeight', $(this).outerHeight());\r\n\t\t\t\t\tvar rightEdge = $(this).outerWidth() + $(this).offset().left;\r\n\t\t\t\t\tif (rightEdge > $(window).width()) {\r\n\r\n\t\t\t\t\t\t$(this).css('margin-left', $(window).width() - rightEdge - 30);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\theader.addClass('calculated');\r\n\r\n\t\t\t\t// var mainMenu = mainMenuElement.accessibleMenu(null, {\r\n\t\t\t\t// \tmenuItemSelector: 'a',\r\n\t\t\t\t// \torientation: window.is_mobile ? 'vertical' : ['horizontal', 'vertical'],\r\n\t\t\t\t// \tonItemExpanded: function(item, parent) {\r\n\t\t\t\t// \t\texpandHeader(parent.element);\r\n\t\t\t\t// \t},\r\n\t\t\t\t// \tonItemCollapsed: function(item, parent) {\r\n\t\t\t\t// \t\tcollapseHeader(false);\r\n\t\t\t\t// \t}\r\n\t\t\t\t// });\r\n\t\t\t}, 500);\r\n\t\t}\r\n\r\n\t\t// Set timeout attempt to fix intermittent rendering bug\r\n\t\t$(window).on('fontsLoaded', function() {\r\n\t\t\tinitMainMenu();\r\n\t\t});\r\n\r\n\t} else {\r\n\t\tvar mainMenuElement = $('#mobile_menu');\r\n\t\tvar topLevelElements = mainMenuElement.find('nav > ul > li, nav > ul > span');\r\n\r\n\t\tvar toggle = $('#main_menu_toggle');\r\n\t\ttoggle.click(function() {\r\n\t\t\t$body.toggleClass('menu_open');\r\n\t\t\tif ($body.hasClass('menu_open')) {\r\n\t\t\t\ttoggle.toggleClass('open');\r\n\t\t\t} else {\r\n\t\t\t\ttoggle.toggleClass('open');\r\n\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\ttopLevelElements.removeClass('expanded').removeClass('faded');;\r\n\t\t\t\t}, 100);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t$('.language_menu > nav > ul > li > a').click(function(){\r\n\t\t\t$('.language_menu').toggleClass('language_expanded');\r\n\t\t});\r\n\r\n\t\ttopLevelElements.click(function(e) {\r\n\t\t\tclicked = $(this);\r\n\r\n\t\t\tvar collapse = false;\r\n\t\t\tif (clicked.hasClass('current-menu-ancestor') && !clicked.parents('.language_menu').length)\r\n\t\t\t\tcollapse = true;\r\n\r\n\t\t\ttopLevelElements.removeClass('current-menu-ancestor');\r\n\t\t\tif ($(this).hasClass('menu-item-has-children')) {\r\n\t\t\t\tif ($(this).hasClass('expanded') || collapse) {\r\n\t\t\t\t\ttopLevelElements.removeClass('faded');\r\n\t\t\t\t\t$(this).removeClass('expanded');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttopLevelElements.removeClass('faded');\r\n\t\t\t\t\tclicked.siblings().addClass('faded');\r\n\t\t\t\t\ttopLevelElements.removeClass('expanded');\r\n\t\t\t\t\t$(this).addClass('expanded');\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Fix double tap requirement for main menu on iphone\r\n\t\tmainMenuElement.on('click touchend', function(e) {\r\n\t\t\tvar el = $(this);\r\n\t\t\tvar link = el.attr(\"href\");\r\n\t\t\tif (link && link != '#')\r\n\t\t\t\twindow.location = link;\r\n\t\t});\r\n\r\n\t\t// Add the scrolled class immediately on touch to avoid the delay on ios scrolling\r\n\t\tvar initialTouchY = null;\r\n\t\t$('body').bind('touchstart', function(e) {\r\n\t\t\tvar target = $(e.target);\r\n\t\t\tif (target.is('#main_menu_toggle') || target.parents('#main_menu_toggle').length)\r\n\t\t\t\treturn;\r\n\t\t\tinitialTouchY = e.originalEvent.touches[0].screenY;\r\n\t\t}).bind('touchmove', function(e) {\r\n\t\t\tnewTouchY = e.originalEvent.touches[0].screenY;\r\n\t\t\tif (Math.abs(initialTouchY - newTouchY) > 10)\r\n\t\t\t\t$('header').addClass('scrolled');\r\n\t\t}).bind('touchend', function(e) {\r\n\t\t\tif ($window.scrollTop() == 0)\r\n\t\t\t\t$('header').removeClass('scrolled');\r\n\t\t\tinitialTouchY = null;\r\n\t\t});\r\n\t}\r\n});","jQuery(function($) {\r\n\tvar homeHero = $('.home .hero');\r\n\tvar homeHeroVideo = $('.home .hero_video');\r\n\tvar window =  $(window);\r\n\r\n\tif (!homeHero.length)\r\n\t\treturn;\r\n\r\n\tvar showText = function() {\r\n\t\tvar scrollTop = window.scrollTop();\r\n\t\tif(scrollTop > 0) {\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\t$('.hero.home .text').addClass('show');\r\n\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t$('.hero.home .text').removeClass('show');\r\n\t\t\t\t}, 3000);\r\n\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t$('.hero.home .closing_text').addClass('show');\r\n\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\t$('.hero.home .closing_text').removeClass('show');\r\n\t\t\t\t\t}, 3000);\r\n\t\t\t\t}, 7000);\r\n\t\t\t}, 2000);\r\n\t\t}\r\n\t}\r\n\r\n\tif (!homeHeroVideo.length)\r\n\t\treturn;\r\n\r\n\tvar showedFirstBlurb = false;\r\n\tvar showedSecondBlurb = false;\r\n\r\n\tvar timeText = setInterval(function() {\r\n\t\tif (video.currentTime > 32.5 && !showedSecondBlurb) {\r\n\t\t\tshowedSecondBlurb = true;\r\n\t\t\t$('.hero.home .closing_text').addClass('show');\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\t$('.hero.home .closing_text').removeClass('show');\r\n\t\t\t}, 4000);\r\n\t\t}\r\n\t}, 50);\r\n\r\n\tvar video = homeHero.find('video')[0];\r\n\r\n\tvar awaitVideo = setInterval(function() {\r\n\t\tif (video.readyState == 4) {\r\n\t\t\t$(video).addClass('loaded');\r\n\t\t\tclearInterval(awaitVideo);\r\n\t\t}\r\n\t}, 500);\r\n});","$(function() {\r\n\tif ((!$body.hasClass('page-template-page-holiday')))\r\n\t\treturn;\r\n\r\n\tlet loadedCount = 0;\r\n\tlet holidayListing = $('.posts.holiday_listing');\r\n\tlet events = holidayListing.find('.holiday_container');\r\n\tlet categories = $('#events_categories');\r\n\tlet specials, location, requestUrl;\r\n\tvar link = window.location.pathname\r\n\tlet currentCategory = window.location.href.match(/#([^/&]+)/);\r\n\r\n\r\n\tfunction eventsFilter() {\r\n\t\tvar myul = $('.myul');\r\n\t\tvar lis = myul.find('li');\r\n\t\tvar dropdown = $('.show');\r\n\t\tvar lower = $('.lower');\r\n\t\tlis.on('click', function(e) {\r\n\t\t\tdropdown.toggleClass('flip');\r\n\t\t\tif (myul.hasClass('active')) {\r\n\t\t\t\tmyul.removeClass('active');\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tmyul.addClass('active');\r\n\t\t\t}\r\n\t\t\tlis.removeClass('active');\r\n\t\t\t$(e.target).parent().addClass('active');\r\n\t\t});\r\n\t}\r\n\r\n\tvar monthHeadings = {};\r\n\t$('.holiday_month').each(function() {\r\n\t\tvar text = $(this).text();\r\n\t\tif (monthHeadings[text])\r\n\t\t\t$(this).remove();\r\n\t\telse\r\n\t\t\tmonthHeadings[text] = true;\r\n\t});\r\n\r\n\r\n\r\n\t// $window.trigger('resize');\r\n\t// var categories = $('.category_link');\r\n\t// var activeCategory = 'all';\r\n\t// var filteredEvents = events;\r\n\r\n\t// $(window).on('hashchange', function(e){\r\n\t// \tvar currentUrl = URI(document.location);\r\n\t// \tif (currentUrl.hash()) {\r\n\t// \t\tvar currentlySelected = categories.filter('[href=\"' + currentUrl.hash() + '\"]');\r\n\t// \t\tif (currentlySelected.length) {\r\n\t// \t\t\tcurrentlySelected.trigger('click')\r\n\t// \t\t} else {\r\n\t// \t\t\tcategories.eq(0).trigger('click');\r\n\t// \t\t}\r\n\t// \t} else {\r\n\t// \t\tcategories.eq(0).trigger('click');\r\n\t// \t}\r\n\t// });\r\n\r\n\t$('#filter_mobile_button').click(function(){\r\n\t\t$('#events_categories nav').toggleClass('open');\r\n\t});\r\n\r\n\t// var updateUrl = function(url) {\r\n\t// \tif (url != window.location.href)\r\n\t// \t\twindow.history.pushState('', '', url);\r\n\t// \t// update active link in main nav\r\n\t// \t$('#main_menu').find('a[href=\"' + url + '\"]').parent().siblings().removeClass('current-menu-item');\r\n\t// \t$('#main_menu').find('a[href=\"' + url + '\"]').parent().addClass('current-menu-item');\r\n\t// }\r\n\r\n\t// var filterCategory = function(element) {\r\n\t// \telement.removeClass('appear');\r\n\t// \telement.siblings('.holiday_month').removeClass('appear');\r\n\r\n\r\n\t// \tif (element) {\r\n\t// \t\tactiveCategory = element.attr('href').slice(1);\r\n\t// \t}\r\n\r\n\t// \telement.hide();\r\n\t// \telement.siblings('.holiday_month').hide();\r\n\r\n\t// \tif (activeCategory == 'all') {\r\n\t// \t\tfilteredEvents = element;\r\n\t// \t} else {\r\n\t// \t\tfilteredEvents = element.filter('[cat*=' + activeCategory + ']');\r\n\t// \t}\r\n\r\n\t// \t// displayEvents(filteredEvents);\r\n\r\n\t// \tvar url = window.location.href;\r\n\t// \tif(url.indexOf(\"utm\") > -1) {\r\n\t// \tvar utmURL = document.location.href;\r\n\t// \t\tupdateUrl(utmURL.substring(0, utmURL.indexOf('#')) + '#' + activeCategory);\r\n\t// \t}\r\n\t// \telse {\r\n\t// \t\tupdateUrl(document.location.origin + document.location.pathname + '#' + activeCategory);\r\n\t// \t}\r\n\t// }\r\n\r\n\t\r\n\r\n\tcategories.find('.category_link').click(function(e) {\r\n\t\te.preventDefault()\r\n\t\tvar cat = $(this).data('category')\r\n\t\t$('.category_link').removeClass('active_category');\r\n\t\t$(this).addClass('active_category');\r\n\r\n\t\tholidayListing.find('.holiday_container').each(function() {\r\n\t\t\tif(!cat || $(this).attr('cat') == cat ) {\r\n\t\t\t\t$(this).addClass('appear')\r\n\t\t\t\t\r\n\t\t\t} else {\r\n\t\t\t\t$(this).removeClass('appear')\r\n\t\t\t\r\n\t\t\t}\r\n\r\n\t\t\tif(cat) {\r\n\t\t\t\thistory.pushState({}, '', link + \"#\" + cat);\r\n\t\t\t} else {\r\n\t\t\t\thistory.pushState({}, '', link);\r\n\t\t\t}\r\n\r\n\t\t\t\r\n\t\t})\r\n\t});\r\n\r\n\t// if (!categories.length)\r\n\t// \tdisplayEvents(events);\r\n\r\n\t// Activate the proper category and image on page load\r\n\t// var currentUrl = URI(document.location);\r\n\t// if (currentUrl.hash()) {\r\n\t// \tvar currentlySelected = categories.filter('[href=\"' + currentUrl.hash() + '\"]');\r\n\t// \tif (currentlySelected.length) {\r\n\t// \t\tcurrentlySelected.trigger('click')\r\n\t// \t} else {\r\n\t// \t\tcategories.eq(0).trigger('click');\r\n\t// \t}\r\n\t// } else {\r\n\t// \tcategories.eq(0).trigger('click');\r\n\t// }\r\n\r\n\teventsFilter();\r\n\t$('document').ready(function() {\r\n\r\n\t\tholidayListing.addClass('ready')\r\n\r\n\t\tif(currentCategory) {\r\n\t\t\tdisplayEvents(currentCategory)\r\n\t\t\t$('.category_link').removeClass('active_category');\r\n\t\t\tcategories.find('.category_link').each(function() {\r\n\t\t\t\tif(currentCategory[1] == $(this).data('category')) {\r\n\t\t\t\t\t\t$(this).parent().addClass('active');\r\n\t\t\t\t\t\t$(this).addClass('active_category');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$(this).parent().removeClass('active');\r\n\t\t\t\t\t\t$(this).removeClass('active_category');\r\n\t\t\t\t\t}\r\n\t\t\t})\r\n\r\n\t\t} else {\r\n\t\t\tdisplayEvents(currentCategory)\r\n\t\t\tcategories.find('.category_link').each(function() {\r\n\t\t\t\tlet href = $(this).attr('href')\r\n\t\t\t\tif(href == link) {\r\n\t\t\t\t\t\t$(this).parent().addClass('active');\r\n\t\t\t\t\t\t$(this).addClass('active_category');\r\n\t\t\t\t\t} \r\n\t\t\t})\r\n\t\t}\r\n\t\t\r\n\t})\r\n\r\n\tlet displayEvents = function(category) {\r\n\r\n\t\t$.get('/api/geolocate', function(response) {\r\n\t\t\tlocation = response\r\n\t\t\tconsole.log('location',location.state)\r\n\t\r\n\t\t\tif(location.state == \"HI\") {\r\n\t\t\t\trequestUrl = '/get_hawaii_holidays'\r\n\t\t\t} else {\r\n\t\t\t\trequestUrl = '/get_outside_hawaii_holidays'\r\n\t\t\t}\r\n\t\t\t\r\n\t\r\n\t\t\t$.get(requestUrl, function(response) {\r\n\t\t\t\tresponse = $.parseJSON(response);\r\n\t\t\t\tspecials = response;\r\n\t\t\t\t\r\n\t\t\t\tholidayListing.html(specials.holidays);\r\n\t\t\t\t\r\n\t\t\t\tif(!category) {\r\n\t\t\t\t\tcategory\r\n\t\t\t\t\t\r\n\t\t\t\t}  else {\r\n\t\t\t\t\tcategory = category[1]\r\n\t\t\t\t}\r\n\r\n\t\t\t\tholidayListing.find('.holiday_container').each(function() {\r\n\r\n\t\t\t\t\tlet post = $(this)\r\n\t\t\t\t\tif(!category ||  post.attr('cat') == category ) {\r\n\t\t\t\t\t\t// console.log('true',$(this).attr('cat'))\r\n\t\t\t\t\t\tpost.addClass('appear')\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tpost.removeClass('appear')\r\n\t\t\t\t\t\t// console.log('false',$(this).attr('cat'))\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// categories.find('.category_link').each(function() {\r\n\t\t\t\t\t// \tif($(this).data('category') && post.attr('cat') != $(this).data('category') ) {\r\n\t\t\t\t\t// \t\tconsole.log(post)\r\n\t\t\t\t\t// \t\t$(this).parent().addClass('disable')\r\n\t\t\t\t\t// \t} else {\r\n\t\t\t\t\t// \t\t$(this).parent().removeClass('disable')\r\n\t\t\t\t\t// \t}\r\n\t\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\t\t\t\r\n\r\n\t\t\t\t// console.log(filteredEvents)\r\n\t\t\t\t// filterCategory(filteredEvents);\r\n\t\t\t\t// filteredEvents.show();\r\n\t\t\t\t// filteredEvents.siblings('.holiday_month').show();\r\n\r\n\t\t\t\t// setTimeout(function() {\r\n\t\t\t\t// \tfilteredEvents.addClass('appear');\r\n\t\t\t\t// \tfilteredEvents.siblings('.holiday_month').addClass('appear');\r\n\t\t\t\t// }, 50);\r\n\t\r\n\t\t\t});\r\n\t\t});\r\n\t\t\r\n\t}\r\n\r\n\r\n\t\r\n\r\n\t\r\n\r\n});","jQuery(function($) {\r\n\tif (!$('.image_bar').length)\r\n\t\treturn;\r\n\r\n\tvar isRoom = $('body').hasClass('single-room');\r\n\r\n\t$('.image_bar .slide').each(function(){\r\n\t\tvar slide = $(this);\r\n\t\tvar slide_index = $('.image_bar .slide').index(slide);\r\n\t\tslide.attr('data-slide-index', slide_index);\r\n\t});\r\n\t$('.image_bar .caption').each(function(){\r\n\t\tvar caption = $(this);\r\n\t\tvar caption_index = $('.image_bar .caption').index(caption);\r\n\t\tcaption.attr('data-caption-index', caption_index);\r\n\t});\r\n\r\n\t$('.image_bar .slider').on('init', function(slick){\r\n\t\tsetTimeout(function(){\r\n\t\t\t$('.image_bar #slider_categories .category:nth-child(2)').click();\r\n\t\t}, 1000);\r\n\t\t$('.image_bar .slick-arrow').on('click', function() {\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tcurrentSlideEl = $('.image_bar .slider .slick-current');\r\n\t\t\t\tcurrentSlideEl.focus();\r\n\t\t\t}, 300);\r\n\t\t});\r\n\t});\r\n\r\n\t$('#filter_mobile_button').click(function(){\r\n\t\t$('#slider_categories nav').toggleClass('open');\r\n\t});\r\n\r\n\tif(isRoom){\r\n\t\t$('#slider_categories nav').toggleClass('open');\r\n\t\t$('#filter_mobile_button').hide();\r\n\t}\r\n\r\n\tinitializeSlick('.image_bar .slider', {\r\n\t\taccessibility: true,\r\n\t\tdots: false,\r\n\t\tinfinite: false,\r\n\t\tslidesToShow: 5,\r\n\t\tslidesToScroll: 5,\r\n\t\tarrows: true,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow\">Previous</button>',\r\n\t\tresponsive: [\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 769,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 3,\r\n\t\t\t\t\tslidesToScroll: 3\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 641,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 2,\r\n\t\t\t\t\tslidesToScroll: 2\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 481,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 1,\r\n\t\t\t\t\tslidesToScroll: 1\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t]\r\n\t});\r\n\r\n\t// $('.image_bar .slider').on('afterChange', function(event, slick, currentSlide, nextSlide){\r\n\t// \tvar slider = $(this);\r\n\t// \tvar slides = slider.find('.slick-slide');\r\n\t// \tvar slide = slides.eq(currentSlide);\r\n\t// \tslide.focus();\r\n\t// });\r\n\r\n\t$('.image_bar #slider_categories .category').on('click', function(){\r\n\t\tvar clicked_category = $(this);\r\n\t\t$('.active_category').removeClass('active_category');\r\n\t\tclicked_category.addClass('active_category');\r\n\t\tvar filter_category = clicked_category.attr('data-slide-category');\r\n\t\t$('.image_bar .slider').slick('slickUnfilter');\r\n\t\t$('.image_bar .slider').slick('slickFilter', '.'+ filter_category);\r\n\t\t$('.image_bar .slider').slick('slickGoTo', 0);\r\n\t\t$('.active_caption').removeClass('active_caption');\r\n\t});\r\n\r\n\tif($(window).width() <= 480) {\r\n\t\t$('.image_bar .slider').on('afterChange', function(event, slick, currentSlide, nextSlide){\r\n\t\t\tvar slider = $(this);\r\n\t\t\tvar slides = slider.find('.slick-slide');\r\n\t\t\tvar slide = slides.eq(currentSlide);\r\n\t\t\tvar slide_index = slide.attr('data-slide-index');\r\n\t\t\t$('.active_caption').removeClass('active_caption');\r\n\t\t\t$('.image_bar .caption[data-caption-index=\"'+slide_index+'\"]').addClass('active_caption');\r\n\t\t\tconsole.log(\"slide\", slide)\r\n\t\t\tconsole.log(\"slide_index\", slide_index)\r\n\t\t});\r\n\t} else {\r\n\t\t$('.image_bar .slick-slide').on('mouseover focusin', function(){\r\n\t\t\tvar hovered = $(this);\r\n\t\t\tvar slide_index = hovered.attr('data-slide-index');\r\n\t\t\thovered.toggleClass('active_slide');\r\n\t\t\t$('.active_caption').removeClass('active_caption');\r\n\t\t\t$('.caption h3').attr(\"tabindex\", \"-1\");\r\n\t\t\t$('.image_bar .caption[data-caption-index=\"'+slide_index+'\"]').addClass('active_caption');\r\n\t\t\t// $('.image_bar .caption[data-caption-index=\"'+slide_index+'\"]').find('h3').attr(\"tabindex\", \"0\").focus();\r\n\t\t});\r\n\t}\r\n});","jQuery(function($) {\r\n\tif (!$('.image_slider_grid .slider .slides').length)\r\n\t\treturn;\r\n\r\n\tvar popup = $('.image_slider_grid .popup_trigger');\r\n\tvar close = $('.close');\r\n\r\n\t$('.image_slider_grid .slider .slides').each(function(){\r\n\r\n\t\tinitializeSlick(this, {\r\n\t\t\taccessibility: true,\r\n\t\t\tinfinite: true,\r\n\t\t\tspeed: 1500,\r\n\t\t\tslidesToShow: 1,\r\n\t\t\tarrows: false,\r\n\t\t\tautoplay: true,\r\n\t\t\tfade: true,\r\n\t\t\tpauseOnHover: false,\r\n\t\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>',\r\n\t\t});\r\n\r\n\t});\r\n\r\n\tinitializeSlick('.image_slider_grid_holder .slider_holder .slides_holder', {\r\n\t\taccessibility: true,\r\n\t\tdots: false,\r\n\t\tinfinite: false,\r\n\t\tspeed: 300,\r\n\t\tslidesToShow: 3,\r\n\t\tslidesToScroll: 1,\r\n\t\tautoplay: false,\r\n\t\tarrows: true,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow\" tabindex=\"0\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow\" tabindex=\"0\">Previous</button>',\r\n\t\tresponsive: [\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 1149,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 2\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 767,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 1\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t]\r\n\t});\r\n\r\n\tpopup.modaal({\r\n\t\thide_close: true,\r\n\t\tbackground: '#FFFFFF',\r\n\t\toverlay_opacity: .9,\r\n\t\t// after_close: function(){ document.location.href = \"#\"; }\r\n\t});\r\n\r\n\r\n\tclose.click(function() {\r\n\t\tpopup.modaal('close');\r\n\t});\r\n});\r\n\r\n","jQuery(function($) {\r\n\tif (!$('footer div.instagram').length)\r\n\t\treturn;\r\n\r\n\t$('footer div.instagram_wrapper').on('init', function() {\r\n\t\t$('div.instagram .slick-slide:not(.slick-active)').find('.content_wrapper *').attr('tabindex', -1);\r\n\r\n\t\t$('.instagram .slider_arrow').on('click', function() {\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tvar currentSlideEl = $('.instagram .instagram_wrapper .slick-active');\r\n\t\t\t\tcurrentSlideEl.find('.content_wrapper *:first-child').focus();\r\n\t\t\t}, 100);\r\n\t\t});\r\n\t});\r\n\r\n\tinitializeSlick('footer div.instagram_wrapper', {\r\n\t\taccessibility: true,\r\n\t\tdots: false,\r\n\t\tinfinite: false,\r\n\t\tslidesToShow: 5,\r\n\t\tslidesToScroll: 5,\r\n\t\tvariableWidth: false,\r\n\t\tarrows: true,\r\n\t\tnextArrow: 'div.instagram .next_arrow',\r\n\t\tprevArrow: 'div.instagram .prev_arrow',\r\n\t\tresponsive: [\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 1200,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 4,\r\n\t\t\t\t\tslidesToScroll: 4\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 1000,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 3,\r\n\t\t\t\t\tslidesToScroll: 3\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 769,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 2,\r\n\t\t\t\t\tslidesToScroll: 2\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 641,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 1,\r\n\t\t\t\t\tslidesToScroll: 1\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t]\r\n\t});\r\n\r\n\t$('footer div.instagram_wrapper').on('mouseleave', '.slick-slide', function() {\r\n\t\t//reset widths of current slick slide and siblings\r\n\t\t$(this).css('width', '').removeClass('hovered');\r\n\t\t$(this).siblings('.slick-active').removeClass('collapsed').css('width', '');\r\n\t});\r\n\r\n\t$('footer div.instagram_wrapper').on('mouseenter', '.slick-slide', function() {\r\n\t\tvar siblings = $(this).siblings('.slick-active');\r\n\t\tvar siblingsCount = siblings.length;\r\n\r\n\t\t//calculate slide width and add 200\r\n\t\tvar wrapperWidth = $('.instagram_wrapper').width();\r\n\t\tvar slideWidthWithPadding = (wrapperWidth / (siblingsCount + 1)) + 192;\r\n\t\t$(this).css('width', slideWidthWithPadding).addClass('hovered');\r\n\t\t\r\n\t\tsiblings.each(function() {\r\n\t\t\t//calculate slide width based on .instagram_wrapper width divided by number of siblings with active class\r\n\t\t\tvar wrapperWidth = $('.instagram_wrapper').width();\r\n\t\t\tvar siblingWidth = (wrapperWidth / (siblingsCount + 1)) - (192 / siblingsCount);\r\n\t\t\t$(this).addClass('collapsed');\r\n\t\t\t$(this).css('width', siblingWidth);\r\n\t\t});\r\n\r\n\t});\r\n\r\n\r\n\t$('footer div.instagram_wrapper').on('afterChange', function() {\r\n\t\tsetTimeout(function(){\r\n\t\t\tcurrentSlideEl = $('.instagram .instagram_wrapper .slick-active');\r\n\t\t\t$('div.instagram .slick-slide').find('.content_wrapper *').attr('tabindex', -1);\r\n\t\t\tcurrentSlideEl.find('.content_wrapper *').attr('tabindex', 0);\r\n\t\t}, 100);\r\n\t});\r\n\r\n\t// $(window).on('resize orientationchange', function() {\r\n\t// \t$('footer div.instagram_wrapper')[0].slick.refresh();\r\n\t// });\r\n\r\n});","$(function() {\r\n\tif (!$body.hasClass('page-template-page-listing'))\r\n\t\treturn;\r\n\r\n\t$('.call_to_action').mouseenter(function(){\r\n\t\t$(this).parent().parent().addClass('white');\r\n\t}).mouseleave(function(){\r\n\t\t$(this).parent().parent().removeClass('white');\r\n\t});\r\n\r\n\tvar sliders = $('.listing_page .slides');\r\n\tvar loadedCount = 0;\r\n\tvar rows = $('.listing_row');\r\n\r\n\tsliders.each(function() {\r\n\t\tinitializeSlick(this, {\r\n\t\t\taccessibility: true,\r\n\t\t\tdots: false,\r\n\t\t\tinfinite: true,\r\n\t\t\tspeed: 700,\r\n\t\t\tslidesToShow: 1,\r\n\t\t\tarrows: true,\r\n\t\t\tfade: true,\r\n\t\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>',\r\n\t\t\tfocusOnSelect: true,\r\n\t\t}, function() {\r\n\t\t\tloadedCount += 1;\r\n\t\t\tif (loadedCount == sliders.length) {\r\n\t\t\t\tslidersBuilt();\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\r\n\tfunction slidersBuilt() {\r\n\t\t$window.trigger('resize');\r\n\r\n\t\trows.each(function(i) {\r\n\t\t\tif (i%2 == 0 || i == 0) {\r\n\t\t\t\t$(this).addClass('even');\r\n\t\t\t} else {\r\n\t\t\t\t$(this).addClass('odd');\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tsetInterval(function() {\r\n\t\t\t$window.trigger('resize');\r\n\t\t}, 500);\r\n\t}\r\n\r\n\t$(window).on('panelsLoaded', function() {\r\n\t\trows.addClass('appear');\r\n\t});\r\n\r\n\trows.find('.button').click(function(e) {\r\n\t\te.stopPropagation();\r\n\t});\r\n\r\n});","jQuery(function($) {\r\n\tvar googleMaps = $('[data-google-map]')\r\n\tvar localAreaFilter = $('#categories_filter')\r\n\tvar localAreaCategory = $('.local_area_card_category')\r\n\tvar localAreaCards = $('.local_area_card')\r\n\tvar categoryFilter, activeCategory\r\n\r\n\tif($('#categories_filter').length)\r\n\t\tvar categoryFilter = new detailSelect('#categories_filter')\r\n\r\n\r\n\t// create object for google map markers from local area cards template\r\n\tvar markers = localAreaCards.map(function () {\r\n\t\tvar markerID = $(this).data(\"id\");\r\n\t\tvar markerLat = $(this).data(\"latitude\")\r\n\t\tvar markerLong = $(this).data(\"longitude\")\r\n\t\tvar markerCategory = $(this).data(\"category\")\r\n\t\tvar markerTitle = $(this).data(\"title\")\r\n\r\n\t \treturn {\"id\": markerID, \"lat\": markerLat, \"long\": markerLong, \"category\": markerCategory, \"title\": markerTitle};\r\n\t});\r\n\r\n\t// watch for category filter changes and trigger filtering of local area cards & map markers\r\n\tlocalAreaFilter.change(function() {\r\n\t\tactiveCategory = $(this).find(':checked').val();\r\n\r\n\t\tif(!activeCategory)\r\n\t\t\tactiveCategory = undefined\r\n\r\n\t\tfilterLocalAreaCards(activeCategory);\r\n\t\tgoogleMap.filterPins(activeCategory);\r\n\t});\r\n\r\n\t// filter categories if local area card category clicked\r\n\tlocalAreaCategory.on(\"click\", function(e){\r\n\t\te.preventDefault()\r\n\t\tactiveCategory = $(this).data('category')\r\n\r\n\t\tlocalAreaFilter.find('[value='+ activeCategory +']').trigger('click');\r\n\r\n\t\t$([document.documentElement, document.body]).animate({\r\n\t\t\tscrollTop: localAreaFilter.offset().top-160\r\n\t\t}, 1000)\r\n\t})\r\n\r\n\t//function that filters local area cards when category selection changes\r\n\tfunction filterLocalAreaCards(category){\r\n\t\tlocalAreaCards.addClass(\"hidden\");​\r\n\r\n\t\tif(category)\r\n\t\t\tlocalAreaCards.filter('[data-category=' + category + ']').removeClass(\"hidden\");​\r\n\t\telse\r\n\t\t\tlocalAreaCards.removeClass(\"hidden\");​\r\n\r\n\t\tgoogleMap.positionCards()\r\n\t}\r\n\r\n\t//variable to contain all GMap functionality\r\n\tvar GoogleMap = function(selector, markers) {\r\n\r\n\t\tthis.initGoogleMap = function() {\r\n\t\t\tvar map, marker, prevActiveCard, currActiveCard\r\n\t\t\tvar scrollAnimating = false\r\n\t\t\tvar latlng = new google.maps.LatLng(21.274639, -157.823242)\r\n\t\t\tvar cards = []\r\n\t\t\tvar allMarkers = []\r\n\t\t\tvar mapDiv = $(selector)\r\n\t\t\tvar address = mapDiv.data('address')\r\n\t\t\tvar zoom = mapDiv.data('zoom')\r\n\t\t\tvar pin = \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_inactive.svg\";\r\n\t\t\tvar ALO_pin = \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_ALO.svg\";\r\n\t\t\tvar mapOptions = {\r\n\t\t\t\t'zoom': zoom/1.1,\r\n\t\t\t\t'center': latlng,\r\n\t\t\t\t'disableDefaultUI': false,\r\n\t\t\t\t'scrollwheel': false,\r\n\t\t\t\t'streetViewControl': false,\r\n\t\t\t\t'mapTypeControl': false,\r\n\t\t\t\t'fullscreenControl': false,\r\n\t\t\t\t'draggable' : false,\r\n\t\t\t\t'zoomControlOptions': {\r\n\t\t\t\t\t'position': google.maps.ControlPosition.LEFT_BOTTOM\r\n\t\t\t\t},\r\n\t\t\t\t'icon': ALO_pin\r\n\t\t\t}\r\n\r\n\t\t\tif (!window.is_mobile){\r\n\t\t\t\tmapOptions['draggable'] = true\r\n\t\t\t\tmapOptions['zoom'] = zoom\r\n\t\t\t}\r\n\r\n\t\t\t//create google map object\r\n\t\t\tmap = new google.maps.Map(mapDiv[0], mapOptions)\r\n\r\n\t\t\t//create main map marker & click listener\r\n\t\t\tmarkerALO = new google.maps.Marker({\r\n\t\t\t\t'position': new google.maps.LatLng(21.274639, -157.823242),\r\n\t\t\t\t'map': map,\r\n\t\t\t\t'opacity': 1,\r\n\t\t\t\t'icon': ALO_pin,\r\n\t\t\t\t'id' : 0,\r\n\t\t\t\t'title': 'Alohilani Resort Waikiki Beach',\r\n\t\t\t\t'zIndex': 1\r\n\t\t\t});\r\n\r\n\t\t\tmarkerALO.addListener(\"click\", function (event) {\r\n\t\t\t\tif(event && !window.is_mobile){\r\n\t\t\t\t\tscrollToCard(this.id)\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif(!event && window.is_mobile){\r\n\t\t\t\t\tresetMarkers(allMarkers)\r\n\t\t\t\t\tmap.panTo(this.position)\r\n\t\t\t\t\tthis.setOptions({'opacity': 1, 'icon': \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_ALO.svg\", 'zIndex': 100})\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif(!window.is_mobile){\r\n\t\t\t\t\tresetMarkers(allMarkers)\r\n\t\t\t\t\tmap.panTo(this.position)\r\n\t\t\t\t\tthis.setOptions({'opacity': 1, 'icon': \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_ALO.svg\", 'zIndex': 100})\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t\r\n\t\t\t//map markers to GMap & create array of all marker objects (allMarkers)\r\n\t\t\tfor (i = 0; i < markers.length; i++) {  \r\n\t\t\t\tmarker = new google.maps.Marker({\r\n\t\t\t\t\t'position': new google.maps.LatLng(markers[i]['lat'], markers[i]['long']),\r\n\t\t\t\t\t'map': map,\r\n\t\t\t\t\t'opacity': .8,\r\n\t\t\t\t\t'icon': pin,\r\n\t\t\t\t\t'category': markers[i]['category'],\r\n\t\t\t\t\t'id': markers[i]['id'],\r\n\t\t\t\t\t'title': markers[i]['title'],\r\n\t\t\t\t\t'zIndex': 1\r\n\t\t\t\t});\r\n\r\n\t\t\t\tmarker.addListener(\"click\", function (event) {\r\n\t\t\t\t\tif(event && !window.is_mobile){\r\n\t\t\t\t\t\tscrollToCard(this.id)\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif(!window.is_mobile){\r\n\t\t\t\t\t\tresetMarkers(allMarkers)\r\n\t\t\t\t\t\tmap.panTo(this.position)\r\n\t\t\t\t\t\tthis.setOptions({'opacity': 1, 'icon': \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_active.svg\", 'zIndex': 100})\r\n\t\t\t\t\t\tmarkerALO.setOptions({'opacity': .8, 'icon': \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_ALO_inactive.svg\", 'zIndex': 1})\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\r\n\t\t\t\tallMarkers.push(marker)\r\n\t\t\t}\r\n\r\n\t\t\t//function to filter map marker pins when category dropdown changed\r\n\t\t\tthis.filterPins = function(category){\r\n\t\t\t\tclearMarkers();\r\n\r\n\t\t\t\tfor (i = 0; i < allMarkers.length; i++) {  \r\n\t\t\t\t\tfor (i = 0; i < allMarkers.length; i++) {\r\n\t\t\t\t\t\tif(category)\r\n\t\t\t\t\t\t\tif(allMarkers[i].category == category)\r\n\t\t\t\t\t\t\t\tallMarkers[i].setOptions({'visible': true, 'opacity': 0.8, 'icon': \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_inactive.svg\", 'zIndex': 1})\r\n\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\tallMarkers[i].setOptions({'visible': false})\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tallMarkers[i].setOptions({'visible': true, 'opacity': 0.8, 'icon': \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_inactive.svg\", 'zIndex': 1})\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t}\r\n\r\n\t\t\t//function to determine which card is in view when user scrolls\r\n\t\t\tfunction getActiveCard(cards, docViewTop, activeCategory){\r\n\t\t\t\tvar activeCardId, offset\r\n\r\n\t\t\t\tif(window.is_mobile){\r\n\t\t\t\t\toffset = $(window).height()/3 + 100\r\n\t\t\t\t} else {\r\n\t\t\t\t\toffset = 300\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif(docViewTop > $(window).height()/3){\r\n\t\t\t\t\tcards.some(function (card) {\r\n\t\t\t\t\t\tif (card.position > (docViewTop + offset)) {\r\n\t\t\t\t\t\t\tif(activeCategory){\r\n\t\t\t\t\t\t\t\tif(card.category == activeCategory){\r\n\t\t\t\t\t\t\t\t\tactiveCardId = card.id\r\n\t\t\t\t\t\t\t\t\treturn true\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tactiveCardId = card.id\r\n\t\t\t\t\t\t\t\treturn true\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\tactiveCardId = 0\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn activeCardId\r\n\t\t\t}\r\n\r\n\t\t\t//function to scroll to card when user clicks on a marker/pin on GMap\r\n\t\t\tfunction scrollToCard(cardID){\r\n\t\t\t\tscrollAnimating = true\r\n\r\n\t\t\t\tif(cardID == 0){\r\n\t\t\t\t\t$([document.documentElement, document.body]).animate({\r\n\t\t\t\t\t\tscrollTop: 0\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tduration: 1000,\r\n\t\t\t\t\t\tcomplete: function() { \r\n\t\t\t\t\t\t\tscrollAnimating = false \r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$([document.documentElement, document.body]).animate({\r\n\t\t\t\t\t\tscrollTop: localAreaCards.filter('[data-id=' + cardID +']').offset().top-100\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tduration: 1000,\r\n\t\t\t\t\t\tcomplete: function() { \r\n\t\t\t\t\t\t\tscrollAnimating = false \r\n\t\t\t\t\t\t}\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//function to dim inactive marker/pins on GMap\r\n\t\t\tfunction resetMarkers(markers){\r\n\t\t\t\tfor (i = 0; i < markers.length; i++) { \r\n\t\t\t\t\tif(activeCategory){\r\n\t\t\t\t\t\tif(markers[i].category == activeCategory)\r\n\t\t\t\t\t\t\tmarkers[i].setOptions({'visible': true, 'opacity': .8, 'icon': \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_inactive.svg\", 'zIndex': 1})\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tmarkers[i].setOptions({'visible': false})\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tmarkers[i].setOptions({'visible': true, 'opacity': .8, 'icon': \"/wp-content/themes/alohilani/css/images/ico/local_area_map_pin_inactive.svg\", 'zIndex': 1})\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//function to hide all markers on GMap\r\n\t\t\tfunction clearMarkers(){\r\n\t\t\t\tprevActiveCard = null\r\n\t\t\t\tcurrActiveCard = null\r\n\r\n\t\t\t\tallMarkers.forEach(function(marker) {\r\n\t\t\t\t\tmarker.setOptions({'visible': false})\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tthis.positionCards = function(){\r\n\t\t\t\tcards = []\r\n\r\n\t\t\t\t$('.local_area_wrapper .local_area_card').each(function(){\r\n\t\t\t\t\tvar cardPosition = $(this).offset()\r\n\t\t\t\t\tvar cardHeight = $(this).height()\r\n\t\t\t\t\tvar cardID = $(this).data('id')\r\n\t\t\t\t\tvar cardCategory = $(this).data('category')\r\n\t\t\t\t\t\r\n\t\t\t\t\tcard = {\"id\": cardID, \"position\": cardPosition.top+cardHeight, \"category\": cardCategory}\r\n\t\t\t\t\tcards.push(card)\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\t//window listeners to map cards & update map on scroll\r\n\t\t\t$(window)\r\n\t\t\t\t.on('resize load',function() {\r\n\t\t\t\t\tgoogleMap.positionCards()\r\n\t\t\t\t})\r\n\t\t\t\t.on('scroll', function(e) {\r\n\t\t\t\t\tif(!scrollAnimating){\r\n\t\t\t\t\t\tvar docViewTop = $(window).scrollTop()\r\n\t\t\t\t\t\tvar docViewBottom = docViewTop + $(window).height()\r\n\t\t\t\t\t\tvar markersArray = $.makeArray(markers)\r\n\r\n\t\t\t\t\t\tcurrActiveCard = getActiveCard(cards, docViewTop, activeCategory)\r\n\r\n\t\t\t\t\t\tif(prevActiveCard != currActiveCard){\r\n\t\t\t\t\t\t\tprevActiveCard = currActiveCard\r\n\r\n\t\t\t\t\t\t\tif(currActiveCard == 0){\r\n\t\t\t\t\t\t\t\tgoogle.maps.event.trigger(markerALO, 'click');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tmarkersArray.map(function (marker, i) {\r\n\r\n\t\t\t\t\t\t\t\t\tif (marker.id == currActiveCard) {\r\n\t\t\t\t\t\t\t\t\t\tgoogle.maps.event.trigger(allMarkers[i], 'click');\r\n\t\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\t}\r\n\r\n\t\tthis.initGoogleMap();\r\n\r\n\t}\r\n\r\n\tif($('#google_map').length)\r\n\t\tvar googleMap = new GoogleMap('#google_map', markers)\r\n\r\n});","jQuery(function($) {\r\n\tif (!$('.menu').length)\r\n\t\treturn;\r\n\r\n\tvar isMenu = $('body').hasClass('single-menu');\r\n\r\n\tif(!isMenu){\r\n\t\treturn\r\n\t}\r\n\r\n\t//check brightness of hex color\r\n\tfunction hexBrightness(hex) {\r\n\t\t// strip off any leading #\r\n\t\thex = hex.replace('#', '');\r\n\r\n\t\t// convert rrggbb to decimal\r\n\t\tvar r = Math.round(parseInt(hex.substr(0,2),16));\r\n\t\tvar g = Math.round(parseInt(hex.substr(2,2),16));\r\n\t\tvar b = Math.round(parseInt(hex.substr(4,2),16));\r\n\r\n\t\treturn Math.round(((r * 299) + (g * 587) + (b * 114)) / 1000);\r\n\t}\r\n\r\n\tfunction initializeMenu() {\r\n\t\t//get value of css variable accent-color\r\n\t\tvar accent_color = $('.menu').css('--background-color');\r\n\r\n\t\t//check brightness of accent_color hex\r\n\t\tvar brightness = hexBrightness(accent_color);\r\n\r\n\t\t//if brightness is less than 125, set disclaimer-color css variable to white\r\n\t\tif (brightness < 125) {\r\n\t\t\t$('.menu').css('--disclaimer-color', '#fff');\r\n\t\t} else {\r\n\t\t\t$('.menu').css('--disclaimer-color', '#000');\r\n\t\t}\r\n\r\n\r\n\t\t$('.menu .category_nav .category').first().addClass('active');\r\n\t\t//hide all menu categories except the first one\r\n\t\t$('.menu .menu_category').hide();\r\n\t\t$('.menu .menu_category').first().show();\r\n\t}\r\n\r\n\t//toggle .menu_container element when .menu_toggle is clicked if window width is less than 768px\r\n\tif (window.is_mobile) {\r\n\t\t$('.menu .menu_toggle, .menu .category').click(function(){\r\n\t\t\t$('.menu .menu_container').slideToggle(300);\r\n\t\t\t$('.menu_toggle').toggleClass('active')\r\n\t\t});\r\n\t}\r\n\r\n\t$('.menu .menu_category').each(function(){\r\n\t\tvar category = $(this);\r\n\t\tvar category_index = $('.menu .menu_category').index(category);\r\n\t\tcategory.attr('data-category-index', category_index);\r\n\t});\r\n\r\n\t$('.menu .menu_category').hide();\r\n\r\n\t$('.menu .category_nav .category').click(function(){\r\n\t\tvar category = $(this);\r\n\t\tvar category_index = $('.menu .category_nav .category').index(category);\r\n\t\t$('.menu .category_nav .category').removeClass('active');\r\n\t\tcategory.addClass('active');\r\n\r\n\t\t$('.menu .menu_category').fadeOut(300);\r\n\t\tsetTimeout(function(){\r\n\t\t\t$('.menu .menu_category[data-category-index=\"' + category_index + '\"]').fadeIn(300);\r\n\t\t}, 301);\r\n\t});\r\n\r\n\tinitializeMenu();\r\n});","$(function () {\r\n\tvar $element = $('.signup');\r\n\tvar phone = $element.find('#phone_number');\r\n\tvar email = $element.find(\"#email_address\");\r\n\tvar form = $element.find('#newsletter_signup');\r\n\tvar submit = $element.find('#form_submit');\r\n\tvar error_txt = $element.find('#ShowerrorMsg');\r\n\tvar success_msg = $element.find('#success');\r\n\tvar consent_box = $element.find('#consent_box');\r\n\r\n\t//use intersection observer to add visible class on $element\r\n\tvar observer = new IntersectionObserver(function(entries) {\r\n\t\tif (entries[0].isIntersecting === true) {\r\n\t\t\t$element.find(\"form\").slideDown(1000)\r\n\t\t\t$element.addClass('visible')\r\n\t\t}\r\n\t}\r\n\t, { threshold: [0], rootMargin: \"0px 0px -30% 0px\" });\r\n\r\n\tobserver.observe($element[0]);\r\n\r\n\tphone.hide();\r\n\r\n\tfunction validateEmail(email_address){\r\n\t\tvar re = /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\r\n\t\treturn re.test(email_address);\r\n\t}\r\n\r\n\tsubmit.click(function(e){\r\n\t\te.preventDefault()\r\n\t\tif (!validateEmail(email.val()) ) {\r\n\t\t\temail.attr('class','validation_error')\r\n\t\t\terror_txt.text('Please enter a valid Email.');\r\n\t\t\treturn;\r\n\t\t} else {\r\n\t\t\temail.removeClass('validation_error');\r\n\t\t}\r\n\t\tif (!consent_box.is(':checked')){\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (form.find('.validation_error').length) {\r\n\t\t\treturn;\r\n\t\t} else {\r\n\t\t\t$('.validation_error').removeClass('validation_error');\r\n\t\t}\r\n\t\tvar data = {};\r\n\r\n\t\tdata.phone_number = phone.val();\r\n\t\tform.addClass('submitting');\r\n\t\t$.post('/wp-json/3fo/utilities/spam-check', data, function(response) {\r\n\t\t\tif (response.success) {\r\n\t\t\t\tphone.remove();\r\n\r\n\t\t\t\tvar data = {\r\n\t\t\t\t\t\"PostData\": {\r\n\t\t\t\t\t\t\"emailAddress\": email.val(),\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\t$.ajax({\r\n\t\t\t\t\ttype: \"POST\",\r\n\t\t\t\t\turl: response.url,\r\n\t\t\t\t\tcontentType: \"application/json\",\r\n\t\t\t\t\tcrossDomain: true,\r\n\t\t\t\t\tdataType: \"json\",\r\n\t\t\t\t\tdata: JSON.stringify(data)\r\n\t\t\t\t}).done(function(result) {\r\n\t\t\t\t\tif (result !== null) {\r\n\t\t\t\t\t\tif (result.Status == 'Success') {\r\n\t\t\t\t\t\t\tform.hide();\r\n\t\t\t\t\t\t\tsuccess_msg.show();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}).fail(function(XMLHttpRequest, textStatus, errorThrown) {\r\n\t\t\t\t\terror_txt.text('Something went wrong with the form submission');\r\n\t\t\t\t\tconsole.log(\"Request: \" + XMLHttpRequest.toString() + \"\\n\\nStatus: \" + textStatus + \"\\n\\nError: \" + errorThrown);\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tform.removeClass('submitting');\r\n\t\t\t}\r\n\t\t})\r\n\t});\r\n});\r\n\r\n","$(function() {\r\n\tvar formContainer = $('.nf-form-cont');\r\n\tif (!formContainer.length)\r\n\t\treturn;\r\n\r\n\tjQuery(document).ready(function() {\r\n\t\tvar loadOrder = 0;\r\n\t\tnew(Marionette.Object.extend({\r\n\t\t\tinitialize: function() {\r\n\t\t\t\tthis.listenTo(Backbone.Radio.channel('pikaday'), 'init', this.modifyDatepicker);\r\n\t\t\t},\r\n\t\t\tmodifyDatepicker: function(dateObject, fieldModel) {\r\n\t\t\t\tvar i = $('<i class=\"calendar\"></i>');\r\n\t\t\t\tvar picker = dateObject.pikaday;\r\n\t\t\t\tvar input = $(dateObject.element).next();\r\n\t\t\t\tinput.attr('order', loadOrder);\r\n\t\t\t\tinput.data('picker', picker);\r\n\t\t\t\tvar wrapper = input.parent();\r\n\r\n\t\t\t\twrapper.append(i);\r\n\t\t\t\twrapper.click(function() {\r\n\t\t\t\t\tpicker.show();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tloadOrder += 1;\r\n\t\t\t}\r\n\t\t}));\r\n\t});\r\n\r\n\t$window.load(function() {\r\n\t\tif ($('#nf-form-3-cont').length) {\r\n\t\t\tvar form = $('#nf-form-3-cont');\r\n\t\t\tvar inputs = form.find('input.pikaday__display');\r\n\t\t\tvar errorElements = [];\r\n\t\t\tvar timestamps = {0: null, 1: null, 2: null, 3: null};\r\n\r\n\t\t\tinputs.each(function() {\r\n\t\t\t\terrorElements.push($(this).parents('.date-container').find('.nf-error-wrap'));\r\n\t\t\t});\r\n\r\n\t\t\tinputs.change(function() {\r\n\t\t\t\tvar date = $(this).val();\r\n\t\t\t\tvar order = $(this).attr('order');\r\n\t\t\t\tvar timestamp = moment(date, \"dddd, MMMM DD YYYY\").unix();\r\n\t\t\t\ttimestamps[order] = timestamp;\r\n\t\t\t\tvalidateDates(order);\r\n\t\t\t});\r\n\r\n\t\t\tvar validateDates = function(whichChanged) {\r\n\t\t\t\tvar functionStart = timestamps[0];\r\n\t\t\t\tvar functionEnd = timestamps[1];\r\n\r\n\t\t\t\tvar arrivalStart = timestamps[2];\r\n\t\t\t\tvar arrivalEnd = timestamps[3];\r\n\r\n\t\t\t\tif (functionStart && functionEnd) {\r\n\t\t\t\t\tif (functionStart >= functionEnd) {\r\n\t\t\t\t\t\terrorElements[whichChanged].html($('<div class=\"nf-error-msg date-error\">' + 'First date should be before last date.' + '</div>'));\r\n\t\t\t\t\t} else if (functionEnd <= functionStart) {\r\n\t\t\t\t\t\terrorElements[whichChanged].html($('<div class=\"nf-error-msg date-error\">' + 'Last date should be after first date.' + '</div>'));\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$(errorElements.slice(0,2)).each(function() {\r\n\t\t\t\t\t\t\t$(this).find('.date-error').remove();\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\r\n\t\t\t\tif (arrivalStart && arrivalEnd) {\r\n\t\t\t\t\tif (arrivalStart >= arrivalEnd) {\r\n\t\t\t\t\t\terrorElements[whichChanged].html($('<div class=\"nf-error-msg date-error\">' + 'First date should be before last date.' + '</div>'));\r\n\t\t\t\t\t} else if (arrivalEnd <= arrivalStart) {\r\n\t\t\t\t\t\terrorElements[whichChanged].html($('<div class=\"nf-error-msg date-error\">' + 'Last date should be after first date.' + '</div>'));\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$(errorElements.slice(2,4)).each(function() {\r\n\t\t\t\t\t\t\t$(this).find('.date-error').remove();\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n});\r\n","jQuery(function($) {\r\n\tif (!$('.only_at_alohilani').length)\r\n\t\treturn;\r\n\t$('.only_at_alohilani .slider_wrapper .slick-slide').eq(3).addClass('slide_lines');\r\n\t$('.only_at_alohilani .slide .slide_wrapper').on('focusin', function(){\r\n\t\t$(this).addClass('focusin')\r\n\t})\r\n\t$('.only_at_alohilani .slide .slide_wrapper').on('focusout', function(){\r\n\t\t$(this).removeClass('focusin')\r\n\t})\r\n\t$('.only_at_alohilani .slider_wrapper').on('init', function() {\r\n\t\t$('.only_at_alohilani .slick-slide:not(.slick-active)').find('.slide_wrapper, .overlay_content *:not(object)').attr('tabindex', -1);\r\n\t});\r\n\r\n\t$('.only_at_alohilani .slider_wrapper').on('init', function(event){\r\n\t\t$('.only_at_alohilani .slick-arrow').on('click', function() {\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tcurrentSlideEl = $('.only_at_alohilani .slider_wrapper .slick-current');\r\n\t\t\t\tcurrentSlideEl.focus();\r\n\t\t\t}, 300);\r\n\t\t});\r\n\t});\r\n\r\n\t// Starts videos playing to get around issue with DOM manipulation and video autoplay\r\n\tinitializeSlick('.only_at_alohilani .slider_wrapper', {\r\n\t\taccessibility: true,\r\n\t\tdots: false,\r\n\t\tinfinite: false,\r\n\t\tspeed: 300,\r\n\t\tslidesToShow: 4,\r\n\t\tslidesToScroll: 4,\r\n\t\tautoplay: false,\r\n\t\tarrows: true,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow\" tabindex=\"0\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow\" tabindex=\"0\">Previous</button>',\r\n\t\tresponsive: [\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 769,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 2,\r\n\t\t\t\t\tslidesToScroll: 2\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 481,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 1,\r\n\t\t\t\t\tslidesToScroll: 1\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t]\r\n\t});\r\n\t$('.only_at_alohilani .slider_wrapper').on('beforeChange', function(event, slick, currentSlide, nextSlide){\r\n\t\t$('.only_at_alohilani .slider_wrapper .slick-active').removeClass('slide_lines');\r\n\t});\r\n\t$('.only_at_alohilani .slider_wrapper').on('afterChange', function(event, slick, currentSlide, nextSlide){\r\n\t\t$('.only_at_alohilani .slider_wrapper .slick-active').eq(3).addClass('slide_lines');\r\n\t\t$('.only_at_alohilani .slick-slide').find('.slide_wrapper, .overlay_content *:not(object)').attr('tabindex', -1);\r\n\t\t$('.only_at_alohilani .slick-active').find('.slide_wrapper, .overlay_content *:not(object)').attr('tabindex', 0);\r\n\t});\r\n});\r\n\r\n","$(function() {\r\n\t// deleteCookie('STYXKEY_CTA_POPUP');\r\n\tvar body = $('body');\r\n    var page_id = 0;\r\n\r\n    if(body) {\r\n\t\tvar classList = body.attr('class').split(/\\s+/);\r\n\r\n\t\t$.each(classList, function(index, item) {\r\n\t\t\tif (item.indexOf('page-id') >= 0) {\r\n\t\t\t\tvar item_arr = item.split('-');\r\n\t\t\t\tpage_id =  item_arr[item_arr.length -1];\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tvar initPopup = function() {\r\n\t\tvar popup = $('.popup_trigger');\r\n\t\tif (!popup.length) return;\r\n\r\n\t\tvar popup_container = $('#popup');\r\n\t\tvar popup_frequency = $('#popup').attr('data-popup-frequency') || 1;\r\n\t\tvar popup_id = $('#popup').attr('data-popup-id');\r\n\r\n\t\tvar cookie = getCookie('STYXKEY_CTA_POPUP');\r\n\r\n\t\tif (window.location.pathname == '/gallery/')\r\n\t\t\treturn\r\n\r\n\t\t// console.log(cookie, popup_id, popup_frequency);\r\n\t\t// cookie = null;\r\n\r\n\t\t// if (!cookie || cookie != popup_id) {\r\n\t\t// \tgetCookie\r\n\t\t// \tconsole.log(cookie, popup_id, popup_frequency);\r\n\t\t// } else {\r\n\t\t// \treturn;\r\n\t\t// }\r\n\r\n\t\tif (popup_container.hasClass(\"template_1\")) {\r\n\t\t\tpopup.modaal({\r\n\t\t\t\thide_close: true,\r\n\t\t\t\tbackground: '#0E2B4C',\r\n\t\t\t\toverlay_opacity: .9,\r\n\t\t\t\t// after_close: function(){ document.location.href = \"#\"; }\r\n\t\t\t});\r\n\r\n\t\t\tvar scrollTop = 0;\r\n\t\t\tvar activatePopup = function() {\r\n\t\t\t\tscrollTop = $(window).scrollTop();\r\n\t\t\t\tpopup.trigger('click');\r\n\r\n\t\t\t\tsetTimeout(function() {\r\n\r\n\t\t\t\t\tvar close = $('.close_popup, .close_popup_x');\r\n\t\t\t\t\tvar button = $('.popup_content a.orange');\r\n\r\n\t\t\t\t\tbutton.click(function() {\r\n\t\t\t\t\t\tcreateCookie('STYXKEY_CTA_POPUP', popup_id, popup_frequency / 24);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tclose.focus();\r\n\t\t\t\t\tclose.click(function() {\r\n\t\t\t\t\t\tcreateCookie('STYXKEY_CTA_POPUP', popup_id, popup_frequency / 24);\r\n\t\t\t\t\t\tpopup.modaal('close');\r\n\t\t\t\t\t\tconsole.log(cookie, popup_id, popup_frequency);\r\n\t\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\t\t$(window).scrollTop(scrollTop);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t}, 500);\r\n\t\t\t}\r\n\r\n\t\t\tvar interval = setInterval(function() {\r\n\t\t\t\tif ($('body').hasClass('load_step_3') && !cookie ) {\r\n\t\t\t\t\tclearInterval(interval);\r\n\t\t\t\t\tactivatePopup();\r\n\t\t\t\t}\r\n\t\t\t}, 100);\r\n\t\t}\r\n\r\n\t\tif (popup_container.hasClass(\"template_2\")) {\r\n\t\t\t$('header').after(popup_container);\r\n\t\t\tvar activatePopup = function() {\r\n\t\t\t\tvar close = $('.close_popup, .close_popup_x');\r\n\t\t\t\tpopup_container.addClass(\"popup_open\");\r\n\r\n\t\t\t\tvar button = $('.popup_content a.orange');\r\n\r\n\t\t\t\t\tbutton.click(function() {\r\n\t\t\t\t\t\tcreateCookie('STYXKEY_CTA_POPUP', popup_id, popup_frequency / 24);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\tclose.addClass(\"show_close\");\r\n\t\t\t\t}, 2500);\r\n\r\n\t\t\t\tvar closePopup = function(){\r\n\t\t\t\t\tclose.focus();\r\n\t\t\t\t\tpopup_container.removeClass(\"popup_open\");\r\n\t\t\t\t\tpopup_container.find('.popup_content *').attr('tabindex', -1);\r\n\t\t\t\t\tcreateCookie('STYXKEY_CTA_POPUP', popup_id, popup_frequency / 24);\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tclose.click(function() {\r\n\t\t\t\t\tclosePopup();\r\n\t\t\t\t\tconsole.log(cookie, popup_id, popup_frequency);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// $(window).on('scroll', function(){\r\n\t\t\t\t// \tvar scrollTop = $(window).scrollTop();\r\n\r\n\t\t\t\t// \tif (scrollTop > 200) {\r\n\t\t\t\t// \t\tclosePopup();\r\n\t\t\t\t// \t}\r\n\t\t\t\t// });\r\n\t\t\t}\r\n\r\n\t\t\tvar interval = setInterval(function() {\r\n\t\t\t\tif ($('body').hasClass('reveal_alerts') && !cookie || !cookie  ) {\r\n\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\tclearInterval(interval);\r\n\t\t\t\t\t\tactivatePopup();\r\n\t\t\t\t\t}, 500);\r\n\t\t\t\t}\r\n\t\t\t}, 500);\r\n\t\t}\r\n\t}\r\n\r\n\t$.get('/get-current-popup?id=' + page_id, function(response) {\r\n\t\tconsole.log(response);\r\n\t\tif (response) {\r\n\t\t\tvar popup = $(response.html);\r\n\t\t\tpopup.appendTo('body');\r\n\t\t\t$(document).ready(function() {\r\n\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\tinitPopup();\r\n\t\t\t\t}, 500)\r\n\t\t\t})\r\n\t\t} else {\r\n\t\t\tdeleteCookie('STYXKEY_CTA_POPUP');\r\n\t\t}\r\n\t});\r\n\r\n});","$(function() {\r\n\tif ((!$body.hasClass('page-template-page-rooms') && !$body.hasClass('page-template-page-club-access') && !$body.hasClass('page-template-page-ada-rooms')))\r\n\t\treturn;\r\n\r\n\t$('.call_to_action').mouseenter(function(){\r\n\t\t$(this).parent().parent().addClass('white');\r\n\t}).mouseleave(function(){\r\n\t\t$(this).parent().parent().removeClass('white');\r\n\t});\r\n\r\n\tvar sliders = $('.rooms .slides');\r\n\tvar loadedCount = 0;\r\n\tvar rooms = $('.room');\r\n\r\n\tsliders.each(function() {\r\n\t\tinitializeSlick(this, {\r\n\t\t\taccessibility: true,\r\n\t\t\tdots: false,\r\n\t\t\tinfinite: true,\r\n\t\t\tspeed: 700,\r\n\t\t\tslidesToShow: 1,\r\n\t\t\tarrows: true,\r\n\t\t\tfade: true,\r\n\t\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>',\r\n\t\t\tfocusOnSelect: true,\r\n\t\t}, function() {\r\n\t\t\tloadedCount += 1;\r\n\t\t\tif (loadedCount == sliders.length) {\r\n\t\t\t\tslidersBuilt();\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\tvar club_access_sliders = $('.club_access .slides');\r\n\tvar loadedCount = 0;\r\n\r\n\tclub_access_sliders.each(function() {\r\n\t\tinitializeSlick(this, {\r\n\t\t\taccessibility: true,\r\n\t\t\tdots: false,\r\n\t\t\tinfinite: true,\r\n\t\t\tspeed: 700,\r\n\t\t\tslidesToShow: 1,\r\n\t\t\tarrows: true,\r\n\t\t\tfade: true,\r\n\t\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>',\r\n\t\t\tfocusOnSelect: true,\r\n\t\t});\r\n\t});\r\n\r\n\tfunction roomsFilter() {\r\n\t\tvar myul = $('.myul');\r\n\t\tvar lis = myul.find('li');\r\n\t\tvar dropdown = $('.show');\r\n\t\tvar lower = $('.lower');\r\n\t\tlis.on('click', function(e) {\r\n\t\t\tdropdown.toggleClass('flip');\r\n\t\t\tif (myul.hasClass('active')) {\r\n\t\t\t\tmyul.removeClass('active');\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tmyul.addClass('active');\r\n\t\t\t}\r\n\t\t\tlis.removeClass('active');\r\n\t\t\t$(e.target).parent().addClass('active');\r\n\t\t});\r\n\t}\r\n\r\n\tfunction slidersBuilt() {\r\n\t\t$window.trigger('resize');\r\n\t\tvar categories = $('.category_link');\r\n\t\tvar activeCategory = 'resort';\r\n\t\tvar rooms = $('.room');\r\n\t\tvar filteredRooms = rooms;\r\n\r\n\t\t$(window).on('hashchange', function(e){\r\n\t\t\tvar currentUrl = URI(document.location);\r\n\t\t\tif (currentUrl.hash()) {\r\n\t\t\t\tvar currentlySelected = categories.filter('[href=\"' + currentUrl.hash() + '\"]');\r\n\t\t\t\tif (currentlySelected.length) {\r\n\t\t\t\t\tcurrentlySelected.trigger('click')\r\n\t\t\t\t} else {\r\n\t\t\t\t\tcategories.eq(0).trigger('click');\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tcategories.eq(0).trigger('click');\r\n\t\t\t}\r\n\t\t});\r\n\r\n\r\n\t\t$('#filter_mobile_button').click(function(){\r\n\t\t\t$('#rooms_categories nav').toggleClass('open');\r\n\t\t});\r\n\r\n\t\tvar updateUrl = function(url) {\r\n\t\t\tif (url != window.location.href)\r\n\t\t\t\twindow.history.pushState('', '', url);\r\n\t\t\t// update active link in main nav\r\n\t\t\t$('#main_menu').find('a[href=\"' + url + '\"]').parent().siblings().removeClass('current-menu-item');\r\n\t\t\t$('#main_menu').find('a[href=\"' + url + '\"]').parent().addClass('current-menu-item');\r\n\t\t}\r\n\r\n\t\tvar filterCategory = function(element) {\r\n\t\t\tconsole.log('running');\r\n\t\t\trooms.removeClass('appear even odd');\r\n\t\t\tif (element) {\r\n\t\t\t\telement = $(element);\r\n\t\t\t\tactiveCategory = element.attr('href').slice(1);\r\n\t\t\t}\r\n\r\n\t\t\trooms.hide();\r\n\t\t\tif (activeCategory == 'all') {\r\n\t\t\t\tfilteredRooms = rooms;\r\n\t\t\t} else {\r\n\t\t\t\tfilteredRooms = rooms.filter('[cat*=' + activeCategory + ']');\r\n\t\t\t}\r\n\r\n\t\t\tif(activeCategory === \"club-lounge\"){\r\n\t\t\t\t$('.secondary-booking').show();\r\n\t\t\t\t$('.main-booking').hide();\r\n\t\t\t} else {\r\n\t\t\t\t$('.secondary-booking').hide();\r\n\t\t\t\t$('.main-booking').show();\r\n\t\t\t}\r\n\r\n\t\t\tdisplayRooms(filteredRooms);\r\n\r\n\t\t\tupdateUrl(document.location.origin + document.location.pathname + '#' + activeCategory);\r\n\t\t}\r\n\r\n\t\tvar displayRooms = function(filteredRooms) {\r\n\t\t\tfilteredRooms.each(function(i) {\r\n\t\t\t\tif (i%2 == 0 || i == 0) {\r\n\t\t\t\t\t$(this).addClass('even');\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$(this).addClass('odd');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tfilteredRooms.show();\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\tfilteredRooms.addClass('appear');\r\n\t\t\t\tfilteredRooms.find('.slides').slick('refresh');\r\n\t\t\t}, 50);\r\n\t\t}\r\n\r\n\t\t\r\n\t\tsetInterval(function() {\r\n\t\t\t$window.trigger('resize');\r\n\t\t}, 500);\r\n\r\n\t\tcategories.click(function() {\r\n\t\t\tcategories.removeClass('active_category');\r\n\t\t\t$(this).addClass('active_category');\r\n\t\t\tfilterCategory(this);\r\n\t\t});\r\n\r\n\t\tif (!categories.length)\r\n\t\t\tdisplayRooms(rooms);\r\n\r\n\r\n\t\t// Activate the proper category and imageon page load\r\n\t\tvar currentUrl = URI(document.location);\r\n\t\tif (currentUrl.hash()) {\r\n\t\t\tvar currentlySelected = categories.filter('[href=\"' + currentUrl.hash() + '\"]');\r\n\t\t\tif (currentlySelected.length) {\r\n\t\t\t\tcurrentlySelected.trigger('click')\r\n\t\t\t} else {\r\n\t\t\t\tcategories.eq(0).trigger('click');\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tcategories.eq(0).trigger('click');\r\n\t\t}\r\n\t}\r\n\r\n\trooms.find('.button').click(function(e) {\r\n\t\te.stopPropagation();\r\n\t});\r\n\troomsFilter();\r\n});","$(function() {\r\n\tif (!$body.hasClass('single-room'))\r\n\t\treturn;\r\n\r\n\tvar isRoom = $('body').hasClass('single-room');\r\n\r\n\tvar slider = $('.room_hero .slides');\r\n\r\n\tvar slides = slider.find('.slide');\r\n\tinitializeSlick(slider, {\r\n\t\taccessibility: true,\r\n\t\tdots: false,\r\n\t\tinfinite: true,\r\n\t\tspeed: 700,\r\n\t\tslidesToShow: 1,\r\n\t\tarrows: true,\r\n\t\tautoplay: false,\r\n\t\tfade: true,\r\n\t\tpauseOnFocus: true,\r\n\t\tpauseOnHover: false,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>',\r\n\t\tfocusOnSelect: true,\r\n\t}, function() {\r\n\t\tslider.on('beforeChange', function() {\r\n\t\t\t$('.room_hero .darken').addClass('hide');\r\n\t\t\t$('.room_hero .darken_alternate').addClass('show');\r\n\t\t\t$('.room_hero .title').addClass('hide');\r\n\t\t});\r\n\t});\r\n\r\n\tslider.on('afterChange', function(e, slick) {\r\n\t\tslides.eq(0).removeClass('initial_load');\r\n\t\tslides.removeClass('current_slide').eq(slick.currentSlide).addClass('current_slide');\r\n\t});\r\n\r\n\t$(window).on('panelsLoaded', function() {\r\n\t\tsetTimeout(function() {\r\n\t\t\tslides.eq(0).addClass('initial_load');\r\n\t\t\tif (window.currentSlidersState != 2) {\r\n\t\t\t\tslider.slick('slickPlay');\r\n\t\t\t} else {\r\n\t\t\t\tslider.data('autoplay', 1);\r\n\t\t\t}\t\t\t\r\n\t\t}, 500);\r\n\t});\r\n\r\n\tif ($('.single-room').length) {\r\n\t\t// Keep menu on screen as long as it doesn't overlap footer\r\n\t\t$(window).load(function() {\r\n\t\t\tvar roomHero = $('.room_hero');\r\n\t\t\tvar roomContent = $('.room_content');\r\n\t\t\tvar contentTop = roomContent.length ? roomContent.offset().top : 0;\r\n\t\t\tvar contentHeight = $('.room_content').outerHeight(true);\r\n\t\t\tvar roomsNav = $('.room_nav');\r\n\t\t\tvar roomsNavWrapper = $('.aside_wrapper');\r\n\t\t\tvar roomsTop = $('.room_nav').offset().top;\r\n\r\n\t\t\t$(window).bind('mousewheel', function(event) {\r\n\t\t\t\tvar contentTopInViewport = contentTop - $(window).scrollTop();\r\n\t\t\t\tvar scrollTop = $(window).scrollTop();\r\n\t\t\t\tvar roomsBottom = scrollTop + roomsNav.outerHeight(true);\r\n\t\t\t\tvar contentBottom = roomContent.offset().top + contentHeight;\r\n\t\t\t\tvar roomsTop = $('.room_nav').offset().top;\r\n\r\n\t\t\t\tif(contentHeight > roomsNav.outerHeight(true)){\r\n\t\t\t\t\tif (scrollTop < contentTop){\r\n\t\t\t\t\t\troomsNavWrapper.removeClass('attached');\r\n\t\t\t\t\t\troomsNavWrapper.css('bottom', '');\r\n\t\t\t\t\t\troomsNavWrapper.css('top', '0');\r\n\t\t\t\t\t\troomsNav.css('bottom', '');\r\n\t\t\t\t\t}\r\n\t\t\t\t    if (event.originalEvent.wheelDelta >= 0) {\r\n\t\t\t\t    \t//user scrolling up\r\n\t\t\t\t    \tif(scrollTop + 60 <= roomsTop && scrollTop + 60 > contentTop){\r\n\t\t\t\t\t\t\troomsNavWrapper.addClass('attached');\r\n\t\t\t\t\t\t\troomsNavWrapper.css('top', '');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t    } else {\r\n\t\t\t\t    \t// console.log(roomsBottom +' / '+ contentBottom)\r\n\t\t\t\t    \t//user scrolling down\r\n\t\t\t\t        if(scrollTop + 60 >= contentTop && roomsBottom < contentBottom - 80){\r\n\t\t\t\t\t\t\troomsNavWrapper.addClass('attached');\r\n\t\t\t\t\t\t\troomsNavWrapper.css('top', '');\r\n\t\t\t\t\t\t} else if (scrollTop > contentTop) {\r\n\t\t\t\t\t\t\troomsNavWrapper.removeClass('attached');\r\n\t\t\t\t\t\t\troomsNavWrapper.css('top', '');\r\n\t\t\t\t\t\t\troomsNavWrapper.css('bottom', '0');\r\n\t\t\t\t\t\t\troomsNav.css('bottom', '20px');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t    }\r\n\t\t\t\t} else {\r\n\t\t\t\t\troomsNavWrapper.css('position', 'relative');\r\n\t\t\t\t\troomsNav.css('position', 'relative');\r\n\t\t\t\t\troomsNav.css('right', '0');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t})\r\n\t}\r\n\r\n});","jQuery(function($) {\r\n\tif (!$('.school_of_surf_grid .slider .slides').length)\r\n\t\treturn;\r\n\r\n\tvar popup = $('.school_of_surf_grid .popup_trigger');\r\n\tvar close = $('.close');\r\n\r\n\t$('.school_of_surf_grid .slider .slides').each(function(){\r\n\r\n\t\tinitializeSlick(this, {\r\n\t\t\taccessibility: true,\r\n\t\t\tinfinite: true,\r\n\t\t\tspeed: 1500,\r\n\t\t\tslidesToShow: 1,\r\n\t\t\tarrows: false,\r\n\t\t\tautoplay: true,\r\n\t\t\tfade: true,\r\n\t\t\tpauseOnHover: false,\r\n\t\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>',\r\n\t\t});\r\n\r\n\t});\r\n\r\n\tinitializeSlick('.school_of_surf_grid_holder .slider_holder .slides_holder', {\r\n\t\taccessibility: true,\r\n\t\tdots: false,\r\n\t\tinfinite: false,\r\n\t\tspeed: 300,\r\n\t\tslidesToShow: 3,\r\n\t\tslidesToScroll: 1,\r\n\t\tautoplay: false,\r\n\t\tarrows: true,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow\" tabindex=\"0\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow\" tabindex=\"0\">Previous</button>',\r\n\t\tresponsive: [\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 1149,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 2\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tbreakpoint: 767,\r\n\t\t\t\tsettings: {\r\n\t\t\t\t\tslidesToShow: 1\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t]\r\n\t});\r\n\r\n\tpopup.modaal({\r\n\t\thide_close: true,\r\n\t\tbackground: '#FFFFFF',\r\n\t\toverlay_opacity: .9,\r\n\t\t// after_close: function(){ document.location.href = \"#\"; }\r\n\t});\r\n\r\n\r\n\tclose.click(function() {\r\n\t\tpopup.modaal('close');\r\n\t});\r\n});\r\n\r\n","jQuery(function($) {\r\n  if (!$(\".expandable_content\").length) return;\r\n\r\n  var expandableContent = $(\".expandable_content\");\r\n  var toggles = expandableContent.find(\".toggle\");\r\n\r\n  toggles.click(function() {\r\n    var prev = $(this).prev();\r\n    var siblings = prev.siblings(\"div:visible\");\r\n    var next = siblings.next();\r\n    if ($body.hasClass(\"page-template-page-faq\") && siblings.length) {\r\n      siblings.slideUp();\r\n      prev.slideDown();\r\n      prev.focus();\r\n      $(this).text(\"Close Details\");\r\n      next.text(\"View Details\");\r\n    } else if (prev.is(\":visible\")) {\r\n      prev.slideUp();\r\n        if($body.hasClass(\"page-template-page-faq\")) {\r\n          $(this).text(\"View Details\");\r\n        } else {\r\n          $(this).text(\"Read More\");\r\n        }\r\n    } else {\r\n      prev.slideDown();\r\n      prev.focus();\r\n      if($body.hasClass(\"page-template-page-faq\")) {\r\n        $(this).text(\"Close Details\");\r\n      } else {\r\n        $(this).text(\"Close\");\r\n      }\r\n      \r\n    }\r\n  });\r\n});\r\n","$(function() {\r\n\tvar sidebarMenu = $('.sidebar_menu');\r\n\tif (!sidebarMenu.length)\r\n\t\treturn;\r\n\r\n\tvar path = document.location.pathname;\r\n\tvar active = sidebarMenu.find('a[href$=\"' + path + '\"]').parent();\r\n\tactive.addClass('current');\r\n});","$(function() {\r\n\tif (!$body.hasClass('page-sitemap'))\r\n\t\treturn;\r\n\r\n\tvar links = $('section.sitemap li a');\r\n\r\n\tlinks.click(function() {\r\n\t\tvar a = $(this);\r\n\t\tvar li = a.parent();\r\n\t\tif (a.attr('href') == '#') {\r\n\t\t\tvar child = li.find('> ul > li:first-child > a');\r\n\t\t\tif (child && child.attr('href'))\r\n\t\t\t\twindow.location = child.attr('href');\r\n\t\t\treturn false;\r\n\t\t}\r\n\t});\r\n\r\n});","jQuery(function($) {\r\n\tif (!$('.specials .slider').length)\r\n\t\treturn;\r\n\r\n\t$('.specials .slider').on('init', function(event){\r\n\t\t$('.specials .slider .slick-slide:not(.slick-active)').find('.content_wrapper *:not(object)').attr('tabindex', -1);\r\n\r\n\t\t$('.specials .slick-arrow').on('click', function() {\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tvar currentSlideEl = $('.specials .slider .slick-active');\r\n\t\t\t\tcurrentSlideEl.find('.content_wrapper *:not(object)').first().focus();\r\n\t\t\t}, 100);\r\n\t\t});\r\n\t});\r\n\r\n\tinitializeSlick('.specials .slider', {\r\n\t\taccessibility: true,\r\n\t\tinfinite: true,\r\n\t\tspeed: 500,\r\n\t\tslidesToShow: 1,\r\n\t\tarrows: true,\r\n\t\tautoplay: true,\r\n\t\tfade: true,\r\n\t\tpauseOnFocus: true,\r\n\t\tpauseOnHover: false,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>'\r\n\t});\r\n\r\n\t$('.specials .slider').on('afterChange', function() {\r\n\t\tsetTimeout(function(){\r\n\t\t\tcurrentSlideEl = $('.specials .slider .slick-active');\r\n\t\t\t$('.specials .slider .slick-slide').find('.content_wrapper *:not(object)').attr('tabindex', -1);\r\n\t\t\tcurrentSlideEl.find('.content_wrapper *:not(object)').attr('tabindex', 0);\r\n\t\t}, 100);\r\n\t});\r\n});\r\n\r\njQuery(function($) {\r\n\tif (!$('.specials_new').length)\r\n\t\treturn;\r\n\t$('.specials_new .slider_wrapper .slick-slide').eq(3).addClass('slide_lines');\r\n\t$('.specials_new .slide .slide_wrapper').on('focusin', function(){\r\n\t\t$(this).addClass('focusin')\r\n\t})\r\n\t$('.specials_new .slide .slide_wrapper').on('focusout', function(){\r\n\t\t$(this).removeClass('focusin')\r\n\t})\r\n\t$('.specials_new .slider_wrapper').on('init', function() {\r\n\t\t$('.specials_new .slick-slide:not(.slick-active)').find('.slide_wrapper, .overlay_content *:not(object)').attr('tabindex', -1);\r\n\t});\r\n\r\n\t$('.specials_new .slider_wrapper').on('init', function(event){\r\n\t\t$('.specials_new .slick-arrow').on('click', function() {\r\n\t\t\tsetTimeout(function(){\r\n\t\t\t\tcurrentSlideEl = $('.specials_new .slider_wrapper .slick-current');\r\n\t\t\t\tcurrentSlideEl.focus();\r\n\t\t\t}, 300);\r\n\t\t});\r\n\t});\r\n\r\n\t// $('.specials_new .overlay_content:nth-child(3) em').addClass('transparent');\r\n\r\n\tif (window.matchMedia('(min-width: 1030px)').matches) {\t\r\n\t\t$('.specials_new button.glide__arrow.glide__arrow--right').click(function() {\r\n\t\tglide.update({ peek: {before: 150, after: 0} })\r\n\t\t$('.specials_new .row4').addClass('visible')\r\n\t\t$('.specials_new .row1').addClass('visible2')\r\n\t\t$('.specials_new .row4').removeClass('row4')\r\n\t\t$('.specials_new .row1').addClass('row4')\r\n\t});\r\n\t};\r\n\r\n\tif (window.matchMedia('(min-width: 1030px)').matches) {\t\r\n\t$('.specials_new button.glide__arrow.glide__arrow--left').click(function() {\r\n\t\tglide.update({ peek: {before: 0, after: 150} })\r\n\t\t$('.specials_new .visible').addClass('row4')\r\n\t\t$('.specials_new .visible2').removeClass('row4')\r\n\t});\r\n\t};\r\n\r\n\tconst lastImage = $('.specials_new .ken_burns_wrapper').last()\r\n\tconst lastSlide = $('.specials_new .glide__slide').last()\r\n\tconst lastContent = $('.specials_new h3.white_text')\r\n\tconst transitionImage = lastImage.clone().addClass('transition_image')\r\n\tconst transitionImageRight = $('.specials_new .ken_burns_wrapper').first().clone().addClass('transition_image right')\r\n\r\n\tconst transitionContainer = $('.specials_new .container')\r\n\tconst transitionTarget = document.querySelector('.specials_new .container')\r\n\t\r\n\ttransitionContainer.prepend(transitionImage)\r\n\tlastSlide.append(transitionImageRight)\r\n\r\n\r\n\tconst observer = new IntersectionObserver((entries, observer) => {\r\n\t\tif (entries[0].isIntersecting) {\r\n\t\t\tobserver.unobserve(transitionTarget)\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\ttransitionContainer.addClass('transition')\r\n\t\t\t}, 300)\r\n\t\t}\r\n\t})\r\n\r\n\tobserver.observe(transitionTarget)\r\n\r\n\tconst glide = new Glide('.glide', {\r\n\t\ttype: 'slider',\r\n\t\tstartAt: 0,\r\n\t\tperView: 3,\r\n\t\tdragThreshold: false,\r\n\t\tgap: 0,\r\n\t\tbound: true,\r\n\t\trewind: false,\r\n\t\tpeek: {before: 0, after: 150},\r\n\t\tbreakpoints: {\r\n\t\t\t1105: {\r\n\t\t\t\tpeek: {before: 0, after: 0},\r\n\t\t\t\tperView: 2\r\n\t\t\t},\r\n\t\t\t831: {\r\n\t\t\t\tpeek: {before: 0, after: 0},\r\n\t\t\t\tperView: 1\r\n\t\t\t}}\r\n\t})\r\n\r\n\tglide.mount()\r\n\r\n});\r\n\r\n","$(function() {\r\n\tif (!$body.hasClass('page-template-page-specials'))\r\n\t\treturn;\r\n\r\n\t$('.call_to_action').mouseenter(function(){\r\n\t\t$(this).parent().parent().addClass('white');\r\n\t}).mouseleave(function(){\r\n\t\t$(this).parent().parent().removeClass('white');\r\n\t});\r\n\r\n\tvar sliders = $('.specials_page .slides');\r\n\tvar loadedCount = 0;\r\n\tvar specials = $('.special');\r\n\r\n\tsliders.each(function() {\r\n\t\tinitializeSlick(this, {\r\n\t\t\tdots: false,\r\n\t\t\tinfinite: true,\r\n\t\t\tspeed: 700,\r\n\t\t\tslidesToShow: 1,\r\n\t\t\tarrows: true,\r\n\t\t\tfade: true,\r\n\t\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>',\r\n\t\t\tfocusOnSelect: true,\r\n\t\t}, function() {\r\n\t\t\tloadedCount += 1;\r\n\t\t\tif (loadedCount == sliders.length) {\r\n\t\t\t\tslidersBuilt();\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\r\n\tfunction slidersBuilt() {\r\n\t\t$window.trigger('resize');\r\n\r\n\t\tspecials.each(function(i) {\r\n\t\t\tif (i%2 == 0 || i == 0) {\r\n\t\t\t\t$(this).addClass('even');\r\n\t\t\t} else {\r\n\t\t\t\t$(this).addClass('odd');\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tsetInterval(function() {\r\n\t\t\t$window.trigger('resize');\r\n\t\t}, 500);\r\n\t}\r\n\r\n\t$(window).on('panelsLoaded', function() {\r\n\t\tspecials.addClass('appear');\r\n\t});\r\n\r\n\tspecials.find('.button').click(function(e) {\r\n\t\te.stopPropagation();\r\n\t});\r\n\r\n});","$(function() {\r\n\tif (!$body.hasClass('page-special-offers'))\r\n\t\treturn;\r\n\r\n    var initSpecials = function() {\r\n        var specialsImages = $('.special_listing_item');\r\n        // var specialsLinks = $('.gallery_link');\r\n        var filteredSpecialsImages = specialsImages;\r\n        var categories = $('#specials_categories a');\r\n        var activeCategory = window.location.href.match(/#([^/&]+)/);\r\n        let location;\r\n\r\n        var updateUrl = function(url, category) {\r\n\r\n            if (category && category != '#')\r\n                url += category;\r\n\r\n            if (url != window.location.href)\r\n                window.history.pushState('', '', url);\r\n        \r\n\r\n        }\r\n        var filterCategory = function(element) {\r\n            specialsImages.removeClass('appear');\r\n            if (element) {\r\n                element = $(element);\r\n                activeCategory = element.attr('href').slice(1);\r\n            }\r\n\r\n            filteredSpecialsImages = specialsImages.filter('[cat=' + activeCategory + ']');\r\n\r\n            filteredSpecialsImages.each(function() {\r\n                var image = $(this);\r\n                setTimeout(function() {\r\n                    image.addClass('delayed_loaded');\r\n                }, 1000);\r\n            })\r\n\r\n            setTimeout(function() {\r\n                filteredSpecialsImages.addClass('appear');\r\n            }, 200);\r\n\r\n            updateUrl(document.location.pathname + '#' + activeCategory);\r\n        }\r\n\r\n        var currentUrl = URI(document.location);\r\n        if (currentUrl.hash()) {\r\n            var currentlySelected = categories.filter('[href=\"' + currentUrl.hash() + '\"]');\r\n\r\n            if (currentlySelected.length) {\r\n                currentlySelected.trigger('click')\r\n            } else {\r\n                categories.eq(0).trigger('click');\r\n            }\r\n        } else {\r\n            categories.eq(0).trigger('click');\r\n        }\r\n            \r\n        categories.click(function() {\r\n            categories.removeClass('active_category');\r\n            $(this).addClass('active_category');\r\n            filterCategory(this);\r\n        });\r\n\r\n        function onLoaded() {\r\n            if(currentUrl.hash() == '#' + activeCategory) {\r\n                updateUrl(document.location.pathname + '#' + activeCategory);\r\n            } else {\r\n                activeCategory = categories.eq(0).attr('cat')\r\n                updateUrl(document.location.pathname + '#' + activeCategory);\r\n            }\r\n            var currentCat = '#' + activeCategory\r\n            categories.each(function() {\r\n                var cat = $(this).attr('href')\r\n                if(cat != currentCat && currentUrl.hash() == cat) {\r\n                    categories.removeClass('active_category')\r\n                    $(this).addClass('active_category')\r\n                    filterCategory(this)\r\n                }\r\n                if(cat == currentCat) {\r\n                    $(this).addClass('active_category')\r\n                    filterCategory(this)\r\n                }\r\n            })\r\n        }\r\n\r\n        $(window).load(onLoaded)\r\n\r\n        if (document.readyState == 'complete') {\r\n            onLoaded()\r\n        }\r\n    }\r\n\r\n    // $.get('/api/geolocate', function(response) {\r\n    //     location = response\r\n        // filteredSpecialsImages.each(function() {\r\n        //     var image = $(this);\r\n        //     if(location.state != \"CA\") {\r\n        //         if(image.data('location') == \"CA\") {\r\n        //             image.removeClass('appear') \r\n        //         }\r\n        //     } else {\r\n        //         image.addClass('appear');\r\n        //     }\r\n        //     setTimeout(function() {\r\n        //         image.addClass('delayed_loaded');\r\n        //     }, 1000);\r\n        // })\r\n        \r\n    // });\r\n    // console.log(location)\r\n    var waitForReady = setInterval(function() {\r\n        if ($('body').hasClass('ready') || $('body').hasClass('ready')) {\r\n            initSpecials();\r\n            clearInterval(waitForReady);\r\n        }\r\n    }, 80);\r\n\r\n});","$(function() {\r\n\tif (!$body.hasClass('single-special') && !$body.hasClass('single-shop'))\r\n\t\treturn;\r\n\r\n\tvar slider = $('.single_special_hero .slider');\r\n\tvar slides = slider.find('.slide');\r\n\r\n\tinitializeSlick($('.single_special_hero .slider'), {\r\n\t\taccessibility: true,\r\n\t\tdots: false,\r\n\t\tinfinite: true,\r\n\t\tspeed: 700,\r\n\t\tslidesToShow: 1,\r\n\t\tarrows: true,\r\n\t\tautoplay: false,\r\n\t\tfade: true,\r\n\t\tpauseOnFocus: true,\r\n\t\tpauseOnHover: false,\r\n\t\tnextArrow: '<button class=\"slider_arrow next_arrow white\">Next</button>',\r\n\t\tprevArrow: '<button class=\"slider_arrow prev_arrow white\">Previous</button>',\r\n\t\tfocusOnSelect: true,\r\n\t}, function() {\r\n\t\t$('.single_special_hero .slider').on('beforeChange', function() {\r\n\t\t\t$('.single_special_hero .darken').addClass('hide');\r\n\t\t\t$('.single_special_hero .darken_alternate').addClass('show');\r\n\t\t\t$('.single_special_hero .title').addClass('hide');\r\n\t\t});\r\n\t});\r\n\r\n\t$('.single_special_hero .slider').on('afterChange', function(e, slick) {\r\n\t\tslides.eq(0).removeClass('initial_load');\r\n\t\tslides.removeClass('current_slide').eq(slick.currentSlide).addClass('current_slide');\r\n\t});\r\n\r\n\t$(window).on('panelsLoaded', function() {\r\n\t\tsetTimeout(function() {\r\n\t\t\tslides.eq(0).addClass('initial_load');\r\n\t\t\tif (window.currentSlidersState != 2) {\r\n\t\t\t\tslider.slick('slickPlay');\r\n\t\t\t} else {\r\n\t\t\t\tslider.data('autoplay', 1);\r\n\t\t\t}\t\r\n\t\t}, 500);\r\n\t});\r\n});","$(function() {\r\n\tjQuery(document).on( 'nfFormReady', function( e, layoutView ) {\r\n\t\tvar formContainer = $('.nf-form-cont.travel_partners');\r\n\t\tif (!formContainer.length)\r\n\t\t\treturn;\r\n\t\tvar addGuestTrigger = formContainer.find('#add_guest');\r\n\t\tvar guestCount = 2;\r\n\r\n\t\taddGuestTrigger.on(\"click\", function(e){\r\n\t\t\te.preventDefault();\r\n\r\n\t\t\tif(formContainer.find('.guest_' + guestCount).length){\r\n\t\t\t\tformContainer.find('.guest_' + guestCount).show();\r\n\t\t\t\tguestCount++;\r\n\t\t\t}\r\n\r\n\t\t\tif(!formContainer.find('.guest_' + guestCount).length){\r\n\t\t\t\taddGuestTrigger.hide();\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n});\r\n","$(function() {\r\n  var siblings = [];\r\n  var groups = [];\r\n  $(\".wysiwyg_content\")\r\n    .children()\r\n    .each(function() {\r\n      if ($(this).is(\"p\") && $(this).find(\"img\").length > 1) {\r\n        siblings = $(this).find(\"img\");\r\n        groups.push(siblings);\r\n        siblings = [];\r\n      } else if ($(this).is(\"figure\")) {\r\n        siblings.push(this);\r\n      } else {\r\n        if (siblings.length) {\r\n          groups.push(siblings);\r\n          siblings = [];\r\n        }\r\n      }\r\n\r\n      if ($(this).is(\"table.capacity_table\")) {\r\n        $(this)\r\n          .parent()\r\n          .css(\"overflow-x\", \"scroll\");\r\n      }\r\n    });\r\n\r\n  if (siblings.length) {\r\n    groups.push(siblings);\r\n  }\r\n\r\n  $.each(groups, function(i) {\r\n    $(this[0]).addClass(\"group_first\");\r\n    $(this).addClass(\"group_\" + this.length);\r\n    $(this[this.length - 1]).addClass(\"group_last\");\r\n    if (\r\n      $(this)\r\n        .parent()\r\n        .is(\"p\")\r\n    ) {\r\n      $(this)\r\n        .parent()\r\n        .addClass(\"image_group\");\r\n    }\r\n  });\r\n\r\n  var iframes = $(\".wysiwyg_content iframe\");\r\n  iframes.each(function() {\r\n    $(this)\r\n      .parent()\r\n      .addClass(\"contains_iframe\");\r\n  });\r\n});\r\n","jQuery(function($) {\r\n  window.lazyLoader = new LazyLoading();\r\n  lazyLoader.onLoaded(function(elem) {\r\n    // console.log(elem);\r\n  });\r\n\r\n  var scrollEvents = new ScrollEvents();\r\n  var fontsOnlyLoadOnce = false;\r\n\r\n  function onFontsLoaded() {\r\n    if (fontsOnlyLoadOnce) return;\r\n    fontsOnlyLoadOnce = true;\r\n    $(\"body\").addClass(\"fonts_loaded\");\r\n    setTimeout(function() {\r\n      $(\"body\").addClass(\"load_step_1\");\r\n    }, 100);\r\n    setTimeout(function() {\r\n      $(\"body\").addClass(\"load_step_2\");\r\n    }, 100);\r\n    setTimeout(function() {\r\n      $(\"body\").addClass(\"load_step_3\");\r\n    }, 100);\r\n\r\n    $(window).trigger(\"fontsLoaded\");\r\n  }\r\n\r\n  if (window.fontsLoaded) {\r\n    onFontsLoaded();\r\n  } else {\r\n    $(\"#fonts\").load(function() {\r\n      onFontsLoaded();\r\n    });\r\n  }\r\n\r\n  $(window).on('load', function() {\r\n    var anchors = new Anchors();\r\n    onFontsLoaded();\r\n    $(document).ready(function() {\r\n      $(\".modaal_trigger\").on(\"click\", function(e){\r\n        e.stopPropagation();\r\n      })\r\n      $(\".modaal_trigger\").modaal({\r\n        hide_close: true,\r\n        overlay_opacity: 0.6,\r\n        background_scroll: false\r\n      });\r\n    })\r\n    var close = $(\".close\");\r\n\r\n    close.focus();\r\n    close.click(function() {\r\n      $(\".modaal_trigger\").modaal(\"close\");\r\n      return false;\r\n    });\r\n  });\r\n\r\n  $(\"body\").addClass(\"ready\");\r\n\r\n  // Attempt to fix Paige home hero video issue\r\n  setTimeout(function() {\r\n    $(window).trigger(\"resize\");\r\n    setTimeout(function() {\r\n      $(window).trigger(\"resize\");\r\n    }, 1000);\r\n  }, 1000);\r\n\r\n  // Add a class for when panel animation is done\r\n  setTimeout(function() {\r\n    $(\"body\").addClass(\"panels_loaded\");\r\n    $(window).trigger(\"panelsLoaded\");\r\n  }, 1500);\r\n});"]}