import{initLocations,filterStates}from"./modules/locations.min.js";import{stripe,stripeInit,stripeUpdate,stripeSubmit,stripeResults,haveStripeClientSecret}from"./modules/stripe.min.js";import{paypalInit,paypalDonationSet,setupPaypalOneTimeButtons,setupPaypalSubscriptionButtons,paypalResults}from"./modules/paypal.min.js";var dTor=dTor||{};dTor.baseUrl=window.location.origin,dTor.page=$("body").attr("id")||"",dTor.csrfToken=$("[name=csrfmiddlewaretoken]").val(),dTor.minimumDonation=document.getElementById("minimum-donation-data")?JSON.parse(document.getElementById("minimum-donation-data").textContent):{},dTor.init=function(){switch(initLocations(),this.refreshCaptcha=function(){document.getElementById("id_captcha_0")&&$.getJSON("/captcha/refresh/",function(result){let captcha_audio=document.getElementById("captcha-audio");$("img.captcha").attr("src",result.image_url),$("#id_captcha_0").attr("value",result.key),$("#id_captcha_1").val(""),$(captcha_audio).find("source").attr("src",result.audio_url),captcha_audio.pause(),captcha_audio.load()});const widget=document.querySelector("altcha-widget");"function"==typeof widget.reset&&widget.reset()},this.displayPaymentError=function(message){$("form.was-validated").removeClass("was-validated"),dTor.refreshCaptcha();$("#result-message").text(message).removeClass("hidden")},this.hidePaymentError=function(){$("#result-message").text("").addClass("hidden")},this.handleFormErrors=function(errors){$("form.was-validated").removeClass("was-validated"),dTor.refreshCaptcha();for(const[key,value]of Object.entries(errors))switch(key){case"altcha":const widget=document.querySelector("altcha-widget");"function"==typeof widget.setState?widget.setState("error",value):dTor.displayPaymentError(value),document.getElementById("btn-donateSubmit").disabled=!0;break;case"captcha":$("#id_captcha_1").addClass("is-invalid");break;default:$(`[name='${key}']`).length?$(`[name='${key}']`).addClass("is-invalid"):console.log(`Unexpected form error with key '${key}': ${value}`)}},this.setupFormValidation=function(){dTor.hidePaymentError(),$("form").on("submit",function(e){!this.checkValidity()||$(e.currentTarget).data("shippingRestricted")?(e.preventDefault(),e.stopPropagation(),$.fn.matchHeight._update(),$(e.currentTarget).data("shippingRestricted")&&dTor.displayPaymentError("Due to shipping restrictions, we currently can not ship to Ukraine, or Russia. We apologize for the inconvenience.")):dTor.beginPaymentProcess(e),$(this).addClass("was-validated")})},this.validateElement=function(el){el.setCustomValidity(""),el.checkValidity()&&null!=$(el).val()?$(el).removeClass("is-invalid"):($(el).siblings(".invalid-feedback").text(el.validationMessage),$(el).addClass("is-invalid"))},this.formSyncInput=function(e){let _this=$(this),thisId=_this.attr("id");"button"==_this.attr("type")||thisId.startsWith("altcha_checkbox")||_this.attr("required")&&dTor.validateElement(this)},this.formSyncSelect=function(e){let _this=$(this),_thisLabel=$(this).siblings("label");(_this.attr("required")||_thisLabel.hasClass("required"))&&dTor.validateElement(this)},this.propagateDonation=function(d){var dShow="$"+d/100,frequency=$("#pricegrid").data("frequency")||"single";(parseInt(d)>=dTor.minimumDonation.cents&&stripeUpdate(d,frequency),parseInt(d)>=dTor.minimumDonation.cents&&paypalDonationSet(d),$("#noPerkCheckbox")&&$(".Perk-selection").each(function(i,el){var _el=$(el);_el.data("price-tier-"+frequency)<=d?(_el.find("input[type='radio']").removeAttr("disabled"),_el.removeClass("Perk-inactive").addClass("Perk-active")):(_el.find("[id^='id_perk']").prop("checked",!1).attr("disabled","disabled"),_el.removeClass("Perk-active").addClass("Perk-inactive"))}),$(".Perk-selection.Perk-active").length||$("#noPerkCheckbox").is(":checked")||$("#noPerkCheckbox").prop("checked",!0),$("#cryptoContainer").length)&&($("#secBTCPay").hasClass("hidden")||($("#btn-donateBTCPay")[0].innerHTML="Donate "+dShow+" by BTCPay"))},this.togglePerks=function(perkId){$(".perk_option").each(function(i,el){let _el=$(el);perkId==_el.data("perk")?(_el.removeClass("hidden"),_el.find("select").attr("required","required"),_el.find(".hiddenPerkOption").removeAttr("disabled")):(_el.hasClass("hidden")||_el.addClass("hidden"),_el.find("select").removeAttr("required"),_el.find(".hiddenPerkOption").attr("disabled","disabled"))})},this.beginPaymentProcess=function(e){e.preventDefault(),$("#checkout_card").hasClass("hidden")||stripeSubmit().then(function(errors){errors&&dTor.handleFormErrors(errors)})},$(".donate-form, #subscriptionForm").on("change keyup","input",this.formSyncInput).on("change keyup blur","select",this.formSyncSelect),$(".sectionToggle").on("click","[data-toggles]",function(e){e.preventDefault();var _this=$(this);_this.addClass("active").siblings("[data-toggles]").removeClass("active");var targetID=_this.data("toggles");$(".toggleable").each(function(){$(this).is(targetID)?$(this).removeClass("hidden"):$(this).addClass("hidden")}),$.fn.matchHeight._update()}),$(".frequencyToggle").on("click","[data-toggles_price]",function(e){var _this=$(this),targetID=_this.data("toggles_price"),frequency=_this.data("toggles_to"),currentVal=100*$("#customDonation").val();$(".Perk").removeClass("single monthly").addClass(frequency),$("#pricegrid").data("frequency",frequency).find(":checked").removeAttr("checked"),$(".toggleablePrice").each(function(){if($(this).is(targetID)){let checkableChildren=$(this).find("input[value='"+currentVal+"']");checkableChildren&&checkableChildren.prop("checked",!0),$(this).removeClass("hidden")}else $(this).addClass("hidden")}),$("#checkout_paypal").removeClass("single monthly").addClass(frequency),dTor.propagateDonation(currentVal),$.fn.matchHeight._update()}).on("blur","input[id^='customDonation']",function(e){var _this=$(this);dTor.propagateDonation(100*_this[0].value)}),$("[id^='pricegrid_']").on("click","input[type='radio']",function(e){var _this=$(this),_customInput=$("#pricegrid").find("input[id^='customDonation']"),donationAmount=_this[0].value,donationDisplay=donationAmount/100;_customInput[0].value=donationDisplay,dTor.validateElement(_customInput[0]),dTor.propagateDonation(donationAmount)}),$("#pricegrid").on("change, keyup","#customDonation",function(e){var _this=$(this);$("#pricegrid").find(".toggleablePrice").not(".hidden").find("input[type='radio']").each(function(i,e){var _e=$(e);100*_this[0].value==_e.val()?(_e.prop("checked",!0),_e.attr("checked","checked")):_e.prop("checked",!1)}),$.fn.matchHeight._update(),dTor.propagateDonation(100*_this[0].value)}),$(".Card-gift").on("click","#noPerkCheckbox",function(e){$(this).prop("checked")&&($(".Card-gift").find("input[type='radio']").prop("checked",!1),dTor.togglePerks(0))}).on("click","input[type='radio']",function(e){var _this=$(this);_this.prop("checked")&&($("#noPerkCheckbox").prop("checked",!1),dTor.togglePerks(_this.val()))}),$("form").on("change keyup blur","#id_country",function(e){var cName=$(e.currentTarget).val(),cOption=$(e.currentTarget).find('option[value="'+cName+'"]'),cId=cOption.data("countryid"),parentForm=$(e.currentTarget).closest("form");filterStates(cOption.data("countryid")),182==cId||230==cId?(parentForm.find(".shippingRestricted").removeClass("hidden"),parentForm.data("shippingRestricted",!0)):(parentForm.find(".shippingRestricted").hasClass("hidden")||parentForm.find(".shippingRestricted").addClass("hidden"),parentForm.data("shippingRestricted",!1))}),$(".perk_option").on("change keyup blur","select.optionGroup",function(e){$(this).closest(".perk_option").find(".optionList").removeAttr("required").filter(":not(.hidden)").addClass("hidden").val(""),$("#perk_option--"+$(e.currentTarget).val()).removeClass("hidden").attr("required","required"),$("label[data-revealed-by='optionGroup-"+$(e.currentTarget).data("selectid")+"']").removeClass("hidden")}),$("form#cryptoBTCPay").on("submit",function(e){this.checkValidity()||(e.preventDefault(),e.stopPropagation()),$(this).addClass("was-validated")}).on("change keyup","input",function(e){$("#price").val($("#customDonation").val()),dTor.validateElement(this)}),$("#secCryptoAddresses").on("click",".currencyAddress--copy",function(e){e.preventDefault();var _this=$(this),address=_this.siblings(".currencyAddress").attr("value");navigator.clipboard.writeText(address),_this.find("i").removeClass("icon-copy").addClass("icon-check")}),$(".Faq--Nav").on("click","button",function(e){$(".Faq--Content").find(".collapse").collapse("hide")}),$("#customDonation").on("invalid",function(e){$(this).get(0).setCustomValidity(`Please enter a donation of at least ${dTor.minimumDonation.display}.`)}),$("#customDonation").on("input",function(e){$(this).get(0).setCustomValidity("")}),dTor.page){case"donate":setupPaypalOneTimeButtons(),setupPaypalSubscriptionButtons(),stripeInit(12500,dTor.csrfToken,dTor.baseUrl,dTor.displayPaymentError,dTor.handleFormErrors),paypalInit(12500,dTor.csrfToken,dTor.baseUrl,dTor.displayPaymentError,dTor.handleFormErrors),dTor.setupFormValidation(),dTor.propagateDonation(12500);break;case"thankyou":stripeResults(),paypalResults()}},window.onload=dTor.init();