var tenantName,showListing,Tithely,Stripe,Hexea,grecaptcha,app;(function(n){var t;(function(t){var i;(function(t){var i=function(){function t(){}return t.$registerShared=function(){n.shared.validators.ValidateCreditCardNumber.$register(t.$moduleName);n.shared.validators.ValidateRoutingNumber.$register(t.$moduleName);n.shared.validators.ValidateEmailNumber.$register(t.$moduleName);n.shared.services.trips.Service.$register(t.$moduleName);n.shared.services.filters.Service.$register(t.$moduleName);n.shared.services.publicArea.Service.$register(t.$moduleName);n.shared.services.forms.Service.$register(t.$moduleName);n.shared.services.account.Service.$register(t.$moduleName);n.shared.services.forms.Service.$register(t.$moduleName);n.shared.utils.ClickOutside.$register(t.$moduleName)},t.$go=function(){angular.module(t.$moduleName,["ui.router","textAngular","angularLoad"]);t.$registerShared();angular.element(document).ready(function(){angular.bootstrap(angular.element("#missions-public-trips"),[t.$moduleName])})},t.$moduleName="missions-public-trips",t.$moduleFolder="/assets/js/areas/public-trips/",t}();t.configuration=i})(i=t.trips||(t.trips={}))})(t=n.public||(n.public={}))})(app||(app={})),function(){"use strict";app.public.trips.configuration.$go()}(),function(){"use strict";function n(n,t,i){i.otherwise("/!/");t.state("redirect",{url:"/!",template:"<redirect />"});showListing&&t.state("list-all",{url:"/!/all",template:"<trips />",data:{tripTypes:[]}}).state("list-trips",{url:"/!/trips",template:"<trips />",data:{tripTypes:[app.shared.enums.trips.TripType.Trip]}}).state("list-camps",{url:"/!/camps",template:"<trips />",data:{tripTypes:[app.shared.enums.trips.TripType.Camp]}}).state("list-events",{url:"/!/events",template:"<trips />",data:{tripTypes:[app.shared.enums.trips.TripType.Event]}});t.state("tripDonateConfirmation",{url:"/!/{tripID}/{tripUrl}/donateConfirmation",template:"<trip-donate-confirmation />"}).state("tripDonateParticipantConfirmation",{url:"/!/{tripID}/{tripUrl}/participants/{participantID}/donateConfirmation",template:"<trip-donate-confirmation />"}).state("tripDonateInvoiceConfirmation",{url:"/!/{tripID}/invoices/{invoiceCode}/donateConfirmation",template:"<trip-donate-confirmation />"}).state("tripDonateParticipant",{url:"/!/{tripID}/{tripUrl}/participants/{participantID}/donate",template:"<trip-donate />"}).state("tripDonateMultipleParticipant",{url:"/!/{tripID}/participants/donate",template:"<trip-donate />"}).state("tripDonate",{url:"/!/{tripID}/{tripUrl}/donate",template:"<trip-donate />"}).state("trip",{url:"/!/{tripID}/{tripUrl}",template:"<trip />"}).state("tripInvoiceDonate",{url:"/!/{tripID}/invoices/{invoiceCode}/pay",template:"<trip-donate />"});showListing?t.state("list",{url:"/!/",template:"<trips />"}):t.state("not-found",{url:"/!/",template:"<not-found />"});n.html5Mode({enabled:!0,requireBase:!1,rewriteLinks:!1})}angular.module(app.public.trips.configuration.$moduleName).config(n);n.$inject=["$locationProvider","$stateProvider","$urlRouterProvider"]}(),function(n){var t;(function(t){var i;(function(t){var i;(function(){var t=function(){function n(){window.location.href="/404"}return n.prototype.$onInit=function(){},n.$inject=[],n}(),i=function(){function i(){this.controller=t;this.templateUrl=n.shared.util.TemplateUtil.getTemplateUrl(n.public.trips.configuration.$moduleFolder+"components/notFound.html")}return i}();angular.module(n.public.trips.configuration.$moduleName).component("notFound",new i)})(i=t.components||(t.components={}))})(i=t.trips||(t.trips={}))})(t=n.public||(n.public={}))}(app||(app={})),function(n){var t;(function(t){var i;(function(t){var i;(function(){var t=function(){function n(n,t){if(n.location.hash.length>1){var i=decodeURIComponent(n.location.hash.slice(1,n.location.hash.length));i[0]!=="/"&&(i="/"+i);t.url("/!"+decodeURIComponent(i+n.location.search))}else t.url("/!/")}return n.prototype.$onInit=function(){},n.$inject=["$window","$location"],n}(),i=function(){function i(){this.controller=t;this.templateUrl=n.shared.util.TemplateUtil.getTemplateUrl(n.public.trips.configuration.$moduleFolder+"components/redirect.html")}return i}();angular.module(n.public.trips.configuration.$moduleName).component("redirect",new i)})(i=t.components||(t.components={}))})(i=t.trips||(t.trips={}))})(t=n.public||(n.public={}))}(app||(app={})),function(n){var t;(function(t){var i;(function(t){var i;(function(){var t=function(){function n(){this.trip=!1;this.filters=!1;this.launchPage=!1;this.participants=!1}return n.prototype.isLoading=function(){return this.trip},n}(),i=function(){function i(i,r,u,f,e){this.$stateParams=i;this.$public=r;this.$filters=u;this.$forms=f;this.$window=e;this.loading=new t;this.participants=[];this.filteredParticipants=[];this.TripType=n.shared.enums.trips.TripType}return i.prototype.$onInit=function(){console.log("TripController.$onInit()");this.tripID=this.$stateParams.tripID;this.loadTrip();this.loadFilters();this.loadLaunchPageSettings();this.showListing=showListing;var n=new URL(this.$window.location.href).searchParams.get("returnToUrl");n&&(this.customBackUrl=n)},i.prototype.$onDestroy=function(){this.destroyFacebookMeta()},i.prototype.loadTrip=function(){var n=this;this.loading.trip=!0;this.$public.getPublicTrip(this.tripID).then(function(t){console.log(t);n.trip=t;n.setGroupSizeProperties(t);n.loading.trip=!1;n.setupFacebookMetaTags();t.CanDisplayParticipants&&n.loadParticipants()})},i.prototype.loadParticipants=function(){var n=this;this.loading.participants=!0;this.$public.getParticipants(this.tripID).then(function(t){n.participants=t;n.filteredParticipants=t}).finally(function(){n.loading.participants=!1})},i.prototype.loadLaunchPageSettings=function(){var n=this;this.loading.launchPage=!0;this.$public.getLaunchPageSettings().then(function(t){n.launchPageSettings=t;console.log(t);n.loading.launchPage=!1})},i.prototype.destroyFacebookMeta=function(){var t=$("head"),n=function(n){t.find('meta[name="'+n+'"]').remove()};n("og:type");n("og:image");n("og:title");n("og:description");n("author")},i.prototype.setupFacebookMetaTags=function(){var t=$("head"),n=function(n,i){var r=t.find('meta[name="'+n+'"]'),u;r.length==0?(u=$("<meta />").attr("name",n).attr("content",i),t.append(u)):r.attr("content",i)};n("og:type","article");n("og:image",this.trip.Image.Overview);n("og:title",this.trip.Name);this.trip.ShowDestination?n("og:description",this.trip.FriendlyLocation+" | "+this.trip.TripDuration):n("og:description",this.trip.TripDuration);n("author",tenantName)},i.prototype.loadFilters=function(){var t=this;this.loading.filters=!0;this.$filters.getFilters(!1,n.shared.enums.FilterTypeTarget.Events).then(function(n){t.filterTypes=n;t.loading.filters=!1})},i.prototype.searchParticipants=function(){var n=this,t=n.searchQuery?n.searchQuery.toLowerCase():null,i=n.searchQuery&&n.searchQuery.length>=1;n.filteredParticipants=i?n.participants.filter(function(n){var i=n.firstName.toLowerCase().indexOf(t)>=0,r=n.lastName.toLowerCase().indexOf(t)>=0;return i||r}):n.participants},i.prototype.getDuration=function(n,t){var r=moment(n,"YYYY/MM/DD"),i=moment(t,"YYYY/MM/DD"),u=r.format("MMM D - ");return u+(r.month()===i.month()?i.format("D"):i.format("MMM D"))},i.prototype.getDate=function(n){return moment(n,"YYYY/MM/DD").format("MMM D, YYYY")},i.prototype.toMoney=function(n){return n?"$"+n.toLocaleString():"$0"},i.prototype.getFilterTypes=function(n){return this.filterTypes?this.filterTypes.filter(function(t){return n.indexOf(t.FilterTypeID)>=0}):[]},i.prototype.getFilters=function(n,t){return n.Filters.filter(function(n){return t.indexOf(n.FilterID)>=0})},i.prototype.showRegisterButton=function(){return this.trip.RegistrationStatus!=n.shared.enums.RegistrationStatus.Open?!1:this.trip.SlotsLeft!=null&&this.trip.SlotsLeft<=0?!1:this.trip.HasApplication?!1:this.trip.AllowApply?!0:!1},i.prototype.showApplyButton=function(){return this.trip.RegistrationStatus!=n.shared.enums.RegistrationStatus.Open?!1:this.trip.SlotsLeft!=null&&this.trip.SlotsLeft<=0?!1:this.trip.HasApplication?this.trip.AllowApply?!0:!1:!1},i.prototype.showDonateButton=function(){return!this.trip.HasPaymentProvider||!this.trip.ShowCantGoGive||!this.trip.FundRaisingEnabled?!1:!0},i.prototype.showPrice=function(){return this.trip.RegistrationStatus!=n.shared.enums.RegistrationStatus.Open?!1:this.trip.SlotsLeft!=null&&this.trip.SlotsLeft<=0?!1:this.trip.MinPrice<=0&&this.trip.MaxPrice<=0?!1:!0},i.prototype.showDeposit=function(){return this.trip.MinDeposit<=0&&this.trip.MaxDeposit<=0?!1:!0},i.prototype.getPriceRange=function(){return this.trip.MinPrice==this.trip.MaxPrice?this.toMoney(this.trip.MinPrice):this.toMoney(this.trip.MinPrice)+" - "+this.toMoney(this.trip.MaxPrice)},i.prototype.getDepositRange=function(){return this.trip.MinDeposit==this.trip.MaxDeposit?this.toMoney(this.trip.MinDeposit):this.toMoney(this.trip.MinDeposit)+" - "+this.toMoney(this.trip.MaxDeposit)},i.prototype.formatDescription=function(n){return n?n.replace(/\r?\n/g,"<br />"):""},i.prototype.setGroupSizeProperties=function(n){if(this.showTripGroupSize=n.MinimumGroupCount||n.MaximumGroupCount?!0:!1,this.showTripGroupSize)if(n.MinimumGroupCount&&n.MaximumGroupCount){var t=n.MinimumGroupCount==n.MaximumGroupCount?n.MinimumGroupCount:n.MinimumGroupCount+" to "+n.MaximumGroupCount;this.tripGroupSizeText="Applicants must apply for this event in groups of "+t}else this.tripGroupSizeText=n.MinimumGroupCount?"Applicants must apply for this event in groups of "+n.MinimumGroupCount+" or more":"Applicants must apply for this event in groups of "+n.MaximumGroupCount+" or less"},i.prototype.clickParticipantSupport=function(){var n=document.getElementById("participants");n.scrollIntoView()},i.prototype.getTripTypeName=function(n){return console.log(n),this.$forms.getTripTypeName(n)},i.$inject=["$stateParams","PublicService","FiltersService","FormsHelperService","$window"],i}(),r=function(){function t(){this.controller=i;this.templateUrl=n.shared.util.TemplateUtil.getTemplateUrl(n.public.trips.configuration.$moduleFolder+"components/trip.html")}return t}();angular.module(n.public.trips.configuration.$moduleName).component("trip",new r)})(i=t.components||(t.components={}))})(i=t.trips||(t.trips={}))})(t=n.public||(n.public={}))}(app||(app={})),function(n){var t;(function(t){var i;(function(t){var i;(function(){var i=function(){function n(){this.showErrors=!1;this.expMonth="";this.expYear=""}return n}(),t;(function(n){n.CC="1";n.ACH="3"})(t||(t={}));var r=function(){function n(){this.trip=!1;this.donationInfo=!1;this.tenant=!1;this.saving=!1;this.participants=!1}return n.prototype.isLoading=function(){return this.trip||this.tenant},n}(),u=function(){function u(n,t,u,f,e,o,s,h){this.$stateParams=n;this.$state=t;this.angularLoad=u;this.$window=f;this.$timeout=e;this.$public=o;this.$account=s;this.$formsHelper=h;this.loading=new r;this.form=new i;this.showConfirmation=!1;this.donorWillCoverFee=!1;this.v2saving=!1;this.showCaptcha=!1;this.captchaInit=!1;this.totalFailures=0}return u.prototype.$onInit=function(){this.tripID=this.$stateParams.tripID;this.tripUrl=this.$stateParams.tripUrl;this.invoiceCode=this.$stateParams.invoiceCode;this.participantID=this.$stateParams.participantID;this.isMultipleDonation=this.$state.current&&this.$state.current.name=="tripDonateMultipleParticipant";this.loadTrip();this.loadCountries();var n=new Date;this.form.minExpirationValue=n.getFullYear()*100+(n.getMonth()+1)},u.prototype.loadScript=function(n,t,i){setTimeout(function(){var r=document.createElement("script"),u=document.getElementsByTagName("script")[0];n&&n.length>0&&(r.src=n);t&&t.length>0&&(r.id=t);i?document.body.appendChild(r):u.parentNode.insertBefore(r,u)},100)},u.prototype.loadTenant=function(){this.loading.tenant=!0;var n=this;this.$account.getTenant().then(function(t){n.tenant=t;n.populateCountryForm();n.tenant.vision2Settings.usesV2&&n.setupVision2();n.tenant.realmSettings.usesRealmGiving&&n.setupRealm()}).finally(function(){n.loading.tenant=!1})},u.prototype.setupVanco=function(){var n=this;this.$timeout(function(){n.setupVancoPaymentMethod()},100)},u.prototype.setupVancoPaymentMethod=function(){var n=this;n.vanco||(n.vanco=Hexea(n.donationInfo.ConnectionInfo.pcct));switch(this.form.paymentType){case"3":this.vancoPaymentMethodACH||(this.vancoPaymentMethodACH=this.vanco.paymentMethod("echeck"));break;case"1":if(n.vancoPaymentMethodCC)break;document.getElementById("card-number").innerHTML="";document.getElementById("card-exp").innerHTML="";document.getElementById("card-cvv").innerHTML="";this.$timeout(function(){var t={base:{color:"#32325d",fontFamily:'"Helvetica Neue", Helvetica, sans-serif',fontSmoothing:"antialiased",fontSize:"16px","::placeholder":{color:"#aab7c4"}},invalid:{color:"#fa755a",iconColor:"#fa755a"},maskCardNumber:!0};if(document.getElementById("card-number")){n.vancoPaymentMethodCC=n.vanco.paymentMethod("card");var i=n.vancoPaymentMethodCC.field("cardNumber",document.getElementById("card-number"),{style:t}),r=n.vancoPaymentMethodCC.field("cardExpiration",document.getElementById("card-exp"),{style:t}),u=n.vancoPaymentMethodCC.field("cardVerificationValue",document.getElementById("card-cvv"),{style:t});[i,r,u].forEach(function(n){n.on("change",function(n){var t=document.getElementById("card-errors");t.textContent=n.error?n.error.message:""})})}},100)}},u.prototype.setupCaptcha=function(){var n,t,i;this.totalFailures>1&&!this.captchaInit&&this.donationInfo.reCaptchaKey&&this.donationInfo.reCaptchaKey.length>0&&(n=this,this.loadScript("https://www.google.com/recaptcha/api.js?render=explicit",undefined,!1),t=0,i=setInterval(function(){console.log("finding grecaptch");grecaptcha?(clearInterval(i),grecaptcha.render("goog-captcha",{sitekey:n.donationInfo.reCaptchaKey}),n.captchaInit=!0,n.showCaptcha=!0):t+=1;t>=60&&(console.log("failed to find grecaptcha"),clearInterval(i))},150))},u.prototype.setupVision2=function(){this.loadScript(this.tenant.vision2Settings.v2ModuleUrl+"/script/APIScript?includeDemoCss=true",undefined,!1);var t=0,n=this,r=setInterval(function(){n.$window.v2stools?(clearInterval(r),n.$window.v2stools.Radio("CheckoutComplete",function(t){console.log("FOCUSMISSIONS: We caught the complete checkout event",t);n.$timeout(function(){n.donationInfo=null;n.loadTripDonationInfo(!1);n.showConfirmation=!0;n.form=new i},100)}),n.$window.v2stools.Radio("CheckoutInitiated",function(t){console.log("FOCUSMISSIONS: we caught the checkout event",t);n.$timeout(function(){},100)})):t+=1;t>=60&&(console.log("failed to find tools after 60 attempts"),clearInterval(r))},150)},u.prototype.setupRealm=function(){this.loadScript(this.tenant.realmSettings.realmGivingUrl+"?v="+Date.now(),"r-embed-script",!0);var n=this;n.$window.addEventListener("message",function(t){t.data.type=="payment-processed"&&n.$timeout(function(){n.loading.saving=!0;window.location.href="/realm/payment?sr="+t.data.sourceId+"&giftId="+t.data.giftId},100)},!1)},u.prototype.loadTrip=function(){var n=this;this.loading.trip=!0;this.$public.getPublicTrip(this.tripID).then(function(t){n.trip=t;n.loading.trip=!1;console.log(t);n.isMultipleDonation&&n.loadParticipants();n.loadTripDonationInfo(!0);n.loadTenant()}).catch(function(){})},u.prototype.loadParticipants=function(){var n=this;this.$public.getResponsibleParticipants(this.tripID).then(function(t){n.participants=t;n.participants.forEach(function(n){return n.amount=null});n.filteredParticipants=n.participants})},u.prototype.loadTripDonationInfo=function(i){var r=this;this.loading.donationInfo=!0;this.$public.getPublicTripDonationInfo(this.tripID,this.participantID,this.invoiceCode,this.isMultipleDonation).then(function(u){if(u.Invoice&&!r.invoiceCode){r.$state.go("tripInvoiceDonate",{tripID:r.tripID,invoiceCode:u.Invoice.shortUrl});return}if(r.donationInfo=u,r.totalFailures=u.totalfailures,r.setupCaptcha(),grecaptcha&&grecaptcha.reset(),i){(u.UsesACH||u.UsesCC)&&(u.UsesCC?r.form.paymentType=t.CC:u.UsesACH&&(r.form.paymentType=t.ACH));switch(r.donationInfo.PaymentProcessor){case n.shared.enums.PaymentProcessor.Tithely:r.setupTithely();break;case n.shared.enums.PaymentProcessor.SimpleDonation:r.setupSimpleDonation();break;case n.shared.enums.PaymentProcessor.Stripe:r.setupStripe();break;case n.shared.enums.PaymentProcessor.Vanco:r.setupVanco();break;case n.shared.enums.PaymentProcessor.RealmGiving:r.setupRealm()}}r.fundingPercentage=r.getFundingPercentage(u);r.loading.donationInfo=!1}).catch(function(n){console.log(n)})},u.prototype.setupTithely=function(){var t=this,n;this.tithely=new Tithely(this.donationInfo.ConnectionInfo.publicKey);n={base:{color:"#32325d",fontFamily:'"Helvetica Neue", Helvetica, sans-serif',fontSmoothing:"antialiased",fontSize:"16px","::placeholder":{color:"#aab7c4"}},invalid:{color:"#fa755a",iconColor:"#fa755a"}};this.$timeout(function(){t.tithely.createCardEntry("#card-entry-form",n)},0)},u.prototype.setupStripe=function(){var t={base:{color:"#32325d",fontFamily:'"Helvetica Neue", Helvetica, sans-serif',fontSmoothing:"antialiased",fontSize:"16px","::placeholder":{color:"#aab7c4"}},invalid:{color:"#fa755a",iconColor:"#fa755a"}},n;this.stripe=new Stripe(this.donationInfo.ConnectionInfo.publicKey,{stripeAccount:this.donationInfo.ConnectionInfo.accountId});n=this;this.$timeout(function(){var i=n.stripe.elements();n.stripeCard=i.create("card",{style:t});n.stripeCard.mount("#card-entry-form");n.stripeCard.addEventListener("change",function(){var n=document.getElementById("card-errors")})},0)},u.prototype.setupSimpleDonation=function(){var t={base:{color:"#32325d",fontFamily:'"Helvetica Neue", Helvetica, sans-serif',fontSmoothing:"antialiased",fontSize:"16px","::placeholder":{color:"#aab7c4"}},invalid:{color:"#fa755a",iconColor:"#fa755a"}},n;this.stripe=new Stripe(this.donationInfo.ConnectionInfo.publicKey);n=this;this.$timeout(function(){var i=n.stripe.elements();n.stripeCard=i.create("card",{style:t});n.stripeCard.mount("#card-entry-form");n.stripeCard.addEventListener("change",function(){var n=document.getElementById("card-errors")})},0)},u.prototype.loadCountries=function(){var n=this;this.$formsHelper.getCountries(!0).then(function(t){n.countries=t;n.populateCountryForm()})},u.prototype.createV2Json=function(){var t=this.totalDonationWithFee(),n={externalKey:this.donationInfo.SourceReference,externalSystem:"FocusMissions",items:[{fundId:Number(this.trip.V2DonationFundID),charitable:!0,fixedAmount:!1,amount:Number(t)}]};return console.log(n),n},u.prototype.populateCountryForm=function(){var n,t;if(this.countries&&this.tenant)for(n=0;n<this.countries.length;n++)if(t=this.countries[n],t.Code==this.tenant.defaultCountryCode){this.form.country=t;break}},u.prototype.getDuration=function(n,t){var r=moment(n,"YYYY/MM/DD"),i=moment(t,"YYYY/MM/DD"),u=r.format("MMM D - ");return u+(r.month()===i.month()?i.format("D"):i.format("MMM D"))},u.prototype.getDate=function(n){return n?moment(n,"YYYY/MM/DD").format("MMM D, YYYY"):"-"},u.prototype.toMoney=function(n){return n?"$"+n.toLocaleString():null},u.prototype.getYears=function(){for(var t=[],n=(new Date).getFullYear();n<(new Date).getFullYear()+10;n++)t.push(n);return t},u.prototype.setPaymentAmountType=function(n){this.actionInProgress()||(this.form.paymentAmountType=n,this.tenant.vision2Settings.usesV2&&(this.$window.v2sfocus=this.createV2Json()))},u.prototype.setPaymentType=function(t){this.actionInProgress()||(this.form.paymentType=t,this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.Vanco&&this.setupVanco())},u.prototype.toggleDonateAnonymous=function(){this.actionInProgress()||(this.form.donateAnonymous=this.form.donateAnonymous?!1:!0)},u.prototype.toggleDonateAnonymousAmount=function(){this.actionInProgress()||(this.form.donateAnonymousAmount=this.form.donateAnonymousAmount?!1:!0)},u.prototype.toggleDonorCoversFee=function(){this.donorWillCoverFee=!this.donorWillCoverFee;this.$window.v2sfocus=this.createV2Json()},u.prototype.totalDonationWithFee=function(){var n=0;return n=this.isMultipleDonation?this.getMultipleDonationAmount():this.getDonationAmount(),this.donorWillCoverFee&&n>0&&(n=n+this.getDonationFee()),n.toFixed(2)},u.prototype.ccInformationRequired=function(){return this.form.paymentType==t.CC},u.prototype.achInformationRequired=function(){return this.form.paymentType==t.ACH},u.prototype.ccExpirationChange=function(){if(!this.form.expYear||!this.form.expYear){this.form.expirationValue=this.form.minExpirationValue;return}this.form.expirationValue=Number(this.form.expYear)*100+Number(this.form.expMonth)},u.prototype.actionInProgress=function(){return this.loading.saving},u.prototype.getDonationAmount=function(){var n,t;return this.form.paymentAmountType!=999999&&this.trip.DonationSuggestions&&this.trip.DonationSuggestions.length!=0?Number(this.form.paymentAmountType):(n=this.form.customPaymentAmount,!n)?0:(n=n.replace(/\,/g,""),t=Number(this.form.customPaymentAmount.replace(/\,/g,"")),isNaN(t))?0:t},u.prototype.getMultipleDonationAmount=function(){return this.participants&&this.participants.filter(function(n){return n.amount!=0}).length>0?this.participants.filter(function(n){return n.amount!=0}).reduce(function(n,t){return n+t.amount},0):0},u.prototype.getDonationFee=function(){var n=0,t=this.getDonationAmount();return this.donorWillCoverFee&&t>0&&(n=t*(this.trip.DonorCoverPercent/100)),parseFloat(n.toFixed(2))},u.prototype.submitDonation=function(){var r,i,u,f,e;if(this.amountTooBig()||this.amountTooSmall()||this.amountNegative())return this.errors=[],this.errors.push("Amount is not valid."),!1;if(this.showCaptcha&&(r=grecaptcha.getResponse(),r.length==0))return this.errors=[],this.errors.push("please verify you are human!"),!1;(i=this,this.loading.saving)||(this.loading.saving=!0,this.errors=[],this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.Tithely?this.form.paymentType==t.CC?this.tithely.createCardToken(function(n){n.error?i.$timeout(function(){i.errors=[];i.errors.push(n.error.message);i.loading.saving=!1},0):i.doDonation(n.token.id)}):this.form.paymentType==t.ACH&&(u={routing_number:this.form.routing,account_number:this.form.account,name:this.form.firstName+" "+this.form.lastName,account_holder_type:"individual"},this.tithely.createBankToken(u,function(n){n.error?(i.errors=[],i.errors.push(n.error),i.loading.saving=!1,i.$timeout(function(){i.errors=[];i.errors.push(n.error.message);i.loading.saving=!1},0)):i.doDonation(n.token.id)})):this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.Stripe||this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.SimpleDonation?this.form.paymentType==t.CC?this.stripe.createToken(this.stripeCard).then(function(n){n.error?i.$timeout(function(){i.errors=[];i.errors.push(n.error.message);i.loading.saving=!1},0):i.doDonation(n.token.id)}):this.form.paymentType==t.ACH&&(f=this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.Stripe,e={country:this.form.country.Code,currency:f?this.donationInfo.ConnectionInfo.currenyCode:"USD",routing_number:this.form.routing,account_number:this.form.account,account_holder_name:this.form.firstName+" "+this.form.lastName,account_holder_type:"individual"},this.stripe.createToken("bank_account",e).then(function(n){n.error?(i.errors=[],i.errors.push(n.error),i.loading.saving=!1,i.$timeout(function(){i.errors=[];i.errors.push(n.error.message);i.loading.saving=!1},0)):i.doDonation(n.token.id)})):this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.Vanco?this.form.paymentType==t.CC?this.vanco.tokenize(this.vancoPaymentMethodCC,{addressLine1:this.form.line1,nameOnCard:this.form.firstName+" "+this.form.lastName,postalCode:this.form.zip}).then(function(n){if(n.error){i.$public.logVancoRequest(i.tripID,{paymentType:"cc",paymentMethodCC:i.vancoPaymentMethodCC,addressLine1:i.form.line1,nameOnCard:i.form.firstName+" "+i.form.lastName,postalCode:i.form.zip,error:n});i.$timeout(function(){i.errors=[];i.errors.push(n.error.message);i.loading.saving=!1},50);return}if(!n.paymentMethod||!n.paymentMethod.paymentMethodToken){i.$timeout(function(){i.errors=[];i.errors.push("Unable to locate payment token");i.loading.saving=!1},50);return}i.doDonation(n.paymentMethod.paymentMethodToken)}).catch(function(n){i.$public.logVancoRequest(i.tripID,{paymentType:"cc",paymentMethodCC:i.vancoPaymentMethodCC,addressLine1:i.form.line1,nameOnCard:i.form.firstName+" "+i.form.lastName,postalCode:i.form.zip,error:n});console.log(n);i.loading.saving=!1;i.$timeout(function(){i.errors=[];i.errors.push("An error occurred while saving");i.loading.saving=!1},50)}):this.vanco.tokenize(i.vancoPaymentMethodACH,{routingNumber:i.form.routing,accountNumber:i.form.account,firstName:i.form.firstName,lastName:i.form.lastName,address:{addressLine1:i.form.line1,city:i.form.city,state:i.form.state?i.form.state.Code:i.form.stateCode,postalCode:i.form.zip},accountType:"Checking"}).then(function(n){i.$public.logVancoRequest(i.tripID,{paymentType:"echeck",routingNumber:i.form.routing,accountNumber:i.form.account,firstName:i.form.firstName,lastName:i.form.lastName,address:{addressLine1:i.form.line1,city:i.form.city,state:i.form.state?i.form.state.Code:i.form.stateCode,postalCode:i.form.zip},error:n});n.error?(console.error(n),i.loading.saving=!1,i.$timeout(function(){i.errors=[];i.errors.push(n.error.message);i.loading.saving=!1},50)):i.doDonation(n.paymentMethod.paymentMethodToken)}).catch(function(n){console.log(n);i.$public.logVancoRequest(i.tripID,{isError:!0,paymentType:"echeck",routingNumber:i.form.routing,accountNumber:i.form.account,firstName:i.form.firstName,lastName:i.form.lastName,address:{addressLine1:i.form.line1,city:i.form.city,state:i.form.state?i.form.state.Code:i.form.stateCode,postalCode:i.form.zip},error:n});i.$timeout(function(){i.errors=[];i.errors.push("An error occurred while saving");i.loading.saving=!1},50)}):this.tenant.vision2Settings.usesV2?(this.$window.v2sfocus=this.createV2Json(),this.doDonation(null)):this.doDonation(null))},u.prototype.doDonation=function(t){var u=this,r;this.loading.saving=!0;this.errors=null;r=new n.shared.services.publicArea.MakeDonationRequest;r.DonationAmount=this.getDonationAmount();this.isMultipleDonation&&(r.DonationAmount=this.getMultipleDonationAmount(),r.participants=this.participants);r.FeeAmount=this.getDonationFee();r.FirstName=this.form.firstName;r.LastName=this.form.lastName;r.Address1=this.form.line1;r.Address2=this.form.line2;r.CountryCode=this.form.country.Code;r.CountryID=this.form.country.CountryID;r.City=this.form.city;r.StateCode=this.form.state?this.form.state.Code:this.form.stateCode;r.Zipcode=this.form.zip;r.EmailAddress=this.form.emailAddress;r.PhoneNumber=this.form.phoneNumber;r.PhoneType=this.form.phoneType;r.PaymentType=Number(this.form.paymentType);r.ExternalToken=t;this.showCaptcha&&grecaptcha&&(r.ReCaptchaValue=grecaptcha.getResponse());switch(this.form.paymentType){case"1":t&&t.length!=0||(r.NameOnCard=this.form.ccName,r.CCNumber=this.form.ccNum,r.CVV=this.form.cvv,r.ExpirationMonth=parseInt(this.form.expMonth),r.ExpirationYear=parseInt(this.form.expYear));break;case"3":r.NameOfBank=this.form.bankName;r.RoutingNumber=this.form.routing;r.AccountNumber=this.form.account}r.AnonymousDonation=this.form.donateAnonymous;r.AnonymousAmount=this.form.donateAnonymousAmount;r.SpecialInstructions=this.form.specialInstructions;this.$public.makeDonation(this.tripID,this.participantID,this.invoiceCode,r).then(function(t){if(t.success)u.loadTripDonationInfo(!1),u.showConfirmation=!0,u.form=new i,u.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.Tithely&&u.tithely.clearCardEntry(),u.donationInfo=null;else{u.errors=[];for(var r in t.errors)t.errors.hasOwnProperty(r)&&u.errors.push(t.errors[r]);u.totalFailures++;u.setupCaptcha();grecaptcha&&grecaptcha.reset()}u.loading.saving=!1}).catch(function(){u.loading.saving=!1;u.totalFailures++;u.setupCaptcha();grecaptcha&&grecaptcha.reset()})},u.prototype.formatAmount=function(n){return this.$formsHelper.formatCurrency(n,2)},u.prototype.getRemainingBalance=function(){return this.formatAmount(this.donationInfo.Invoice.invoiceTotal-this.donationInfo.Invoice.currentPaid)},u.prototype.showDonationGoal=function(){return this.trip.ShowDonationGoal&&this.fundingPercentage<100&&this.trip.FundRaisingEnabled},u.prototype.getFundingPercentage=function(n){var t;return n?n.Invoice?n.Invoice.invoiceTotal==0?100:(t=n.Invoice.currentPaid/n.Invoice.invoiceTotal*100,t=Math.round(t),t==0&&n.Invoice.invoiceTotal>0)?1:t==100&&n.Invoice.currentPaid<n.Invoice.invoiceTotal?99:t>100?100:t:(t=n.DonatedAmount/n.Goal*100,t=Math.round(t),t==0&&n.DonatedAmount>0)?1:t==100&&n.DonatedAmount<n.Goal?99:t>100?100:t:0},u.prototype.formatDescription=function(n){return n?n.replace(/\r?\n/g,"<br />"):n},u.prototype.createDataOpts=function(){return this.tenant&&this.tenant.vision2Settings.usesV2?"{ 'hideAddressFields': "+!this.tenant.vision2Settings.v2ShowAddress+"}":null},u.prototype.showStripeCC=function(){return!this.donationInfo||!this.donationInfo.PaymentProcessor?!1:this.donationInfo&&this.donationInfo.PaymentProcessor&&this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.Tithely||this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.Stripe||this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.SimpleDonation},u.prototype.showVancoCC=function(){return this.donationInfo&&this.donationInfo.PaymentProcessor&&this.donationInfo.PaymentProcessor==n.shared.enums.PaymentProcessor.Vanco},u.prototype.getMaxDonationAmount=function(){return this.donationInfo.Invoice?(this.donationInfo.Invoice.invoiceTotal-this.donationInfo.Invoice.currentPaid).toString():"99999999"},u.prototype.amountTooBig=function(){if(this.isMultipleDonation){var n=this.participants.filter(function(n){return n.amount!=0}).reduce(function(n,t){return n+t.amount},0);return parseFloat(n)>parseFloat(this.getMaxDonationAmount())}return parseFloat(this.form.customPaymentAmount)>parseFloat(this.getMaxDonationAmount())},u.prototype.amountTooSmall=function(){if(this.isMultipleDonation){var n=this.participants.filter(function(n){return n.amount!=0}).reduce(function(n,t){return n+t.amount},0);return parseFloat(n)<2}return parseFloat(this.form.customPaymentAmount)<2},u.prototype.amountNegative=function(){return this.isMultipleDonation?this.participants.some(function(n){return parseFloat(n.amount)<0}):parseFloat(this.form.customPaymentAmount)<0},u.prototype.shouldShowPaymentForm=function(){return this.donationInfo.Invoice?!this.showConfirmation&&this.fundingPercentage<100:this.trip.FundRaisingEnabled&&this.trip.FundRaisingEnabled&&!this.showConfirmation&&(!this.donationInfo.PersonID||this.fundingPercentage<100||this.trip.TeamMemberContinuedFundingEnabled)},u.$inject=["$stateParams","$state","angularLoad","$window","$timeout","PublicService","AccountService","FormsHelperService"],u}(),f=function(){function t(){this.controller=u;this.templateUrl=n.shared.util.TemplateUtil.getTemplateUrl(n.public.trips.configuration.$moduleFolder+"components/tripDonate.html")}return t}();angular.module(n.public.trips.configuration.$moduleName).component("tripDonate",new f)})(i=t.components||(t.components={}))})(i=t.trips||(t.trips={}))})(t=n.public||(n.public={}))}(app||(app={})),function(n){var t;(function(t){var i;(function(t){var i;(function(){var t=function(){function n(){this.trip=!1;this.donationInfo=!1;this.saving=!1}return n.prototype.isLoading=function(){return this.trip},n}(),i=function(){function n(n,i,r){this.$stateParams=n;this.$state=i;this.$public=r;this.loading=new t}return n.prototype.$onInit=function(){console.log("TripDonateController.$onInit()");this.tripID=this.$stateParams.tripID;this.tripUrl=this.$stateParams.tripUrl;this.participantID=this.$stateParams.participantID;this.isMultipleDonation=this.$state.current&&this.$state.current.name=="tripDonateMultipleParticipant";this.invoiceCode=this.$stateParams.invoiceCode;this.loadTrip();this.loadTripDonationInfo();var n=new Date},n.prototype.loadTrip=function(){var n=this;this.loading.trip=!0;this.$public.getPublicTrip(this.tripID).then(function(t){n.trip=t;n.loading.trip=!1}).catch(function(){})},n.prototype.loadTripDonationInfo=function(){var n=this;this.loading.donationInfo=!0;this.$public.getPublicTripDonationInfo(this.tripID,this.participantID,this.invoiceCode,this.isMultipleDonation).then(function(t){n.donationInfo=t;n.fundingPercentage=n.getFundingPercentage(t);n.loading.donationInfo=!1}).catch(function(n){console.log(n)})},n.prototype.getFundingPercentage=function(n){if(!n)return 0;var t=n.DonatedAmount/n.Goal*100;return(t=Math.round(t),t==0&&n.DonatedAmount>0)?1:t==100&&n.DonatedAmount<n.Goal?99:t},n.prototype.getDuration=function(n,t){var r=moment(n,"YYYY/MM/DD"),i=moment(t,"YYYY/MM/DD"),u=r.format("MMM D - ");return u+(r.month()===i.month()?i.format("D"):i.format("MMM D"))},n.prototype.getDate=function(n){return n?moment(n,"YYYY/MM/DD").format("MMM D, YYYY"):"-"},n.prototype.toMoney=function(n){return n?"$"+n.toLocaleString():null},n.prototype.formatDescription=function(n){return n.replace(/\r?\n/g,"<br />")},n.prototype.actionInProgress=function(){return this.loading.saving},n.prototype.showDonationGoal=function(){return this.trip.ShowDonationGoal&&this.fundingPercentage<100},n.$inject=["$stateParams","$state","PublicService"],n}(),r=function(){function t(){this.controller=i;this.templateUrl=n.shared.util.TemplateUtil.getTemplateUrl(n.public.trips.configuration.$moduleFolder+"components/tripDonateConfirmation.html")}return t}();angular.module(n.public.trips.configuration.$moduleName).component("tripDonateConfirmation",new r)})(i=t.components||(t.components={}))})(i=t.trips||(t.trips={}))})(t=n.public||(n.public={}))}(app||(app={})),function(n){var t;(function(t){var i;(function(t){var i;(function(){var t=function(){function n(){this.launchPage=!1;this.filters=!1;this.trips=!1}return n.prototype.isLoading=function(){return this.filters||this.trips},n}(),i=function(){function i(i,r,u,f,e,o,s){this.$state=i;this.$forms=r;this.$trips=u;this.$filters=f;this.$public=e;this.$location=o;this.$window=s;this.loading=new t;this.selectedFilters=[];this.filterTypeIDs=[];this.filterIDs=[];this.viewStyle="grid-view";this.showAllFilters=!1;this.tripTypes=[];this.showTripTypes=!1;this.TripType=n.shared.enums.trips.TripType}return i.prototype.$onInit=function(){this.loadCurrentPerson();this.loadSessionSettings();this.loadLaunchPageSettings();this.loadFilters();this.loadTrips();this.redirectOldLink();this.$state.current.data&&this.$state.current.data.tripTypes&&(this.tripTypes=this.$state.current.data.tripTypes,this.saveSessionSettings(),this.$state.go("list"))},i.prototype.redirectOldLink=function(){if(this.$window.location.hash.length>1){var n=decodeURIComponent(this.$window.location.hash.slice(1,this.$window.location.hash.length));n[0]!=="/"&&(n="/"+n);this.$location.url("/!"+decodeURIComponent(n+this.$window.location.search))}},i.prototype.loadLaunchPageSettings=function(){var n=this;this.loading.launchPage=!0;this.$public.getLaunchPageSettings().then(function(t){n.launchPageSettings=t;n.loading.launchPage=!1})},i.prototype.loadFilters=function(){var t=this;this.loading.filters=!0;this.$filters.getFilters(!1,n.shared.enums.FilterTypeTarget.Events).then(function(n){t.allFilterTypes=n;t.sortFilters();t.loading.filters=!1})},i.prototype.loadTrips=function(){var n=this;this.loading.trips=!0;this.$public.getPublicTrips().then(function(t){n.trips=t;n.sortFilters();n.loading.trips=!1})},i.prototype.loadCurrentPerson=function(){var n=this;this.$public.getMe().then(function(t){n.currentPerson=t})},i.prototype.sortFilters=function(){var i;if(this.allFilterTypes&&this.trips){var n=[],t=[],r=this;this.trips.forEach(function(i){var u=r.showTripBasedOnType(i);u&&(i.FilterTypeIDs.forEach(function(t){n.indexOf(t)>=0||n.push(t)}),i.FilterIDs.forEach(function(n){t.indexOf(n)>=0||t.push(n)}))});i=JSON.parse(JSON.stringify(this.allFilterTypes));this.filterTypes=i.filter(function(i){return(i.Filters=i.Filters.filter(function(n){return t.indexOf(n.FilterID)>=0}),i.Filters.length==0)?!1:n.indexOf(i.FilterTypeID)>=0});this.recalculateFilters()}},i.prototype.loadSessionSettings=function(){var r=new Date((new Date).getTime()-18e5),n=sessionStorage.getItem("PublicMissionTrips.expires"),t=sessionStorage.getItem("PublicMissionTrips.version");if(!n||!t){this.clearSessionSettings();return}if(n=JSON.parse(n),new Date(n)<r||t!=i.SessionSettingsVerson){this.clearSessionSettings();return}sessionStorage.setItem("PublicMissionTrips.expires",JSON.stringify(new Date));this.selectedFilters=JSON.parse(sessionStorage.getItem("PublicMissionTrips.selectedFilters_v2"));this.selectedFilters||(this.selectedFilters=[]);this.recalculateFilters();this.showAllFilters=JSON.parse(sessionStorage.getItem("PublicMissionTrips.showAllFilters"));this.viewStyle=sessionStorage.getItem("PublicMissionTrips.viewStyle");this.tripTypes=JSON.parse(sessionStorage.getItem("PublicMissionTrips.tripTypes"));this.tripTypes||(this.tripTypes=[])},i.prototype.saveSessionSettings=function(){sessionStorage.setItem("PublicMissionTrips.tripTypes",JSON.stringify(this.tripTypes));sessionStorage.setItem("PublicMissionTrips.selectedFilters_v2",JSON.stringify(this.selectedFilters));sessionStorage.setItem("PublicMissionTrips.showAllFilters",JSON.stringify(this.showAllFilters));sessionStorage.setItem("PublicMissionTrips.viewStyle",this.viewStyle);sessionStorage.setItem("PublicMissionTrips.version",i.SessionSettingsVerson);sessionStorage.setItem("PublicMissionTrips.expires",JSON.stringify(new Date));this.recalculateFilters()},i.prototype.clearSessionSettings=function(){sessionStorage.removeItem("PublicMissionTrips.tripTypes");sessionStorage.removeItem("PublicMissionTrips.selectedFilters_v2");sessionStorage.removeItem("PublicMissionTrips.showAllFilters");sessionStorage.removeItem("PublicMissionTrips.viewStyle");sessionStorage.removeItem("PublicMissionTrips.version");sessionStorage.removeItem("PublicMissionTrips.expires");this.recalculateFilters()},i.prototype.clickFilterType=function(n){this.filterTypes.forEach(function(t){if(t.FilterTypeID!=n){t.ShowFilters=!1;return}t.ShowFilters=t.ShowFilters?!1:!0})},i.prototype.hideFilterType=function(n){this.filterTypes.forEach(function(t){t.FilterTypeID==n&&(t.ShowFilters=!1)})},i.prototype.removeSelectedFilterType=function(n){for(var t=0;t<this.selectedFilters.length;t++)this.selectedFilters[t].filterTypeID==n&&this.selectedFilters.splice(t,1)},i.prototype.findSelectedFilterType=function(n){var t=this.selectedFilters.filter(function(t){return t.filterTypeID==n});return t.length>0?t[0]:null},i.prototype.toggleFilter=function(n,t){var i=this.findSelectedFilterType(n),r;return i?(r=i.filterIDs.indexOf(t),r>=0)?(i.filterIDs.splice(r,1),i.filterIDs.length<1&&this.removeSelectedFilterType(i.filterTypeID),this.saveSessionSettings(),!1):(i.filterIDs.push(t),this.saveSessionSettings(),!0):(this.selectedFilters.push({filterTypeID:n,filterIDs:[t]}),this.saveSessionSettings(),!0)},i.prototype.clickShowAllFilters=function(){this.showAllFilters=!0;this.saveSessionSettings()},i.prototype.clickViewStyle=function(n){this.viewStyle=n;this.saveSessionSettings()},i.prototype.hasFiltersChecked=function(n){var t=this.findSelectedFilterType(n);return t?!0:!1},i.prototype.isFilterChecked=function(n,t){var i=this.findSelectedFilterType(n);return i&&i.filterIDs.indexOf(t)>=0?!0:!1},i.prototype.recalculateFilters=function(){if(this.filterTypes){var n=this;this.filterTypeIDs=[];this.filterIDs=[];this.selectedFilters.forEach(function(t){var i=n.filterTypes.filter(function(n){return n.FilterTypeID==t.filterTypeID});i.length<1||(n.filterTypeIDs.push(t.filterTypeID),t.filterIDs.forEach(function(t){var r=i[0].Filters.filter(function(n){return n.FilterID==t});r.length<0||n.filterIDs.push(t)}))})}},i.prototype.showTripBasedOnType=function(n){return this.tripTypes.length>0&&this.tripTypes.indexOf(n.TripType)<0?!1:!0},i.prototype.showTrip=function(n){var t=this,u=this.showTripBasedOnType(n),i,r;return u?this.filterTypeIDs.length==0&&this.filterIDs.length==0?!0:(i=n.FilterTypeIDs.filter(function(n){return t.filterTypeIDs.indexOf(n)>=0}),i.length==0)?!1:(r=n.FilterIDs.filter(function(n){return t.filterIDs.indexOf(n)>=0}),r.length>0)?!0:!1:!1},i.prototype.getDate=function(n){return moment(n,"YYYY/MM/DD").format("MMM D, YYYY")},i.prototype.toMoney=function(n){return n?"$"+n.toLocaleString():null},i.prototype.getFilterTypes=function(n){return this.filterTypes?this.filterTypes.filter(function(t){return n.indexOf(t.FilterTypeID)>=0}):[]},i.prototype.getFilters=function(n,t){return n.Filters.filter(function(n){return t.indexOf(n.FilterID)>=0})},i.prototype.getTripTypeName=function(n){return this.$forms.getTripTypeName(n)},i.prototype.getTripTypeColor=function(n){return this.$forms.getTripTypeColor(n)},i.prototype.hideTripTypesDropdown=function(){this.showTripTypes=!1},i.prototype.toggleTripTypesDropdown=function(){this.showTripTypes=!this.showTripTypes},i.prototype.resetTripTypesFilter=function(){this.tripTypes=[];this.showTripTypes=!1;this.saveSessionSettings();this.sortFilters()},i.prototype.isTripTypeChecked=function(n){return this.tripTypes.indexOf(n)>=0},i.prototype.toggleTripType=function(n){if(!this.isTripTypeChecked(n)){this.tripTypes.length>=2?this.resetTripTypesFilter():this.tripTypes.push(n);this.saveSessionSettings();this.sortFilters();return}this.tripTypes=this.tripTypes.filter(function(t){return t!=n});this.saveSessionSettings();this.sortFilters()},i.prototype.getTripTypeTitle=function(){if(!this.tripTypes.length)return"All Types";var t=[];return this.isTripTypeChecked(n.shared.enums.trips.TripType.Trip)&&t.push("Trips"),this.isTripTypeChecked(n.shared.enums.trips.TripType.Camp)&&t.push("Camps"),this.isTripTypeChecked(n.shared.enums.trips.TripType.Event)&&t.push("Events"),t.length>1?t.join(" & "):t[0]},i.SessionSettingsVerson="v1.0",i.$inject=["$state","FormsHelperService","TripsService","FiltersService","PublicService","$location","$window"],i}(),r=function(){function t(){this.controller=i;this.templateUrl=n.shared.util.TemplateUtil.getTemplateUrl(n.public.trips.configuration.$moduleFolder+"components/trips.html")}return t}();angular.module(n.public.trips.configuration.$moduleName).component("trips",new r)})(i=t.components||(t.components={}))})(i=t.trips||(t.trips={}))})(t=n.public||(n.public={}))}(app||(app={}))