HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ns3133907 6.8.0-86-generic #87-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 22 18:03:36 UTC 2025 x86_64
User: cssnetorguk (1024)
PHP: 8.2.28
Disabled: NONE
Upload Files
File: //home/igennie.co.uk/public_html/wp-content/themes/blossom-coach/js/modal-accessibility.min.js
/*! blossom-coach 1.5.7 2024-06-05 4:34:44 PM */
var blossomcoach=blossomcoach||{};function blossomcoachDomReady(e){if("function"==typeof e)return"interactive"===document.readyState||"complete"===document.readyState?e():void document.addEventListener("DOMContentLoaded",e,!1)}function blossomcoachToggleAttribute(e,t,o,n){void 0===o&&(o=!0),void 0===n&&(n=!1),e.getAttribute(t)!==o?e.setAttribute(t,o):e.setAttribute(t,n)}function blossomcoachFindParents(e,o){var n=[];return function e(t){t=t.parentNode;t instanceof HTMLElement&&(t.matches(o)&&n.push(t),e(t))}(e),n}blossomcoach.createEvent=function(e){var t;return"function"==typeof window.Event?t=new Event(e):(t=document.createEvent("Event")).initEvent(e,!0,!1),t},blossomcoach.coverModals={init:function(){document.querySelector(".cover-modal")&&(this.onToggle(),this.closeOnEscape(),this.hideAndShowModals(),this.keepFocusInModal())},onToggle:function(){document.querySelectorAll(".cover-modal").forEach(function(e){e.addEventListener("toggled",function(e){var e=e.target,t=document.body;e.classList.contains("active")?t.classList.add("showing-modal"):(t.classList.remove("showing-modal"),t.classList.add("hiding-modal"),setTimeout(function(){t.classList.remove("hiding-modal")},500))})})},closeOnEscape:function(){document.addEventListener("keydown",function(e){27===e.keyCode&&(e.preventDefault(),document.querySelectorAll(".cover-modal.active").forEach(function(e){this.untoggleModal(e)}.bind(this)))}.bind(this))},hideAndShowModals:function(){var s=document,l=window,e=s.querySelectorAll(".cover-modal"),i=s.documentElement.style,r=s.querySelector("#wpadminbar");function d(e){var t,o=l.pageYOffset;return r?(t=o+r.getBoundingClientRect().height,e?-t:t):0===o?0:-o}function u(){return{"overflow-y":l.innerHeight>s.documentElement.getBoundingClientRect().height?"hidden":"scroll",position:"fixed",width:"100%",top:d(!0)+"px",left:0}}e.forEach(function(a){a.addEventListener("toggle-target-before-inactive",function(e){var t=u(),o=l.pageYOffset,n=Math.abs(d())-o+"px",c=l.matchMedia("(max-width: 600px)");e.target===a&&(Object.keys(t).forEach(function(e){i.setProperty(e,t[e])}),l.blossomcoach.scrolled=parseInt(t.top,10),r&&(s.body.style.setProperty("padding-top",n),c.matches)&&(o>=d()?a.style.setProperty("top",0):a.style.setProperty("top",d()-o+"px")),a.classList.add("show-modal"))}),a.addEventListener("toggle-target-after-inactive",function(e){e.target===a&&setTimeout(function(){var e=blossomcoach.toggles.clickedEl;a.classList.remove("show-modal"),Object.keys(u()).forEach(function(e){i.removeProperty(e)}),r&&(s.body.style.removeProperty("padding-top"),a.style.removeProperty("top")),!1!==e&&(e.focus(),e=!1),l.scrollTo(0,Math.abs(l.blossomcoach.scrolled+d())),l.blossomcoach.scrolled=0},500)})})},untoggleModal:function(e){var t,o=!1;e.dataset.modalTargetString&&(t=e.dataset.modalTargetString,o=document.querySelector('*[data-toggle-target="'+t+'"]')),o?o.click():e.classList.remove("active")},keepFocusInModal:function(){var i=document;i.addEventListener("keydown",function(e){var t,o,n,c,a,s,l=blossomcoach.toggles.clickedEl;l&&i.body.classList.contains("showing-modal")&&(l=l.dataset.toggleTarget,a="input, a, button",c=i.querySelector(l),t=c.querySelectorAll(a),t=Array.prototype.slice.call(t),".menu-modal"===l&&(o=(o=window.matchMedia("(min-width: 1025px)").matches)?".expanded-menu":".mobile-menu",(t=t.filter(function(e){return null!==e.closest(o)&&null!==e.offsetParent})).unshift(i.querySelector('[data-set-focus=".close-nav-toggle"]')),n=i.querySelector(".menu-bottom > nav"))&&n.querySelectorAll(a).forEach(function(e){t.push(e)}),".main-menu-modal"===l&&(o=(o=window.matchMedia("(min-width: 1025px)").matches)?".expanded-menu":".mobile-menu",(t=t.filter(function(e){return null!==e.closest(o)&&null!==e.offsetParent})).unshift(i.querySelector(".close-main-nav-toggle")),n=i.querySelector(".menu-bottom > nav"))&&n.querySelectorAll(a).forEach(function(e){t.push(e)}),c=t[t.length-1],l=t[0],n=i.activeElement,a=9===e.keyCode,!(s=e.shiftKey)&&a&&c===n&&(e.preventDefault(),l.focus()),s)&&a&&l===n&&(e.preventDefault(),c.focus())})}},blossomcoach.modalMenu={init:function(){this.expandLevel()},expandLevel:function(){document.querySelectorAll(".modal-menu").forEach(function(e){e=e.querySelector(".current-menu-item");e&&blossomcoachFindParents(e,"li").forEach(function(e){e=e.querySelector(".submenu-toggle");e&&blossomcoach.toggles.performToggle(e,!0)})})}},blossomcoach.toggles={clickedEl:!1,init:function(){this.toggle()},performToggle:function(e,o){var n,c,a=this,s=document,l=e,i=l.dataset.toggleTarget,r="active";s.querySelectorAll(".show-modal").length||(a.clickedEl=s.activeElement),(n="next"===i?l.nextSibling:s.querySelector(i)).classList.contains(r)?n.dispatchEvent(blossomcoach.createEvent("toggle-target-before-active")):n.dispatchEvent(blossomcoach.createEvent("toggle-target-before-inactive")),c=l.dataset.classToToggle||r,e=0,n.classList.contains("cover-modal")&&(e=10),setTimeout(function(){var e=n.classList.contains("sub-menu")?l.closest(".menu-item").querySelector(".sub-menu"):n,t=l.dataset.toggleDuration;"slidetoggle"!==l.dataset.toggleType||o||"0"===t?e.classList.toggle(c):blossomcoachMenuToggle(e,t),("next"===i||n.classList.contains("sub-menu")?l:s.querySelector('*[data-toggle-target="'+i+'"]')).classList.toggle(r),blossomcoachToggleAttribute(l,"aria-expanded","true","false"),a.clickedEl&&-1!==l.getAttribute("class").indexOf("close-")&&blossomcoachToggleAttribute(a.clickedEl,"aria-expanded","true","false"),l.dataset.toggleBodyClass&&s.body.classList.toggle(l.dataset.toggleBodyClass),l.dataset.setFocus&&(e=s.querySelector(l.dataset.setFocus))&&(n.classList.contains(r)?e.focus():e.blur()),n.dispatchEvent(blossomcoach.createEvent("toggled")),n.classList.contains(r)?n.dispatchEvent(blossomcoach.createEvent("toggle-target-after-active")):n.dispatchEvent(blossomcoach.createEvent("toggle-target-after-inactive"))},e)},toggle:function(){var o=this;document.querySelectorAll("*[data-toggle-target]").forEach(function(t){t.addEventListener("click",function(e){e.preventDefault(),o.performToggle(t)})})}},blossomcoachDomReady(function(){blossomcoach.toggles.init(),blossomcoach.coverModals.init()});