");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, R_722072_156_1_2_0:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1744048774370"]');
el.revertContentOp().remove();})("HEAD")}}, C_722072_156_1_2_1:{ fn:function(log,nonce=''){return (function(x) {})(".w-inline-block,.w-button,input.w-button,.splash,.splash .mw-ol-btn.mw-ol-whitemw-ol-btn, .splash .mw-ol-btn.mw-ol-whitemw-ol-btn:visited,.splash .logo-link,.splash .btn,.nav,.mw-ol-btn, .mw-ol-btn:visited,.mw-ol-btn.mw-ol-whitemw-ol-btn, .mw-ol-btn.mw-ol-whitemw-ol-btn:visited,.mw-ol-btn.mw-ol-white,.overlay2,.div-block-42,.splash-h1,.div-block-18,.sidephoto,.link-3, .link-3:visited,.stafflink,.w-background-video,.w-background-video > video,.w-background-video > video::-webkit-media-controls-start-playback-button,.background-video,.mw-ol-btn,.mw-ol-btn.mw-ol-whitemw-ol-btn.nav,.w-hidden-small,.link-block,.btn,.w-hidden-tiny,.btn.whitebtn,.btn.whitebtn.onorange,.div-block-42 p,.div-block-17,.dark,.darkpara,.givingtues,.important-text,.heading-5,.btn, .btn:visited,.link-2,.big,.splash .pushdown__col,.splash .pushdown__content,.splash .pushdown-copy > *:last-child,.splash .grid-area,.splash .grid-card,.splash .grid-card div > p,.splash .grid-card div > p > span,.splash .grid-card .flex-col,.splash .grid-card div > p > b,.splash .grid-card button,.splash div div.centered,.splash div a.other-link,.splash .grid-card p:nth-of-type(3),.splash .heading-5,.splash .nav,.splash .dark,/* .splash .grid-card p:nth-of-type(3),.splash .div-block-17,.splash p.dark")}}, R_722072_156_1_2_1:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
})(".w-inline-block,.w-button,input.w-button,.splash,.splash .mw-ol-btn.mw-ol-whitemw-ol-btn, .splash .mw-ol-btn.mw-ol-whitemw-ol-btn:visited,.splash .logo-link,.splash .btn,.nav,.mw-ol-btn, .mw-ol-btn:visited,.mw-ol-btn.mw-ol-whitemw-ol-btn, .mw-ol-btn.mw-ol-whitemw-ol-btn:visited,.mw-ol-btn.mw-ol-white,.overlay2,.div-block-42,.splash-h1,.div-block-18,.sidephoto,.link-3, .link-3:visited,.stafflink,.w-background-video,.w-background-video > video,.w-background-video > video::-webkit-media-controls-start-playback-button,.background-video,.mw-ol-btn,.mw-ol-btn.mw-ol-whitemw-ol-btn.nav,.w-hidden-small,.link-block,.btn,.w-hidden-tiny,.btn.whitebtn,.btn.whitebtn.onorange,.div-block-42 p,.div-block-17,.dark,.darkpara,.givingtues,.important-text,.heading-5,.btn, .btn:visited,.link-2,.big,.splash .pushdown__col,.splash .pushdown__content,.splash .pushdown-copy > *:last-child,.splash .grid-area,.splash .grid-card,.splash .grid-card div > p,.splash .grid-card div > p > span,.splash .grid-card .flex-col,.splash .grid-card div > p > b,.splash .grid-card button,.splash div div.centered,.splash div a.other-link,.splash .grid-card p:nth-of-type(3),.splash .heading-5,.splash .nav,.splash .dark,/* .splash .grid-card p:nth-of-type(3),.splash .div-block-17,.splash p.dark")}}, C_722072_156_1_3_0:{ fn:function(log,nonce=''){return (function(x) {;var _vwo_sel=vwo_$("");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, R_722072_156_1_3_0:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1744048774372"]');
el.revertContentOp().remove();})("HEAD")}}, C_722072_156_1_3_1:{ fn:function(log,nonce=''){return (function(x) {})(".w-inline-block,.w-button,input.w-button,.splash,.splash .mw-ol-btn.mw-ol-whitemw-ol-btn, .splash .mw-ol-btn.mw-ol-whitemw-ol-btn:visited,.splash .logo-link,.splash .btn,.nav,.mw-ol-btn, .mw-ol-btn:visited,.mw-ol-btn.mw-ol-whitemw-ol-btn, .mw-ol-btn.mw-ol-whitemw-ol-btn:visited,.mw-ol-btn.mw-ol-white,.overlay2,.div-block-42,.splash-h1,.div-block-18,.sidephoto,.link-3, .link-3:visited,.stafflink,.w-background-video,.w-background-video > video,.w-background-video > video::-webkit-media-controls-start-playback-button,.background-video,.mw-ol-btn,.mw-ol-btn.mw-ol-whitemw-ol-btn.nav,.w-hidden-small,.link-block,.btn,.w-hidden-tiny,.btn.whitebtn,.btn.whitebtn.onorange,.div-block-42 p,.div-block-17,.dark,.darkpara,.givingtues,.important-text,.heading-5,.btn, .btn:visited,.link-2,.big,.splash .pushdown__col,.splash .pushdown__content,.splash .pushdown-copy > *:last-child,.splash .grid-area,.splash .grid-card,.splash .grid-card div > p,.splash .grid-card div > p > span,.splash .grid-card .flex-col,.splash .grid-card div > p > b,.splash .grid-card button,.splash div div.centered,.splash div a.other-link,.splash .grid-card p:nth-of-type(3),.splash .heading-5,/* .splash .grid-card p:nth-of-type(3),.splash .div-block-17,.splash .nav,.splash .dark,.splash p.dark")}}, R_722072_156_1_3_1:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
})(".w-inline-block,.w-button,input.w-button,.splash,.splash .mw-ol-btn.mw-ol-whitemw-ol-btn, .splash .mw-ol-btn.mw-ol-whitemw-ol-btn:visited,.splash .logo-link,.splash .btn,.nav,.mw-ol-btn, .mw-ol-btn:visited,.mw-ol-btn.mw-ol-whitemw-ol-btn, .mw-ol-btn.mw-ol-whitemw-ol-btn:visited,.mw-ol-btn.mw-ol-white,.overlay2,.div-block-42,.splash-h1,.div-block-18,.sidephoto,.link-3, .link-3:visited,.stafflink,.w-background-video,.w-background-video > video,.w-background-video > video::-webkit-media-controls-start-playback-button,.background-video,.mw-ol-btn,.mw-ol-btn.mw-ol-whitemw-ol-btn.nav,.w-hidden-small,.link-block,.btn,.w-hidden-tiny,.btn.whitebtn,.btn.whitebtn.onorange,.div-block-42 p,.div-block-17,.dark,.darkpara,.givingtues,.important-text,.heading-5,.btn, .btn:visited,.link-2,.big,.splash .pushdown__col,.splash .pushdown__content,.splash .pushdown-copy > *:last-child,.splash .grid-area,.splash .grid-card,.splash .grid-card div > p,.splash .grid-card div > p > span,.splash .grid-card .flex-col,.splash .grid-card div > p > b,.splash .grid-card button,.splash div div.centered,.splash div a.other-link,.splash .grid-card p:nth-of-type(3),.splash .heading-5,/* .splash .grid-card p:nth-of-type(3),.splash .div-block-17,.splash .nav,.splash .dark,.splash p.dark")}}, R_722072_121_1_2_1:{ fn:function(log,nonce=''){return (function(x) {
try{
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1734023482010"]');
el.revertContentOp().remove();
} catch(e) {console.error(e)}
try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1734023482011"]')).remove();
} catch(e) {console.error(e)}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, ce121_4_1:{ fn:function(executeTrigger, vwo_$) {
(// Example Code: This code will stop polling after 5 sec of dom ready (on calling executeTrigger() method)
function() {
vwo_$(document).ready(function () {
// Waiting for 5 more seconds
setTimeout(function () {
// Call this method to stop the polling
executeTrigger();
}, 5000);
});
}
)()
}}, C_722072_70_1_2_0:{ fn:function(log,nonce=''){return (function(x) {try{const MAX_ONETIME_AMOUNT=500,RECURRING_ASK=t=>{let e;return e=t>=400&&t<500?50:t>=300&&t<400?40:t>=200&&t<300?30:t>=100&&t<200?15:10,e};function waitForElement(t,e,o=(t=>{}),n=30){return t?(o(t),!0):setTimeout(e,n)}function vwoCustomEvent(t){window.VWO=window.VWO||[],VWO.event=VWO.event||function(){VWO.push(["event"].concat([].slice.call(arguments)))},VWO.event("customEvent",{label:t.toString()})}function entangleElements(t,e,o="innerHTML",n={attributes:!0,childList:!0,subtree:!0}){if(!t||!e)return console.error(`entangleElements: ${!t&&"element1"}${t||e?" ":" and "} ${!e&&"element2"} ${t||e?"is":"are"} undefined.`);console.log("Entangling:\n",t," ",e,"\nElement 2 will mirror Element 1's values.");const i=new MutationObserver((n,i)=>{for(const i of n)switch(i.type){case"attributes":const{attributeName:n,oldValue:r}=i;if("style"!==n){const o=t.getAttribute(n);null===o?e.removeAttribute(n):e.setAttribute(n,o)}break;default:e[o]=t[o]}});return i.observe(t,n),i}function init(){customElements.whenDefined("c-donate-community-giving-options").then(()=>{customElements.whenDefined("lightning-card").then(()=>{customElements.whenDefined("c-donate-community-donate-buttons").then(()=>{customElements.whenDefined("lightning-input").then(()=>{const t=[...document.querySelector("c-donate-community-giving-options").shadowRoot.querySelectorAll("lightning-card")][1].shadowRoot.querySelector(".slds-card__body").getSlotNodes(1).querySelector("c-donate-community-donate-buttons").shadowChildren(0),e={getGiftArrayButtons:function(){let e=t;return Array.from(e.children).slice(0,Array.from(e.children).indexOf(e.querySelector(".slds-form-element"))).map(t=>t.querySelector("button"))},getAmount:function(){const e=t=>t.replace(/[\$\,]/gm,"");let o=this.getGiftArrayButtons().filter(t=>t.classList.contains("donate-selected"))[0];return o||(o=t.querySelector("lightning-input").shadowChildren(0).shadowChildren(0).querySelector("input")),parseFloat(e(o.value))},setAmount:function(e){const o=t.querySelector("lightning-input").shadowChildren(0).shadowChildren(0).querySelector("input");for(const t of this.getGiftArrayButtons())if(parseFloat(t.value)===parseFloat(e))return o.value="",t.click(),this.getAmount()===parseFloat(e);return o.value=parseFloat(e),o.dispatchEvent(new Event("change",{bubbles:!0})),this.getAmount()===parseFloat(e)},getRecurring:function(){return[...t.querySelector(".slds-grid").querySelectorAll("lightning-input")][0].shadowChildren(0).shadowChildren(0).querySelector('input[type="checkbox"]').checked},setRecurring:function(e=!0){const o=[...t.querySelector(".slds-grid").querySelectorAll("lightning-input")][0].shadowChildren(0).shadowChildren(0).querySelector('input[type="checkbox"]'),n=this.getRecurring();return(!n&&e||n&&!e)&&o.click(),this.getRecurring()===e},submit:function(t=this.buttons["Donate Now"]){return t.click()}};e.giftArrayButtons=e.getGiftArrayButtons(),window.NA=window.NA||{},window.NA.MiniDonationForm=e,waitForElement(t.querySelector("button"),init,e=>{window.NA.MiniDonationForm.buttons={"Donate Now":Array.from(t.children).slice(Array.from(t.children).indexOf(t.querySelector(".slds-form-element"))).map(t=>t.querySelector("button")).filter(t=>t)[0],"Add to Basket":Array.from(t.children).slice(Array.from(t.children).indexOf(t.querySelector(".slds-form-element"))).map(t=>t.querySelector("button")).filter(t=>t)[1]},window.NA.MiniDonationForm.cloneSubmitButton=function(t=this.buttons["Donate Now"]){const e=t.cloneNode(!0);return e.attributes=t.attributes,e.style&&(e.style=t.style),t.after(e),e},waitForElement(document.querySelector("dialog.donation-interrupter"),init,t=>{console.log("dialog found:",t);try{const e={dialog:t||document.querySelector("dialog.donation-interrupter"),_tokenName:"DonationInterrupter_",_memoryMode:sessionStorage,status:"ready",getStatus:function(){return this._memoryMode.getItem(this._tokenName+"_status")||void 0},setStatus:function(t){return this._memoryMode.setItem(this._tokenName+"_status",t),this.status=t,this.getStatus()},conditions:!0,newAmount:function(t){return t/12},onShow:function(t){},onHide:function(t){},show:function(t){this.dialog.showModal(),this.dialog.addEventListener("keydown",t=>{"Escape"===t.key&&(t.preventDefault(),t.stopImmediatePropagation())}),this.setStatus("shown"),"function"==typeof this.onShow&&this.onShow.call(null,t)},hide:function(t){this.setStatus("dismissed"),this.dialog.close(),"function"==typeof this.onHide&&this.onHide.call(null,t)},updateDialogData:function(){if(this.dialog){let t=window.NA.MiniDonationForm.getAmount(),e=this.newAmount(t);[...this.dialog.querySelectorAll('span[data="amount_original"]')].forEach(e=>e.textContent=t.toString()),[...this.dialog.querySelectorAll('span[data="amount_suggested"]')].forEach(t=>t.textContent=e.toString())}}};window.NA=window.NA||{},window.NA.DonationInterrupter=e||window.NA.DonationInterrupter,window.NA.MiniDonationForm&&window.NA.DonationInterrupter&&main(window.NA.MiniDonationForm,window.NA.DonationInterrupter)}catch(t){console.error("Failed to interface with donation interrupter.")}},100)},100)})})})})}function main(t,e,o=0){if(!t.buttons)return setTimeout(init,100);if(!e.buttons)return e.buttons={yes:[...e.dialog.querySelectorAll("button")][0],no:[...e.dialog.querySelectorAll("button")][1]},main(t,e,o);window.NA.DonationInterrupter.setStatus(window.NA.DonationInterrupter._memoryMode.getItem(window.NA.DonationInterrupter._tokenName+"_status")||"ready"),window.NA.DonationInterrupter.newAmount=RECURRING_ASK;try{for(const n of Object.values(t.buttons)){const i=n,r=t.cloneSubmitButton(i);i.style.display="none",r.style.setProperty("margin-left","0","important"),setInterval(()=>r.disabled=i.disabled,50),r.addEventListener("click",n=>{let i=t.getAmount(),r=t.getRecurring(),s="shown"===e.status||"dismissed"===e.status;o&&(console.groupCollapsed("Check conditions"),console.info(i,"< 500",i<500),console.info(r,"=== false",!1===r),console.info(s,"=== false",!1===s),console.groupEnd("Check conditions"));const l=[i<500,!1===r,!1===s].every(t=>!!t);o&&console.info("showPopup?",l),n.srcElement.textContent===t.buttons["Add to Basket"].textContent?l?e.show(n):t.submit(t.buttons["Add to Basket"]):l?e.show(n):t.submit()})}}catch(t){console.error("Failed to clone submit button and add event listener.",t)}window.NA.DonationInterrupter.onShow=n=>{window.NA.DonationInterrupter.updateDialogData(),vwoCustomEvent("donationInterrupterShown");try{const i=window.NA.DonationInterrupter.buttons,{yes:r,no:s}=i;n.srcElement.textContent===t.buttons["Add to Basket"].textContent?(r.addEventListener("click",n=>{o&&console.groupCollapsed('"Yes" clicked'),vwoCustomEvent("yes");const i=t.getAmount(),r=window.NA.DonationInterrupter.newAmount(i);o&&console.log(i,"->",r),t.setRecurring(!0),t.setAmount(r),e.hide(),t.submit(t.buttons["Add to Basket"]),o&&console.groupEnd('"Yes" clicked')}),s.addEventListener("click",n=>{o&&console.groupCollapsed('"No" clicked'),vwoCustomEvent("no"),e.hide(),t.submit(t.buttons["Add to Basket"]),o&&console.groupEnd('"No" clicked')})):(r.addEventListener("click",n=>{o&&console.groupCollapsed('"Yes" clicked'),vwoCustomEvent("yes");const i=t.getAmount(),r=window.NA.DonationInterrupter.newAmount(i);o&&console.log(i,"->",r),t.setRecurring(!0),t.setAmount(r),e.hide(),t.submit(),o&&console.groupEnd('"Yes" clicked')}),s.addEventListener("click",n=>{o&&console.groupCollapsed('"No" clicked'),vwoCustomEvent("no"),e.hide(),t.submit(),o&&console.groupEnd('"No" clicked')})),o&&console.log("added handlers to buttons",i)}catch(t){console.error("Failed to attach event listeners to dialog buttons.",t)}}}window.HTMLElement.prototype.getSlot=window.HTMLElement.prototype.getSlot||function(){return this.querySelector("slot")||this.shadowRoot.querySelector("slot")},window.HTMLElement.prototype.getSlotNodes=window.HTMLElement.prototype.getSlotNodes||function(t){return"NaN"!==parseInt(t)&&t>=0?Array.from(this.getSlot().assignedNodes({flatten:!0})).at(t):Array.from(this.getSlot().assignedNodes({flatten:!0}))},window.HTMLElement.prototype.shadowChildren=window.HTMLElement.prototype.shadowChildren||function(t){return"NaN"!==parseInt(t)&&t>=0?Array.from(this.shadowRoot.children).at(t):Array.from(this.shadowRoot.children)},setTimeout(init,500);}catch(e){} ;var _vwo_sel=vwo_$("");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, C_722072_70_1_2_1:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("addElement","body"); vwo_debug*/!(el=vwo_$("body")).find('[vwo-op-1715610703351=""]').length&&el.vwoElement({html:'',position:"append"});})("body")}}, C_722072_160_1_2_0:{ fn:function(log,nonce=''){return (function(x) {
try{
var _vwo_sel = vwo_$("`);
!vwo_$("head").find('#1743792965154').length && vwo_$('head').append(_vwo_sel);}catch(e) {VWO._.vAEH(e);}
try{}catch(e) {VWO._.vAEH(e);}
try{}catch(e) {VWO._.vAEH(e);}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, R_722072_160_1_2_0:{ fn:function(log,nonce=''){return (function(x) {
try{
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1743792965154"]');
el.revertContentOp().remove();
} catch(e) {VWO._.vAEH(e);}
try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1743792965155"]')).remove();
} catch(e) {VWO._.vAEH(e);}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722072_160_1_2_1:{ fn:function(log,nonce=''){return (function(x) {
try{
var _vwo_sel = vwo_$("`);
!vwo_$("head").find('#1743792965156').length && vwo_$('head').append(_vwo_sel);}catch(e) {VWO._.vAEH(e);}
try{}catch(e) {VWO._.vAEH(e);}
try{const CALLOUT_ON_BUTTON_WITH_AMOUNT = 150;
const CALLOUT_BUBBLE_TEXT = "$150 provides 1 camp scholarship";
//
//
//
//
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
//
//
//
//
window.HTMLElement.prototype.getSlot = window.HTMLElement.prototype.getSlot || function () { return this.querySelector('slot') || this.shadowRoot.querySelector('slot'); };
window.HTMLElement.prototype.getSlotNodes = window.HTMLElement.prototype.getSlotNodes || function (n) { return (parseInt(n) !== 'NaN' && n >= 0) ? Array.from(this.getSlot().assignedNodes({ flatten: true }))[n] : Array.from(this.getSlot().assignedNodes({ flatten: true })); };
window.HTMLElement.prototype.shadowChildren = window.HTMLElement.prototype.shadowChildren || function (n) { return (parseInt(n) !== 'NaN' && n >= 0) ? Array.from(this.shadowRoot.children)[n] : Array.from(this.shadowRoot.children); };
function shadowQuerySelectorAll (selector) {
let matches = [];
const isSlot = (element) => element.tagName.toLowerCase() === 'slot';
function traverse(element) { // Helper function to recursively traverse elements
if (element instanceof HTMLElement && element.matches(selector) /*&& element !== this*/) // Check if element matches the selector
matches.push(element);
if (customElements.get(element.tagName.toLowerCase())) { // Traverse through shadow DOM children if element is a custom element with shadow DOM
const children = element.shadowRoot ? Array.from(element.shadowRoot.children) : [];
children.forEach((child) => traverse(child));
} else {
Array.from(element.children).forEach((child) => traverse(child)); // traverse through regular element children
}
if (isSlot(element)) { // handle traversing slot nodes
const slotNodes = element.assignedNodes({ flatten: true });
slotNodes.forEach((slotNode) => {
if (slotNode.nodeType === Node.ELEMENT_NODE)
traverse(slotNode);
});
}
}
this instanceof Document ? traverse(this.documentElement) : traverse(this); // Start traversal from the root element as long as it's not the Document
return matches.length > 0 ? matches : undefined;
}
function shadowQuerySelector (selector) {
let matches = this.shadowQuerySelectorAll(selector) || [];
return matches.length > 0 ? matches[0] : undefined;
}
if (!HTMLElement.prototype.shadowQuerySelectorAll) {
Object.defineProperties(HTMLElement.prototype, {
shadowQuerySelectorAll: {
value: shadowQuerySelectorAll,
writable: false,
configurable: false,
enumerable: true,
},
shadowQuerySelector: {
value: shadowQuerySelector,
writable: false,
configurable: false,
enumerable: true,
}
});
Object.defineProperties(Document.prototype, {
shadowQuerySelectorAll: {
value: shadowQuerySelectorAll,
writable: false,
configurable: false,
enumerable: true,
},
shadowQuerySelector: {
value: shadowQuerySelector,
writable: false,
configurable: false,
enumerable: true,
}
});
Object.defineProperties(Document, {
shadowQuerySelectorAll: {
value: shadowQuerySelectorAll,
writable: false,
configurable: false,
enumerable: true,
},
shadowQuerySelector: {
value: shadowQuerySelector,
writable: false,
configurable: false,
enumerable: true,
}
});
}
async function asyncWaitForCustomElements (customElementsArray, onCustomElementsDefined = () => {}) { customElementsArray.length === 0 ? onCustomElementsDefined() : customElements.whenDefined(customElementsArray.shift()).then(() => asyncWaitForCustomElements(customElementsArray, onCustomElementsDefined)); }
function addCircle (buttons, onWhichAmountButton = CALLOUT_ON_BUTTON_WITH_AMOUNT) {
let buttonWithCircle;
buttons.forEach((giftArrayButton) => {
let text = giftArrayButton.textContent.trim().replace(/[^\d\.]/, '');
text = !Number.isNaN(parseInt(text)) ? parseInt(text) : text;
if (text == onWhichAmountButton || text == 150) {
giftArrayButton.insertAdjacentHTML('afterend', `
`);
buttonWithCircle = giftArrayButton;
}
});
return buttonWithCircle;
}
function addCallout (text, button, buttons = window.NA.DonationForm.elements.GiftArrayButtons) {
const TAIL_SVG = ` `;
const calloutElement = (function(){
const calloutContainer = document.createElement('div');
calloutContainer.classList.add("callout-container");
calloutContainer.innerHTML = (`
${TAIL_SVG}
`);
return calloutContainer;
})();
const tabsContainer = buttons[0].parentElement;
tabsContainer.before(calloutElement);
const callout = tabsContainer.previousElementSibling || tabsContainer.parentElement.querySelector('.callout') || document.querySelector('.callout'),
calloutBubble = callout.querySelector('.callout-bubble'),
calloutTail = callout.querySelector('.callout-tail'),
calloutContainer = callout.parentElement || tabsContainer.parentElement.querySelector('.callout-container');
const buttonIndex = buttons.indexOf(button);
calloutBubble.classList.add(buttonIndex + 1 <= buttons.length / 2 ? "pull-left" : "pull-right");
let lastScreenWidth = window.innerWidth;
const updateTailPosition = function (calloutTarget) {
console.log('resize');
const tail = this;
const targetRect = calloutTarget.getBoundingClientRect(),
tailRect = tail.getBoundingClientRect();
let targetPosition = {
width: targetRect.width,
height: targetRect.height,
x: targetRect.x,
y: targetRect.y,
xCenter: targetRect.x + (targetRect.width / 2),
yCenter: targetRect.y + (targetRect.height / 2),
};
let tailPosition = {
width: tailRect.width,
height: tailRect.height,
x: tailRect.x,
y: tailRect.y,
};
// console.log('target:', calloutTarget, targetPosition);
// console.log('tail:', tail, tailPosition);
let calloutBubbleOffsetX = calloutBubble.getBoundingClientRect().x - callout.getBoundingClientRect().x;
let deltaX = targetPosition.xCenter -
tailPosition.x -
(tailPosition.width / 2),
deltaY = targetPosition.y -
tailPosition.y;
// if (deltaX <= 2)
// return;
deltaX = (tailPosition.x - callout.getBoundingClientRect().x) + deltaX;
let calloutBubbleStartX = calloutBubble.getBoundingClientRect().x - callout.getBoundingClientRect().x,
calloutBubbleEndX = calloutBubbleStartX + calloutBubble.getBoundingClientRect().width;
/*if (window.innerWidth <= 480 && (deltaX < calloutBubbleStartX + 16 || deltaX > calloutBubbleEndX - 16))
return;*/
//console.log(`delta: (${deltaX}, ${deltaY})`);
this.style.setProperty('--x', `${deltaX}px`);
this.style.setProperty('height', `${deltaY}px`);
setTimeout(() => {
if (lastScreenWidth > 480 && window.innerWidth <= 480) { // desktop to mobile
calloutTarget.parentElement.before(callout); // move callout in between buttons before the target button
document.dispatchEvent(new Event('resize'));
} else if (lastScreenWidth <= 480 && window.innerWidth > 480) { // mobile to desktop
tabsContainer.before(callout); // move callout before all gift array buttons in full row
document.dispatchEvent(new Event('resize'));
}
if (!lastScreenWidth && window.innerWidth > 480) {
if (!buttons[0].parentElement.previousElementSibling) {
tabsContainer.before(callout); // move callout before all gift array buttons in full row
document.dispatchEvent(new Event('resize'));
}
}
lastScreenWidth = window.innerWidth;
}, 50);
};
setTimeout(() => {
document.addEventListener('resize', updateTailPosition.bind(calloutTail, button)),
(new ResizeObserver(updateTailPosition.bind(calloutTail, button))).observe(document.body);
}, 250);
updateTailPosition.call(calloutTail, button);
}
function main () {
const c_donate_community_staff_information = document.shadowQuerySelector('c-donate-community-staff-information');
const c_donate_community_donate_buttons = document.shadowQuerySelector('c-donate-community-donate-buttons');
const donationPage = c_donate_community_staff_information.parentElement;
const donationPageContent = donationPage.shadowQuerySelectorAll('c-donate-community-staff-information > div > .slds-col')[1];
const donationFormWidget = c_donate_community_donate_buttons.parentElement || ([...donationPageContent.children].find((child) => child.shadowQuerySelector('button[value]')) || donationPageContent.children[2]) || null;
if (!donationFormWidget || !donationFormWidget.shadowQuerySelector('button'))
return setTimeout(main, 50);
const donationFormGiftArrayButtons = donationFormWidget.shadowQuerySelectorAll('button[value]') ?? null;
if (donationFormWidget.querySelector('.callout') || donationFormWidget.shadowQuerySelector('.callout'))
return console.warn("Callout already added.");
const btn = addCircle(donationFormGiftArrayButtons, CALLOUT_ON_BUTTON_WITH_AMOUNT);
donationFormGiftArrayButtons[0].parentElement && addCallout(CALLOUT_BUBBLE_TEXT, btn, donationFormGiftArrayButtons);
}
(async function(){
try {
console.group("Callout: Init");
asyncWaitForCustomElements(['c-donate-community-staff-information', 'c-donate-community-donate-buttons'/*, 'lightning-formatted-rich-text'*/], () => {
setTimeout(main, 100);
});
} catch (error) {
console.error(error);
} finally {
console.groupEnd();
}
})();
}catch(e) {VWO._.vAEH(e);}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, R_722072_160_1_2_1:{ fn:function(log,nonce=''){return (function(x) {
try{
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1743792965156"]');
el.revertContentOp().remove();
} catch(e) {VWO._.vAEH(e);}
try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1743792965157"]')).remove();
} catch(e) {VWO._.vAEH(e);}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, R_722072_79_1_2_1:{ fn:function(){return (function(x) { try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1734023425027"]')).remove();
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1734023425028"]');
el.revertContentOp().remove();
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, C_722072_79_1_3_0:{ fn:function(){return (function(x) { try{
var _vwo_sel = vwo_$("");
!vwo_$("head").find("#1734023424983").length && vwo_$('head').append(_vwo_sel);
const DEFAULT_DONATION_FREQUENCY="One-Time";function getQueryParam(e){let t=window.location.search.match(e+"=([^&]*)");return t?t[1]:void 0}function initOnElement(e,t,n){const i=e.getElementsByTagName(t);return i.length?n(i):setTimeout(initOnElement,500,e,t,n)}window.DonationForm=window.DonationForm||{recurring_checkbox:null,submit_button:null,other_amt:null,gift_array_elements:[],onetime_gift_array:[],recurring_gift_array:[10,20,30,40],setRecurring:function(e){console.log("setRecurring",e,this.recurring_checkbox),(!this.recurring_checkbox.checked&&e||this.recurring_checkbox.checked&&!e)&&(console.log("checked",this.recurring_checkbox.checked,"(before click)"),this.recurring_checkbox.click(),console.log("checked",this.recurring_checkbox.checked,"(after click)"))},selectGiftArray:function(e){this.gift_array_elements[e].click()},modifyGiftArray:function(e){this.gift_array_elements.forEach((t,n)=>{t.value=e[n],t.textContent="$"+e[n]})},setOneTimeGiftArrayValues:function(){let e=this;this.gift_array_elements.forEach(t=>{e.onetime_gift_array.push(parseInt(t.value))})},setFirstNamePersonalization:function(e){const t=void 0===getQueryParam("first_name")||""===getQueryParam("first_name")?"Friend":getQueryParam("first_name");for(let n=0;n<=e.length-1;n++)e[n].innerHTML.includes("[Name]")&&(e[n].innerHTML=e[n].innerHTML.replace(/\[[^\]]*]/,t)),e[n].innerHTML.includes("Friend")&&(e[n].innerHTML=e[n].innerHTML.replace("Friend",t))},init:function(){document.querySelectorAll(".tab").forEach(e=>{e.addEventListener("click",(function(e){this.classList.add("selected"),this.classList.contains("recurring")?(document.querySelector(".tab.onetime").classList.remove("selected"),DonationForm.setRecurring(!0)):(document.querySelector(".tab.recurring").classList.remove("selected"),DonationForm.setRecurring(!1))}))}),this.setOneTimeGiftArrayValues(),this.setRecurring(!1),this.selectGiftArray(0)}},initOnElement(document,"c-donate-community-staff-information",(function(e){initOnElement(e[0],"div",(function(e){e[0].querySelectorAll("div.slds-col")[0].classList.add("page-image");const t=e[0].querySelectorAll("div.slds-col")[1];t.classList.add("donation-form-content");const n=t.querySelectorAll("div,lightning-formatted-rich-text");for(let e=0;e<=n.length-1;e++)0==e&&n[e].classList.add("page-title"),1==e&&n[e].classList.add("page-action-text"),2==e&&n[e].classList.add("donation-form"),3==e&&n[e].classList.add("bottom-title"),4==e&&n[e].classList.add("page-text");DonationForm.setFirstNamePersonalization(n[4].shadowRoot.querySelectorAll("div p")),n[1].before(n[4]);const i=document.createElement("div");i.classList.add("tabs"),i.innerHTML='One-Time Gift
Recurring Gift
',n[2].before(i),initOnElement(n[2],"c-donate-community-donate-buttons",(function(e){initOnElement(e[0].shadowRoot.querySelector("div"),"div",(function(e){for(let t=0;t const TOKEN_NAME = \"apr25_el_pushdown\";\nconst DELAY = 1 /* seconds */;\nconst storageApi = sessionStorage /* permanent: localStorage, session: sessionStorage*/;\n(function init() {\n if (typeof window.jQuery === 'undefined')\n return console.warn(\"jQuery not defined yet.\"), setTimeout(init, 50);\n //\n jQuery(function() {\n (function pushdown($) {\n //console.log('pushdown', $('.na-pushdown-wrapper').length);\n if (!$('.na-pushdown-wrapper').length) return setTimeout(pushdown, 500);\n \n var pushdown = {\n element: $('.na-pushdown-wrapper'),\n\n open: function () {\n\n var self = this;\n var height = this.element.outerHeight();\n \n /* HANDLE SEMI-STICKY DONATE BUTTON */\n const pushdownDOMElement = this.element.get(0);\n const stickybar = document.querySelector('.na-pushdown-wrapper'),\n masthead = document.querySelector(\"header#masthead\"),\n wrapperDonateBtn = document.querySelector(\".menu-donate-container\");\n \n function scrollspy () {\n const stickybar = /*pushdownDOMElement || */document.querySelector('.na-pushdown-wrapper'),\n masthead = document.querySelector(\"header#masthead\");\n function scrollTriggerAction (scrollTrigger, el, gt = (el, sd = 0, st = 0) => { console.log(\"gt\"); }, lt = (el, sd = 0, st = 0) => { console.log(\"lt\"); }) {\n let mobile = window.innerWidth < 768,\n scrollDepth = window.scrollY;\n return scrollDepth > scrollTrigger ? gt(el, scrollDepth, scrollTrigger): lt(el, scrollDepth, scrollTrigger);\n }\n const scrollActions = {\n lt: (k, s = 0, t = 0) => { // scroll depth not past a certain amount\n //console.log(\"lt\", s, t);\n let wrapperDonateBtn = k,\n scrollY = s;\n if (window.innerWidth >= 992) { // larger screens\n if ( storageApi.getItem(TOKEN_NAME) === \"shown\" ) { // stickybar visible\n const stickybarHeight = () => stickybar.offsetHeight;\n wrapperDonateBtn.style.setProperty(\"position\", \"absolute\");\n wrapperDonateBtn.style.setProperty(\"top\", \"20px\");\n masthead.style.setProperty(\"position\", \"fixed\");\n masthead.style.setProperty(\"top\", (stickybarHeight() - s) + 'px', \"important\"); // set the margin-top to the stickybar height\n masthead.style.setProperty(\"margin-top\", \"unset\", \"important\");\n /*masthead.style.setProperty(\"transform\", `translateY(${stickybarHeight()}px)`);\n if (stickybarHeight() - scrollY < 0) {*/\n //wrapperDonateBtn.style.setProperty(\"position\", \"fixed\");\n /*wrapperDonateBtn.style.setProperty(\"top\", \"0px\");/*\n wrapperDonateBtn.style.setProperty(\"transform\", `translateY(${scrollY - stickybarHeight()}px)`);\n }*/\n } else { // stickybar not visible\n wrapperDonateBtn.style.setProperty(\"position\", \"absolute\");\n wrapperDonateBtn.style.setProperty(\"top\", \"20px\");\n masthead.style.setProperty(\"position\", \"absolute\");\n masthead.style.setProperty(\"top\", 0 + 'px', \"important\");\n if (s > 20) {\n wrapperDonateBtn.style.setProperty(\"position\", \"fixed\");\n wrapperDonateBtn.style.setProperty(\"top\", \"0px\");\n }\n }\n } else { // smaller screens\n const stickybarHeight = () => stickybar.offsetHeight;\n wrapperDonateBtn.style.setProperty(\"position\", \"absolute\", \"important\");\n wrapperDonateBtn.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px');\n //masthead.style.setProperty(\"margin-top\", \"unset\", \"important\");\n if ( stickybarHeight() - scrollY > 0) { // scroll depth not past stickybar\n masthead.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px', \"important\"); // set the margin-top to the stickybar height\n masthead.style.setProperty(\"margin-top\", \"unset\", \"important\");\n //masthead.style.setProperty(\"transform\", `translateY(${stickybarHeight() - scrollY}px)`);\n wrapperDonateBtn.style.setProperty(\"position\", \"absolute\", \"important\");\n wrapperDonateBtn.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px');\n } else if (stickybarHeight() - scrollY < 0) { // scroll depth past stickybar\n masthead.style.setProperty(\"position\", \"fixed\", \"important\");\n masthead.style.setProperty(\"top\", \"0\", \"important\");\n //masthead.style.setProperty(\"transform\", `translateY(${0}px)`);\n wrapperDonateBtn.style.setProperty(\"top\", '0');\n } else { // scroll depth at stickybar\n masthead.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px', \"important\"); // set the top to the stickybar height\n //masthead.style.setProperty(\"transform\", `translateY(${stickybarHeight() - scrollY}px)`);\n masthead.style.setProperty(\"margin-top\", \"unset\", \"important\");\n wrapperDonateBtn.style.setProperty(\"position\", \"absolute\", \"important\");\n wrapperDonateBtn.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px');\n }\n }\n },\n gt: (k, s = 0, t = 0) => { // scroll depth is past a certain amount\n //console.log(\"gt\", s, t);\n let wrapperDonateBtn = k,\n scrollY = s;\n if (window.innerWidth >= 992) { // larger screens\n if ( storageApi.getItem(TOKEN_NAME) === \"shown\" ) { // stickybar visible\n const stickybarHeight = () => stickybar.offsetHeight;\n wrapperDonateBtn.style.setProperty(\"position\", \"fixed\");\n wrapperDonateBtn.style.setProperty(\"top\", \"0\");\n masthead.style.setProperty(\"position\", \"fixed\");\n masthead.style.setProperty(\"top\", (stickybarHeight() - s) + 'px', \"important\"); // set the margin-top to the stickybar height\n masthead.style.setProperty(\"margin-top\", \"unset\", \"important\");\n /*masthead.style.setProperty(\"transform\", `translateY(${stickybarHeight()}px)`);\n if (stickybarHeight() - scrollY < 0) {*/\n //wrapperDonateBtn.style.setProperty(\"position\", \"fixed\");\n /*wrapperDonateBtn.style.setProperty(\"top\", \"0px\");/*\n wrapperDonateBtn.style.setProperty(\"transform\", `translateY(${scrollY - stickybarHeight()}px)`);\n }*/\n } else { // stickybar not visible\n wrapperDonateBtn.style.setProperty(\"position\", \"fixed\");\n wrapperDonateBtn.style.setProperty(\"top\", \"20px\");\n masthead.style.setProperty(\"position\", \"absolute\");\n masthead.style.setProperty(\"top\", 0 + 'px', \"important\");\n if (s > 20) {\n wrapperDonateBtn.style.setProperty(\"position\", \"fixed\");\n wrapperDonateBtn.style.setProperty(\"top\", \"0px\");\n }\n }\n } else { // smaller screens\n const stickybarHeight = () => stickybar.offsetHeight;\n wrapperDonateBtn.style.setProperty(\"position\", \"absolute\", \"important\");\n wrapperDonateBtn.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px');\n //masthead.style.setProperty(\"margin-top\", \"unset\", \"important\");\n if ( stickybarHeight() - scrollY > 0) { // scroll depth not past stickybar\n masthead.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px', \"important\"); // set the margin-top to the stickybar height\n //masthead.style.setProperty(\"transform\", `translateY(${stickybarHeight() - scrollY}px)`);\n masthead.style.setProperty(\"margin-top\", \"unset\", \"important\");\n wrapperDonateBtn.style.setProperty(\"position\", \"absolute\", \"important\");\n wrapperDonateBtn.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px');\n } else if (stickybarHeight() - scrollY < 0) { // scroll depth past stickybar\n masthead.style.setProperty(\"position\", \"fixed\", \"important\");\n masthead.style.setProperty(\"top\", \"0\", \"important\");\n //masthead.style.setProperty(\"transform\", `translateY(${0}px)`);\n wrapperDonateBtn.style.setProperty(\"top\", '0');\n } else { // scroll depth at stickybar\n masthead.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px', \"important\"); // set the top to the stickybar height\n //masthead.style.setProperty(\"transform\", `translateY(${stickybarHeight() - scrollY}px)`);\n masthead.style.setProperty(\"margin-top\", \"unset\", \"important\");\n wrapperDonateBtn.style.setProperty(\"position\", \"absolute\", \"important\");\n wrapperDonateBtn.style.setProperty(\"top\", (stickybarHeight() - scrollY) + 'px');\n }\n }\n }\n };\n const triggerDepth = () => pushdownDOMElement.offsetHeight + /*masthead.offsetHeight*/ 16;\n scrollTriggerAction(triggerDepth(), document.querySelector(\".menu-donate-container\"), scrollActions.gt, scrollActions.lt);\n window.addEventListener('scroll', scrollTriggerAction.bind(null, triggerDepth(), document.querySelector(\".menu-donate-container\"), scrollActions.gt, scrollActions.lt ));\n window.addEventListener('resize', scrollTriggerAction.bind(null, triggerDepth(), document.querySelector(\".menu-donate-container\"), scrollActions.gt, scrollActions.lt ));\n window.addEventListener('resize', (e) => {\n window.dispatchEvent(new Event('scroll', { bubbles: true }));\n }); // trigger the update by scrolling 1px\n }\n \n if (window.scrollY <= pushdownDOMElement.offsetHeight)\n window.scrollTo(0,0);\n \n $('.na-pushdown-wrapper').slideDown({\n duration: 'fast',\n step: function () {\n if (window.scrollY < pushdown.element.outerHeight()) {\n masthead.style.setProperty(\"top\", pushdown.element.outerHeight() + 'px', \"important\");\n window.innerWidth < 992 && wrapperDonateBtn.style.setProperty(\"top\", pushdown.element.outerHeight() + 'px', \"important\");\n }\n if (window.scrollY <= pushdownDOMElement.offsetHeight)\n window.scrollTo(0,0);\n },\n complete: function () {\n /*console.log(pushdownDOMElement.offsetHeight + 'px');\n masthead.removeAttribute(\"style\");\n masthead.style.setProperty(\"top\", pushdownDOMElement.offsetHeight + 'px', \"important\");*/\n storageApi.setItem(TOKEN_NAME, \"shown\"); // remember \"shown\" state\n scrollspy(); // active the scrollspy code\n window.dispatchEvent(new Event('resize'));\n if (window.scrollY <= pushdownDOMElement.offsetHeight)\n window.scrollTo(0,0);\n }\n });\n this.element.find('.close').html('× ');\n },\n\n close: function () {\n\n const stickybar = document.querySelector('.na-pushdown-wrapper'),\n masthead = document.querySelector(\"header#masthead\"),\n wrapperDonateBtn = document.querySelector(\".menu-donate-container\");\n $('.na-pushdown-wrapper').slideUp({\n duration: 'fast',\n step: function () {\n masthead.style.setProperty(\"top\", pushdown.element.outerHeight() + 'px', \"important\");\n window.innerWidth < 992 && wrapperDonateBtn.style.setProperty(\"top\", pushdown.element.outerHeight() + 'px', \"important\");\n },\n complete: function () {\n masthead.style.setProperty(\"margin-top\", \"unset\", \"important\");\n masthead.style.setProperty(\"position\", \"fixed\", \"important\");\n masthead.style.setProperty(\"top\", \"0\", \"important\");\n wrapperDonateBtn.style.setProperty(\"position\", \"absolute\");\n window.innerWidth >= 992 ? wrapperDonateBtn.style.setProperty(\"top\", \"20px\") : wrapperDonateBtn.style.setProperty(\"top\", \"0\");\n }\n });\n\n //$('.na-pushdown-wrapper .close').html(' ');\n \n $(window).off(\"resize\", this.resize);\n storageApi.setItem(TOKEN_NAME, \"dismissed\"); // remember \"dismissed\" state\n\n },\n\n resize: function () {\n var height = pushdown.element.outerHeight();\n },\n\n init: function () {\n\n if (storageApi.getItem(TOKEN_NAME) === \"shown\" )\n return; // do not shown if shown this session\n\n if (storageApi.getItem(TOKEN_NAME) === \"dismissed\" )\n return; // do not shown if dismissed this session\n\n this.open();\n \n const pushdownDOMElement = document.querySelector('.na-pushdown-wrapper'),\n masthead = document.getElementById(\"masthead\");\n pushdownDOMElement.style.position = \"relative\";\n masthead.before(pushdownDOMElement);\n document.getElementById(\"donate-menu\").style.top = '0';\n $('.menu-donate-container').css('position', \"absolute\");\n $('.menu-donate-container').css('top', \"0px\");\n \n /*[...document.querySelectorAll('[data-action=\"dismiss\"]')].forEach((btn) => {\n let target = btn.getAttribute(\"data-target\");\n if (target)\n btn.addEventListener('click', this.close);\n });*/\n this.element.find(\".btn-dismiss\").on('click', this.close);\n // const [ btnYes, btnNo ] = [...document.querySelector(\".div-block-15\").children];\n // btnYes.onclick = (e) => { storageApi.setItem(TOKEN_NAME, \"dismissed\"); };\n // btnNo.onclick = this.close;\n $(window).resize(this.resize);\n\n }\n }\n\n //var run = parseInt(window.localStorage.getItem('na-show-pushdown') || 1);\n //if (run < 3) {\n setTimeout(function () {\n //window.localStorage.setItem('na-show-pushdown', run+1);\n pushdown.init();\n }, DELAY * 1000);\n //}\n })(jQuery);\n });\n})();\n \n");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, R_722072_157_1_2_0:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1744062807510"]');
el.revertContentOp().remove();})("HEAD")}}, C_722072_157_1_2_1:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("addElement","body"); vwo_debug*/!(el=vwo_$("body")).find('[vwo-op-1744062793557=""]').length&&el.vwoElement({html:'\n \x3c!--
--\x3e\n
\n
\n × \n
\n
\n
\n
\n
\n \x3c!-- \n If you have a moment...\n --\x3e\n \nYou can be the difference in a child making a decision to follow Jesus at camp this summer. Will you help a kid get to Eagle Lake Camps of The Navigators this summer? Give here »\n
\n \n
\n
\n
\n
\n
\n \x3c!--
--\x3e\n
',position:"append"});})("body")}}, R_722072_157_1_2_1:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1744048814304"]')).remove();})("body")}}, C_722072_157_1_2_2:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("content",".pushdown-copy > p:nth-of-type(1)"); vwo_debug*/el=vwo_$(".pushdown-copy > p:nth-of-type(1)"),vwo_$(".pushdown-copy > p:nth-of-type(1)").each((function(){this.__vwoControlOuterHTML=this.__vwoControlOuterHTML||this.outerHTML,!vwo_$(this).find('[vwo-op-1744062807509-0=""]').length&&vwo_$(this).append('Will you help a kid get to Eagle Lake Camps of The Navigators this summer? '),vwo_$(this).nonEmptyContents().eq(0).replaceWith2(document.createTextNode("You can be the difference in a child making a decision to follow Jesus at camp this summer. "))})),el=vwo_$(".pushdown-copy > p:nth-of-type(1)");})(".pushdown-copy > p:nth-of-type(1)")}}, R_722072_157_1_2_2:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","content",".pushdown-copy > p:nth-of-type(1)"); vwo_debug*/(el=vwo_$(".pushdown-copy > p:nth-of-type(1)")).revertContentOp(),el=vwo_$(".pushdown-copy > p:nth-of-type(1)");})(".pushdown-copy > p:nth-of-type(1)")}}, C_722072_157_1_2_3:{ fn:function(log,nonce=''){return (function(x) {})(".na-pushdown-wrapper,.mw-w-button,input.mw-w-button,#page,.pushdownbar,.div-block-16,.pushdownheadline,.pushdown,.div-block-7,.div-block-8,.paragraph-2,.div-block-15,.mw-btn,.mw-btn:visited,.mw-white,.mw-btn.mw-white,.mw-btn.mw-whitemw-btn:link,.na-pushdown-wrapper .close span,.na-pushdown-wrapper .close,.fa-angle-down:before,/*#donate-menu,.close-wrapper,.btn-dismiss,#masthead .close-menu,.pushdown .pushdown__row,.pushdown .pushdown__col,.pushdown .pushdown__content,.pushdown .pushdown-copy > *:last-child,.pushdown .grid-area,.pushdown .grid-card,.pushdown .grid-card div > p,.pushdown .grid-card div > p > span,.pushdown .grid-card .flex-col,.pushdown .grid-card div > p > b,.pushdown .grid-card button,.pushdown div div.centered,.pushdown div a.other-link,.pushdown .pushdown__close,.pushdown .grid-card p:nth-of-type(3),.pushdown .grid-card p > b")}}, R_722072_157_1_2_3:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
})(".na-pushdown-wrapper,.mw-w-button,input.mw-w-button,#page,.pushdownbar,.div-block-16,.pushdownheadline,.pushdown,.div-block-7,.div-block-8,.paragraph-2,.div-block-15,.mw-btn,.mw-btn:visited,.mw-white,.mw-btn.mw-white,.mw-btn.mw-whitemw-btn:link,.na-pushdown-wrapper .close span,.na-pushdown-wrapper .close,.fa-angle-down:before,/*#donate-menu,.close-wrapper,.btn-dismiss,#masthead .close-menu,.pushdown .pushdown__row,.pushdown .pushdown__col,.pushdown .pushdown__content,.pushdown .pushdown-copy > *:last-child,.pushdown .grid-area,.pushdown .grid-card,.pushdown .grid-card div > p,.pushdown .grid-card div > p > span,.pushdown .grid-card .flex-col,.pushdown .grid-card div > p > b,.pushdown .grid-card button,.pushdown div div.centered,.pushdown div a.other-link,.pushdown .pushdown__close,.pushdown .grid-card p:nth-of-type(3),.pushdown .grid-card p > b")}}, C_722072_157_1_3_0:{ fn:function(log,nonce=''){return (function(x) {;var _vwo_sel=vwo_$("");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, R_722072_157_1_3_0:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1744062807520"]');
el.revertContentOp().remove();})("HEAD")}}, C_722072_157_1_3_1:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("addElement","body"); vwo_debug*/!(el=vwo_$("body")).find('[vwo-op-1744062806872=""]').length&&el.vwoElement({html:'\n \x3c!--
--\x3e\n
\n
\n × \n
\n
\n
\n
\n
\n \x3c!-- \n If you have a moment...\n --\x3e\n \n You can be the difference in a child making a decision to follow Jesus at camp this summer. Will you help a kid get to Eagle Lake Camps of The Navigators this summer? Give here »\n
\n \n
\n
\n
\n
\n
\n
One-time
\n
$35
\n
provides meals for campers
\n
\n Donate \n \n
\n
\n
\n
\n
One-time
\n
$75
\n
provides half a camp scholarship
\n
\n Donate \n \n
\n
\n
\n
\n
One-time
\n
$150
\n
provides 1 camp scholarship
\n
\n Donate \n \n
\n
\n
\n
\n
\n
\n
\n
\n \x3c!--
--\x3e\n
',position:"append"});})("body")}}, R_722072_157_1_3_1:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1744062806843"]')).remove();})("body")}}, C_722072_157_1_3_2:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("content",".pushdown-copy > p:nth-of-type(1)"); vwo_debug*/el=vwo_$(".pushdown-copy > p:nth-of-type(1)"),vwo_$(".pushdown-copy > p:nth-of-type(1)").each((function(){this.__vwoControlOuterHTML=this.__vwoControlOuterHTML||this.outerHTML,!vwo_$(this).find('[vwo-op-1744062807520-0=""]').length&&vwo_$(this).append('Will you help a kid get to Eagle Lake Camps of The Navigators this summer? '),vwo_$(this).nonEmptyContents().eq(0).replaceWith2(document.createTextNode("You can be the difference in a child making a decision to follow Jesus at camp this summer. "))})),el=vwo_$(".pushdown-copy > p:nth-of-type(1)");})(".pushdown-copy > p:nth-of-type(1)")}}, R_722072_157_1_3_2:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","content",".pushdown-copy > p:nth-of-type(1)"); vwo_debug*/(el=vwo_$(".pushdown-copy > p:nth-of-type(1)")).revertContentOp(),el=vwo_$(".pushdown-copy > p:nth-of-type(1)");})(".pushdown-copy > p:nth-of-type(1)")}}, C_722072_157_1_3_3:{ fn:function(log,nonce=''){return (function(x) {})(".na-pushdown-wrapper,.mw-w-button,input.mw-w-button,#page,.pushdownbar,.div-block-16,.pushdownheadline,.pushdown,.div-block-7,.div-block-8,.paragraph-2,.div-block-15,.mw-btn,.mw-btn:visited,.mw-white,.mw-btn.mw-white,.mw-btn.mw-whitemw-btn:link,.na-pushdown-wrapper .close span,.na-pushdown-wrapper .close,.fa-angle-down:before,/*#donate-menu,.close-wrapper,.btn-dismiss,#masthead .close-menu,.pushdown .pushdown__row,.pushdown .pushdown__col,.pushdown .pushdown__content,.pushdown .pushdown-copy > *:last-child,.pushdown .grid-area,.pushdown .grid-card,.pushdown .grid-card div > p,.pushdown .grid-card div > p > span,.pushdown .grid-card .flex-col,.pushdown .grid-card div > p > b,.pushdown .grid-card button,.pushdown div div.centered,.pushdown div a.other-link,.pushdown .pushdown__close,.pushdown .grid-card p:nth-of-type(3),.pushdown .grid-card p > b")}}, R_722072_157_1_3_3:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
})(".na-pushdown-wrapper,.mw-w-button,input.mw-w-button,#page,.pushdownbar,.div-block-16,.pushdownheadline,.pushdown,.div-block-7,.div-block-8,.paragraph-2,.div-block-15,.mw-btn,.mw-btn:visited,.mw-white,.mw-btn.mw-white,.mw-btn.mw-whitemw-btn:link,.na-pushdown-wrapper .close span,.na-pushdown-wrapper .close,.fa-angle-down:before,/*#donate-menu,.close-wrapper,.btn-dismiss,#masthead .close-menu,.pushdown .pushdown__row,.pushdown .pushdown__col,.pushdown .pushdown__content,.pushdown .pushdown-copy > *:last-child,.pushdown .grid-area,.pushdown .grid-card,.pushdown .grid-card div > p,.pushdown .grid-card div > p > span,.pushdown .grid-card .flex-col,.pushdown .grid-card div > p > b,.pushdown .grid-card button,.pushdown div div.centered,.pushdown div a.other-link,.pushdown .pushdown__close,.pushdown .grid-card p:nth-of-type(3),.pushdown .grid-card p > b")}}, C_722072_121_1_2_0:{ fn:function(log,nonce=''){return (function(x) {
try{
var _vwo_sel = vwo_$("`);
!vwo_$("head").find('#1734023482004').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)}
try{}catch(e) {console.error(e)}
try{const DEFAULT_DONATION_FREQUENCY="One-Time";function getQueryParam(e){let t=window.location.search.match(e+"=([^&]*)");return t?t[1]:void 0}function initOnElement(e,t,n){const i=e.getElementsByTagName(t);return i.length?n(i):setTimeout(initOnElement,500,e,t,n)}window.DonationForm=window.DonationForm||{recurring_checkbox:null,submit_button:null,other_amt:null,gift_array_elements:[],onetime_gift_array:[],recurring_gift_array:[10,20,30,40],setRecurring:function(e){console.log("setRecurring",e,this.recurring_checkbox),(!this.recurring_checkbox.checked&&e||this.recurring_checkbox.checked&&!e)&&(console.log("checked",this.recurring_checkbox.checked,"(before click)"),this.recurring_checkbox.click(),console.log("checked",this.recurring_checkbox.checked,"(after click)"))},selectGiftArray:function(e){this.gift_array_elements[e].click()},modifyGiftArray:function(e){this.gift_array_elements.forEach((t,n)=>{t.value=e[n],t.textContent="$"+e[n]})},setOneTimeGiftArrayValues:function(){let e=this;this.gift_array_elements.forEach(t=>{e.onetime_gift_array.push(parseInt(t.value))})},setFirstNamePersonalization:function(e){const t=void 0===getQueryParam("first_name")||""===getQueryParam("first_name")?"Friend":getQueryParam("first_name");for(let n=0;n<=e.length-1;n++)e[n].innerHTML.includes("[Name]")&&(e[n].innerHTML=e[n].innerHTML.replace(/\[[^\]]*]/,t)),e[n].innerHTML.includes("Friend")&&(e[n].innerHTML=e[n].innerHTML.replace("Friend",t))},init:function(){document.querySelectorAll(".tab").forEach(e=>{e.addEventListener("click",(function(e){this.classList.add("selected"),this.classList.contains("recurring")?(document.querySelector(".tab.onetime").classList.remove("selected"),DonationForm.setRecurring(!0)):(document.querySelector(".tab.recurring").classList.remove("selected"),DonationForm.setRecurring(!1))}))}),this.hasOwnProperty("setOneTimeGiftArrayValues")&&this.setOneTimeGiftArrayValues(),this.setRecurring(!1),this.hasOwnProperty("selectGiftArray")&&this.selectGiftArray(0)}},initOnElement(document,"c-donate-community-staff-information",(function(e){initOnElement(e[0],"div",(function(e){e[0].querySelectorAll("div.slds-col")[0].classList.add("page-image");const t=e[0].querySelectorAll("div.slds-col")[1];if(t.classList.add("donation-form-content"),t.querySelector(".tabs"))return;const n=t.querySelectorAll("div,lightning-formatted-rich-text");for(let e=0;e<=n.length-1;e++)0==e&&n[e].classList.add("page-title"),1==e&&n[e].classList.add("page-action-text"),2==e&&n[e].classList.add("donation-form"),3==e&&n[e].classList.add("bottom-title"),4==e&&n[e].classList.add("page-text");n[4]&&n[4].shadowRoot&&n[4].shadowRoot.querySelectorAll("div p")&&DonationForm.setFirstNamePersonalization(n[4].shadowRoot.querySelectorAll("div p")),n[1].before(n[4]);const i=document.createElement("div");i.classList.add("tabs"),i.innerHTML='One-Time Gift
Recurring Gift
',n[2].before(i),initOnElement(n[2],"c-donate-community-donate-buttons",(function(e){initOnElement(e[0].shadowRoot.querySelector("div"),"div",(function(e){for(let t=0;t/**\r\n *\r\n * Legacy CSS\r\n *\r\n**/\r\n.nav-items-container { display: none; }\r\n.page-action-text { padding: 0.75rem 0; }\r\n.donation-form {\r\n border-left: 1px solid #ccc;\r\n border-right: 1px solid #ccc;\r\n border-bottom: 1px solid #ccc;\r\n border-bottom-left-radius: 4px;\r\n border-bottom-right-radius: 4px;\r\n}\r\n@media(max-width: 1024px) {\r\n .page-image { display: none; }\r\n}\r\n.slds-gutters .slds-col.form-fields {\r\n width: 100%;\r\n padding-left: 0;\r\n padding-right: 0;\r\n}\r\n.slds-input-has-icon_left .slds-input { padding-left: 2rem; }\r\n.donate-action-button + .donate-action-button { margin-left: 0; }\r\n/**\r\n *\r\n * Tabs CSS\r\n *\r\n**/\r\n.tabs {\r\n margin-top: 20px;\r\n display: grid;\r\n grid-template-columns: 1fr 1fr;\r\n grid-gap: 0px;\r\n}\r\n.tabs .tab {\r\n border: 1px solid #ccc;\r\n background-color: #ebe9eb;\r\n display: inline-block;\r\n width: 100%;\r\n text-align: center;\r\n padding: 15px 25px;\r\n line-height: 1.2;\r\n cursor: pointer;\r\n color: #008c95;\r\n font-weight: 700;\r\n text-transform: uppercase;\r\n border-top-left-radius: 4px;\r\n border-top-right-radius: 4px;\r\n user-select: none;\r\n}\r\n.tabs .tab.selected {\r\n color: #e16b2a;\r\n background-color: #fff;\r\n border-bottom: 0;\r\n}\r\n/**\r\n *\r\n * Donation Interrupter\r\n *\r\n**/\r\ndialog.donation-interrupter {\r\n --dialog-margin: 2rem;\r\n --dialog-padding: 3rem;\r\n position: fixed;\r\n outline: none;\r\n border: none;\r\n padding: 0;\r\n box-sizing: border-box;\r\n max-width: calc(100% - calc(2 * var(--dialog-margin)));\r\n width: 800px;\r\n}\r\ndialog::backdrop { background-color: rgba(0, 0, 0, 0.4); }\r\ndialog.donation-interrupter > .wrapper {\r\n position: relative;\r\n margin: calc(var(--dialog-padding));\r\n display: flex;\r\n flex-direction: column;\r\n gap: 1rem;\r\n}\r\ndialog.donation-interrupter section {\r\n display: flex;\r\n flex-direction: column;\r\n gap: 1rem;\r\n}\r\ndialog.donation-interrupter section > div {\r\n display: flex;\r\n flex-direction: row;\r\n gap: 1rem;\r\n}\r\ndialog.donation-interrupter section.donation-interrupter--cta button > * {\r\n font-family: inherit;\r\n color: inherit;\r\n background-color: transparent;\r\n display: inline;\r\n padding: 0;\r\n margin: 0;\r\n font-size: inherit !important;\r\n text-transform: inherit;\r\n}\r\ndialog.donation-interrupter button[data-action=\"dismiss\"] {\r\n --scale: 3;\r\n position: absolute;\r\n top: -1.5rem;\r\n right: -1.5rem;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n background: none;\r\n border: none;\r\n outline: none;\r\n box-sizing: border-box;\r\n padding: 0;\r\n margin: 0;\r\n line-height: 0;\r\n width: calc(1rem * var(--scale));\r\n height: calc(1rem * var(--scale));\r\n font-size: calc(1rem * var(--scale));\r\n}\r\ndialog.donation-interrupter > div span[before]::before { content: attr(before); }\r\ndialog.donation-interrupter button.btn-dismiss {\r\n color: rgba(0, 0, 0, 0.5);\r\n background-color: rgba(255, 255, 255, 0.5);\r\n border-radius: 100%;\r\n}\r\ndialog.donation-interrupter button[data-action=\"dismiss\"] + section { max-width: calc(100% - 1rem); } /* clear dismiss button */\r\n@media only screen and (max-width: 500px) {\r\n dialog.donation-interrupter section.donation-interrupter--cta > div { flex-direction: column; }\r\n dialog.donation-interrupter {\r\n --dialog-margin: 0.5rem !important;\r\n --dialog-padding: 0.5rem !important;\r\n max-width: calc(100% - calc(2 * var(--dialog-margin)));\r\n width: 100%;\r\n max-height: calc(100vh - calc(2 * var(--dialog-margin)));\r\n height: min-content;\r\n overflow: hidden;\r\n }\r\n dialog.donation-interrupter > .wrapper { padding: .75rem !important; }\r\n}\r\n@media only screen and (max-width: 375px) {\r\n dialog.donation-interrupter {\r\n --dialog-margin: 0rem !important;\r\n --dialog-padding: 0.5rem !important;\r\n max-width: calc(100% - calc(2 * var(--dialog-margin)));\r\n width: 100%;\r\n max-height: 100vh;\r\n height: 100vh;\r\n overflow: hidden;\r\n border-radius: 0 !important;\r\n }\r\n dialog.donation-interrupter > .wrapper {\r\n padding: .75rem !important;\r\n height: calc(100% - 2* 0.5rem) !important;\r\n overflow: hidden;\r\n justify-content: space-evenly;\r\n }\r\n}\r\n/* NAV THEME ===================================================================================== */\r\ndialog.donation-interrupter[theme=\"NAV\"] h1,\r\ndialog.donation-interrupter[theme=\"NAV\"] h2,\r\ndialog.donation-interrupter[theme=\"NAV\"] h3,\r\ndialog.donation-interrupter[theme=\"NAV\"] h4,\r\ndialog.donation-interrupter[theme=\"NAV\"] h5,\r\ndialog.donation-interrupter[theme=\"NAV\"] h6,\r\ndialog.donation-interrupter[theme=\"NAV\"] ul,\r\ndialog.donation-interrupter[theme=\"NAV\"] p {\r\n margin: 0;\r\n line-height: 1.5;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] {\r\n --primary-color: #e16b2a;\r\n --secondary-color: #008C95;\r\n --dialog-padding: 1.5rem;\r\n border-radius: 0.5rem;\r\n font: 16px \"Montserrat\";\r\n color: #54473f;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] button[data-action=\"dismiss\"] {\r\n --scale: 4;\r\n top: -2rem;\r\n right: -2rem;\r\n display: none;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] .wrapper {\r\n border: 2px solid var(--secondary-color);\r\n padding: 1.5rem;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] .wrapper > section {\r\n gap: 0.5rem;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--heading > h2 {\r\n margin: 0;\r\n color: #303030;\r\n line-height: 1.3;\r\n font-size: 2em;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--body p,\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--body li,\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta p {\r\n color: #404040;\r\n line-height: 1.8;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--body ul {\r\n list-style: disc;\r\n padding-left: 1.15rem;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta p {\r\n /*font-weight: bold;*/\r\n margin: 0;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta > div { \r\n justify-content: flex-start;\r\n align-items: center;\r\n align-items: stretch;\r\n align-content: center;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta button {\r\n width: 100%;\r\n padding: 0.5rem 1rem;\r\n /*font-size: 0.9em;*/\r\n font-weight: 500;\r\n border-radius: 0;\r\n box-sizing: border-box;\r\n /*text-transform: uppercase !important;*/\r\n letter-spacing: 0.5px;\r\n line-height: 1.5;\r\n max-width: unset;\r\n transition: all 200ms ease;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta button b {\r\n /*font-size: 1.05em !important;*/\r\n text-transform: uppercase;\r\n font-weight: 700;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta div > button:first-child {\r\n color: white;\r\n background: var(--primary-color);\r\n border: none;\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta div > button:first-child:hover {\r\n border-color: color-mix(in srgb, var(--primary-color) 90%, black); /* darken */\r\n background: color-mix(in srgb, var(--primary-color) 90%, black); /* darken */\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta div > button:last-child {\r\n color: black;\r\n background: white;\r\n border: 2px solid var(--secondary-color);\r\n}\r\ndialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta div > button:last-child:hover {\r\n color: white;\r\n border-color: color-mix(in srgb, var(--secondary-color) 90%, black); /* darken */\r\n background: color-mix(in srgb, var(--secondary-color) 90%, black); /* darken */\r\n}\r\n@media only screen and (max-width: 768px) {\r\n dialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--heading > h2 { font-size: 1.85em; }\r\n}\r\n@media only screen and (max-width: 500px) {\r\n dialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--heading > h2 { font-size: 1.6em; }\r\n} \r\n@media only screen and (max-width: 375px) {\r\n dialog.donation-interrupter {\r\n --dialog-margin: 0rem !important;\r\n --dialog-padding: 0.5rem !important;\r\n max-width: calc(100% - calc(2 * var(--dialog-margin)));\r\n width: 100%;\r\n max-height: 100vh;\r\n height: 100vh;\r\n overflow: hidden;\r\n border-radius: 0 !important;\r\n }\r\n dialog.donation-interrupter > .wrapper {\r\n border: none;\r\n padding: .75rem !important;\r\n height: calc(100% - 2* 0.5rem) !important;\r\n overflow: hidden;\r\n justify-content: space-evenly;\r\n }\r\n}\r\n@media only screen and (max-width: 375px) {\r\n dialog.donation-interrupter[theme=\"NAV\"] > .wrapper {\r\n border: none;\r\n padding: 0;\r\n }\r\n}\r\n@media only screen and (max-width: 280px) { /* Z fold, folded (edge case) */\r\n dialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--body p,\r\n dialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta p {\r\n line-height: 1.25;\r\n }\r\n dialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--heading > h2 {\r\n font-size: 1.5em;\r\n line-height: 1.25;\r\n }\r\n dialog.donation-interrupter[theme=\"NAV\"] section.donation-interrupter--cta button {\r\n font-size: 0.8em;\r\n line-height: 1.15;\r\n }\r\n}\n`);
!vwo_$("head").find('#1743104387377').length && vwo_$('head').append(_vwo_sel);}catch(e) {VWO._.vAEH(e);}
try{}catch(e) {VWO._.vAEH(e);}
try{/* ===== Complicated Code Below ===== */
window.HTMLElement.prototype.getSlot = window.HTMLElement.prototype.getSlot || function () { return this.querySelector('slot') || this.shadowRoot.querySelector('slot'); };
window.HTMLElement.prototype.getSlotNodes = window.HTMLElement.prototype.getSlotNodes || function (n) { return (parseInt(n) !== 'NaN' && n >= 0) ? Array.from(this.getSlot().assignedNodes({ flatten: true }))[n] : Array.from(this.getSlot().assignedNodes({ flatten: true })); };
window.HTMLElement.prototype.shadowChildren = window.HTMLElement.prototype.shadowChildren || function (n) { return (parseInt(n) !== 'NaN' && n >= 0) ? Array.from(this.shadowRoot.children)[n] : Array.from(this.shadowRoot.children); };
function shadowQuerySelectorAll (selector) {
let matches = [];
const isSlot = (element) => element.tagName.toLowerCase() === 'slot';
function traverse(element) { // Helper function to recursively traverse elements
if (element instanceof HTMLElement && element.matches(selector) /*&& element !== this*/) // Check if element matches the selector
matches.push(element);
if (customElements.get(element.tagName.toLowerCase())) { // Traverse through shadow DOM children if element is a custom element with shadow DOM
const children = element.shadowRoot ? Array.from(element.shadowRoot.children) : [];
children.forEach((child) => traverse(child));
} else {
Array.from(element.children).forEach((child) => traverse(child)); // traverse through regular element children
}
if (isSlot(element)) { // handle traversing slot nodes
const slotNodes = element.assignedNodes({ flatten: true });
slotNodes.forEach((slotNode) => {
if (slotNode.nodeType === Node.ELEMENT_NODE)
traverse(slotNode);
});
}
}
this instanceof Document ? traverse(this.documentElement) : traverse(this); // Start traversal from the root element as long as it's not the Document
return matches.length > 0 ? matches : undefined;
}
function shadowQuerySelector (selector) {
let matches = this.shadowQuerySelectorAll(selector) || [];
return matches.length > 0 ? matches[0] : undefined;
}
Object.defineProperties(HTMLElement.prototype, {
shadowQuerySelectorAll: {
value: shadowQuerySelectorAll,
writable: false,
configurable: false,
enumerable: true,
},
shadowQuerySelector: {
value: shadowQuerySelector,
writable: false,
configurable: false,
enumerable: true,
}
});
Object.defineProperties(Document.prototype, {
shadowQuerySelectorAll: {
value: shadowQuerySelectorAll,
writable: false,
configurable: false,
enumerable: true,
},
shadowQuerySelector: {
value: shadowQuerySelector,
writable: false,
configurable: false,
enumerable: true,
}
});
Object.defineProperties(Document, {
shadowQuerySelectorAll: {
value: shadowQuerySelectorAll,
writable: false,
configurable: false,
enumerable: true,
},
shadowQuerySelector: {
value: shadowQuerySelector,
writable: false,
configurable: false,
enumerable: true,
}
});
Object.defineProperty(JSON, 'isValid', {
value: function (jsonString) {
try {
JSON.parse(jsonString);
return true;
} catch (error) {
return false;
}
},
writable: false,
configurable: true,
enumerable: true,
});
async function asyncWaitForCustomElements (customElementsArray, onCustomElementsDefined = () => {}) { customElementsArray.length === 0 ? onCustomElementsDefined() : customElements.whenDefined(customElementsArray.shift()).then(() => asyncWaitForCustomElements(customElementsArray, onCustomElementsDefined)); }
function vwoCustomEvent (labelValue) {
window.VWO = window.VWO || [];
VWO.event = VWO.event || function () {VWO.push(["event"].concat([].slice.call(arguments)))};
VWO.event("customEvent", { "label": labelValue.toString() });
}
const getToken = (key, api = localStorage) => (JSON.isValid(api.getItem(key)) ? JSON.parse(api.getItem(key)) : api.getItem(key)) || null;
const setToken = (key, value, api = localStorage) => api.setItem(key, JSON.stringify(value));
const getCurrentDate = (d = new Date()) => d.toISOString().split('T')[0];
const reOneTime = new RegExp(/(one-?time|once|single)/gi),
reRecurring = new RegExp(/(recurring|monthly)/gi);
window.NA = window.NA || {};
window.NA.DonationPage = window.NA.DonationPage || {};
window.NA.DonationForm = window.NA.DonationForm || {};
async function init (userConfig) {
return new Promise((resolve, reject) => {
const defaultConfig = {
donationForm: {
defaultRecurring: false, // true for "Recurring" default, false for "One-Time" default
giftArrayAmounts: [], // an array of numbers (like [ 5, 10, 15, 25 ]) or `null` or `[]` for default gift array amounts
defaultAmount: null, // a number or `null` for no default
anonymousDefault: null, // true/false or null for no default
tributeDefault: null, // true/false or null for no default
hideCheckboxesAll: false, // true/false to hide the checkboxes button
hideCheckboxFreqeuncy: false,
hideCheckboxAnonymous: false,
hideCheckboxTribute: false,
hideCartButton: false, // true/false to hide the "Add to Basket" button
}
};
userConfig = { ...defaultConfig, ...userConfig };
Object.defineProperty(window.NA, '_config', {
value: userConfig,
writable: false,
configurable: true,
enumerable: false,
});
const config = { ...window.NA._config };
//
//
//
//
//
//
//
function main () {
const c_donate_community_staff_information = document.shadowQuerySelector('c-donate-community-staff-information');
const c_donate_community_donate_buttons = document.shadowQuerySelector('c-donate-community-donate-buttons');
//
const donationPage = c_donate_community_staff_information.parentElement;
const donationPageImage = donationPage.shadowQuerySelectorAll('c-donate-community-staff-information > div > .slds-col')[0];
const donationPageContent = donationPage.shadowQuerySelectorAll('c-donate-community-staff-information > div > .slds-col')[1];
const donationPageTitle = donationPageContent.children[0];
const donationPageSubtitle = donationPageContent.children[1];
const donationFormWidget = donationPageContent.children[2] || c_donate_community_donate_buttons.parentElement;
const donationPageAboutTitle = donationPageContent.children[3];
const donationPageCopySection = donationPageContent.children[4] || donationPageContent.shadowQuerySelector('lightning-formatted-text, lightning-formatted-rich-text');
const donationFormGiftArrayButtons = donationFormWidget.shadowQuerySelectorAll('button[value]');
const donationFormGiftArrayOtherAmountInput = donationFormWidget.shadowQuerySelector('lightning-input lightning-primitive-input-simple input[type]');
const donationFormCheckboxes = [...donationPageContent.shadowQuerySelector('c-donate-community-donate-buttons > div').children].find((child) => child.matches('div:has(div lightning-primitive-input-checkbox)'));
const donationFormButtons = [...donationFormWidget.shadowQuerySelectorAll('button')].filter((button) => !donationFormGiftArrayButtons.includes(button));
const donationFormButton = {
"Donate Now": donationFormButtons[0],
"Add to Basket": donationFormButtons[1],
};
//
//
//
// Add legacy classes
donationPageImage.classList.add("page-image");
donationPageContent.classList.add("donation-form-content");
donationPageTitle.classList.add("page-title");
donationPageSubtitle.classList.add("page-action-text");
donationFormWidget.classList.add("donation-form");
donationPageAboutTitle.classList.add("bottom-title");
donationPageCopySection.classList.add("page-text");
donationFormCheckboxes.classList.add("donation-form-checkboxes");
donationFormButton["Donate Now"].classList.add("donate-action-button");
donationFormButton["Donate Now"].id = "donate-now";
donationFormButton["Add to Basket"].classList.add("donate-action-button");
donationFormButton["Add to Basket"].id = "add-to-basket";
//
if (config.donationForm.hideCheckboxesAll === true) {
donationFormCheckboxes.style.setProperty("display", "none");
}
if (config.donationForm.hideCheckboxFreqeuncy === true) {
[...donationFormCheckboxes.children][1]?.style.setProperty("display", "none");
}
if (config.donationForm.hideCheckboxAnonymous === true) {
[...donationFormCheckboxes.children][2]?.style.setProperty("display", "none");
}
if (config.donationForm.hideCheckboxTribute === true) {
[...donationFormCheckboxes.children][2]?.style.setProperty("display", "none");
}
if (config.donationForm.hideCartButton === true) {
donationFormButton["Add to Basket"]?.style.setProperty("display", "none");
donationFormButton["Add to Basket"]?.parentElement?.style.setProperty("display", "none");
donationFormButton["Donate Now"].parentElement.classList = donationFormButton["Donate Now"].parentElement.classList.toString().replaceAll("1-of-2", "2-of-2");
}
//
//
//
//
//
//
//
//
(function donationFormApi () {
window.NA.DonationForm = window.NA.DonationForm || {};
Object.defineProperty(window.NA.DonationForm, 'root', {
value: donationFormWidget,
writable: false,
configurable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationForm, 'elements', {
value: {
Tabs: undefined,
GiftArrayButtons: donationFormGiftArrayButtons,
GiftArrayOtherAmount: donationFormGiftArrayOtherAmountInput,
CheckboxRecurring: donationFormCheckboxes.shadowQuerySelectorAll('lightning-primitive-input-checkbox input[type="checkbox"]')[0],
CheckboxAnonymous: donationFormCheckboxes.shadowQuerySelectorAll('lightning-primitive-input-checkbox input[type="checkbox"]')[1],
CheckboxTribute: donationFormCheckboxes.shadowQuerySelectorAll('lightning-primitive-input-checkbox input[type="checkbox"]')[2],
SubmitButton: donationFormButton["Donate Now"],
},
writable: false,
configurable: true,
enumerable: true,
});
Object.defineProperty(window.NA.DonationForm, 'submit', {
value: function doSubmit () {
this.elements.SubmitButton?.click();
},
configurable: false,
writable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationForm, 'interceptSubmit', {
value: function interceptSubmit (callbackFn, submitButton = this.elements.SubmitButton, hideOriginal = true, maxIntercepts = 1) {
const hide = (element) => element?.style.setProperty("display", "none");
const unhide = (element) => element?.style.removeProperty("display");
const submitButtonCopy = submitButton.cloneNode(true);
if (!submitButton.id) submitButton.id = "submit-button";
submitButtonCopy.id = submitButton.id ? submitButton.id + "-copy" : "submit-button-copy";
submitButton.after(submitButtonCopy);
if (hideOriginal === true)
hide(submitButton);
const submitButtonMutationObserver = new MutationObserver((mutations, observe) => {
for (const mutation of mutations) {
const { type, target } = mutation;
if (target === submitButton) {
switch (type) {
case 'attributes':
const { attributeName } = mutation;
const attributeValue = target.hasAttribute(attributeName) ? target.getAttribute(attributeName) : null;
if (!attributeValue) {
submitButtonCopy.removeAttribute(attributeName);
} else {
submitButtonCopy.setAttribute(attributeName, attributeValue);
}
break;
case 'characterData':
submitButtonCopy.innerHTML = target.innerHTML;
break;
default:
break;
}
}
}
});
submitButtonMutationObserver.observe(submitButton, { childList: true, attributes: true, attributeOldValue: true, characterData: true, characterDataOldValue: true });
if (maxIntercepts && maxIntercepts > 0) {
submitButtonCopy.setAttribute("intercepts", "0"); // initialize intercept counter to 0
function interceptCounter (event) {
let interceptCount = parseInt(this.getAttribute("intercepts"));
this.setAttribute("intercepts", ++interceptCount);
if (interceptCount >= maxIntercepts) // reached max number of submit intercepts
console.info("Max intercepts reached: original submit button unhidden."),
submitButtonMutationObserver?.disconnect(), // disconnect the observer so the following changes don't apply to both buttons
unhide(submitButton), // unhide the original submit button so the user won't be prevented from submitting the next time they click it
hide(submitButtonCopy), // hide the copy of the submit button that was intercepting
this.removeEventListener('click', interceptCounter);
}
submitButtonCopy.addEventListener('click', interceptCounter);
}
submitButtonCopy.addEventListener('click', (event) => {
const callbackResult = callbackFn.call(this, event);
if (callbackResult && callbackResult !== false) { // if callback function result evaluates to true, then submit after the callback
window.NA.DonationForm.submit();
}
});
},
configurable: false,
writable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationForm, 'getFrequency', {
value: function getFrequency () {
const recurringCheckbox = this.root.shadowQuerySelectorAll('lightning-primitive-input-checkbox input[type="checkbox"]')[0];
if (recurringCheckbox.checked === true) {
return "Recurring";
} else {
return "One-Time";
}
},
configurable: false,
writable: false,
enumerable: false,
});
Object.defineProperty(window.NA.DonationForm, 'setFrequency', {
value: function setFrequency (value) {
let toFrequency;
if (typeof value === 'boolean') {
toFrequency = value ? true : false;
} else if (typeof value === 'string') {
if (reOneTime.test(value.toLowerCase())) {
toFrequency = false;
} else if (reRecurring.test(value.toLowerCase())) {
toFrequency = true;
} else {
throw new TypeError(`Argument 0 must be a boolean or string. If string, it must match either "One-Time" or "Recurring".`);
}
} else {
throw new TypeError(`Argument 0 must be a boolean or string.`);
}
if (this.elements.Tabs && this.elements.Tabs.length === 2)
this.elements.Tabs[toFrequency ? 1 : 0]?.click();
const recurringCheckbox = this.root.shadowQuerySelectorAll('lightning-primitive-input-checkbox input[type="checkbox"]')[0];
if (toFrequency === true) { // set frequency to recurring
if (!recurringCheckbox.checked) {
recurringCheckbox.click();
} else {
console.warn("Frequency is already set to recurring:", recurringCheckbox);
}
} else { // set frequency to one-time
if (recurringCheckbox.checked) {
recurringCheckbox.click();
} else {
console.warn("Frequency is already set to one-time:", recurringCheckbox);
}
}
},
configurable: false,
writable: false,
enumerable: false,
});
Object.defineProperty(window.NA.DonationForm, 'recurring', {
get () {
return this.getFrequency() === "Recurring" ? true : false;
},
set (value) {
this.setFrequency(value);
}
});
Object.defineProperty(window.NA.DonationForm, 'isRecurring', {
get () {
return this.recurring;
}
});
Object.defineProperty(window.NA.DonationForm, 'getAmount', {
value: function getAmount () {
let matchingButton = this.elements.GiftArrayButtons.find((button) => button.classList.contains("donate-selected"));
if (matchingButton) {
return parseInt(matchingButton.value);
}
else if (this.elements.GiftArrayOtherAmount?.value.length > 0) {
let value = this.elements.GiftArrayOtherAmount.value;
value = value.replace(/[^\d\.]/, '');
return parseFloat(value);
}
else {
return undefined;
}
},
configurable: false,
writable: false,
enumerable: false,
});
Object.defineProperty(window.NA.DonationForm, 'setAmount', {
value: function setAmount (value) {
if (value === "unset") {
this.elements.GiftArrayButtons.forEach((button) => {
button.classList.remove("donate-selected", "donate-not-selected");
});
}
if (!value || Number.isNaN(parseFloat(value)))
throw new TypeError(`Argument 0 must be a boolean or string. If string, it must match either "One-Time" or "Recurring".`);
value = parseFloat(value);
let matchingButton = this.elements.GiftArrayButtons.find((button) => parseFloat(button.value) === value);
if (matchingButton) {
return matchingButton.click();
}
else {
const giftArrayOtherAmountField = this.elements.GiftArrayOtherAmount;
giftArrayOtherAmountField.value = parseFloat(value); // form doesn't like the formatted string, so number it is.
//giftArrayOtherAmountField.value = parseFloat(value).toLocaleString('en-US', { style: 'currency', currency: 'USD', currencySign: '$', minimumFractionDigits: 2, maximumFractionDigits: 2 });
giftArrayOtherAmountField.dispatchEvent(new Event('change'));
giftArrayOtherAmountField.dispatchEvent(new Event('blur'));
}
},
configurable: false,
writable: false,
enumerable: false,
});
Object.defineProperty(window.NA.DonationForm, 'amount', {
get () {
return this.getAmount();
},
set (value) {
this.setAmount(value);
}
});
Object.defineProperty(window.NA.DonationForm, 'getGiftArrayValues', {
value: function getGiftArrayValues () {
return this.elements.GiftArrayButtons.map((button) => parseInt(button.value));
},
writable: false,
configurable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationForm, 'setGiftArrayValues', {
value: function setGiftArrayValues (valueArray) {
if (!Array.isArray(valueArray) || valueArray.some(value => value <= 0))
throw new TypeError("Argument 0 must be an array of positive integers.");
if (valueArray.length !== this.elements.GiftArrayButtons.length)
throw new RangeError("Argument 0 must be an array of the same length as the number of gift array button elements.");
this.elements.GiftArrayButtons.forEach((button, i, buttons) => {
button.value = valueArray[i];
button.textContent = button.textContent.replace(/(\d+)/gi, valueArray[i]);
});
console.info("Updated gift array values:", ...valueArray);
},
writable: false,
configurable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationForm, 'onFrequencyChange', {
value: new Array(),
writable: false,
configurable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationForm, 'onAmountChange', {
value: new Array(),
writable: false,
configurable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationForm, 'onSubmit', {
value: new Array(),
writable: false,
configurable: false,
enumerablele: true,
});
const frequencyChangeEventListener = (event) => {
const newFrequency = window.NA.DonationForm.getFrequency();
window.NA.DonationForm.onFrequencyChange.forEach((callback) => {
callback.call(window.NA.DonationForm, newFrequency);
});
};
const frequencyMutationHandler = new MutationObserver ((mutations, observer) => {
for (const mutation of mutations) {
switch (mutation.type) {
case 'attributes':
if (mutation.attributeName === 'checked') {
}
break;
default:
break;
}
}
});
//window.NA.DonationForm.elements.CheckboxRecurring && frequencyMutationHandler.observe(window.NA.DonationForm.elements.CheckboxRecurring, { childList: true, attributes: true, attributeFilter: [ 'checked' ] });
window.NA.DonationForm.elements.CheckboxRecurring && window.NA.DonationForm.elements.CheckboxRecurring.addEventListener('change', frequencyChangeEventListener);
})();
//
//
//
//
//
//
//
//
(function donationPageApi () {
Object.defineProperty(window.NA.DonationPage, 'root', {
value: null, //document.shadowQuerySelector('c-donate-community-staff-information > div'),
writable: false,
configurable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationPage, 'elements', {
value: {
CopySection: donationPageCopySection,
},
writable: false,
configurable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationPage, 'getCopyHTML', {
value: function getCopyHTML () {
return this.elements.CopySection.innerHTML;
},
writable: false,
configurable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationPage, 'setCopyHTML', {
value: function setCopyHTML (newCopyHTML) {
this.elements.CopySection.innerHTML = newCopyHTML;
},
writable: false,
configurable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationPage, 'copy', {
get () {
return this.getCopyHTML();
},
set (newCopyHTML) {
this.setCopyHTML(newCopyHTML);
}
});
})();
//
//
//
//
//
//
//
//
(function cartApi () {
const Cart = new Object();
Object.defineProperty(Cart, 'Cart', {
value: function addItem (cartItem) {
//
},
configurable: false,
writable: false,
enumerable: true,
});
Object.defineProperty(window.NA.DonationForm, 'Cart', {
value: Cart,
configurable: false,
writable: false,
enumerable: true,
});
})();
//
//
//
//
//
//
//
//
function moveDonationForm () {
try {
donationPageSubtitle.before(donationPageCopySection); // move the subtitle above the tcopy section, below the main page title
donationPageAboutTitle.style.setProperty("display", "none"); // hide the bottom heading (for the About section)
} catch (error) {
console.error(error);
}
}
moveDonationForm();
//
//
//
//
//
//
//
//
function makeTabbed () {
function createTabs (tabTexts, defaultRecurring = false) {
defaultRecurring = defaultRecurring ? true : false;
const tabs = document.createElement('div');
tabs.classList.add("tabs");
tabTexts.forEach((tabText, i) => {
const tab = document.createElement('div');
let tabClassList = [ "tab" ];
tabClassList.push(reOneTime.test(tabText) ? "onetime" : "recurring");
((tabClassList.includes("onetime") && defaultRecurring === false) || (tabClassList.includes("recurring") && defaultRecurring === true)) && tabClassList.push('selected');
tab.classList.add(...tabClassList);
tab.textContent = tabText;
tabs.appendChild(tab);
});
return tabs;
}
const donationFormTabs = createTabs([ config.tabs["one-time"].text, config.tabs["recurring"].text ], config.donationForm.defaultRecurring);
donationFormWidget.before(donationFormTabs);
window.NA.DonationForm.elements.Tabs = Array.from(donationFormTabs.children);
window.NA.DonationForm.elements.Tabs.forEach((tab, i ,tabs) => {
tab.addEventListener('click', function (e) {
this.classList.add('selected');
if (this.classList.contains('recurring')) { // if "Recurring" tab clicked
tabs.find((tab) => tab !== this)?.classList.remove('selected');
window.NA.DonationForm.recurring = true;
} else { // if "One-Time" tab clicked
tabs.find((tab) => tab !== this)?.classList.remove('selected');
window.NA.DonationForm.recurring = false;
}
});
});
Object.defineProperty(window.NA.DonationForm, 'onTabClick', {
value: new Array(),
writable: false,
configurable: false,
enumerable: true,
});
window.NA.DonationForm.elements.Tabs.forEach((tab) => {
tab.addEventListener('click', function (e) {
window.NA.DonationForm.onTabClick.forEach((callback) => {
callback.call(window.NA.DonationForm, this.textContent.trim());
});
});
});
const splitGiftArrayAmounts = {
"one-time": config.tabs["one-time"].giftArrayAmounts,
"recurring": config.tabs["recurring"].giftArrayAmounts,
};
if (((Array.isArray(config.tabs["one-time"].giftArrayAmounts) && config.tabs["one-time"].giftArrayAmounts.length > 0) || (Array.isArray(config.tabs["recurring"].giftArrayAmounts) && config.tabs["recurring"].giftArrayAmounts.length > 0)) // if either one-time or recurring gift array is set,
&& !(Array.isArray(config.tabs["one-time"].giftArrayAmounts) && config.tabs["one-time"].giftArrayAmounts.length > 0) && (Array.isArray(config.tabs["recurring"].giftArrayAmounts) && config.tabs["recurring"].giftArrayAmounts.length > 0)) { // but not both (unforntuantely no JS XOR).
if (!config.tabs["one-time"].giftArrayAmounts)
config.tabs["one-time"].giftArrayAmounts = window.NA.DonationForm.getGiftArrayValues();
if (!splitGiftArrayAmounts["recurring"])
config.tabs["recurring"].giftArrayAmounts = window.NA.DonationForm.getGiftArrayValues();
}
if ((Array.isArray(config.tabs["one-time"].giftArrayAmounts) && config.tabs["one-time"].giftArrayAmounts.length > 0) || (Array.isArray(config.tabs["recurring"].giftArrayAmounts) && config.tabs["recurring"].giftArrayAmounts.length > 0)) {
window.NA.DonationForm.onFrequencyChange.push(function updateGiftArrayAmounts (newFrequency) {
let tabKeyName;
switch (newFrequency) {
case "One-Time":
tabKeyName = "one-time";
if (config.hasOwnProperty("tabs") && config.tabs.hasOwnProperty(tabKeyName) && config.tabs[tabKeyName].hasOwnProperty("giftArrayAmounts") && Array.isArray(config.tabs[tabKeyName].giftArrayAmounts)) // if tabs are enabled and configured and gift array values are provided,
this.setGiftArrayValues(config.tabs[tabKeyName].giftArrayAmounts); // update the gift array values
this.setAmount('unset'); // unselect gift array options whenever frequency changes
break;
case "Recurring":
tabKeyName = "recurring";
if (config.hasOwnProperty("tabs") && config.tabs.hasOwnProperty(tabKeyName) && config.tabs[tabKeyName].hasOwnProperty("giftArrayAmounts") && Array.isArray(config.tabs[tabKeyName].giftArrayAmounts)) // if tabs are enabled and configured and gift array values are provided,
this.setGiftArrayValues(config.tabs[tabKeyName].giftArrayAmounts); // update the gift array values
this.setAmount('unset'); // unselect gift array options whenever frequency changes
break;
default:
throw new Error("Failed to updated gift array for frequency " + newFrequency + '.');
}
});
}
window.NA.DonationForm.elements.Tabs?.find((tab) => tab.classList.contains('selected'))?.click(); // apply default selected tab to the form's checkbox
}
if (config.hasOwnProperty("tabs") && (Object.keys(config.tabs)).length == 2) { // if tabs are enabled and configured
makeTabbed();
}
//
//
//
//
//
//
//
//
function configureDonationFormFromURL (searchParams) {
const GIFT_ARRAY_VALUE_DELIMITER = ',',
MULTIPLE_GIFT_ARRAY_DELIMETER = ';';
if (searchParams.get('amounts') || searchParams.get('array-amounts')) {
let amountsParamValue = searchParams.get('amounts') || searchParams.get('array-amounts') || '';
amountsParamValue = decodeURIComponent(amountsParamValue); // convert URI encoded string to normal characters before parsing
if (amountsParamValue.includes(MULTIPLE_GIFT_ARRAY_DELIMETER)) { // multiple gift array provided with gift arrays separated by ';' and values separated by ','
const amountArrays = amountsParamValue.split(MULTIPLE_GIFT_ARRAY_DELIMETER).map((amountArrayString) => amountArrayString.includes(GIFT_ARRAY_VALUE_DELIMITER) ? amountArrayString.split(GIFT_ARRAY_VALUE_DELIMITER).map((amount) => parseInt(amount)) : undefined) // convert string to array of arrays of numbers split by ',' and gift arrays separated by ';'
if (amountArrays && Array.isArray(amountArrays) && amountArrays.length === 2 && amountArrays.every((amountArray) => amountArray.every((amount) => !Number.isNaN(amount) && Number.isInteger(amount) && amount > 0))) { // if amount arrays is defined as an array with 2 arrays, where every item in EACH of the array is an integer greater than 0
if ((Array.isArray(config.tabs["one-time"].giftArrayAmounts) && config.tabs["one-time"].giftArrayAmounts.length > 0) || (Array.isArray(config.tabs["recurring"].giftArrayAmounts && config.tabs["recurring"].giftArrayAmounts.length > 0))) // if either of the split gift array options are configured
console.warn("Split gift array values were configured but the URL contains parameters to set the gift array. The gifty array values from the URL will override the split gift array values configured.");
config.tabs["one-time"].giftArrayAmounts = amountArrays[0]; // set configuration one-time gift array values to the first array of values from amountArrays
config.tabs["recurring"].giftArrayAmounts = amountArrays[1]; // set configuration recurring gift array values to the second array of values from amountArrays
const isRecurring = window.NA.DonationForm.isRecurring; // get the current frequency,
window.NA.DonationForm.setGiftArrayValues(amountArrays[isRecurring ? 1 : 0]); // set the gift array values to the new values assigned for that frequency
}
} else { // single gift array provided with values separated by ','
const amountArray = amountsParamValue.includes(GIFT_ARRAY_VALUE_DELIMITER) ? amountsParamValue.split(GIFT_ARRAY_VALUE_DELIMITER).map((amount) => parseInt(amount)) : undefined; // convert string to array of numbers split by ','
if (amountArray && Array.isArray(amountArray) && amountArray.every((amount) => !Number.isNaN(amount) && Number.isInteger(amount) && amount > 0)) { // if amount array is defined as an array where every item in EACH of the array is an integer greater than 0
if ((Array.isArray(config.tabs["one-time"].giftArrayAmounts) && config.tabs["one-time"].giftArrayAmounts.length > 0) || (Array.isArray(config.tabs["recurring"].giftArrayAmounts && config.tabs["recurring"].giftArrayAmounts.length > 0))) // if either of the split gift array options are configured
console.warn("Split gift array values were configured but the URL contains parameters to set the gift array. The gifty array values from the URL will override the split gift array values configured.");
config.tabs["one-time"].giftArrayAmounts = amountArray; // set configuration one-time gift array values to the array of values from amountArray
config.tabs["recurring"].giftArrayAmounts = amountArray; // set configuration of recurring gift array values to the array of values from amountArray
window.NA.DonationForm.setGiftArrayValues(amountArray); // set the gift array values to the new values from the amountArray
}
}
}
if (searchParams.get('frequency') || searchParams.get('freq')) {
const frequencyParamValue = searchParams.get('frequency') || searchParams.get('freq') || undefined;
const frequency = decodeURIComponent(frequencyParamValue);
if (frequency) {
if (config.defaultRecurring !== undefined && config.defaultRecurring !== null)
console.warn("Default frequency is configured but the URL contains parameters to set the default frequency. The frequency from the URL will override the default frequency configured.");
window.NA.DonationForm.recurring = reRecurring.test(frequency);
}
}
if (searchParams.get('amount') || searchParams.get('amt')) {
const amountParamValue = decodeURIComponent(searchParams.get('amount') || searchParams.get('amt') || undefined);
const amount = !Number.isNaN(parseFloat(amountParamValue)) ? parseFloat(amountParamValue) : undefined;
if (amount) {
if (config.defaultAmount !== undefined && config.defaultAmount !== null)
console.warn("Default amount is configured but the URL contains parameters to set the default amount. The amount from the URL will override the default amount configured.");
window.NA.DonationForm.setAmount(amount);
}
}
}
if (window.location.search.length > 1) {
configureDonationFormFromURL(new URLSearchParams(window.location.search));
}
//
//
//
//
//
//
//
//
function addDonationInterrupter (config) {
const { content } = config;
const DONATION_INTERRUPTER_HTML = ``;
document.body.insertAdjacentHTML('beforeend', DONATION_INTERRUPTER_HTML);
const dialog = config.uniqueName ? document.getElementById(config.uniqueName) : document.querySelector('dialog.donation-interrupter');
//
//
//
const calculateAskAmount = config.askAmount;
const evaluateConditions = config.askConditions;
function getMemoryModeStorageApi (memoryMode) {
if (memoryMode === 'forever')
return localStorage;
if (memoryMode === 'session')
return sessionStorage;
if (memoryMode === 'none')
return null;
}
const DonationInterrupterApi = {};
Object.defineProperties(DonationInterrupterApi, {
id: {
value: config.uniqueName,
writable: false,
configurable: true,
enumerable: true,
},
element: {
value: dialog,
writable: true,
configurable: true,
enumerable: true,
},
getCTAButtons: {
value: function () {
const dialog = this.element;
const ctaButtons = Array.from(dialog.querySelectorAll('.donation-interrupter--cta button'));
return ctaButtons;
},
writable: false,
configurable: false,
enumerable: false,
},
memoryMode: {
value: config.memoryMode ?? 'none',
writable: false,
configurable: false,
enumerable: false,
},
getStoredState: {
value: function () {
const storageApi = getMemoryModeStorageApi(this.memoryMode);
if ( !storageApi ) {
return console.error("Failed to read Donation Interrupter status. `memoryMode` is not set."), null;
} else {
return getToken(this.id, storageApi);
}
},
writable: false,
configurable: false,
enumerable: false,
},
setStoredState: {
value: function (newState) {
const storageApi = getMemoryModeStorageApi(this.memoryMode);
if ( !storageApi ) {
throw new Error("Failed to store Donation Interrupter status. `memoryMode` is not set.");
} else {
setToken(this.id, newState, storageApi);
}
},
writable: false,
configurable: false,
enumerable: false,
},
storedState: {
get () {
return this.getStoredState();
},
set (newStatus) {
this.setStoredState(newStatus);
}
},
getStatus: {
value: function () {
const state = this.storedState;
if (state && state.hasOwnProperty('status')) {
return state.status;
} else {
return state || null;
}
},
writable: false,
configurable: false,
enumerable: false,
},
setStatus: {
value: function (newStatus) {
const state = this.storedState;
if (state && state.hasOwnProperty('status')) {
this.storedState = { ...this.storedState, state: newStatus };
} else if (!state) {
this.storedState = { status: newStatus };
} else {
this.storedState = newStatus;
}
},
writable: false,
configurable: false,
enumerable: false,
},
status: {
get () {
return this.getStatus() || {};
},
set (newStatus) {
this.setStatus(newStatus);
}
},
hide: {
value: function hide () {
const dialog = this.element;
const close = () => {
dialog.close();
this.onHide?.forEach((callback) => {
callback.call(this, dialog);
});
this.status = "dismissed";
};
close();
},
writable: false,
configurable: true,
enumerable: true,
},
show: {
value: function show (force = false) {
const dialog = this.element;
const show = () => {
this.update();
dialog.showModal();
this.onShow?.forEach((callback) => {
callback.call(this, dialog);
});
};
if (this.evaluateConditions) {
if (typeof this.evaluateConditions === 'function') { // function that returns a boolean or truthy/falsy value
if (this.evaluateConditions() ? true : false) // call the function with this context to be evalutated
show();
} else if (Array.isArray(this.evaluateConditions)) { // array of conditions -- each item is evaluated to ensure all are truthy
if (this.evaluateConditions.every((condition) => condition ? true : false)) // evaluate each item in teh array
show();
} else { // booleans, string, numbers, etc.
if (this.evaluateConditions) // any other truthy value
show();
}
} else {
show();
}
if (force) {
show();
}
},
writable: false,
configurable: true,
enumerable: true,
},
evaluateConditions: {
value: function () {
return evaluateConditions.call(config, window.NA.DonationForm.getAmount(), window.NA.DonationForm.getFrequency(), window.NA.DonationForm.DonationInterrupter?.getStoredState()) ? true : false;
},
writable: false,
configurable: true,
enumerable: false,
},
onHide: {
value: new Array(),
writable: false,
configurable: false,
enumerable: false,
},
onShow: {
value: new Array(),
writable: false,
configurable: false,
enumerable: false,
},
onCTAButtonClick: {
value: new Array(),
writable: false,
configurable: false,
enumerable: false,
},
update: {
value: function updateData () {
const dialog = this.element;
if (dialog) {
const originalAmount = window.NA.DonationForm.amount,
suggestedAmount = calculateAskAmount(originalAmount);
[...dialog.querySelectorAll('span[data="amount_original"]')].forEach((span) => span.textContent = originalAmount.toLocaleString('en-US', { style: 'currency', currency: 'USD', minimumFractionDigits: 0, maximumFractionDigits: 2 }));
[...dialog.querySelectorAll('span[data="amount_suggested"]')].forEach((span) => span.textContent = suggestedAmount.toLocaleString('en-US', { style: 'currency', currency: 'USD', minimumFractionDigits: 0, maximumFractionDigits: 2 }));
}
},
writable: false,
configurable: false,
enumerable: true,
},
handleYesClick: {
value: function (e) {
const suggestedAmount = calculateAskAmount(window.NA.DonationForm.amount);
window.NA.DonationForm.recurring = true;
window.NA.DonationForm.amount = suggestedAmount;
//vwoCustomEvent("yes");
this.hide();
this.status = "converted";
setTimeout(() => {
window.NA.DonationForm.submit();
}, 200);
},
writable: true,
configurable: true,
enumerable: false,
},
handleNoClick: {
value: function (e) {
//vwoCustomEvent("no");
this.hide();
window.NA.DonationForm.submit();
},
writable: true,
configurable: true,
enumerable: false,
},
handleOtherClick: {
value: function (e) {},
writable: true,
configurable: true,
enumerable: false,
},
});
if (Array.isArray(DonationInterrupterApi.onShow)) {
DonationInterrupterApi.onShow.push(function updateState () {
const newState = {
...this.getStoredState(),
status: "shown",
lastSeenDate: getCurrentDate(),
};
this.setStoredState(newState);
});
DonationInterrupterApi.onShow.push(function sendVWOConversionEvent () {
vwoCustomEvent("donationInterrupterShown");
});
}
const ctaButtons = DonationInterrupterApi.getCTAButtons();
DonationInterrupterApi.hasOwnProperty('handleYesClick') && ctaButtons.find((ctaButton) => ctaButton.value.match(/yes/gi))?.addEventListener('click', DonationInterrupterApi.handleYesClick.bind(DonationInterrupterApi));
DonationInterrupterApi.hasOwnProperty('handleNoClick') && ctaButtons.find((ctaButton) => ctaButton.value.match(/no/gi))?.addEventListener('click', DonationInterrupterApi.handleNoClick.bind(DonationInterrupterApi));
DonationInterrupterApi.hasOwnProperty('handleOtherClick') && ctaButtons.find((ctaButton) => ctaButton.value.match(/other/gi))?.addEventListener('click', DonationInterrupterApi.handleOtherClick.bind(DonationInterrupterApi));
ctaButtons.forEach((ctaButton, ctaButtonIndex) => {
ctaButton.addEventListener('click', (e) => {
DonationInterrupterApi.onCTAButtonClick?.forEach((callback) => callback.call(DonationInterrupterApi, e.target, e.target.value));
});
});
if (!DonationInterrupterApi.getStoredState() || !DonationInterrupterApi.getStatus()) // if no state already found on browser storage
DonationInterrupterApi.setStoredState({ status: "initialized" });
window.NA.DonationForm.DonationInterrupter = DonationInterrupterApi; // assign the function that initialized the donation interrupter to the DonationInterrupterApi
return DonationInterrupterApi;
}
Object.defineProperty(window.NA.DonationForm, 'DonationInterrupter', {
value: addDonationInterrupter,
writable: true,
configurable: true,
enumerable: true,
});
//
//
//
//
//
//
//
//
resolve(window.NA.DonationForm); // resolves the Promise of the init function with the DonationForm API object
}
//
//
//
//
// Initialize only after required custom elements are defined in the custom element registry and appear on the page
try {
console.group("Donation Form: Init");
asyncWaitForCustomElements(['c-donate-community-staff-information', 'c-donate-community-donate-buttons', 'lightning-input', 'lightning-primitive-input-simple', 'lightning-primitive-input-checkbox', 'lightning-formatted-text'], main);
asyncWaitForCustomElements(['c-donate-community-staff-information', 'c-donate-community-donate-buttons', 'lightning-input', 'lightning-primitive-input-simple', 'lightning-primitive-input-checkbox', 'lightning-formatted-rich-text'], main);
} catch (error) {
console.error(error);
reject(error);
} finally {
console.groupEnd();
}
});
}
(function(){
window.NA.DonationForm.init = window.NA.DonationForm.init || init;
})();
}catch(e) {VWO._.vAEH(e);}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, R_722072_158_1_2_0:{ fn:function(log,nonce=''){return (function(x) {
try{
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1743104387377"]');
el.revertContentOp().remove();
} catch(e) {VWO._.vAEH(e);}
try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1743104387378"]')).remove();
} catch(e) {VWO._.vAEH(e);}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}},rules:[{"tags":[{"metricId":0,"data":{"type":"g","campaigns":[{"g":10,"c":158}]},"id":"metric"}],"triggers":["14125857"]},{"tags":[{"priority":4,"data":"campaigns.121","id":"runCampaign"}],"triggers":["10067839"]},{"tags":[{"priority":4,"data":"campaigns.160","id":"runCampaign"}],"triggers":["13887129"]},{"tags":[{"metricId":165095,"data":{"type":"m","campaigns":[{"g":1,"c":157}]},"id":"metric"},{"metricId":165095,"data":{"type":"m","campaigns":[{"g":6,"c":158}]},"id":"metric"},{"metricId":165095,"data":{"type":"m","campaigns":[{"g":3,"c":79}]},"id":"metric"},{"metricId":165095,"data":{"type":"m","campaigns":[{"g":3,"c":121}]},"id":"metric"},{"metricId":165095,"data":{"type":"m","campaigns":[{"g":3,"c":70}]},"id":"metric"},{"metricId":165095,"data":{"type":"m","campaigns":[{"g":1,"c":160}]},"id":"metric"},{"metricId":165095,"data":{"type":"m","campaigns":[{"g":1,"c":156}]},"id":"metric"}],"triggers":["1740152"]},{"tags":[{"metricId":0,"data":{"type":"g","campaigns":[{"g":5,"c":79}]},"id":"metric"}],"triggers":["12607149"]},{"tags":[{"metricId":490091,"data":{"type":"m","campaigns":[{"g":1,"c":158}]},"id":"metric"},{"metricId":490091,"data":{"type":"m","campaigns":[{"g":5,"c":70}]},"id":"metric"}],"triggers":["4252289"]},{"tags":[{"metricId":0,"data":{"type":"g","campaigns":[{"g":5,"c":121}]},"id":"metric"}],"triggers":["11807224"]},{"tags":[{"metricId":165092,"data":{"type":"m","campaigns":[{"g":2,"c":157}]},"id":"metric"},{"metricId":165092,"data":{"type":"m","campaigns":[{"g":7,"c":158}]},"id":"metric"},{"metricId":165092,"data":{"type":"m","campaigns":[{"g":4,"c":79}]},"id":"metric"},{"metricId":165092,"data":{"type":"m","campaigns":[{"g":4,"c":121}]},"id":"metric"},{"metricId":165092,"data":{"type":"m","campaigns":[{"g":4,"c":70}]},"id":"metric"},{"metricId":165092,"data":{"type":"m","campaigns":[{"g":2,"c":160}]},"id":"metric"},{"metricId":165092,"data":{"type":"m","campaigns":[{"g":2,"c":156}]},"id":"metric"}],"triggers":["1740149"]},{"tags":[{"metricId":0,"data":{"type":"g","campaigns":[{"g":6,"c":79}]},"id":"metric"}],"triggers":["12607152"]},{"tags":[{"metricId":490097,"data":{"type":"m","campaigns":[{"g":7,"c":70}]},"id":"metric"}],"triggers":["4252295"]},{"tags":[{"metricId":0,"data":{"type":"g","campaigns":[{"g":6,"c":121}]},"id":"metric"}],"triggers":["11807227"]},{"tags":[{"metricId":476312,"data":{"type":"m","campaigns":[{"g":3,"c":157}]},"id":"metric"},{"metricId":476312,"data":{"type":"m","campaigns":[{"g":5,"c":158}]},"id":"metric"},{"metricId":476312,"data":{"type":"m","campaigns":[{"g":1,"c":79}]},"id":"metric"},{"metricId":476312,"data":{"type":"m","campaigns":[{"g":1,"c":121}]},"id":"metric"},{"metricId":476312,"data":{"type":"m","campaigns":[{"g":1,"c":70}]},"id":"metric"},{"metricId":476312,"data":{"type":"m","campaigns":[{"g":4,"c":160}]},"id":"metric"},{"metricId":476312,"data":{"type":"m","campaigns":[{"g":3,"c":156}]},"id":"metric"}],"triggers":["4091672"]},{"tags":[{"metricId":0,"data":{"type":"g","campaigns":[{"g":7,"c":79}]},"id":"metric"}],"triggers":["12607155"]},{"tags":[{"metricId":0,"data":{"type":"g","campaigns":[{"g":7,"c":121}]},"id":"metric"}],"triggers":["11807230"]},{"tags":[{"metricId":476318,"data":{"type":"m","campaigns":[{"g":4,"c":157}]},"id":"metric"},{"metricId":476318,"data":{"type":"m","campaigns":[{"g":4,"c":158}]},"id":"metric"},{"metricId":476318,"data":{"type":"m","campaigns":[{"g":2,"c":79}]},"id":"metric"},{"metricId":476318,"data":{"type":"m","campaigns":[{"g":2,"c":121}]},"id":"metric"},{"metricId":476318,"data":{"type":"m","campaigns":[{"g":2,"c":70}]},"id":"metric"},{"metricId":476318,"data":{"type":"m","campaigns":[{"g":3,"c":160}]},"id":"metric"},{"metricId":476318,"data":{"type":"m","campaigns":[{"g":4,"c":156}]},"id":"metric"}],"triggers":["4091675"]},{"tags":[{"metricId":0,"data":{"type":"g","campaigns":[{"g":5,"c":157}]},"id":"metric"}],"triggers":["13865418"]},{"tags":[{"metricId":165089,"data":{"type":"m","campaigns":[{"g":8,"c":158}]},"id":"metric"}],"triggers":["1417796"]},{"tags":[{"metricId":490094,"data":{"type":"m","campaigns":[{"g":6,"c":70}]},"id":"metric"}],"triggers":["4252292"]},{"tags":[{"priority":4,"data":"campaigns.157","id":"runCampaign"},{"priority":4,"data":"campaigns.158","id":"runCampaign"},{"priority":4,"data":"campaigns.156","id":"runCampaign"}],"triggers":["13064067"]},{"tags":[{"metricId":0,"data":{"type":"g","campaigns":[{"g":9,"c":158}]},"id":"metric"}],"triggers":["14125854"]},{"tags":[{"priority":4,"data":"campaigns.70","id":"runCampaign"}],"triggers":["8881173"]},{"tags":[{"priority":4,"data":"campaigns.79","id":"runCampaign"}],"triggers":["10067944"]},{"tags":[{"priority":3,"id":"prePostMutation"},{"priority":2,"id":"groupCampaigns"}],"triggers":["8"]},{"tags":[{"priority":2,"id":"visibilityService"}],"triggers":["9"]},{"tags":[{"id":"runTestCampaign"}],"triggers":["2"]},{"tags":[{"id":"urlChange"}],"triggers":["75"]},{"tags":[{"id":"checkEnvironment"}],"triggers":["5"]}],pages:{"ec":[{"2209614":{"inc":["o",["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?navigators\\.org.*"]],"exc":["o",["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?donations\\.navigators\\.org.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?donations\\-prod\\.navigators\\.org.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?donate\\.navigators\\.org.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?navigators\\.org\\\/disciplemaking.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?navigators\\.org\\\/about\\\/contact\\-us.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?navigators\\.org\\\/prayer\\-request.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?forms\\.navigators\\.org.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?joinstaff\\.navigators\\.org.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?navigators\\.org\\\/mk.*"],["url","urlReg","(?i).*donations.*"],["url","urlReg","(?i).*give.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?navigators\\.org\\\/ministry\\-partner\\-care.*"],["url","urlReg","(?i)^https?\\:\\\/\\\/(w{3}\\.)?dev\\-navigators\\.pantheonsite\\.io.*"]]}},{"1551882":{"inc":["o",["url","urlReg","(?i).*"]]}}]},pagesEval:{"ec":[2209614,1551882]},stags:{}}})();
;;var commonWrapper=function(argument){if(!argument){argument={valuesGetter:function(){return{}},valuesSetter:function(){},verifyData:function(){return{}}}}var getVisitorUuid=function(){if(window._vwo_acc_id>=1037725){return window.VWO&&window.VWO.get("visitor.id")}else{return window.VWO._&&window.VWO._.cookies&&window.VWO._.cookies.get("_vwo_uuid")}};var pollInterval=100;var timeout=6e4;return function(){var accountIntegrationSettings={};var _interval=null;function waitForAnalyticsVariables(){try{accountIntegrationSettings=argument.valuesGetter();accountIntegrationSettings.visitorUuid=getVisitorUuid()}catch(error){accountIntegrationSettings=undefined}if(accountIntegrationSettings&&argument.verifyData(accountIntegrationSettings)){argument.valuesSetter(accountIntegrationSettings);return 1}return 0}var currentTime=0;_interval=setInterval((function(){currentTime=currentTime||performance.now();var result=waitForAnalyticsVariables();if(result||performance.now()-currentTime>=timeout){clearInterval(_interval)}}),pollInterval)}};
commonWrapper({valuesGetter:function(){return {"ga4s":0}},valuesSetter:function(data){var singleCall=data["ga4s"]||0;if(singleCall){window.sessionStorage.setItem("vwo-ga4-singlecall",true)}var ga4_device_id="";if(typeof window.VWO._.cookies!=="undefined"){ga4_device_id=window.VWO._.cookies.get("_ga")||""}if(ga4_device_id){window.vwo_ga4_uuid=ga4_device_id.split(".").slice(-2).join(".")}},verifyData:function(data){if(typeof window.VWO._.cookies!=="undefined"){return window.VWO._.cookies.get("_ga")||""}else{return false}}})();
var pushBasedCommonWrapper=function(argument){var firedCamp={};if(!argument){argument={integrationName:"",getExperimentList:function(){},accountSettings:function(){},pushData:function(){}}}return function(){window.VWO=window.VWO||[];var getVisitorUuid=function(){if(window._vwo_acc_id>=1037725){return window.VWO&&window.VWO.get("visitor.id")}else{return window.VWO._&&window.VWO._.cookies&&window.VWO._.cookies.get("_vwo_uuid")}};var sendDebugLogsOld=function(expId,variationId,errorType,user_type,data){try{var errorPayload={f:argument["integrationName"]||"",a:window._vwo_acc_id,url:window.location.href,exp:expId,v:variationId,vwo_uuid:getVisitorUuid(),user_type:user_type};if(errorType=="initIntegrationCallback"){errorPayload["log_type"]="initIntegrationCallback";errorPayload["data"]=JSON.stringify(data||"")}else if(errorType=="timeout"){errorPayload["timeout"]=true}if(window.VWO._.customError){window.VWO._.customError({msg:"integration debug",url:window.location.href,lineno:"",colno:"",source:JSON.stringify(errorPayload)})}}catch(e){window.VWO._.customError&&window.VWO._.customError({msg:"integration debug failed",url:"",lineno:"",colno:"",source:""})}};var sendDebugLogs=function(expId,variationId,errorType,user_type){var eventName="vwo_debugLogs";var eventPayload={};try{eventPayload={intName:argument["integrationName"]||"",varId:variationId,expId:expId,type:errorType,vwo_uuid:getVisitorUuid(),user_type:user_type};if(window.VWO._.event){window.VWO._.event(eventName,eventPayload,{enableLogs:1})}}catch(e){eventPayload={msg:"integration event log failed",url:window.location.href};window.VWO._.event&&window.VWO._.event(eventName,eventPayload)}};var callbackFn=function(data){if(!data)return;var expId=data[1],variationId=data[2],repeated=data[0],singleCall=0,debug=0;var experimentList=argument.getExperimentList();var integrationName=argument["integrationName"]||"vwo";if(typeof argument.accountSettings==="function"){var accountSettings=argument.accountSettings();if(accountSettings){singleCall=accountSettings["singleCall"];debug=accountSettings["debug"]}}if(debug){sendDebugLogs(expId,variationId,"intCallTriggered",repeated)}if(singleCall&&(repeated==="vS"||repeated==="vSS")||firedCamp[expId]){return}window.expList=window.expList||{};var expList=window.expList[integrationName]=window.expList[integrationName]||[];if(expId&&variationId&&["VISUAL_AB","VISUAL","SPLIT_URL"].indexOf(_vwo_exp[expId].type)>-1){if(experimentList.indexOf(+expId)!==-1){firedCamp[expId]=variationId;var visitorUuid=getVisitorUuid();var pollInterval=100;var currentTime=0;var timeout=6e4;var user_type=_vwo_exp[expId].exec?"vwo-retry":"vwo-new";var interval=setInterval((function(){if(expList.indexOf(expId)!==-1){clearInterval(interval);return}currentTime=currentTime||performance.now();var toClearInterval=argument.pushData(expId,variationId,visitorUuid);if(debug&&toClearInterval){sendDebugLogsOld(expId,variationId,"",user_type);sendDebugLogs(expId,variationId,"intDataPushed",user_type)}var isTimeout=performance.now()-currentTime>=timeout;if(isTimeout&&debug){sendDebugLogsOld(expId,variationId,"timeout",user_type);sendDebugLogs(expId,variationId,"intTimeout",user_type)}if(toClearInterval||isTimeout){clearInterval(interval)}if(toClearInterval){window.expList[integrationName].push(expId)}}),pollInterval||100)}}};window.VWO.push(["onVariationApplied",callbackFn]);window.VWO.push(["onVariationShownSent",callbackFn])}};
var surveyDataCommonWrapper=function(argument){if(!argument){argument={getCampaignList:function(){return[]},surveyStatusChange:function(){},answerSubmitted:function(){}}}return function(){window.VWO=window.VWO||[];function getValuesFromAnswers(answers){var values=[];for(var i=0;i=timeout;if(toClearInterval||isTimeout){clearInterval(interval)}}),pollInterval)}}window.VWO.push(["onSurveyShown",function(data){commonSurveyCallback(data,argument.surveyStatusChange,"surveyShown")}]);window.VWO.push(["onSurveyCompleted",function(data){commonSurveyCallback(data,argument.surveyStatusChange,"surveyCompleted")}]);window.VWO.push(["onSurveyAnswerSubmitted",function(data){commonSurveyCallback(data,argument.answerSubmitted,"surveySubmitted")}])}};
(function(){var VWOOmniTemp={};window.VWOOmni=window.VWOOmni||{};for(var key in VWOOmniTemp)Object.prototype.hasOwnProperty.call(VWOOmniTemp,key)&&(window.VWOOmni[key]=VWOOmniTemp[key]);window._vwoIntegrationsLoaded=1;pushBasedCommonWrapper({integrationName:"GA4",getExperimentList:function(){return [70,79,121,156,157,158,160]},accountSettings:function(){var accountIntegrationSettings={"setupVia":"gtm","dataVariable":"dataLayer","manualSetup":true};if(accountIntegrationSettings["debugType"]=="ga4"&&accountIntegrationSettings["debug"]){accountIntegrationSettings["debug"]=1}else{accountIntegrationSettings["debug"]=0}return accountIntegrationSettings},pushData:function(expId,variationId){var accountIntegrationSettings={"setupVia":"gtm","dataVariable":"dataLayer","manualSetup":true};var ga4Setup=accountIntegrationSettings["setupVia"]||"gtag";if(typeof window.gtag!=="undefined"&&ga4Setup=="gtag"){window.gtag("event","VWO",{vwo_campaign_name:window._vwo_exp[expId].name+":"+expId,vwo_variation_name:window._vwo_exp[expId].comb_n[variationId]+":"+variationId});window.gtag("event","experience_impression",{exp_variant_string:"VWO-"+expId+"-"+variationId});return true}return false}})();pushBasedCommonWrapper({integrationName:"GA4-GTM",getExperimentList:function(){return [70,79,121,156,157,158,160]},accountSettings:function(){var accountIntegrationSettings={"setupVia":"gtm","dataVariable":"dataLayer","manualSetup":true};if(accountIntegrationSettings["debugType"]=="gtm"&&accountIntegrationSettings["debug"]){accountIntegrationSettings["debug"]=1}else{accountIntegrationSettings["debug"]=0}return accountIntegrationSettings},pushData:function(expId,variationId){var accountIntegrationSettings={"setupVia":"gtm","dataVariable":"dataLayer","manualSetup":true};var ga4Setup=accountIntegrationSettings["setupVia"]||"gtm";var dataVariable=accountIntegrationSettings["dataVariable"]||"dataLayer";if(typeof window[dataVariable]!=="undefined"&&ga4Setup=="gtm"){window[dataVariable].push({event:"vwo-data-push-ga4",vwo_exp_variant_string:"VWO-"+expId+"-"+variationId});return true}return false}})();
;})();(function(){window.VWO=window.VWO||[];var pollInterval=100;var _vis_data={};var intervalObj={};var analyticsTimerObj={};var experimentListObj={};window.VWO.push(["onVariationApplied",function(data){if(!data){return}var expId=data[1],variationId=data[2];if(expId&&variationId&&["VISUAL_AB","VISUAL","SPLIT_URL"].indexOf(window._vwo_exp[expId].type)>-1){}}])})();;
;var vD=VWO.data||{};VWO.data={content:{"fns":{"list":{"vn":1,"args":{"1":{}}}}},as:"r5.visualwebsiteoptimizer.com",dacdnUrl:"https://dev.visualwebsiteoptimizer.com",accountJSInfo:{"pvn":0,"rp":30,"ts":1747368523,"noSS":false,"pc":{"a":0,"t":0}}};for(var k in vD){VWO.data[k]=vD[k]};;var gcpfb=function(a,loadFunc,status,err,success){function vwoErr() {_vwo_err({message:"Google_Cdn failing for " + a + ". Trying Fallback..",code:"cloudcdnerr",status:status});} if(a.indexOf("/cdn/")!==-1){loadFunc(a.replace("cdn/",""),err,success); vwoErr(); return true;} else if(a.indexOf("/dcdn/")!==-1&&a.indexOf("evad.js") !== -1){loadFunc(a.replace("dcdn/",""),err,success); vwoErr(); return true;}};window.VWO=window.VWO || [];window.VWO._= window.VWO._ || {};window.VWO._.gcpfb=gcpfb;;var d={cookie:document.cookie,URL:document.URL,referrer:document.referrer};var w={VWO:{_:{}},location:{href:window.location.href,search:window.location.search},_vwoCc:window._vwoCc};;window._vwo_cdn="https://dev.visualwebsiteoptimizer.com/cdn/";window._vwo_apm_debug_cdn="https://dev.visualwebsiteoptimizer.com/cdn/";window.VWO._.useCdn=true;window.vwo_eT="br";window._VWO=window._VWO||{};window._VWO.fSeg={};window._VWO.dcdnUrl="/dcdn/settings.js";window.VWO.sTs=1747321107;window._VWO._vis_nc_lib=window._vwo_cdn+"edrv/nc-96c926f5bc6e9abaa6905bd653ad0827.br.js";var loadWorker=function(url){_vwo_code.load(url, { dSC: true, onloadCb: function(xhr,a){window._vwo_wt_l=true;if(xhr.status===200 ||xhr.status===304){var code="var window="+JSON.stringify(w)+",document="+JSON.stringify(d)+";window.document=document;"+xhr.responseText;var blob=new Blob([code||"throw new Error('code not found!');"],{type:"application/javascript"}),url=URL.createObjectURL(blob);window.mainThread={webWorker:new Worker(url)};window.vwoChannelFW=new MessageChannel();window.vwoChannelToW=new MessageChannel();window.mainThread.webWorker.postMessage({vwoChannelToW:vwoChannelToW.port1,vwoChannelFW:vwoChannelFW.port2},[vwoChannelToW.port1, vwoChannelFW.port2]);if(!window._vwo_mt_f)return window._vwo_wt_f=true;_vwo_code.addScript({text:window._vwo_mt_f});delete window._vwo_mt_f}else{if(gcpfb(a,loadWorker,xhr.status)){return;}_vwo_code.finish("&e=loading_failure:"+a)}}, onerrorCb: function(a){if(gcpfb(a,loadWorker)){return;}window._vwo_wt_l=true;_vwo_code.finish("&e=loading_failure:"+a);}})};loadWorker("https://dev.visualwebsiteoptimizer.com/cdn/edrv/worker-3988c1ad62c81a0a878a345618da25d8.br.js");;var _vis_opt_file;var _vis_opt_lib;if(window.VWO._.allSettings.dataStore.previewExtraSettings!=undefined&&window.VWO._.allSettings.dataStore.previewExtraSettings.isSurveyPreviewMode){var surveyHash=window.VWO._.allSettings.dataStore.plugins.LIBINFO.SURVEY_DEBUG_EVENTS.HASH;var param1="evad.js?va=";var param2="&d=debugger_new";var param3="&sp=1&a=722072&sh="+surveyHash;_vis_opt_file=vwoCode.use_existing_jquery&&typeof vwoCode.use_existing_jquery()!=="undefined"?vwoCode.use_existing_jquery()?param1+"vanj"+param2:param1+"va_gq"+param2:param1+"edrv/va_gq-3583f577c94ae40b74b71be6679e90ff.br.js"+param2;_vis_opt_file=_vis_opt_file+param3;_vis_opt_lib="https://dev.visualwebsiteoptimizer.com/dcdn/"+_vis_opt_file}else if(window.VWO._.allSettings.dataStore.mode!=undefined&&window.VWO._.allSettings.dataStore.mode=="PREVIEW"){ var path1 = 'edrv/pd_'; var path2 = window.VWO._.allSettings.dataStore.plugins.LIBINFO.EVAD.HASH + ".js"; ;_vis_opt_file=vwoCode.use_existing_jquery&&typeof vwoCode.use_existing_jquery()!=="undefined"?vwoCode.use_existing_jquery()?path1+"vanj.js":path1+"va_gq"+path2:path1+"edrv/va_gq-3583f577c94ae40b74b71be6679e90ff.br.js"+path2;_vis_opt_lib="https://dev.visualwebsiteoptimizer.com/cdn/"+_vis_opt_file}else{_vis_opt_file=vwoCode.use_existing_jquery&&typeof vwoCode.use_existing_jquery()!=="undefined"?vwoCode.use_existing_jquery()?"edrv/vanj-fcfd28d05d126b3181261f7513f9259f.br.js":"edrv/va_gq-3583f577c94ae40b74b71be6679e90ff.br.js":"edrv/va_gq-3583f577c94ae40b74b71be6679e90ff.br.js"}window._vwo_library_timer=setTimeout((function(){vwoCode.removeLoaderAndOverlay&&vwoCode.removeLoaderAndOverlay();vwoCode.finish()}),vwoCode.library_tolerance&&typeof vwoCode.library_tolerance()!=="undefined"?vwoCode.library_tolerance():2500),_vis_opt_lib=typeof _vis_opt_lib=="undefined"?window._vwo_cdn+_vis_opt_file:_vis_opt_lib;var loadLib=function(url){_vwo_code.load(url, { dSC: true, onloadCb:function(xhr,a){window._vwo_mt_l=true;if(xhr.status===200 || xhr.status===304){if(!window._vwo_wt_f)return window._vwo_mt_f=xhr.responseText;_vwo_code.addScript({text:xhr.responseText});delete window._vwo_wt_f;}else{if(gcpfb(a,loadLib,xhr.status)){return;}_vwo_code.finish("&e=loading_failure:"+a);}}, onerrorCb: function(a){if(gcpfb(a,loadLib)){return;}window._vwo_mt_l=true;_vwo_code.finish("&e=loading_failure:"+a);}})};loadLib(_vis_opt_lib);VWO.load_co=function(u,opts){return window._vwo_code.load(u,opts);};;;}}catch(e){_vwo_code.finish();_vwo_code.removeLoaderAndOverlay&&_vwo_code.removeLoaderAndOverlay();_vwo_err(e);window.VWO.caE=1}})();
Skip to content
The Navigators
Teenagers are profoundly influenced by their peers. This can be a bad thing, or, in the case of two young women from Colorado, a very good thing.
Allison Daniell, who works with NavYouth in Colorado Springs, saw positive peer influence at work in the lives of some of the young women in her Bible study. One of the teens, Andrea, became concerned about another tenth-grader in the group, “Lindsey.” Lindsey had a history with drugs and with taking things a little too far with the opposite sex.
One day, as Andrea and Allison were meeting one-to-one, Andrea told Allison how worried she was about Lindsey and her relationship with a new boyfriend. “Since I hadn’t heard this information from Lindsey herself, I didn’t feel like I could talk to her about it,” Allison says. “So I encouraged Andrea to talk to her.”
Allison asked Andrea what she would say to Lindsey if she had the chance. “Andrea replied with an amazing speech about Lindsey’s worth as a person and how God didn’t want her to do certain things because it wasn’t good for her. She even mentioned that it was going to affect Lindsey’s marriage some day.”
Allison suggested that Andrea invite Lindsey to coffee and tell her those very things. “Andrea actually lit up!” Allison says. Andrea texted Lindsey then and there and they agreed on a time to meet.
Before the day came for their coffee shop conversation, Andrea spent time with God and wrote out what she wanted to say. This was the first time she’d confronted a friend on this level. Then they met up for coffee, and Andrea said it all. And Lindsey listened.
“There sat two 15-year-olds in a coffee shop having an eternal conversation—one reaching out for the other and ‘snatching her from the fire’ like it says in Jude 23. I think God was so pleased.”
Since then, Andrea continues to be more and more bold with her friends in speaking truth and showing her love in a way that wants the best for them. Allison says, “It’s beautiful to watch.”
Taken from The Navigators 2010 Annual Report .
Navigators are helping build a foundational generation of believers in Hungary, showing them how to share the gospel to others in their country.
Continue Reading
Colorado-Based Christian Youth Camp Adds Highlands Ranch Mile High Academy to its Summer Local Day Camp Sites
Continue Reading
×
You can be the difference in a child making a decision to follow Jesus at camp this summer. Will you help a kid get to Eagle Lake Camps of The Navigators this summer?
By commenting, you agree to our Code of Conduct.