{"version":3,"sources":["post.min.js"],"names":["AlertService","data","templateId","_init","message","_showMessage","isSuccess","$","fancybox","close","$template","messageType","find","attr","hide","show","text","open","src","modal","messageTemplate","append","shared","AnalyticsService","window","dataLayer","console","error","push","ApiService","baseUrl","endpointName","endpointUrl","LanguageAbbr","SettingsService","langAbbr","Promise","resolutionFunc","rejectionFunc","axios","post","then","response","catch","errorMessage","code","file","fieldName","captchaToken","apiBaseUrl","formData","FormData","headers","PhrasesService","phrases","_data","i","length","phrase","T","V","title","UrlsService","url","param","split","queryString","params","URLSearchParams","has","delete","modifiedQueryString","toString","modifiedUrl","history","pushState","Vue","filter","amountInCents","numValue","parseInt","displayValue","toFixed","directive","bind","el","binding","vnode","value","maskOptions","translation","pattern","recursive","onChange","cep","setTimeout","dispatchEvent","CustomEvent","onInvalid","val","e","f","invalid","options","maskValue","reverse","$_mask","mask","unbind","remove","component","props","allocationDefaultPercent","Number","currentUserEmail","String","projectId","isUserAuthorized","Boolean","checkoutUrl","hasAuthorizedUserFullAccess","signInUrl","campaignUrl","product","identityBaseUrl","projects","campaignProject","activeTab","administrativeTip","email","fullname","marketingEmail","isAnonymous","checkedProjectId","state","currentStep","steps","id","allocationHintPhrase","getPhrase","legendTextPhrase","allocationTitlePhrase","emailTextPhrase","donateAnonymouslyPhrase","donateButtonTitlePhrase","backButton","youAreDonating","emailNotValid","countryDescriptionPhrase","onetimeGiveInternetButtonPhrase","donateOnetimeTitlePhrase","donateCryptoUrlPhrase","donateCryptoUrlTitlePhrase","sendingData","showGeneralErrorMessage","generalErrorMessage","campaign","showSignInButton","methods","getOneTimeDonationProducts","_this","getGiveInternetButtonTitle","html","formatAmount","totalAmount","replaceAmountStr","getDonatingAmountTitle","amount","replacedPhrase","replace","getCurrentStepIndex","stepId","index","map","indexOf","showStep","goNext","redirectToSignIn","queryParams","Id","PublicId","returnUrl","encodeURIComponent","location","href","goBack","resetGeneralErrorMessage","validateEmail","isRequired","isEmailValid","test","validateFullname","isValid","getPostData","paymentTerm","products","ProductId","ItemQuantity","Quantity","ItemAmount","Amount","ProjectId","AdministrativeTip","PaymentTerm","MarketingEmail","IsAnonymous","Products","campaignId","campaignPublicId","showErrorMessage","showbutton","getProgramDescription","projectTitle","IsGeneralFund","Title","CountryTitle","initSlider","allocationrange","$refs","noUiSlider","create","connect","start","step","range","on","values","handle","parseFloat","donate","_executeRecaptcha","_makeHttpDataPostRequest","result","success","publicId","createAnonymousUser","isFullNameValid","userAlreadyExist","succeeded","mounted","computed","totalDonationAmount","donationProductTotal","template","daysAffectedCount","countries","checkedCountryName","selectedCountry","selectedCountryLabel","defaultvalue","plus","minus","formatNumber","number","Math","round","isNumber","event","keyCode","which","preventDefault","checkCount","min","max","selectionTemplate","selection","fetch","ok","Error","status","json","label","selector","select2","maximumSelectionLength","multiple","placeholder","c","target","trigger","selectedValue","removeClass","blur","totalCostImpact","cost","peopleWithoutInternet","usersWithoutInternet","users_without_internet","population","pop","netUsers","net_users","isUserStatusActive","isProjectSelectedByUser","showAnyAmountOption","showUserInfoStep","productQuantity","showLaptopStundetsIcon","donateUrl","selectedMonthlyProducts","monthlyTabTitlePhrase","bundleTabTitlePhrase","bundleDescriptionPhrase","totalAmountMonthlyPhrase","totalAmountBundlePhrase","monthlyGiveInternetButtonPhrase","bundleGiveInternetButtonPhrase","anyAmountTextPhrase","anyAmountUrlTitlePhrase","donateMonthlyTitlePhrase","donateBundleTitlePhrase","specificCountryDescriptionPhrase","specificCountryUrlPhrase","selectProgramTitle","selectProgramButton","countryUrlPhrase","setNOfStudentsUrlTitle","onetimeTabTitlePhrase","donateTermsAndPrivacy","minAmountErrorMessagePhrase","monthlyCombinedProductHintPhrase","oneTimeCombinedProductHintPhrase","monthlyTabVisible","showMessage","messageClass","messageIconName","productTypes","monthly","onetime","combined","showAnyAmount","anyAmountProduct","p","Checked","AmountType","unCheckAllProductsExeptChecked","closeAnyAmountPopup","monthlyAnyAmountProduct","checkAtLeastOneMonthlyProduct","getMonthlyDonationProducts","setActiveTab","tab","hash","replaceState","getTotalDonationTitle","hideAnyAmountOption","forEach","scrollToTop","resetMessage","getSelectedProductsByActiveTab","checkedMonthlyProducts","combinedProduct","ProductType","filteredProducts","checkedOnetimeProducts","selectProgram","closeProgramPopUp","selectedProducts","project","getProgramUrlTitle","getTabByName","name","isHashValid","getActiveTabName","triggerElementClick","element","click","processUrlHash","windowLocationHash","substring","pathname","reload","onHashChangeEvent","addCombinedProductsToProducts","productsList","monthlyProducts","filterProducts","anyAmountMonthlyProduct","oneTimeProducts","anyAmountOneTimeProduct","combinedMonthlyProduct","createCombinedProduct","combinedOneTimeProduct","uncheckMultipleSelected","amountType","checkedProducts","productType","key","showAnyAmountError","checkQuantity","checkQuantityInput","selectedDonationProducts","donationProducts","scrollTo","top","behavior","resetOneTimeAnyAmount","amountPrefix","breakdownDataSettings","donationBreakdownData","formattedAmount","studentsReceives","stripeCalculatedFee","NPOCalculatedFee","amountAsInt","formatAmountAndCalculate","calculate","StripeFeePercent","NPOFeePercent","StripeFixedFee","parsedAmount","isNaN","checkProduct","$emit","checkAnyAmount","MinAmount","checkAnyAmountInput","getAmountErrorMessage","getProductHint","Hint","setOneTimeAnyAmountDefaultValue","productTotalAmount","messageClassName","getMessageClass","userInfo","userData","Name","surname","Surname","fullName","FullName","Email","passwordInfo","oldPassword","type","newPassword","repeatPassword","showUpdateProfileSpinner","showChangePasswordSpinner","userEmail","deleteImageButton","updateProfileTitle","anonymous","updateProfileButton","updatePasswordTitle","changePasswordButton","fieldRequired","passwordNotMatched","imageUpdatedSuccessMessage","imageDeletedSuccessMessage","passwordChangedSuccessMessage","profileinfoupdatedsuccessmessage","getFieldErrorClass","field","showHidePassword","clearAllValidation","resetPasswordInfo","validatePasswordInfo","passInfo","PasswordSetByUser","validateUserInfo","changePassword","showSuccess","showError","updateUserInfo","deleteImage","confirm","PhotoUrl","HasPhoto","uploadImage","files","reader","FileReader","onload","readAsDataURL","_makeHttpFilePostRequest","photoUrl","isUserActiveDonor","donationPayments","donationInfo","nextPayment","allProducts","showDonationInfo","showDonationBox","showDonationPayments","showLoadMoreButton","isAnyAmountPopupOpened","selectedProductAmountType","sendingUpdateAmountData","isDonationUpdatedFromCancelation","description","descriptionHint","donatingProjectDescription","changeCountryButton","monthlyAmountTitle","updateAmountButton","sponsoringproductdescription","noDonation","donationButton","donationBox","anyAmountText","anyAmountUrlTitle","allocationTitle","allocationTitleHint","specificCountryDescription","specificCountryUrlTitle","countryUrlTitle","date","loadMoreButton","donationProgram","button","donationProduct","activeDonationProductQuantity","loadMore","Show","openDonationBox","createSlider","openAnyAmountPopup","closeDonationBox","cloneArray","getSelectedProductAmountType","checkAtLeastOneProduct","uncheckAllCheckedProducts","checkAnyAmountProduct","showLoadButton","getSelectedProducts","Object","assign","openProgramPopUp","replaceSponsoringProductDescriptionPhrase","productTitle","getTotalAmountPhrase","formatedAmount","replacedPhraseHtml","spinnerHtml","getTotalDonationAmountPhrase","DonationId","DonationPublicId","IsDonationUpdatedFromCancelation","PhotoOnProfileUrl","updateAmount","changeCardUrl","renewCardSucceeded","hasUserActivePaymentMethod","paymentMethodInfo","bannerDonateUrl","showCardInfo","sendingCancelDonationData","renewCardSuccess","sendingDeletePaymentMethodData","paymentsTab","profileInfoTab","card","cardTitle","changecardbutton","cardChangedSuccessMessage","cardChangedErrorMessage","donationCancelPopUp","cancelButton","updateAmountDescription","afterDonationCanceledPopUp","subTitle","buttonUrl","paymentMethod","paymentMethodTitle","changePaymentMethodButton","canceldonationbutton","paymentMethodChangeSuccessMessage","paymentMethodChangeErrorMessage","openCancelDonationPopUp","floor","openPopUp","openAfterCancelDonationPopUp","openDeletePaymentMethodPopUp","popupId","changeCard","redirectUrl","closeAfterCancellingModal","removeQueryFromUrl","showRenewCardResultMessage","minAmount","profilePayments","cancelDonation","CaptchaToken","Gateway","GatewayService","deletePaymentMethod","PaymentMethodId","PaymentMethodPublicId","local","getIconUrl","icon","prototype","$settings","$analytics","$alert","vueAppContainers","document","querySelectorAll","call","vueAppContainer","svg4everybody","scroll","scrollTop","toggleClass","_trigger","_results","siblings","parent","stop","slideToggle","not","slideUp","_isIntro","parents","$trigger","currentTarget","is","$menu","lenght","breakpoint","matchMedia","destroyableSwiper","breakpointChecker","matches","undefined","item","destroy","enableSwiper","each","$elem","$paginationElem","Swiper","slidesPerView","spaceBetween","loop","pagination","clickable","breakpoints","addListener","widgetId","recaptchaId","latestPromise","renderWait","grecaptcha","render","sitekey","reCaptchaSiteKey","size","badge","theme","callback","token","resolve","reset","reject","resolveCallback","rejectCallback","execute","body","script","createElement","head","appendChild","anchorElem","getElementById","substr","scrollY","_stats","sendGaEvent","eventName","evetData","gtag","sendFbEvent","fbq","send"],"mappings":"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","sourcesContent":["class AlertService {\r\n\r\n constructor() {\r\n this.data = {\r\n templateId: \"alertTemplate\"\r\n }\r\n this._init();\r\n }\r\n\r\n showError(message) {\r\n this._showMessage(false, message);\r\n }\r\n\r\n showSuccess(message) {\r\n this._showMessage(true, message);\r\n }\r\n\r\n _showMessage(isSuccess, message) {\r\n $.fancybox.close();\r\n\r\n var $template = $(`#${this.data.templateId}`);\r\n\r\n var messageType = isSuccess ? \"success\" : \"error\";\r\n $template.find('.js-type').attr('class', `js-type custom-modal__message custom-modal__message--${messageType}`);\r\n\r\n $template.find('.js-icon').hide();\r\n $template.find(`.js-icon-${messageType}`).show();\r\n\r\n $template.find('.js-message').text(message);\r\n\r\n $.fancybox.open({ src: `#${this.data.templateId}`, modal: true });\r\n }\r\n\r\n _init() {\r\n const messageTemplate = `
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

[MESSAGE]

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
`;\r\n\r\n $('body').append(messageTemplate);\r\n }\r\n}\r\n\r\nAlertService.shared = new AlertService();\r\n\r\n\nclass AnalyticsService {\r\n\r\n constructor() {\r\n\r\n }\r\n\r\n pushToTagManager(data) {\r\n if (!window.dataLayer) {\r\n console.error(\"dataLayer is not defined\");\r\n return;\r\n }\r\n\r\n dataLayer.push(data)\r\n }\r\n}\r\n\r\nAnalyticsService.shared = new AnalyticsService();\nclass ApiService {\r\n constructor() {\r\n }\r\n\r\n\r\n _makeHttpDataPostRequest(baseUrl, endpointName, data) {\r\n var endpointUrl = baseUrl + endpointName;\r\n data.LanguageAbbr = SettingsService.shared.data.langAbbr;\r\n return new Promise((resolutionFunc, rejectionFunc) => {\r\n axios\r\n .post(endpointUrl, data)\r\n .then((response) => {\r\n resolutionFunc(response.data)\r\n })\r\n .catch((error) => {\r\n console.error(error);\r\n var errorMessage = \"apiresultcode_generalerror\";\r\n rejectionFunc({\r\n code: -1,\r\n message: errorMessage,\r\n data: error.response.data\r\n });\r\n });\r\n });\r\n }\r\n _makeHttpFilePostRequest(endpointName, file, fieldName, captchaToken) {\r\n \r\n var endpointUrl = SettingsService.shared.data.apiBaseUrl + endpointName;\r\n var formData = new FormData();\r\n formData.append(\"file\", file);\r\n formData.append(\"fieldName\", fieldName);\r\n formData.append(\"captchaToken\", captchaToken);\r\n \r\n return new Promise((resolutionFunc, rejectionFunc) => {\r\n axios\r\n .post(endpointUrl, formData, {\r\n headers: {\r\n 'Content-Type': 'multipart/form-data'\r\n }\r\n })\r\n .then((response) => {\r\n resolutionFunc(response.data)\r\n })\r\n .catch((error) => {\r\n console.error(error);\r\n var errorMessage = \"apiresultcode_generalerror\";\r\n rejectionFunc({\r\n code: -1,\r\n message: errorMessage,\r\n data: error.response.data\r\n });\r\n });\r\n });\r\n }\r\n}\r\n\r\nApiService.shared = new ApiService();\nclass PhrasesService {\r\n constructor() {\r\n this.phrases = {};\r\n\r\n if (!window._data.phrases) {\r\n return;\r\n }\r\n\r\n for (var i = 0; i < window._data.phrases.length; i++) {\r\n var phrase = window._data.phrases[i];\r\n this.phrases[phrase.T] = phrase.V;\r\n }\r\n }\r\n\r\n getPhrase(title) {\r\n if (!this.phrases[title]) {\r\n return title;\r\n }\r\n\r\n return this.phrases[title];\r\n }\r\n}\r\n\r\nPhrasesService.shared = new PhrasesService();\nclass SettingsService {\r\n\r\n constructor() {\r\n this.data = window._data;\r\n }\r\n}\r\n\r\nSettingsService.shared = new SettingsService();\nclass UrlsService {\r\n\r\n constructor() {\r\n }\r\n\r\n removeQueryParamFromUrl(url, param) {\r\n if (!param) {\r\n return url;\r\n }\r\n const [baseUrl, queryString] = url.split('?');\r\n const params = new URLSearchParams(queryString);\r\n\r\n if (params.has(param)) {\r\n params.delete(param);\r\n }\r\n\r\n const modifiedQueryString = params.toString();\r\n if (modifiedQueryString) {\r\n var modifiedUrl = `${baseUrl}?${modifiedQueryString}`;\r\n window.history.pushState('', '', modifiedUrl);\r\n return modifiedUrl;\r\n } else {\r\n window.history.pushState('', '', baseUrl);\r\n return baseUrl;\r\n }\r\n }\r\n}\r\n\r\nUrlsService.shared = new UrlsService();\nVue.filter(\"formatAmount\", function (amountInCents) {\r\n var numValue = parseInt(amountInCents);\r\n var displayValue = (numValue / 100).toFixed(2);\r\n return displayValue;\r\n });\nVue.directive('inputMask', {\r\n bind: function (el, binding, vnode) {\r\n if (!binding.value)\r\n return;\r\n\r\n var maskOptions = {\r\n translation: {\r\n 'X': {\r\n pattern: /[a-zA-Z0-9А-Яа-я\\\\/\\-ʻʼ' ]/,\r\n recursive: true\r\n }\r\n },\r\n onChange: function (cep) {\r\n setTimeout(function () {\r\n el.dispatchEvent(new CustomEvent('input'));\r\n });\r\n },\r\n onInvalid: function (val, e, f, invalid, options) {\r\n el.dispatchEvent(new CustomEvent('input'));\r\n\r\n }\r\n };\r\n\r\n var maskValue = binding.value;\r\n if (maskValue == 'money') {\r\n maskValue = \"# ##0\";\r\n maskOptions.reverse = true;\r\n }\r\n\r\n\r\n el.$_mask = $(el).mask(maskValue, maskOptions);\r\n },\r\n unbind: function (el, binding, vnode) {\r\n if (!!el.$_mask)\r\n el.$_mask.remove();\r\n }\r\n});\nVue.component('campaign-donation-box', {\r\n props: {\r\n allocationDefaultPercent: Number,\r\n currentUserEmail: String,\r\n projectId: Number,\r\n isUserAuthorized: Boolean,\r\n checkoutUrl: String,\r\n hasAuthorizedUserFullAccess: Boolean\r\n },\r\n data: function () {\r\n return {\r\n signInUrl: SettingsService.shared.data.signInUrl,\r\n campaignUrl: SettingsService.shared.data.campaignUrl,\r\n product: SettingsService.shared.data.product,\r\n apiBaseUrl: SettingsService.shared.data.apiBaseUrl,\r\n identityBaseUrl: SettingsService.shared.data.identityBaseUrl,\r\n projects: SettingsService.shared.data.projects,\r\n campaignProject: SettingsService.shared.data.campaignProject,\r\n activeTab: 0,\r\n administrativeTip: null,\r\n email: { value: null, error: null },\r\n fullname: { value: null, error: null },\r\n marketingEmail: {value: null, error: null},\r\n isAnonymous: false,\r\n checkedProjectId: null,\r\n state: {\r\n currentStep: null,\r\n steps: [\r\n {\r\n id: 10\r\n },\r\n {\r\n id: 20,\r\n },\r\n ]\r\n },\r\n phrases: {\r\n allocationHintPhrase: PhrasesService.shared.getPhrase('donation_allocationhint'),\r\n legendTextPhrase: PhrasesService.shared.getPhrase('donation_legend'),\r\n allocationTitlePhrase: PhrasesService.shared.getPhrase('donation_allocationtitle'),\r\n emailTextPhrase: PhrasesService.shared.getPhrase('donation_emailtext'),\r\n donateAnonymouslyPhrase: PhrasesService.shared.getPhrase('donation_donateanonymously'),\r\n donateButtonTitlePhrase: PhrasesService.shared.getPhrase('donation_donatebuttontitle'),\r\n backButton: PhrasesService.shared.getPhrase('donation_backbutton'),\r\n youAreDonating: PhrasesService.shared.getPhrase('donation_youaredonating'),\r\n email: PhrasesService.shared.getPhrase('donation_email'),\r\n fullname: PhrasesService.shared.getPhrase('donation_fullname'),\r\n emailNotValid: PhrasesService.shared.getPhrase('donation_emailnotvalid'),\r\n countryDescriptionPhrase: PhrasesService.shared.getPhrase('donation_countrydescription'),\r\n onetimeGiveInternetButtonPhrase: PhrasesService.shared.getPhrase('donation_onetimegiveinternetbuttontitle'),\r\n donateOnetimeTitlePhrase: PhrasesService.shared.getPhrase('donation_donateonetimetitle'),\r\n donateCryptoUrlPhrase: PhrasesService.shared.getPhrase('donation_donatecryptourl'),\r\n donateCryptoUrlTitlePhrase: PhrasesService.shared.getPhrase('donation_donatecryptourltitle'),\r\n },\r\n sendingData: false,\r\n showGeneralErrorMessage: false,\r\n generalErrorMessage: null,\r\n campaign: SettingsService.shared.data.campaign,\r\n showSignInButton: false\r\n }\r\n },\r\n methods: {\r\n getOneTimeDonationProducts() {\r\n var _this = this;\r\n return _this.product;\r\n },\r\n getGiveInternetButtonTitle() {\r\n var _this = this;\r\n var html = `${_this.formatAmount(_this.totalAmount)}`;\r\n return _this.replaceAmountStr(_this.phrases.onetimeGiveInternetButtonPhrase, html);\r\n },\r\n getDonatingAmountTitle() {\r\n var _this = this;\r\n return _this.replaceAmountStr(_this.phrases.donateOnetimeTitlePhrase, _this.formatAmount(_this.totalAmount));\r\n },\r\n replaceAmountStr(phrase, amount) {\r\n var replacedPhrase = '';\r\n if (phrase)\r\n replacedPhrase = phrase.replace('[amount]', amount);\r\n\r\n return replacedPhrase;\r\n },\r\n formatAmount(amount) {\r\n return amount.toFixed(2);\r\n },\r\n getCurrentStepIndex(stepId) {\r\n var _this = this;\r\n var index = _this.state.steps.map(function (e) {\r\n return e.id;\r\n }).indexOf(stepId);\r\n return index;\r\n },\r\n showStep(stepId) {\r\n var _this = this;\r\n\r\n return !!_this.state.currentStep\r\n && _this.state.currentStep.id == stepId\r\n },\r\n goNext() {\r\n var _this = this;\r\n if (!_this.state.currentStep)\r\n return;\r\n var index = _this.getCurrentStepIndex(_this.state.currentStep.id);\r\n _this.state.currentStep = _this.state.steps[index + 1];\r\n },\r\n redirectToSignIn() {\r\n var _this = this;\r\n var queryParams = '?c=' + _this.campaign.Id + '&g=' + _this.campaign.PublicId;\r\n var returnUrl = encodeURIComponent(_this.campaignUrl + queryParams);\r\n window.location.href = _this.signInUrl + '?ReturnUrl=' + returnUrl;\r\n },\r\n goBack() {\r\n var _this = this;\r\n _this.resetGeneralErrorMessage();\r\n var index = _this.getCurrentStepIndex(_this.state.currentStep.id);\r\n _this.state.currentStep = _this.state.steps[index - 1];\r\n },\r\n validateEmail(email, isRequired) {\r\n var _this = this;\r\n var isEmailValid = false;\r\n email.error = null;\r\n if (!email.value && !isRequired) {\r\n return true;\r\n }\r\n\r\n if (!email.value) {\r\n email.error = \"Email is required\";\r\n return isEmailValid;\r\n }\r\n\r\n isEmailValid = (/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/).test(email.value);\r\n if (!isEmailValid) {\r\n email.error = _this.phrases.emailNotValid;\r\n return;\r\n }\r\n\r\n return isEmailValid;\r\n },\r\n validateFullname(fullname) {\r\n var isValid = false;\r\n fullname.error = null\r\n if (!fullname.value) {\r\n fullname.error = \"Name is required\";\r\n return isValid;\r\n }\r\n\r\n return true;\r\n },\r\n getPostData(captchaToken) {\r\n var _this = this;\r\n var paymentTerm = 2;\r\n var products = [];\r\n\r\n if (!_this.validateEmail(_this.marketingEmail, false))\r\n return;\r\n\r\n if (!_this.hasAuthorizedUserFullAccess)\r\n _this.isAnonymous = true;\r\n\r\n products.push({\r\n ProductId: _this.product.ProductId,\r\n ItemQuantity: parseInt(_this.product.Quantity),\r\n ItemAmount: parseInt(_this.product.Amount)\r\n });\r\n var data = {\r\n ProjectId: _this.checkedProjectId,\r\n AdministrativeTip: _this.administrativeTip,\r\n PaymentTerm: paymentTerm,\r\n MarketingEmail: _this.marketingEmail.value,\r\n IsAnonymous: _this.isAnonymous,\r\n Products: products,\r\n captchaToken: captchaToken,\r\n campaignId: _this.campaign.Id,\r\n campaignPublicId: _this.campaign.PublicId\r\n };\r\n return data;\r\n },\r\n resetGeneralErrorMessage() {\r\n var _this = this;\r\n _this.showGeneralErrorMessage = false;\r\n _this.generalErrorMessage = null;\r\n },\r\n showErrorMessage(message, showbutton) {\r\n var _this = this;\r\n _this.showGeneralErrorMessage = true;\r\n _this.generalErrorMessage = message;\r\n _this.showSignInButton = showbutton;\r\n },\r\n getProgramDescription() {\r\n var _this = this;\r\n var projectTitle = _this.campaignProject.IsGeneralFund ? _this.campaignProject.Title : _this.campaignProject.CountryTitle;\r\n return _this.phrases.countryDescriptionPhrase.replace('[country]', projectTitle);\r\n },\r\n initSlider() {\r\n var _this = this;\r\n var allocationrange = _this.$refs.allocationrange;\r\n noUiSlider.create(allocationrange, {\r\n connect: [true, false],\r\n start: [_this.administrativeTip],\r\n step: 5,\r\n range: {\r\n 'min': [0],\r\n 'max': [100]\r\n }\r\n });\r\n allocationrange.noUiSlider.on('update', function (values, handle) {\r\n _this.administrativeTip = parseFloat(values[handle]);\r\n });\r\n },\r\n async donate() {\r\n var _this = this;\r\n if (_this.sendingData) return;\r\n var captchaToken = await window._executeRecaptcha();\r\n\r\n _this.resetGeneralErrorMessage();\r\n var data = _this.getPostData(captchaToken);\r\n if (!data) {\r\n _this.sendingData = false;\r\n return;\r\n }\r\n\r\n _this.sendingData = true;\r\n await ApiService.shared._makeHttpDataPostRequest(_this.apiBaseUrl, 'donation/createdonation', data)\r\n .then((result) => {\r\n if (result.success) {\r\n window.location.href = _this.checkoutUrl + '?id=' + result.data.id + '&' + 'publicId=' + result.data.publicId;\r\n }\r\n })\r\n .catch((error) => {\r\n _this.sendingData = false;\r\n _this.showGeneralErrorMessage = true;\r\n _this.generalErrorMessage = error.data.message\r\n });\r\n },\r\n async createAnonymousUser() {\r\n var _this = this;\r\n if (_this.sendingData) return;\r\n _this.resetGeneralErrorMessage();\r\n var isEmailValid = _this.validateEmail(_this.email, true);\r\n var isFullNameValid = _this.validateFullname(_this.fullname)\r\n if (!isEmailValid || !isFullNameValid) {\r\n return;\r\n }\r\n\r\n var data = {\r\n fullname: _this.fullname.value,\r\n email: _this.email.value\r\n };\r\n _this.sendingData = true;\r\n ApiService.shared._makeHttpDataPostRequest(_this.identityBaseUrl,'user/createAnonymousUser', data)\r\n .then((result) => {\r\n _this.sendingData = false;\r\n if (result.data && result.data.userAlreadyExist) {\r\n this.showErrorMessage(result.message, true);\r\n return;\r\n }\r\n\r\n if (result.succeeded) {\r\n this.donate();\r\n }\r\n })\r\n .catch((error) => {\r\n _this.sendingData = false;\r\n _this.showErrorMessage(error.data.message);\r\n });\r\n }\r\n },\r\n mounted() {\r\n var _this = this;\r\n _this.state.currentStep = _this.state.steps[0];\r\n _this.administrativeTip = parseInt(_this.allocationDefaultPercent);\r\n\r\n if (_this.isUserAuthorized && _this.hasAuthorizedUserFullAccess) {\r\n _this.marketingEmail.value = _this.currentUserEmail;\r\n }\r\n\r\n setTimeout(function () {\r\n _this.initSlider();\r\n });\r\n },\r\n computed: {\r\n totalAmount() {\r\n var _this = this;\r\n var totalAmount = _this.totalDonationAmount + (_this.totalDonationAmount * _this.administrativeTip / 100);\r\n return totalAmount;\r\n },\r\n totalDonationAmount() {\r\n var _this = this;\r\n var donationProductTotal = _this.product.Quantity * _this.product.Amount;\r\n return donationProductTotal;\r\n }\r\n }\r\n ,\ntemplate: `\r\n
\r\n \r\n
\r\n
\r\n \r\n

{{campaign.ShortDescription}}

\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n

\r\n {{phrases.allocationTitlePhrase}} +{{administrativeTip}}%\r\n
\r\n \r\n
\r\n
\r\n

{{phrases.allocationHintPhrase}}

\r\n
\r\n
\r\n

\r\n
\r\n
0%
\r\n
\r\n
100%
\r\n
\r\n
\r\n
\r\n \r\n \r\n

\r\n {{getProgramDescription()}}\r\n

\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n Back\r\n
\r\n
\r\n
\r\n

{{phrases.youAreDonating}}

\r\n

\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{fullname.error}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{email.error}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{marketingEmail.error}}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n {{generalErrorMessage}}\r\n \r\n Sign in\r\n \r\n

\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n \r\n {{phrases.legendTextPhrase}}\r\n

\r\n
\r\n`\n});\nVue.component('damage-calculator', {\r\n props: ['countryPhrase', 'daysAffectedPhrase', 'totalCostImpactPhrase', 'peopleWithoutInternetPhrase'],\r\n data: function () {\r\n return {\r\n daysAffectedCount: 1,\r\n countries: null,\r\n checkedCountryName: '',\r\n selectedCountry: {},\r\n selectedCountryLabel: '',\r\n defaultvalue: ''\r\n };\r\n },\r\n methods: {\r\n plus() {\r\n var _this = this;\r\n if (_this.daysAffectedCount == 365)\r\n return;\r\n _this.daysAffectedCount += 1;\r\n },\r\n minus() {\r\n var _this = this;\r\n if (_this.daysAffectedCount == 1)\r\n return;\r\n\r\n _this.daysAffectedCount -= 1;\r\n },\r\n formatNumber(number) {\r\n return Math.round(number).toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\r\n },\r\n isNumber(event) {\r\n var keyCode = (event.which) ? event.which : event.keyCode;\r\n if ((keyCode > 31 && (keyCode < 48 || keyCode > 57)) && keyCode !== 46) {\r\n event.preventDefault();\r\n } else {\r\n return true;\r\n }\r\n },\r\n checkCount() {\r\n var _this = this;\r\n var value = parseInt(_this.daysAffectedCount);\r\n if (value < 0) {\r\n _this.daysAffectedCount = 1;\r\n } else if (value > 365) {\r\n _this.daysAffectedCount = 365\r\n }\r\n _this.daysAffectedCount = Math.min(365, Math.max(1, _this.daysAffectedCount));\r\n },\r\n selectionTemplate(selection) {\r\n if (!selection.id) {\r\n return selection.text;\r\n }\r\n var selection = $('' + selection.text + '');\r\n return selection;\r\n }\r\n\r\n },\r\n mounted() {\r\n var _this = this;\r\n fetch('~/m/d/country-data.json')\r\n .then(response => {\r\n if (!response.ok) {\r\n throw new Error(\"HTTP error \" + response.status);\r\n }\r\n return response.json();\r\n }).then(countries => {\r\n _this.countries = countries;\r\n _this.selectedCountry = countries[82];\r\n _this.selectedCountryLabel = _this.selectedCountry.label;\r\n _this.defaultvalue = _this.selectedCountryLabel;\r\n\r\n $(_this.$refs.selector)\r\n .select2({\r\n maximumSelectionLength: 1,\r\n multiple: true,\r\n placeholder: 'Select a country',\r\n })\r\n .on('change', function (event) {\r\n _this.selectedCountry = _this.countries.find(c => c.label == event.target.value);\r\n })\r\n ;\r\n\r\n setTimeout(function () {\r\n $(_this.$refs.selector).val([_this.selectedCountryLabel]).trigger('change');\r\n }, 100);\r\n })\r\n .catch(function () {\r\n })\r\n\r\n $(_this.$refs.selector).on('select2:open', () => {\r\n $(_this.$refs.selector).val(null).trigger('change');\r\n });\r\n\r\n $(_this.$refs.selector).on('select2:closing', () => {\r\n var selectedValue = $(_this.$refs.selector).val();\r\n if (selectedValue == null || selectedValue.length == 0) {\r\n $(_this.$refs.selector).val([_this.selectedCountryLabel]).trigger('change');\r\n }\r\n });\r\n\r\n $(_this.$refs.selector).on('select2:close', function (e) {\r\n setTimeout(() => {\r\n $('.select2-container-active').removeClass('select2-container-active');\r\n $(':focus').blur(); \r\n },1);\r\n });\r\n },\r\n computed: {\r\n totalCostImpact() {\r\n var _this = this;\r\n if (!_this.selectedCountry)\r\n return;\r\n\r\n if (_this.selectedCountry)\r\n return _this.formatNumber(_this.selectedCountry.cost * _this.daysAffectedCount);\r\n },\r\n peopleWithoutInternet() {\r\n var _this = this;\r\n if (_this.selectedCountry) {\r\n var usersWithoutInternet = _this.selectedCountry.users_without_internet;\r\n if (!usersWithoutInternet) {\r\n var population = _this.selectedCountry.pop;\r\n var netUsers = population * _this.selectedCountry.net_users;\r\n usersWithoutInternet = population - netUsers;\r\n }\r\n return _this.formatNumber(usersWithoutInternet);\r\n }\r\n }\r\n }\r\n ,\ntemplate: `\r\n
\r\n
\r\n
\r\n
{{countryPhrase}}
\r\n \r\n \r\n
\r\n
\r\n
{{daysAffectedPhrase}}
\r\n \r\n
\r\n
\r\n
{{totalCostImpactPhrase}}
\r\n
\r\n

$\\{{totalCostImpact}}

\r\n
\r\n
\r\n
\r\n
{{peopleWithoutInternetPhrase}}
\r\n
\r\n

{{peopleWithoutInternet}}

\r\n
\r\n
\r\n
\r\n
\r\n`\n});\nVue.component('donation-animation', {\r\n props: [],\r\n data: function () {\r\n return {\r\n }\r\n },\r\n methods: {\r\n },\r\n mounted() {\r\n },\r\n computed: {\r\n }\r\n ,\ntemplate: `\r\n
\r\n \"\"\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \"\"\r\n
\r\n`\n});\nVue.component('donation-box', {\r\n props: {\r\n allocationDefaultPercent: Number,\r\n currentUserEmail: String,\r\n projectId: Number,\r\n isUserAuthorized: Boolean,\r\n isUserStatusActive: Boolean,\r\n checkoutUrl: String,\r\n isProjectSelectedByUser: Boolean,\r\n activeTab: Number,\r\n showAnyAmountOption: Boolean,\r\n showUserInfoStep: Boolean,\r\n hasAuthorizedUserFullAccess: Boolean,\r\n productQuantity: Number,\r\n showLaptopStundetsIcon: Boolean,\r\n },\r\n data: function () {\r\n return {\r\n apiBaseUrl: SettingsService.shared.data.apiBaseUrl,\r\n identityBaseUrl: SettingsService.shared.data.identityBaseUrl,\r\n signInUrl: SettingsService.shared.data.signInUrl,\r\n donateUrl: SettingsService.shared.data.donateUrl,\r\n products: SettingsService.shared.data.products,\r\n projects: SettingsService.shared.data.projects,\r\n selectedMonthlyProducts: {},\r\n administrativeTip: null,\r\n email: { value: null, error: null },\r\n fullname: { value: null, error: null },\r\n marketingEmail: { value: null, error: null },\r\n isAnonymous: false,\r\n checkedProjectId: null,\r\n state: {\r\n currentStep: null,\r\n steps: [\r\n {\r\n id: 10\r\n },\r\n {\r\n id: 20,\r\n },\r\n ]\r\n },\r\n phrases: {\r\n monthlyTabTitlePhrase: PhrasesService.shared.getPhrase('donation_monthlytabtitle'),\r\n bundleTabTitlePhrase: PhrasesService.shared.getPhrase('donation_bundletabtitle'),\r\n allocationHintPhrase: PhrasesService.shared.getPhrase('donation_allocationhint'),\r\n bundleDescriptionPhrase: PhrasesService.shared.getPhrase('donation_bundledescription'),\r\n totalAmountMonthlyPhrase: PhrasesService.shared.getPhrase('donation_totalamountmonthly'),\r\n totalAmountBundlePhrase: PhrasesService.shared.getPhrase('donation_totalamountbundle'),\r\n monthlyGiveInternetButtonPhrase: PhrasesService.shared.getPhrase('donation_monthlygiveinternetbuttontitle'),\r\n bundleGiveInternetButtonPhrase: PhrasesService.shared.getPhrase('donation_bundlegiveinternetbuttontitle'),\r\n legendTextPhrase: PhrasesService.shared.getPhrase('donation_legend'),\r\n allocationTitlePhrase: PhrasesService.shared.getPhrase('donation_allocationtitle'),\r\n anyAmountTextPhrase: PhrasesService.shared.getPhrase('donation_anyamounttext'),\r\n anyAmountUrlTitlePhrase: PhrasesService.shared.getPhrase('donation_anyamounturltitle'),\r\n emailTextPhrase: PhrasesService.shared.getPhrase('donation_emailtext'),\r\n donateAnonymouslyPhrase: PhrasesService.shared.getPhrase('donation_donateanonymously'),\r\n donateButtonTitlePhrase: PhrasesService.shared.getPhrase('donation_donatebuttontitle'),\r\n donateMonthlyTitlePhrase: PhrasesService.shared.getPhrase('donation_donatemonthlytitle'),\r\n donateBundleTitlePhrase: PhrasesService.shared.getPhrase('donation_donatebundletitle'),\r\n specificCountryDescriptionPhrase: PhrasesService.shared.getPhrase('donation_specificcountrydescription'),\r\n specificCountryUrlPhrase: PhrasesService.shared.getPhrase('donation_specificcountryurl'),\r\n backButton: PhrasesService.shared.getPhrase('donation_backbutton'),\r\n youAreDonating: PhrasesService.shared.getPhrase('donation_youaredonating'),\r\n email: PhrasesService.shared.getPhrase('donation_email'),\r\n fullname: PhrasesService.shared.getPhrase('donation_fullname'),\r\n emailNotValid: PhrasesService.shared.getPhrase('donation_emailnotvalid'),\r\n selectProgramTitle: PhrasesService.shared.getPhrase('donation_selectprogramtitle'),\r\n selectProgramButton: PhrasesService.shared.getPhrase('donation_selectprogrambutton'),\r\n countryDescriptionPhrase: PhrasesService.shared.getPhrase('donation_countrydescription'),\r\n countryUrlPhrase: PhrasesService.shared.getPhrase('donation_countrydescriptionurl'),\r\n setNOfStudentsUrlTitle: PhrasesService.shared.getPhrase('donation_setnofstudentsurltitle'),\r\n onetimeGiveInternetButtonPhrase: PhrasesService.shared.getPhrase('donation_onetimegiveinternetbuttontitle'),\r\n donateOnetimeTitlePhrase: PhrasesService.shared.getPhrase('donation_donateonetimetitle'),\r\n onetimeTabTitlePhrase: PhrasesService.shared.getPhrase('donation_onetimetabtitle'),\r\n donateCryptoUrlPhrase: PhrasesService.shared.getPhrase('donation_donatecryptourl'),\r\n donateCryptoUrlTitlePhrase: PhrasesService.shared.getPhrase('donation_donatecryptourltitle'),\r\n donateTermsAndPrivacy: PhrasesService.shared.getPhrase('donation_termsandprivacy'),\r\n minAmountErrorMessagePhrase: PhrasesService.shared.getPhrase('donation_minamounterrormessage'),\r\n monthlyCombinedProductHintPhrase: PhrasesService.shared.getPhrase('donation_monthlycombinedproducthintphrase'),\r\n oneTimeCombinedProductHintPhrase: PhrasesService.shared.getPhrase('donation_onetimecombinedproducthintphrase'),\r\n },\r\n sendingData: false,\r\n monthlyTabVisible: true,\r\n isProjectSelectedByUser: false,\r\n showMessage: false,\r\n message: null,\r\n messageClass: '',\r\n messageIconName: '',\r\n showSignInButton: false,\r\n productTypes: {\r\n monthly: 1,\r\n onetime: 2,\r\n combined: 3\r\n },\r\n }\r\n },\r\n methods: {\r\n showAnyAmount() {\r\n var _this = this;\r\n _this.showAnyAmountOption = true;\r\n var anyAmountProduct = _this.products.filter(p => !p.Checked && p.PaymentTerm == 1 && p.AmountType == 1);\r\n anyAmountProduct[0].Checked = true;\r\n _this.unCheckAllProductsExeptChecked(anyAmountProduct[0]);\r\n },\r\n closeAnyAmountPopup() {\r\n var _this = this;\r\n _this.showAnyAmountOption = false;\r\n var monthlyAnyAmountProduct = _this.products.filter(p => p.PaymentTerm == 1 && p.AmountType == 1)[0];\r\n monthlyAnyAmountProduct.Checked = false;\r\n _this.checkAtLeastOneMonthlyProduct(monthlyAnyAmountProduct);\r\n },\r\n getMonthlyDonationProducts() {\r\n var _this = this;\r\n return _this.products.filter(p => p.PaymentTerm == 1);;\r\n },\r\n getOneTimeDonationProducts() {\r\n var _this = this;\r\n return _this.products.filter(p => p.PaymentTerm == 2);\r\n },\r\n setActiveTab(tab, hash) {\r\n var _this = this;\r\n _this.activeTab = tab;\r\n window.history.replaceState('', '', '#' + hash);\r\n },\r\n getGiveInternetButtonTitle() {\r\n var _this = this;\r\n var html = `${_this.formatAmount(_this.totalAmount)}`;\r\n if (_this.activeTab == 0) {\r\n return _this.replaceAmountStr(_this.phrases.monthlyGiveInternetButtonPhrase, html);\r\n }\r\n\r\n if (_this.activeTab == 1) {\r\n return _this.replaceAmountStr(_this.phrases.bundleGiveInternetButtonPhrase, html);\r\n }\r\n\r\n if (_this.activeTab == 2) {\r\n return _this.replaceAmountStr(_this.phrases.onetimeGiveInternetButtonPhrase, html);\r\n }\r\n },\r\n getDonatingAmountTitle() {\r\n var _this = this;\r\n\r\n if (_this.activeTab == 0)\r\n return _this.replaceAmountStr(_this.phrases.donateMonthlyTitlePhrase, _this.formatAmount(_this.totalAmount));\r\n\r\n if (_this.activeTab == 1)\r\n return _this.replaceAmountStr(_this.phrases.donateBundleTitlePhrase, _this.formatAmount(_this.totalAmount));\r\n\r\n if (_this.activeTab == 2)\r\n return _this.replaceAmountStr(_this.phrases.donateOnetimeTitlePhrase, _this.formatAmount(_this.totalAmount));\r\n },\r\n getTotalDonationTitle() {\r\n var _this = this;\r\n if (_this.activeTab == 0)\r\n return _this.replaceAmountStr(_this.phrases.totalAmountMonthlyPhrase, _this.totalDonationAmount);\r\n\r\n if (_this.activeTab == 1)\r\n return _this.replaceAmountStr(_this.phrases.totalAmountBundlePhrase, _this.totalDonationAmount);\r\n\r\n if (_this.activeTab == 2)\r\n return _this.replaceAmountStr(_this.phrases.totalAmountBundlePhrase, _this.totalDonationAmount);\r\n },\r\n hideAnyAmountOption() {\r\n var _this = this;\r\n _this.showAnyAmountOption = false;\r\n },\r\n replaceAmountStr(phrase, amount) {\r\n var replacedPhrase = '';\r\n if (phrase)\r\n replacedPhrase = phrase.replace('[amount]', amount);\r\n\r\n return replacedPhrase;\r\n },\r\n formatAmount(amount) {\r\n return amount.toFixed(2);\r\n },\r\n checkAtLeastOneMonthlyProduct(product) {\r\n var _this = this;\r\n _this.products.filter(p => p != product && p.PaymentTerm == 1 && p.AmountType == 0);\r\n _this.products[0].Checked = true;\r\n },\r\n unCheckAllProductsExeptChecked(product) {\r\n var _this = this;\r\n _this.productQuantity = 1;\r\n _this.products.filter(p => p != product && p.PaymentTerm == product.PaymentTerm).forEach(p => p.Checked = false);\r\n },\r\n getCurrentStepIndex(stepId) {\r\n var _this = this;\r\n var index = _this.state.steps.map(function (e) {\r\n return e.id;\r\n }).indexOf(stepId);\r\n return index;\r\n },\r\n showStep(stepId) {\r\n var _this = this;\r\n\r\n return !!_this.state.currentStep\r\n && _this.state.currentStep.id == stepId\r\n },\r\n goNext() {\r\n var _this = this;\r\n if (!_this.state.currentStep)\r\n return;\r\n var index = _this.getCurrentStepIndex(_this.state.currentStep.id);\r\n _this.state.currentStep = _this.state.steps[index + 1];\r\n _this.scrollToTop();\r\n },\r\n goBack() {\r\n var _this = this;\r\n _this.resetMessage();\r\n var index = _this.getCurrentStepIndex(_this.state.currentStep.id);\r\n _this.state.currentStep = _this.state.steps[index - 1];\r\n },\r\n validateEmail(email, isRequired) {\r\n var _this = this;\r\n var isEmailValid = false;\r\n email.error = null;\r\n if (!email.value && !isRequired) {\r\n return true;\r\n }\r\n\r\n if (!email.value) {\r\n email.error = \"Email is required\";\r\n return isEmailValid;\r\n }\r\n\r\n isEmailValid = (/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/).test(email.value);\r\n if (!isEmailValid) {\r\n email.error = _this.phrases.emailNotValid;\r\n return;\r\n }\r\n\r\n return isEmailValid;\r\n },\r\n validateFullname(fullname) {\r\n var isValid = false;\r\n fullname.error = null\r\n if (!fullname.value) {\r\n fullname.error = \"Name is required\";\r\n return isValid;\r\n }\r\n\r\n return true;\r\n },\r\n getSelectedProductsByActiveTab() {\r\n var _this = this;\r\n //monthly;\r\n if (_this.activeTab == 0) {\r\n var checkedMonthlyProducts = _this.products.filter(p => p.Checked && p.PaymentTerm == 1);\r\n var combinedProduct = checkedMonthlyProducts\r\n .filter(p => p.Checked && p.ProductType == _this.productTypes.combined)[0];\r\n if (combinedProduct) {\r\n var filteredProducts = _this.products\r\n .filter(p => p != combinedProduct && p.PaymentTerm == combinedProduct.PaymentTerm && p.AmountType == 0);\r\n return filteredProducts;\r\n }\r\n\r\n return checkedMonthlyProducts;\r\n }\r\n\r\n //onetime;\r\n if (_this.activeTab == 2) {\r\n var checkedOnetimeProducts = _this.products.filter(p => p.Checked && p.PaymentTerm == 2);\r\n var combinedProduct = checkedOnetimeProducts\r\n .filter(p => p.Checked && p.ProductType == _this.productTypes.combined)[0];\r\n if (combinedProduct) {\r\n var filteredProducts = _this.products\r\n .filter(p => p != combinedProduct && p.PaymentTerm == combinedProduct.PaymentTerm && p.AmountType == 0);\r\n return filteredProducts;\r\n\r\n }\r\n return checkedOnetimeProducts;\r\n }\r\n },\r\n selectProgram() {\r\n var _this = this;\r\n _this.isProjectSelectedByUser = true;\r\n _this.projectId = _this.checkedProjectId;\r\n $.fancybox.close();\r\n },\r\n closeProgramPopUp() {\r\n var _this = this;\r\n _this.checkedProjectId = _this.projectId;\r\n },\r\n getPostData(captchaToken) {\r\n var _this = this;\r\n var selectedProducts = _this.getSelectedProductsByActiveTab();\r\n if (selectedProducts.length == 0)\r\n return;\r\n\r\n if (!_this.validateEmail(_this.marketingEmail, false))\r\n return;\r\n\r\n var paymentTerm = selectedProducts[0].PaymentTerm;\r\n var products = [];\r\n\r\n selectedProducts.forEach(function (product) {\r\n products.push({\r\n ProductId: product.ProductId,\r\n ItemQuantity: parseInt(product.Quantity),\r\n ItemAmount: parseInt(product.Amount)\r\n });\r\n });\r\n\r\n var data = {\r\n ProjectId: _this.checkedProjectId,\r\n AdministrativeTip: _this.administrativeTip,\r\n PaymentTerm: paymentTerm,\r\n MarketingEmail: _this.marketingEmail.value,\r\n IsAnonymous: _this.isAnonymous,\r\n Products: products,\r\n captchaToken: captchaToken\r\n };\r\n return data;\r\n },\r\n resetMessage() {\r\n var _this = this;\r\n _this.showMessage = false;\r\n _this.message = null;\r\n _this.messageClass = null;\r\n _this.messageIconName = null;\r\n _this.showSignInButton = false;\r\n },\r\n getProgramDescription() {\r\n var _this = this;\r\n if (_this.isProjectSelectedByUser) {\r\n var project = _this.projects.find(p => p.ProjectId == _this.checkedProjectId);\r\n if (project) {\r\n var projectTitle = project.IsGeneralFund ? project.Title : project.CountryTitle;\r\n return _this.phrases.countryDescriptionPhrase.replace('[country]', projectTitle);\r\n }\r\n } else {\r\n return _this.phrases.specificCountryDescriptionPhrase;\r\n }\r\n },\r\n getProgramUrlTitle() {\r\n var _this = this;\r\n if (_this.isProjectSelectedByUser)\r\n return _this.phrases.countryUrlPhrase;\r\n\r\n return _this.phrases.specificCountryUrlPhrase;\r\n },\r\n getTabByName(name) {\r\n switch (name) {\r\n case 'monthly':\r\n return 0;\r\n break;\r\n //case 'bundle':\r\n // return 1\r\n // break;\r\n case 'onetime':\r\n return 2\r\n break;\r\n default:\r\n return 0;\r\n }\r\n },\r\n isHashValid(hash) {\r\n switch (hash) {\r\n case 'monthly':\r\n return true;\r\n break;\r\n //case 'bundle':\r\n // return true;\r\n // break;\r\n case 'onetime':\r\n return true\r\n break;\r\n default:\r\n return false;\r\n }\r\n },\r\n getActiveTabName() {\r\n var _this = this;\r\n var activeTab = _this.monthlyTabVisible\r\n ? parseInt(_this.activeTab)\r\n : 2;\r\n switch (activeTab) {\r\n case 0:\r\n return 'monthly';\r\n break;\r\n case 1:\r\n return 'bundle';\r\n break;\r\n case 2:\r\n return 'onetime';\r\n };\r\n },\r\n triggerElementClick(element) {\r\n if (element)\r\n element.click();\r\n },\r\n processUrlHash() {\r\n var _this = this;\r\n var hash = '';\r\n if (window.location.hash.length > 1) {\r\n\r\n var windowLocationHash = window.location.hash.substring(1);\r\n if (!_this.isHashValid(windowLocationHash)) {\r\n window.history.replaceState('', '', window.location.pathname);\r\n window.location.reload();\r\n return;\r\n }\r\n hash = !_this.monthlyTabVisible && windowLocationHash == 'monthly'\r\n ? 'onetime'\r\n : windowLocationHash;\r\n\r\n _this.setActiveTab(_this.getTabByName(hash), hash);\r\n return;\r\n }\r\n hash = _this.getActiveTabName();\r\n _this.setActiveTab(_this.getTabByName(hash), hash);\r\n },\r\n onHashChangeEvent() {\r\n var _this = this;\r\n $(window).on('hashchange', function () {\r\n _this.processUrlHash();\r\n });\r\n },\r\n initSlider() {\r\n var _this = this;\r\n var allocationrange = _this.$refs.allocationrange;\r\n noUiSlider.create(allocationrange, {\r\n connect: [true, false],\r\n start: [_this.administrativeTip],\r\n step: 5,\r\n range: {\r\n 'min': [0],\r\n 'max': [100]\r\n }\r\n });\r\n allocationrange.noUiSlider.on('update', function (values, handle) {\r\n _this.administrativeTip = parseFloat(values[handle]);\r\n });\r\n },\r\n showErrorMessage(message) {\r\n var _this = this;\r\n _this.showMessage = true;\r\n _this.message = message;\r\n },\r\n addCombinedProductsToProducts() {\r\n var _this = this;\r\n var productsList = [];\r\n var monthlyProducts = _this.filterProducts(1, 0);\r\n var anyAmountMonthlyProduct = _this.filterProducts(1, 1);\r\n var oneTimeProducts = _this.filterProducts(2, 0);\r\n var anyAmountOneTimeProduct = _this.filterProducts(2, 1);\r\n\r\n var combinedMonthlyProduct = _this.createCombinedProduct(monthlyProducts, 1, _this.productTypes.combined);\r\n var combinedOneTimeProduct = _this.createCombinedProduct(oneTimeProducts, 2, _this.productTypes.combined);\r\n\r\n _this.uncheckMultipleSelected(monthlyProducts);\r\n _this.uncheckMultipleSelected(oneTimeProducts);\r\n\r\n productsList.push(...monthlyProducts);\r\n productsList.push(combinedMonthlyProduct);\r\n if (anyAmountMonthlyProduct[0]) {\r\n productsList.push(anyAmountMonthlyProduct[0]);\r\n }\r\n\r\n productsList.push(...oneTimeProducts);\r\n productsList.push(combinedOneTimeProduct);\r\n if (anyAmountOneTimeProduct[0]) {\r\n productsList.push(anyAmountOneTimeProduct[0]);\r\n }\r\n\r\n _this.products = productsList;\r\n },\r\n filterProducts(paymentTerm, amountType) {\r\n return this.products.filter(p => p.PaymentTerm === paymentTerm && p.AmountType === amountType);\r\n },\r\n uncheckMultipleSelected(products) {\r\n var _this = this;\r\n var checkedProducts = products.filter(p => p.Checked);\r\n if (checkedProducts.length > 1) {\r\n checkedProducts.forEach(product => {\r\n product.Checked = false;\r\n _this.productQuantity = parseInt(product.Quantity);\r\n });\r\n }\r\n },\r\n createCombinedProduct(products, paymentTerm, productType) {\r\n return {\r\n Amount: products[0].Amount + products[1].Amount,\r\n Title: `${products[0].Title} + ${products[1].Title}`,\r\n Checked: products.filter(p => p.Checked).length > 1,\r\n AmountType: 0,\r\n PaymentTerm: paymentTerm,\r\n Quantity: this.productQuantity,\r\n ProductType: productType\r\n };\r\n },\r\n plus() {\r\n var _this = this;\r\n _this.productQuantity = parseInt(_this.productQuantity) + 1;\r\n },\r\n minus() {\r\n var _this = this;\r\n if (_this.productQuantity == 1) {\r\n return;\r\n }\r\n _this.productQuantity = parseInt(_this.productQuantity) - 1;\r\n },\r\n isNumber(event) {\r\n if (event.key == '.') {\r\n event.preventDefault();\r\n }\r\n var keyCode = (event.which) ? event.which : event.keyCode;\r\n if ((keyCode > 31 && (keyCode < 48 || keyCode > 57)) && keyCode !== 46) {\r\n event.preventDefault();\r\n _this.showAnyAmountError = true;\r\n } else {\r\n return true;\r\n }\r\n },\r\n checkQuantity(product) {\r\n var _this = this;\r\n var value = parseInt(_this.productQuantity);\r\n\r\n if (value == 0 || !value) {\r\n }\r\n _this.productQuantity = Math.min(9999, Math.max(1, _this.productQuantity));\r\n },\r\n checkQuantityInput() {\r\n var _this = this;\r\n var value = parseInt(_this.productQuantity);\r\n if (!value)\r\n return;\r\n\r\n _this.checkQuantity();\r\n },\r\n async redirectToSignIn() {\r\n var _this = this;\r\n var selectedProducts = _this.getSelectedProductsByActiveTab();\r\n var selectedDonationProducts = [];\r\n\r\n selectedProducts.forEach(function (product) {\r\n selectedDonationProducts.push({\r\n ProductId: product.ProductId,\r\n ItemQuantity: parseInt(product.Quantity),\r\n ItemAmount: parseInt(product.Amount)\r\n });\r\n });\r\n\r\n var data = {\r\n projectId: _this.checkedProjectId,\r\n administrativeTip: _this.administrativeTip,\r\n activeTab: _this.activeTab,\r\n showAnyAmountOption: _this.showAnyAmountOption,\r\n donationProducts: selectedDonationProducts,\r\n paymentTerm: selectedProducts[0].PaymentTerm\r\n };\r\n\r\n await ApiService.shared._makeHttpDataPostRequest(_this.apiBaseUrl, 'donation/StoreDonationDataToCookie', data)\r\n .then((result) => {\r\n var queryParams = this.isProjectSelectedByUser ? '?projectId=' + this.checkedProjectId : '';\r\n window.location.href = this.signInUrl + '?ReturnUrl=' + this.donateUrl + queryParams;\r\n })\r\n .catch((error) => {\r\n _this.sendingData = false;\r\n _this.showErrorMessage(error.data.message);\r\n });\r\n },\r\n scrollToTop() {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'smooth'\r\n });\r\n },\r\n resetOneTimeAnyAmount(product) {\r\n var _this = this;\r\n if (_this.activeTab == 0) {\r\n return;\r\n }\r\n\r\n if (product.AmountType == 1\r\n && product.PaymentTerm == 2) {\r\n return;\r\n }\r\n _this.products.filter(p => p.AmountType == 1 && p.PaymentTerm == 2).forEach(p => p.Amount = '');\r\n },\r\n async donate() {\r\n var _this = this;\r\n if (_this.sendingData) return;\r\n\r\n _this.sendingData = true;\r\n\r\n var captchaToken = await window._executeRecaptcha();\r\n\r\n _this.resetMessage();\r\n var data = _this.getPostData(captchaToken);\r\n if (!data) {\r\n _this.sendingData = false;\r\n return;\r\n }\r\n\r\n await ApiService.shared._makeHttpDataPostRequest(_this.apiBaseUrl, 'donation/createdonation', data)\r\n .then((result) => {\r\n if (result.success) {\r\n window.location.href = _this.checkoutUrl + '?id=' + result.data.id + '&' + 'publicId=' + result.data.publicId;\r\n }\r\n _this.sendingData = false;\r\n })\r\n .catch((error) => {\r\n _this.sendingData = false;\r\n _this.showErrorMessage(error.data.message);\r\n });\r\n },\r\n async createAnonymousUser() {\r\n var _this = this;\r\n if (_this.sendingData) return;\r\n _this.resetMessage();\r\n var isEmailValid = _this.validateEmail(_this.email, true);\r\n var isFullNameValid = _this.validateFullname(_this.fullname)\r\n if (!isEmailValid || !isFullNameValid) {\r\n return;\r\n }\r\n var captchaToken = await window._executeRecaptcha();\r\n var data = {\r\n fullname: _this.fullname.value,\r\n email: _this.email.value,\r\n captchaToken: captchaToken\r\n };\r\n _this.sendingData = true;\r\n ApiService.shared._makeHttpDataPostRequest(_this.identityBaseUrl, 'user/createAnonymousUser', data)\r\n .then((result) => {\r\n _this.sendingData = false;\r\n if (result.data && result.data.userAlreadyExist) {\r\n _this.showSignInButton = true;\r\n _this.showErrorMessage(result.message);\r\n return;\r\n }\r\n\r\n if (result.succeeded) {\r\n _this.donate();\r\n } else {\r\n _this.showErrorMessage(result.message);\r\n }\r\n })\r\n .catch((error) => {\r\n _this.sendingData = false;\r\n _this.showErrorMessage(error.data.message);\r\n });\r\n }\r\n },\r\n mounted() {\r\n var _this = this;\r\n _this.state.currentStep = _this.state.steps[0];\r\n _this.marketingEmail.value = _this.currentUserEmail;\r\n _this.administrativeTip = parseInt(_this.allocationDefaultPercent);\r\n _this.monthlyTabVisible = !_this.hasAuthorizedUserFullAccess || !_this.isUserStatusActive;\r\n\r\n if (_this.showUserInfoStep) {\r\n _this.goNext();\r\n }\r\n\r\n _this.checkedProjectId = _this.projectId;\r\n _this.processUrlHash();\r\n _this.onHashChangeEvent();\r\n setTimeout(function () {\r\n _this.initSlider();\r\n })\r\n\r\n _this.addCombinedProductsToProducts();\r\n },\r\n computed: {\r\n totalAmount() {\r\n var _this = this;\r\n var totalAmount = _this.totalDonationAmount + (_this.totalDonationAmount * _this.administrativeTip / 100);\r\n return totalAmount;\r\n },\r\n totalDonationAmount() {\r\n var _this = this;\r\n var selectedProducts = _this.getSelectedProductsByActiveTab();\r\n var donationProductTotal = 0;\r\n for (var i = 0; i < selectedProducts.length; i++) {\r\n donationProductTotal += selectedProducts[i].Quantity * selectedProducts[i].Amount;\r\n }\r\n return donationProductTotal;\r\n }\r\n }\r\n ,\ntemplate: `\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n

Choose number of students

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n {{phrases.anyAmountTextPhrase}}
\r\n {{phrases.anyAmountUrlTitlePhrase}}\r\n

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{phrases.allocationTitlePhrase}} +{{administrativeTip}}%\r\n
\r\n \r\n
\r\n
\r\n

{{phrases.allocationHintPhrase}}

\r\n
\r\n
\r\n

\r\n
\r\n
0%
\r\n
\r\n
100%
\r\n
\r\n
\r\n
\r\n \r\n \r\n

\r\n {{getProgramDescription()}}\r\n {{getProgramUrlTitle()}}?\r\n

\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n Back\r\n
\r\n
\r\n
\r\n

{{phrases.youAreDonating}}

\r\n

\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{fullname.error}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{email.error}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{marketingEmail.error}}

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n {{message}}\r\n\r\n \r\n Sign in\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n

{{phrases.legendTextPhrase}}

\r\n
\r\n
\r\n

\r\n
\r\n\r\n \r\n
\r\n

{{phrases.selectProgramTitle}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n`\n});\nVue.component('donation-breakdown-calculator', {\r\n props: ['amountTitlePhrase', 'amountHintPhrase', 'receivesTitlePhrase', 'receivesHintPhrase', 'stripeFeePhrase', 'npoFeePhrase'],\r\n data: function () {\r\n return {\r\n amountPrefix: '$',\r\n amount: '$10',\r\n breakdownDataSettings: window.donationBreakdownData,\r\n formattedAmount: '',\r\n studentsReceives: 0,\r\n stripeCalculatedFee: 0,\r\n NPOCalculatedFee: 0\r\n };\r\n },\r\n methods: {\r\n plus() {\r\n var _this = this;\r\n var amount = _this.amountAsInt();\r\n _this.amount = amount + 1;\r\n _this.formatAmountAndCalculate();\r\n },\r\n minus() {\r\n var _this = this;\r\n var amount = _this.amountAsInt();\r\n _this.amount = amount - 1;\r\n _this.formatAmountAndCalculate();\r\n },\r\n formatAmountAndCalculate() {\r\n var _this = this;\r\n setTimeout(function () {\r\n var amountAsInt = _this.amountAsInt();\r\n\r\n _this.amount = _this.amountPrefix + amountAsInt;\r\n _this.calculate();\r\n }, 0);\r\n },\r\n calculate() {\r\n var _this = this;\r\n var amount = _this.amountAsInt();\r\n _this.stripeCalculatedFee = amount * _this.breakdownDataSettings.StripeFeePercent / 100;\r\n _this.NPOCalculatedFee = amount * _this.breakdownDataSettings.NPOFeePercent / 100;\r\n _this.studentsReceives = (amount - _this.stripeCalculatedFee - _this.NPOCalculatedFee - _this.breakdownDataSettings.StripeFixedFee).toFixed(2);\r\n },\r\n amountAsInt() {\r\n var _this = this;\r\n var parsedAmount = parseInt(_this.amount.toString().replace(_this.amountPrefix, ''));\r\n if (parsedAmount > 9999) {\r\n parsedAmount = 9999;\r\n }\r\n if (isNaN(parsedAmount) || parsedAmount == \"\" || parsedAmount == \"undefined\" || parsedAmount < 1) {\r\n parsedAmount = 1;\r\n }\r\n return parsedAmount;\r\n }\r\n },\r\n mounted() {\r\n var _this = this;\r\n _this.formatAmountAndCalculate();\r\n }\r\n ,\ntemplate: `\r\n
\r\n
\r\n
{{amountTitlePhrase}}
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

{{amountHintPhrase}}

\r\n
\r\n
\r\n
\r\n -$\\{{stripeCalculatedFee.toFixed(3)}}\r\n

\r\n \"\" {{stripeFeePhrase}} ({{breakdownDataSettings.StripeFeePercent}}% + $\\{{breakdownDataSettings.StripeFixedFee.toFixed(2)}})\r\n

\r\n
\r\n
\r\n -$\\{{NPOCalculatedFee.toFixed(3)}}\r\n

{{npoFeePhrase}} ({{breakdownDataSettings.NPOFeePercent}}%)

\r\n
\r\n
\r\n
\r\n
{{receivesTitlePhrase}}
\r\n
$\\{{studentsReceives}}
\r\n

{{receivesHintPhrase}}

\r\n
\r\n
\r\n`\n});\nVue.component('donation-credit-card-info', {\r\n props: [\"showPayPalCard\"\r\n \r\n ],\r\n data: function () {\r\n return {}\r\n },\r\n methods: {},\r\n mounted() {\r\n var _this = this;\r\n },\r\n computed: {\r\n \r\n }\r\n ,\ntemplate: `\r\n
\r\n \r\n \"Visa\"\r\n \r\n \r\n \"Mastercard\"\r\n \r\n \r\n \"Amex\"\r\n \r\n \r\n \"Discover\"\r\n \r\n \r\n \"Paypal\"\r\n \r\n \r\n \"Paypal\"\r\n \r\n \r\n \"applePay\"\r\n \r\n \r\n \"gpay\"\r\n \r\n
\r\n`\n});\nVue.component('donation-footer', {\r\n props: [],\r\n data: function () {\r\n return {\r\n phrases: {\r\n donateCryptoUrlPhrase: PhrasesService.shared.getPhrase('donation_donatecryptourl'),\r\n donateCryptoUrlTitlePhrase: PhrasesService.shared.getPhrase('donation_donatecryptourltitle'),\r\n }\r\n }\r\n },\r\n methods: {},\r\n mounted() {},\r\n computed: {}\r\n ,\ntemplate: `\r\n
\r\n \r\n {{phrases.donateCryptoUrlTitlePhrase}} \r\n \"\"\r\n \r\n
\r\n`\n});\nVue.component('donation-product', {\r\n props: ['product', 'showAnyAmountOption', 'minAmountErrorMessagePhrase', 'productQuantity', 'monthlyCombinedProductHintPhrase', 'oneTimeCombinedProductHintPhrase'],\r\n data: function () {\r\n return {\r\n showAnyAmountError: false,\r\n };\r\n },\r\n methods: {\r\n checkProduct(product) {\r\n var _this = this;\r\n product.Checked = true;\r\n _this.productQuantity = 1;\r\n _this.product.Quantity = 1;\r\n _this.$emit('unCheckAllProductsExeptChecked', product);\r\n _this.$emit('resetOneTimeAnyAmount', product);\r\n },\r\n checkAnyAmount() {\r\n var _this = this;\r\n _this.showAnyAmountError = false;\r\n var value = parseInt(_this.product.Amount);\r\n if (value < _this.product.MinAmount) {\r\n _this.showAnyAmountError = true;\r\n }\r\n\r\n if (!value) {\r\n value = _this.product.MinAmount;\r\n }\r\n\r\n _this.product.Amount = Math.min(999999, Math.max(_this.product.MinAmount, _this.product.Amount));\r\n },\r\n checkAnyAmountInput() {\r\n var _this = this;\r\n _this.showAnyAmountError = false;\r\n var value = parseInt(_this.product.Amount);\r\n\r\n if (value <= 0) {\r\n _this.checkAnyAmount();\r\n }\r\n },\r\n hideAnyAmountOption(product) {\r\n var _this = this;\r\n product.Checked = false;\r\n _this.$emit('hideAnyAmountOption')\r\n _this.$emit('checkAtLeastOneMonthlyProduct', product);\r\n },\r\n isNumber(event) {\r\n if (event.key == '.') {\r\n event.preventDefault();\r\n }\r\n var keyCode = (event.which) ? event.which : event.keyCode;\r\n if ((keyCode > 31 && (keyCode < 48 || keyCode > 57)) && keyCode !== 46) {\r\n event.preventDefault();\r\n _this.showAnyAmountError = true;\r\n } else {\r\n return true;\r\n }\r\n },\r\n getAmountErrorMessage() {\r\n var _this = this;\r\n return _this.minAmountErrorMessagePhrase.replace('[amount]', _this.product.MinAmount);\r\n },\r\n getProductHint(product) {\r\n var _this = this;\r\n if (product.PaymentTerm == 1 && product.ProductType == 3) {\r\n return _this.monthlyCombinedProductHintPhrase;\r\n }\r\n\r\n if (product.PaymentTerm == 2 && product.ProductType == 3) {\r\n return _this.oneTimeCombinedProductHintPhrase;\r\n }\r\n\r\n return product.Hint;\r\n },\r\n setOneTimeAnyAmountDefaultValue() {\r\n var _this = this;\r\n var product = _this.product;\r\n if (product.AmountType == 1\r\n && product.PaymentTerm == 2\r\n && product.Amount == 0) {\r\n product.Amount = '';\r\n }\r\n },\r\n },\r\n mounted() {\r\n var _this = this;\r\n _this.setOneTimeAnyAmountDefaultValue();\r\n },\r\n computed: {\r\n productTotalAmount() {\r\n var _this = this;\r\n _this.product.Quantity = _this.product.PaymentTerm == 1 ? _this.productQuantity : 1;\r\n var productTotalAmount = _this.product.Checked ? _this.product.Quantity * _this.product.Amount : _this.product.Amount;\r\n return productTotalAmount;\r\n }\r\n }\r\n ,\ntemplate: `\r\n
\r\n\r\n
\r\n

\r\n $\\{{productTotalAmount}}\r\n \r\n

\r\n {{ product.Title }}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

{{product.AmountPreffix}}

\r\n
\r\n $\r\n \r\n
\r\n

{{getAmountErrorMessage()}}

\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n Or Any Amount\r\n
\r\n \r\n $\r\n
\r\n

Minimum amount: 3 USD

\r\n
\r\n
\r\n`\n});\nVue.component('message', {\r\n props: ['message', 'messageClass', 'icon', 'showButton'],\r\n data: function () {\r\n return {\r\n messageClassName: null\r\n }\r\n },\r\n methods: {\r\n getMessageClass() {\r\n var _this = this;\r\n _this.messageClassName = \"auth__message--\" + _this.messageClass;\r\n return _this.messageClassName;\r\n },\r\n redirectToSignIn() {\r\n var _this = this;\r\n _this.$emit('redirectToSignIn');\r\n }\r\n },\r\n mounted() {\r\n },\r\n computed:{\r\n }\r\n ,\ntemplate: `\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n {{message}}\r\n\r\n \r\n Sign in\r\n \r\n

\r\n
\r\n
\r\n`\n});\nVue.component('profile-info', {\r\n props: [],\r\n data: function () {\r\n var userInfo = SettingsService.shared.data.userInfo;\r\n return {\r\n apiBaseUrl: SettingsService.shared.data.apiBaseUrl,\r\n userData: userInfo,\r\n userInfo: {\r\n name: { value: userInfo.Name, error: null },\r\n surname: { value: userInfo.Surname, error: null },\r\n fullName: { value: userInfo.FullName, error: null },\r\n email: { value: userInfo.Email, error: null },\r\n isAnonymous: { value: userInfo.IsAnonymous, error: null }\r\n },\r\n passwordInfo: {\r\n oldPassword: { value: null, error: null, type: 'password' },\r\n newPassword: { value: null, error: null, type: 'password' },\r\n repeatPassword: { value: null, error: null, type: 'password' }\r\n },\r\n showUpdateProfileSpinner: false,\r\n showChangePasswordSpinner: false,\r\n userEmail: null,\r\n phrases: {\r\n deleteImageButton: PhrasesService.shared.getPhrase('profile_deleteimagebutton'),\r\n updateProfileTitle: PhrasesService.shared.getPhrase('profile_updateprofiletitle'),\r\n name: PhrasesService.shared.getPhrase('profile_name'),\r\n surname: PhrasesService.shared.getPhrase('profile_surname'),\r\n email: PhrasesService.shared.getPhrase('profile_email'),\r\n anonymous: PhrasesService.shared.getPhrase('profile_anonymous'),\r\n updateProfileButton: PhrasesService.shared.getPhrase('profile_updateprofilebutton'),\r\n updatePasswordTitle: PhrasesService.shared.getPhrase('profile_updatepasswordtitle'),\r\n oldPassword: PhrasesService.shared.getPhrase('profile_oldpassword'),\r\n newPassword: PhrasesService.shared.getPhrase('profile_newpassword'),\r\n repeatPassword: PhrasesService.shared.getPhrase('profile_repeatpassword'),\r\n changePasswordButton: PhrasesService.shared.getPhrase('profile_changepasswordbutton'),\r\n fieldRequired: PhrasesService.shared.getPhrase('profile_fieldrequired'),\r\n passwordNotMatched: PhrasesService.shared.getPhrase('profile_passwordnotmatched'),\r\n emailNotValid: PhrasesService.shared.getPhrase('profile_emailnotvaliderrormessage'),\r\n imageUpdatedSuccessMessage: PhrasesService.shared.getPhrase('profile_imageuploadedsuccessmessage'),\r\n imageDeletedSuccessMessage: PhrasesService.shared.getPhrase('profile_imagedeletedsuccessmessage'),\r\n passwordChangedSuccessMessage: PhrasesService.shared.getPhrase('profile_passwordupdatedsuccessmessage'),\r\n profileinfoupdatedsuccessmessage: PhrasesService.shared.getPhrase('profile_profileinfoupdatedsuccessmessage'),\r\n minAmountErrorMessagePhrase: PhrasesService.shared.getPhrase('donation_minamounterrormessage'),\r\n },\r\n };\r\n },\r\n methods: {\r\n getFieldErrorClass(field) {\r\n return { 'has-error': field.error };\r\n },\r\n showHidePassword(field) {\r\n if (field.type == 'password') {\r\n field.type = 'text';\r\n return;\r\n }\r\n field.type = 'password';\r\n },\r\n clearAllValidation() {\r\n var _this = this;\r\n _this.userInfo.name.error = null;\r\n _this.userInfo.surname.error = null;\r\n _this.userInfo.email.error = null;\r\n _this.passwordInfo.oldPassword.error = null;\r\n _this.passwordInfo.newPassword.error = null;\r\n _this.passwordInfo.repeatPassword.error = null;\r\n },\r\n resetPasswordInfo() {\r\n var _this = this;\r\n _this.passwordInfo.oldPassword.value = null;\r\n _this.passwordInfo.newPassword.value = null;\r\n _this.passwordInfo.repeatPassword.value = null;\r\n },\r\n validatePasswordInfo() {\r\n var _this = this;\r\n var isValid = true;\r\n _this.clearAllValidation();\r\n var passInfo = _this.passwordInfo;\r\n if (_this.userData.PasswordSetByUser && !passInfo.oldPassword.value) {\r\n _this.passwordInfo.oldPassword.error = _this.phrases.oldPassword + ' ' + _this.phrases.fieldRequired;\r\n isValid = false;\r\n }\r\n\r\n if (!passInfo.newPassword.value) {\r\n _this.passwordInfo.newPassword.error = _this.phrases.newPassword + ' ' + _this.phrases.fieldRequired;\r\n isValid = false;\r\n }\r\n\r\n if (!passInfo.repeatPassword.value) {\r\n _this.passwordInfo.repeatPassword.error = _this.phrases.repeatPassword + ' ' + _this.phrases.fieldRequired;\r\n isValid = false;\r\n }\r\n\r\n if (passInfo.newPassword.value != passInfo.repeatPassword.value) {\r\n _this.passwordInfo.repeatPassword.error = _this.phrases.passwordNotMatched;\r\n isValid = false;\r\n }\r\n return isValid;\r\n },\r\n validateUserInfo() {\r\n var _this = this;\r\n var isValid = true;\r\n _this.clearAllValidation();\r\n if (!_this.userInfo.name.value) {\r\n _this.userInfo.name.error = _this.phrases.name + ' ' + _this.phrases.fieldRequired;\r\n isValid = false;\r\n }\r\n\r\n if (!_this.userInfo.surname.value) {\r\n _this.userInfo.surname.error = _this.phrases.surname + ' ' + _this.phrases.fieldRequired;\r\n isValid = false;\r\n }\r\n\r\n if (!_this.userInfo.email.value) {\r\n _this.userInfo.email.error = _this.phrases.email + ' ' + _this.phrases.fieldRequired;\r\n isValid = false;\r\n }\r\n\r\n if (_this.userInfo.email.value) {\r\n var isEmailValid = (/^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/).test(_this.userInfo.email.value);\r\n if (!isEmailValid) {\r\n _this.userInfo.email.error = _this.phrases.emailNotValid;\r\n isValid = false;\r\n }\r\n }\r\n\r\n return isValid;\r\n },\r\n async changePassword() {\r\n var _this = this;\r\n\r\n _this.showChangePasswordSpinner = true;\r\n\r\n var captchaToken = await window._executeRecaptcha();\r\n\r\n var isValid = _this.validatePasswordInfo();\r\n if (!isValid) {\r\n _this.showChangePasswordSpinner = false;\r\n return;\r\n }\r\n var data = {\r\n oldPassword: _this.passwordInfo.oldPassword.value,\r\n newPassword: _this.passwordInfo.newPassword.value,\r\n repeatPassword: _this.passwordInfo.repeatPassword.value,\r\n captchaToken: captchaToken\r\n }\r\n\r\n await ApiService.shared._makeHttpDataPostRequest(_this.apiBaseUrl, 'profile/changePassword', data)\r\n .then((result) => {\r\n if (result.success) {\r\n _this.showChangePasswordSpinner = false;\r\n _this.userData.PasswordSetByUser = true;\r\n _this.resetPasswordInfo();\r\n AlertService.shared.showSuccess(_this.phrases.passwordChangedSuccessMessage);\r\n }\r\n })\r\n .catch((error) => {\r\n _this.showChangePasswordSpinner = false;\r\n AlertService.shared.showError(error.data.message)\r\n });\r\n\r\n _this.showChangePasswordSpinner = false;\r\n },\r\n async updateUserInfo() {\r\n var _this = this;\r\n _this.showUpdateProfileSpinner = true;\r\n\r\n var captchaToken = await window._executeRecaptcha();\r\n\r\n var isValid = _this.validateUserInfo();\r\n if (!isValid) {\r\n _this.showUpdateProfileSpinner = false;\r\n return;\r\n }\r\n\r\n var data = {\r\n Name: _this.userInfo.name.value,\r\n Surname: _this.userInfo.surname.value,\r\n Email: _this.userInfo.email.value,\r\n IsAnonymous: _this.userInfo.isAnonymous.value,\r\n captchaToken: captchaToken\r\n };\r\n await ApiService.shared._makeHttpDataPostRequest(_this.apiBaseUrl, 'profile/updateProfile', data)\r\n .then((result) => {\r\n _this.showUpdateProfileSpinner = false;\r\n if (result.success) {\r\n _this.userInfo.name.value = result.data.name;\r\n _this.userInfo.surname.value = result.data.surname;\r\n _this.userInfo.fullName.value = result.data.fullname;\r\n _this.userInfo.email.value = result.data.email;\r\n AlertService.shared.showSuccess(_this.phrases.profileinfoupdatedsuccessmessage);\r\n } else {\r\n AlertService.shared.showError(result)\r\n }\r\n })\r\n .catch((error) => {\r\n _this.showUpdateProfileSpinner = false;\r\n AlertService.shared.showError(error.data.message)\r\n });\r\n\r\n },\r\n async deleteImage() {\r\n var _this = this;\r\n\r\n if (!confirm(\"Do you want to delete your photo?\")) {\r\n return;\r\n }\r\n\r\n var captchaToken = await window._executeRecaptcha();\r\n\r\n var data = {\r\n captchaToken: captchaToken\r\n }\r\n await ApiService.shared._makeHttpDataPostRequest(_this.apiBaseUrl, 'profile/DeleteProfilePhoto', data)\r\n .then((result) => {\r\n if (result.success) {\r\n _this.userData.PhotoUrl = null;\r\n _this.userData.HasPhoto = false;\r\n AlertService.shared.showSuccess(_this.phrases.imageDeletedSuccessMessage);\r\n }\r\n })\r\n .catch((error) => {\r\n AlertService.shared.showError(error.data.message)\r\n });\r\n\r\n },\r\n async uploadImage() {\r\n var _this = this;\r\n\r\n var captchaToken = await window._executeRecaptcha();\r\n var files = _this.$refs.file.files;\r\n var reader = new FileReader();\r\n reader.onload = function (e) {\r\n _this.userData.PhotoUrl = e.target.result;\r\n };\r\n reader.readAsDataURL(files[0]);\r\n\r\n await ApiService.shared._makeHttpFilePostRequest('profile/uploadProfileImage', files[0], '', captchaToken)\r\n .then((result) => {\r\n if (result.success) {\r\n _this.userData.HasPhoto = true;\r\n _this.userData.PhotoUrl = result.data.photoUrl;\r\n AlertService.shared.showSuccess(_this.phrases.imageUpdatedSuccessMessage);\r\n } else {\r\n AlertService.shared.showError(result);\r\n }\r\n })\r\n .catch((error) => {\r\n AlertService.shared.showError(error.data.message)\r\n });\r\n }\r\n },\r\n mounted() {\r\n var _this = this;\r\n _this.userEmail = _this.userData.Email;\r\n }\r\n ,\ntemplate: `\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{userData.NameInitial}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n

{{userInfo.fullName.value}}

\r\n {{userEmail}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{phrases.updateProfileTitle}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{userInfo.name.error}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{userInfo.surname.error}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

{{userInfo.email.error}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

{{phrases.updatePasswordTitle}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n

{{passwordInfo.oldPassword.error}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n

{{passwordInfo.newPassword.error}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n

{{passwordInfo.repeatPassword.error}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n`\n});\nVue.component('profile-payments', {\r\n props: {\r\n isUserActiveDonor: Boolean,\r\n productQuantity: Number\r\n },\r\n data: function () {\r\n return {\r\n donationPayments: SettingsService.shared.data.donationPayments,\r\n donationInfo: SettingsService.shared.data.donationInfo,\r\n projects: SettingsService.shared.data.projects,\r\n donateUrl: SettingsService.shared.data.donateUrl,\r\n nextPayment: SettingsService.shared.data.nextPayment,\r\n apiBaseUrl: SettingsService.shared.data.apiBaseUrl,\r\n allProducts: [],\r\n showDonationInfo: false,\r\n showDonationBox: false,\r\n showDonationPayments: false,\r\n showLoadMoreButton: false,\r\n isAnyAmountPopupOpened: false,\r\n checkedProjectId: null,\r\n selectedProductAmountType: null,\r\n administrativeTip: null,\r\n sendingUpdateAmountData: false,\r\n isDonationUpdatedFromCancelation: false,\r\n productTypes: {\r\n monthly: 1,\r\n onetime: 2,\r\n combined: 3\r\n },\r\n phrases: {\r\n donationInfo: {\r\n title: PhrasesService.shared.getPhrase('profile_donationinfotitle'),\r\n description: PhrasesService.shared.getPhrase('profile_donationinfodescription'),\r\n descriptionHint: PhrasesService.shared.getPhrase('profile_donationinfodescriptionhint'),\r\n donatingProjectDescription: PhrasesService.shared.getPhrase('profile_donationinfodonatingprojectdescription'),\r\n changeCountryButton: PhrasesService.shared.getPhrase('profile_donationinfochangecountrybutton'),\r\n monthlyAmountTitle: PhrasesService.shared.getPhrase('profile_donationinfomonthlyamounttitle'),\r\n updateAmountButton: PhrasesService.shared.getPhrase('profile_donationinfoupdateamountbutton'),\r\n sponsoringproductdescription: PhrasesService.shared.getPhrase('profile_donationinfosponsoringproductdescription'),\r\n noDonation: PhrasesService.shared.getPhrase('profile_nodonationdescription'),\r\n donationButton: PhrasesService.shared.getPhrase('profile_donatebutton'),\r\n },\r\n donationBox: {\r\n title: PhrasesService.shared.getPhrase('profile_donationboxtitle'),\r\n backButton: PhrasesService.shared.getPhrase('profile_donationboxbackbutton'),\r\n totalAmount: PhrasesService.shared.getPhrase('profile_donationboxtotalamount'),\r\n anyAmountText: PhrasesService.shared.getPhrase('profile_donationboxanyamounttext'),\r\n anyAmountUrlTitle: PhrasesService.shared.getPhrase('profile_donationboxanyamounturltitle'),\r\n allocationTitle: PhrasesService.shared.getPhrase('profile_donationboxallocationtitle'),\r\n allocationTitleHint: PhrasesService.shared.getPhrase('profile_donationboxallocationhint'),\r\n updateAmountButton: PhrasesService.shared.getPhrase('profile_donationboxupdateamountbutton'),\r\n specificCountryDescription: PhrasesService.shared.getPhrase('profile_donationboxspecificcountrydescription'),\r\n specificCountryUrlTitle: PhrasesService.shared.getPhrase('profile_donationboxspecificcountryurl'),\r\n countryDescriptionPhrase: PhrasesService.shared.getPhrase('profile_donationboxcountrydescription'),\r\n countryUrlTitle: PhrasesService.shared.getPhrase('profile_donationboxcountrydescriptionurl'),\r\n setNOfStudentsUrlTitle: PhrasesService.shared.getPhrase('profile_donationboxsetnofstudentsurltitle'),\r\n minAmountErrorMessagePhrase: PhrasesService.shared.getPhrase('profile_donationminamounterrormessage'),\r\n },\r\n donationPayments: {\r\n title: PhrasesService.shared.getPhrase('profile_paymentstitle'),\r\n status: PhrasesService.shared.getPhrase('profile_paymentsstatus'),\r\n date: PhrasesService.shared.getPhrase('profile_paymentsdate'),\r\n amount: PhrasesService.shared.getPhrase('profile_paymentsamount'),\r\n loadMoreButton: PhrasesService.shared.getPhrase('profile_paymentsloadmorebutton'),\r\n },\r\n donationProgram: {\r\n title: PhrasesService.shared.getPhrase('profile_selectprogramtitle'),\r\n button: PhrasesService.shared.getPhrase('profile_selectprogrambutton'),\r\n },\r\n donationProduct: {\r\n monthlyCombinedProductHintPhrase: PhrasesService.shared.getPhrase('profile_monthlycombinedproducthintphrase'),\r\n }\r\n },\r\n activeDonationProductQuantity: 1\r\n };\r\n },\r\n methods: {\r\n loadMore() {\r\n var _this = this;\r\n _this.donationPayments.filter(p => !p.Show)\r\n .forEach(p => { p.Show = true; });\r\n _this.showLoadMoreButton = false;\r\n },\r\n openDonationBox() {\r\n var _this = this;\r\n _this.scrollToTop();\r\n if (!_this.showDonationBox) {\r\n _this.showDonationInfo = false;\r\n _this.showDonationBox = true;\r\n setTimeout(function () {\r\n _this.createSlider();\r\n //$('.donation-options__single, .donation-options__any-amount').equalHeights();\r\n }, 0);\r\n }\r\n\r\n if (_this.selectedProductAmountType == 1) {\r\n _this.openAnyAmountPopup();\r\n } else {\r\n _this.isAnyAmountPopupOpened = false;\r\n }\r\n },\r\n closeDonationBox() {\r\n var _this = this;\r\n _this.showDonationInfo = true;\r\n _this.showDonationBox = false;\r\n _this.donationInfo.Products = _this.cloneArray(_this.allProducts);\r\n _this.selectedProductAmountType = _this.getSelectedProductAmountType(_this.allProducts);\r\n _this.isAnyAmountPopupOpened = false;\r\n _this.isDonationUpdatedFromCancelation = false;\r\n _this.administrativeTip = _this.donationInfo.AdministrativeTip;\r\n _this.productQuantity = _this.activeDonationProductQuantity;\r\n },\r\n checkAtLeastOneProduct(product) {\r\n var _this = this;\r\n _this.donationInfo.Products[0].Checked = true;\r\n _this.donationInfo.Products[0].Quantity = 1;\r\n _this.productQuantity = 1;\r\n },\r\n openAnyAmountPopup() {\r\n var _this = this;\r\n _this.isAnyAmountPopupOpened = true;\r\n _this.uncheckAllCheckedProducts();\r\n _this.checkAnyAmountProduct();\r\n },\r\n closeAnyAmountPopup() {\r\n var _this = this;\r\n _this.isAnyAmountPopupOpened = false;\r\n var anyAmountProduct = _this.donationInfo.Products.filter(p => p.AmountType == 1)[0];\r\n anyAmountProduct.Checked = false;\r\n _this.checkAtLeastOneProduct(anyAmountProduct);\r\n },\r\n showLoadButton() {\r\n var _this = this;\r\n if (_this.donationPayments && _this.donationPayments.length > 7) {\r\n return _this.showLoadMoreButton = true;\r\n }\r\n return _this.showLoadMoreButton = false;\r\n },\r\n getSelectedProducts() {\r\n var _this = this;\r\n var selectedProducts = _this.donationInfo.Products.filter(p => p.Checked);\r\n\r\n return selectedProducts;\r\n },\r\n uncheckAllCheckedProducts() {\r\n var _this = this;\r\n _this.donationInfo.Products\r\n .filter(p => p.Checked)\r\n .forEach(p => p.Checked = false);\r\n },\r\n checkAnyAmountProduct() {\r\n var _this = this;\r\n _this.donationInfo.Products\r\n .filter(p => p.AmountType == 1)\r\n .forEach(p => p.Checked = true);\r\n },\r\n cloneArray(products) {\r\n if (products)\r\n return products.map(function (e) { return Object.assign({}, e); });\r\n },\r\n getSelectedProductAmountType(products) {\r\n if (products) {\r\n var getSelectedProducts = products.filter(p => p.Checked);\r\n return getSelectedProducts[0].AmountType;\r\n }\r\n },\r\n createSlider() {\r\n var _this = this;\r\n var allocationrange = _this.$refs.allocationrange;\r\n noUiSlider.create(allocationrange, {\r\n connect: [true, false],\r\n start: [_this.administrativeTip],\r\n step: 5,\r\n range: {\r\n 'min': [0],\r\n 'max': [100]\r\n }\r\n });\r\n allocationrange.noUiSlider.on('update', function (values, handle) {\r\n _this.administrativeTip = parseFloat(values[handle]);\r\n });\r\n },\r\n openProgramPopUp() {\r\n $.fancybox.open({ src: '#countriesList', modal: true });\r\n },\r\n selectProgram() {\r\n $.fancybox.close();\r\n },\r\n closeProgramPopUp() {\r\n var _this = this;\r\n _this.checkedProjectId = _this.donationInfo.ProjectId;\r\n $.fancybox.close();\r\n },\r\n replaceSponsoringProductDescriptionPhrase(productTitle, productQuantity) {\r\n var _this = this;\r\n var phrase = _this.phrases.donationInfo.sponsoringproductdescription;\r\n var replacedPhrase = phrase\r\n .replace('[ProductTitle]', productTitle)\r\n .replace('[ProductQuantity]', productQuantity);\r\n return replacedPhrase;\r\n },\r\n formatAmount(amount) {\r\n return amount.toFixed(2);\r\n },\r\n getTotalAmountPhrase() {\r\n var _this = this;\r\n var phrase = _this.phrases.donationBox.updateAmountButton;\r\n var formatedAmount = _this.formatAmount(_this.totalAmount);\r\n var html = `${formatedAmount}`;\r\n var replacedPhraseHtml = phrase.replace('[totalAmount]', html);\r\n var spinnerHtml = '
';\r\n return spinnerHtml + replacedPhraseHtml;\r\n },\r\n getTotalDonationAmountPhrase() {\r\n var _this = this;\r\n var phrase = _this.phrases.donationBox.totalAmount;\r\n var replacedPhrase = phrase.replace('[totalDonationAmount]', _this.totalDonationAmount);\r\n return replacedPhrase;\r\n },\r\n getPostData(captchaToken) {\r\n var _this = this;\r\n var products = [];\r\n var selectedProducts = _this.getSelectedProducts();\r\n\r\n var combinedProduct = selectedProducts.find(p => p.ProductType == _this.productTypes.combined);\r\n if (combinedProduct) {\r\n selectedProducts = _this.donationInfo.Products\r\n .filter(p => p != combinedProduct && p.AmountType == 0);\r\n\r\n selectedProducts.forEach(p => p.Quantity = _this.productQuantity);\r\n }\r\n\r\n selectedProducts.forEach(function (product) {\r\n products.push({\r\n ProductId: product.ProductId,\r\n ItemQuantity: parseInt(product.Quantity),\r\n ItemAmount: parseInt(product.Amount)\r\n });\r\n });\r\n var data = {\r\n ProjectId: _this.checkedProjectId,\r\n AdministrativeTip: _this.administrativeTip,\r\n Products: products,\r\n DonationId: _this.donationInfo.DonationId,\r\n DonationPublicId: _this.donationInfo.DonationPublicId,\r\n IsDonationUpdatedFromCancelation: _this.isDonationUpdatedFromCancelation,\r\n captchaToken: captchaToken\r\n };\r\n return data;\r\n },\r\n getProgramDescription() {\r\n var _this = this;\r\n var project = _this.projects.find(p => p.ProjectId == _this.checkedProjectId);\r\n if (project) {\r\n var projectTitle = project.IsGeneralFund ? project.Title : project.CountryTitle;\r\n return _this.phrases.donationBox.countryDescriptionPhrase.replace('[country]', projectTitle);\r\n }\r\n },\r\n getProgramUrlTitle() {\r\n var _this = this;\r\n return _this.phrases.countryUrlPhrase;\r\n },\r\n addCombinedProductsToProducts() {\r\n var _this = this;\r\n var productsList = [];\r\n var combinedProduct = _this.donationInfo.Products.find(p => p.ProductType == _this.productTypes.combined);\r\n if (combinedProduct) {\r\n return;\r\n }\r\n\r\n var monthlyProducts = _this.donationInfo.Products.filter(p => p.AmountType == 0);\r\n var anyAmountProduct = _this.donationInfo.Products.filter(p => p.AmountType == 1);\r\n var checkedProducts = _this.donationInfo.Products.filter(p => p.Checked);\r\n\r\n var combinedMonthlyProduct = {\r\n Amount: monthlyProducts[0].Amount + monthlyProducts[1].Amount,\r\n Title: monthlyProducts[0].Title + ' + ' + monthlyProducts[1].Title,\r\n Checked: checkedProducts.length > 1,\r\n AmountType: 0,\r\n PaymentTerm: 1,\r\n PhotoOnProfileUrl: monthlyProducts[0].PhotoOnProfileUrl,\r\n Quantity: _this.productQuantity,\r\n ProductType: _this.productTypes.combined\r\n }\r\n\r\n if (checkedProducts.length == 2) {\r\n _this.donationInfo.Products.forEach(p => p.Checked = false);\r\n }\r\n\r\n productsList.push(...monthlyProducts);\r\n productsList.push(combinedMonthlyProduct);\r\n productsList.push(anyAmountProduct[0]);\r\n\r\n _this.donationInfo.Products = productsList;\r\n },\r\n plus() {\r\n var _this = this;\r\n _this.productQuantity = parseInt(_this.productQuantity) + 1;\r\n },\r\n minus() {\r\n var _this = this;\r\n if (_this.productQuantity == 1) {\r\n return;\r\n }\r\n _this.productQuantity = parseInt(_this.productQuantity) - 1;\r\n },\r\n isNumber(event) {\r\n if (event.key == '.') {\r\n event.preventDefault();\r\n }\r\n var keyCode = (event.which) ? event.which : event.keyCode;\r\n if ((keyCode > 31 && (keyCode < 48 || keyCode > 57)) && keyCode !== 46) {\r\n event.preventDefault();\r\n _this.showAnyAmountError = true;\r\n } else {\r\n return true;\r\n }\r\n },\r\n checkQuantity() {\r\n var _this = this;\r\n var value = parseInt(_this.productQuantity);\r\n\r\n if (value == 0 || !value) {\r\n }\r\n _this.productQuantity = Math.min(9999, Math.max(1, _this.productQuantity));\r\n },\r\n checkQuantityInput() {\r\n var _this = this;\r\n var value = parseInt(_this.productQuantity);\r\n if (!value)\r\n return;\r\n\r\n _this.checkQuantity();\r\n },\r\n unCheckAllProductsExeptChecked(product) {\r\n var _this = this;\r\n _this.productQuantity = 1;\r\n _this.donationInfo.Products.filter(p => p != product && p.AmountType == 0).forEach(p => p.Checked = false);\r\n },\r\n scrollToTop() {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'smooth'\r\n });\r\n },\r\n async updateAmount() {\r\n var _this = this;\r\n if (_this.sendingUpdateAmountData) return;\r\n\r\n var captchaToken = await window._executeRecaptcha();\r\n var data = _this.getPostData(captchaToken);\r\n _this.sendingUpdateAmountData = true;\r\n await ApiService.shared._makeHttpDataPostRequest(_this.apiBaseUrl, 'donation/CreateDonationWithActivePaymentMethod', data)\r\n .then((result) => {\r\n if (result.success) {\r\n _this.sendingUpdateAmountData = false;\r\n AlertService.shared.showSuccess('Donation updated successfully');\r\n setTimeout(function () {\r\n window.location.reload();\r\n }, 3000);\r\n }\r\n })\r\n .catch((error) => {\r\n _this.sendingUpdateAmountData = false;\r\n AlertService.shared.showError(error.data.message);\r\n });\r\n },\r\n },\r\n mounted() {\r\n var _this = this;\r\n _this.scrollToTop();\r\n _this.showDonationInfo = true;\r\n _this.productQuantity = parseInt(_this.productQuantity)\r\n if (_this.donationInfo) {\r\n _this.addCombinedProductsToProducts();\r\n _this.checkedProjectId = _this.donationInfo.ProjectId;\r\n _this.selectedProductAmountType = _this.getSelectedProductAmountType(_this.donationInfo.Products);\r\n _this.allProducts = _this.cloneArray(_this.donationInfo.Products);\r\n _this.administrativeTip = _this.donationInfo.AdministrativeTip;\r\n _this.activeDonationProductQuantity = _this.productQuantity;\r\n }\r\n\r\n if (_this.donationPayments && _this.donationPayments.length > 0) {\r\n _this.showDonationPayments = true;\r\n _this.showLoadButton();\r\n }\r\n },\r\n computed: {\r\n totalAmount() {\r\n var _this = this;\r\n var totalAmount = _this.totalDonationAmount + (_this.totalDonationAmount * _this.administrativeTip / 100);\r\n return totalAmount;\r\n },\r\n totalDonationAmount() {\r\n var _this = this;\r\n var selectedProducts = _this.getSelectedProducts();\r\n var donationProductTotal = 0;\r\n for (var i = 0; i < selectedProducts.length; i++) {\r\n donationProductTotal += selectedProducts[i].Quantity * selectedProducts[i].Amount;\r\n }\r\n return donationProductTotal;\r\n }\r\n }\r\n ,\ntemplate: `\r\n
\r\n \r\n
\r\n
\r\n

{{phrases.donationInfo.title}}

\r\n
\r\n
\r\n
\r\n
\r\n
{{phrases.donationInfo.monthlyAmountTitle}}
\r\n
\r\n $\\{{donationInfo.Amount | formatAmount}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{phrases.donationInfo.descriptionHint}}

\r\n
\r\n
\r\n
\r\n

{{phrases.donationInfo.description}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{phrases.donationInfo.descriptionHint}}

\r\n
\r\n
\r\n
\r\n

{{phrases.donationInfo.description}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n {{phrases.donationInfo.donatingProjectDescription}} {{donationInfo.ProjectTitle}}
\r\n {{phrases.donationInfo.changeCountryButton}}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{phrases.donationInfo.noDonation}}

\r\n {{phrases.donationInfo.donationButton}}\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n

{{phrases.donationBox.title}}

\r\n \r\n \r\n {{phrases.donationBox.backButton}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n

Choose number of students

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n

\r\n {{phrases.donationBox.anyAmountText}}
\r\n {{phrases.donationBox.anyAmountUrlTitle}}\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n {{phrases.donationBox.allocationTitle}} +{{administrativeTip}}%\r\n
\r\n \r\n
\r\n
\r\n

{{phrases.donationBox.allocationTitleHint}}

\r\n
\r\n
\r\n

\r\n
\r\n
0%
\r\n
\r\n
100%
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n {{getProgramDescription()}}\r\n {{phrases.donationBox.countryUrlTitle}} ?\r\n

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n

{{phrases.donationPayments.title}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{phrases.donationPayments.status}}{{phrases.donationPayments.date}}{{phrases.donationPayments.amount}}
{{nextPayment.Status}}{{nextPayment.Date}}$\\{{nextPayment.Amount | formatAmount}}
{{donationPayment.Status}}{{donationPayment.Date}}$\\{{donationPayment.Amount | formatAmount}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

{{phrases.donationProgram.title}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n`\n});\nVue.component('profile', {\r\n props: {\r\n isUserActiveDonor: Boolean,\r\n changeCardUrl: String,\r\n renewCardSucceeded: String,\r\n hasUserActivePaymentMethod: Boolean,\r\n productQuantity: Number\r\n },\r\n data: function () {\r\n return {\r\n userData: SettingsService.shared.data.userInfo,\r\n donationInfo: SettingsService.shared.data.donationInfo,\r\n paymentMethodInfo: SettingsService.shared.data.paymentMethodInfo,\r\n bannerDonateUrl: SettingsService.shared.data.donateUrl,\r\n apiBaseUrl: SettingsService.shared.data.apiBaseUrl,\r\n activeTab: 0,\r\n showDonationBox: false,\r\n showCardInfo: false,\r\n sendingCancelDonationData: false,\r\n renewCardSuccess: false,\r\n sendingUpdateAmountData: false,\r\n sendingDeletePaymentMethodData: false,\r\n amount: 1,\r\n phrases: {\r\n paymentsTab: PhrasesService.shared.getPhrase('profile_paymentstab'),\r\n profileInfoTab: PhrasesService.shared.getPhrase('profile_infotab'),\r\n card: {\r\n cardTitle: PhrasesService.shared.getPhrase('profile_cardinfotitle'),\r\n changecardbutton: PhrasesService.shared.getPhrase('profile_changecardbutton'),\r\n cardChangedSuccessMessage: PhrasesService.shared.getPhrase('profile_cardchangedsuccessmessage'),\r\n cardChangedErrorMessage: PhrasesService.shared.getPhrase('profile_cardchangederrormessage'),\r\n },\r\n donationCancelPopUp: {\r\n title: PhrasesService.shared.getPhrase('profile_donationcancelpopuptitle'),\r\n description: PhrasesService.shared.getPhrase('profile_donationcancelpopupdescription'),\r\n cancelButton: PhrasesService.shared.getPhrase('profile_donationcancelpopupcancelbutton'),\r\n updateAmountDescription: PhrasesService.shared.getPhrase('profile_donationcancelpopupupdateamountdescription'),\r\n updateAmountButton: PhrasesService.shared.getPhrase('profile_donationcancelpopupupdateamountbutton'),\r\n backButton: PhrasesService.shared.getPhrase('profile_donationcancelpopupbackbutton'),\r\n },\r\n afterDonationCanceledPopUp: {\r\n title: PhrasesService.shared.getPhrase('profile_afterdonationcanceledpopuptitle'),\r\n subTitle: PhrasesService.shared.getPhrase('profile_afterdonationcanceledpopupsubtitle'),\r\n description: PhrasesService.shared.getPhrase('profile_afterdonationcanceledpopupdescription'),\r\n button: PhrasesService.shared.getPhrase('profile_afterdonationcanceledpopupbutton'),\r\n buttonUrl: PhrasesService.shared.getPhrase('profile_afterdonationcanceledpopupbuttonurl'),\r\n },\r\n paymentMethod: {\r\n paymentMethodTitle: PhrasesService.shared.getPhrase('profile_paymentmethodinfotitle'),\r\n changePaymentMethodButton: PhrasesService.shared.getPhrase('profile_changepaymentmethod'),\r\n canceldonationbutton: PhrasesService.shared.getPhrase('profile_canceldonationbutton'),\r\n paymentMethodChangeSuccessMessage: PhrasesService.shared.getPhrase('profile_paymentmethodchangesuccessmessage'),\r\n paymentMethodChangeErrorMessage: PhrasesService.shared.getPhrase('profile_paymentmethodchangeerrormessage'),\r\n }\r\n },\r\n };\r\n },\r\n methods: {\r\n setActiveTab(tab, hash) {\r\n var _this = this;\r\n _this.activeTab = tab;\r\n window.location.hash = hash;\r\n },\r\n showCardInfo() {\r\n var _this = this;\r\n return _this.activeTab == 0 && _this.isUserActiveDonor;\r\n },\r\n openCancelDonationPopUp() {\r\n var _this = this;\r\n //_this.amount = _this.donationInfo.Products.filter(p => p.PaymentTerm == 1 && p.AmountType == 1)[0].MinAmount;\r\n _this.amount = Math.floor(_this.donationInfo.Amount / 2 / 100);\r\n _this.openPopUp('#cancelDonation');\r\n },\r\n openAfterCancelDonationPopUp() {\r\n var _this = this;\r\n _this.openPopUp('#afterCancelling');\r\n },\r\n openDeletePaymentMethodPopUp() {\r\n var _this = this;\r\n _this.openPopUp('#deletePaymentMethod');\r\n },\r\n openPopUp(popupId) {\r\n $.fancybox.open({ src: popupId, modal: true });\r\n },\r\n changeCard() {\r\n var _this = this;\r\n var redirectUrl = _this.changeCardUrl;\r\n if (_this.paymentMethodInfo) {\r\n redirectUrl += '?id=' + _this.paymentMethodInfo.Id + '&' + 'publicId=' + _this.paymentMethodInfo.PublicId;\r\n }\r\n window.location.href = redirectUrl;\r\n },\r\n closeAfterCancellingModal() {\r\n $.fancybox.close();\r\n location.reload();\r\n },\r\n processUrlHash() {\r\n var _this = this;\r\n if (window.location.hash.length > 1) {\r\n var element = _this.$refs[window.location.hash.substring(1)];\r\n if (element)\r\n element.click();\r\n }\r\n },\r\n removeQueryFromUrl() {\r\n window.history.replaceState('', '', window.location.href.split('?')[0]);\r\n },\r\n onHashChangeEvent() {\r\n var _this = this;\r\n $(window).on('hashchange', function () {\r\n _this.processUrlHash();\r\n });\r\n },\r\n showRenewCardResultMessage() {\r\n var _this = this;\r\n if (_this.renewCardSucceeded == \"true\") {\r\n AlertService.shared.showSuccess(_this.phrases.paymentMethod.paymentMethodChangeSuccessMessage);\r\n _this.removeQueryFromUrl();\r\n } else if (_this.renewCardSucceeded == \"false\") {\r\n AlertService.shared.showError(_this.phrases.paymentMethod.paymentMethodChangeErrorMessage);\r\n _this.removeQueryFromUrl();\r\n }\r\n },\r\n isNumber(event) {\r\n var keyCode = (event.which) ? event.which : event.keyCode;\r\n if ((keyCode > 31 && (keyCode < 48 || keyCode > 57)) && keyCode !== 46) {\r\n event.preventDefault();\r\n } else {\r\n return true;\r\n }\r\n },\r\n checkAnyAmount() {\r\n var _this = this;\r\n var value = parseInt(_this.amount);\r\n if (!value) {\r\n value = 1;\r\n }\r\n\r\n var minAmount = Math.floor(_this.donationInfo.Amount / 2 / 100);\r\n _this.amount = Math.min(999999, Math.max(minAmount, _this.amount));\r\n },\r\n openDonationBox() {\r\n var _this = this;\r\n\r\n if (_this.activeTab == 1)\r\n _this.setActiveTab(0);\r\n\r\n _this.$refs.profilePayments.uncheckAllCheckedProducts();\r\n _this.$refs.profilePayments.donationInfo.Products\r\n .filter(p => p.AmountType == 1)\r\n .forEach(p => { p.Checked = true; p.Amount = _this.amount });\r\n\r\n _this.$refs.profilePayments.selectedProductAmountType = 1;\r\n _this.$refs.profilePayments.isDonationUpdatedFromCancelation = true;\r\n _this.$refs.profilePayments.openDonationBox();\r\n $.fancybox.close();\r\n },\r\n async cancelDonation() {\r\n var _this = this;\r\n if (_this.sendingCancelDonationData || _this.sendingUpdateAmountData) return;\r\n var captchaToken = await window._executeRecaptcha();\r\n var data = {\r\n DonationId: _this.donationInfo.DonationId,\r\n DonationPublicId: _this.donationInfo.DonationPublicId,\r\n CaptchaToken: captchaToken,\r\n Gateway: _this.paymentMethodInfo.GatewayService\r\n };\r\n _this.sendingCancelDonationData = true;\r\n await ApiService.shared._makeHttpDataPostRequest(_this.apiBaseUrl, 'donation/canceldonation', data)\r\n .then((result) => {\r\n _this.sendingCancelDonationData = false;\r\n if (result.success) {\r\n $.fancybox.close();\r\n _this.isUserActiveDonor = false;\r\n _this.openPopUp('#afterCancelling');\r\n }\r\n })\r\n .catch((error) => {\r\n _this.sendingCancelDonationData = false;\r\n $.fancybox.close();\r\n AlertService.shared.showError(error.data.message)\r\n /* _this.showErrorPopUp(error.data.message);*/\r\n });\r\n },\r\n async deletePaymentMethod() {\r\n var _this = this;\r\n var captchaToken = await window._executeRecaptcha();\r\n var data = {\r\n CaptchaToken: captchaToken,\r\n PaymentMethodId: _this.paymentMethodInfo.Id,\r\n PaymentMethodPublicId: _this.paymentMethodInfo.PublicId,\r\n Gateway: _this.paymentMethodInfo.GatewayService\r\n };\r\n _this.sendingDeletePaymentMethodData = true;\r\n await ApiService.shared._makeHttpDataPostRequest(_this.apiBaseUrl, 'donation/deletepaymentmethod', data)\r\n .then((result) => {\r\n _this.sendingDeletePaymentMethodData = false;\r\n if (result.success) {\r\n AlertService.shared.showSuccess(\"Payment Method Delete Successfuly\");\r\n location.reload();\r\n }\r\n })\r\n .catch((error) => {\r\n _this.sendingDeletePaymentMethodData = false;\r\n AlertService.shared.showError(error.data.message)\r\n });\r\n }\r\n },\r\n mounted() {\r\n var _this = this;\r\n _this.processUrlHash();\r\n _this.onHashChangeEvent();\r\n _this.showRenewCardResultMessage();\r\n _this.bannerDonateUrl += '#bundle'\r\n }\r\n ,\ntemplate: `\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n

{{phrases.paymentMethod.paymentMethodTitle}}

\r\n {{phrases.paymentMethod.changePaymentMethodButton}}\r\n
\r\n
\r\n \r\n
\r\n \"\"\r\n

**** **** **** {{paymentMethodInfo.Pan}}

\r\n
\r\n\r\n \r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
Email
\r\n

{{paymentMethodInfo.PaymentGatewayCustomerEmail}}

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
Card Number
\r\n

**** {{paymentMethodInfo.Pan}}

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
Card Number
\r\n

**** {{paymentMethodInfo.Pan}}

\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
Card Number
\r\n

**** {{paymentMethodInfo.Pan}}

\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \"\"\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{phrases.donationCancelPopUp.title}}

\r\n \r\n
\r\n

{{phrases.donationCancelPopUp.updateAmountDescription}}

\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{phrases.afterDonationCanceledPopUp.title}}

\r\n
\r\n
\r\n

{{phrases.afterDonationCanceledPopUp.subTitle}}

\r\n
\r\n
\r\n

{{phrases.afterDonationCanceledPopUp.description}}

\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n

Delete Payment Method

\r\n
\r\n

Are you sure you want to delete this payment method?

\r\n \r\n
\r\n Delete\r\n
\r\n
\r\n
\r\n Back\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n`\n});\nVue.component('svg-icon', {\r\n props: ['icon'],\r\n data: function () {\r\n return {\r\n local: {},\r\n baseUrl: SettingsService.shared.data.baseUrl\r\n };\r\n },\r\n methods: {\r\n getIconUrl: function () {\r\n return this.baseUrl + 'm/i/icons.svg#' + this.icon;\r\n }\r\n },\r\n mounted() {\r\n }\r\n ,\ntemplate: `\r\n \r\n`\n});\n(function (target) {\r\n Vue.prototype.$settings = SettingsService.shared;\r\n Vue.prototype.$analytics = AnalyticsService.shared;\r\n Vue.prototype.$alert = AlertService.shared;\r\n Vue.$alert = AlertService.shared;\r\n var vueAppContainers = document.querySelectorAll('*[data-vue-app]');\r\n\r\n [].forEach.call(vueAppContainers, function (vueAppContainer) {\r\n new Vue({\r\n el: vueAppContainer\r\n });\r\n });\r\n})(window);\nsvg4everybody();\r\n\r\n(function () {\r\n\r\n $(window).on('load, scroll', function () {\r\n var scroll = $(window).scrollTop();\r\n (scroll >= 80) ? $('.header').toggleClass('scrolled', true) : $('.header').toggleClass('scrolled', false);\r\n (scroll >= 80) ? $('.announcement').toggleClass('scrolled', true) : $('.announcement').toggleClass('scrolled', false);\r\n (scroll >= 80) ? $('body').toggleClass('scrolled', true) : $('body').toggleClass('scrolled', false);\r\n });\r\n\r\n $('.js-trigger').on('click', function () {\r\n var _trigger = $(this);\r\n var _results = $(this).siblings('.js-results');\r\n _trigger.parent().toggleClass('open');\r\n _results.stop().slideToggle();\r\n $('.js-trigger').not(_trigger).parent().removeClass('open');\r\n $('.js-results').not(_results).slideUp();\r\n return false;\r\n });\r\n\r\n $('.responsive-menu .js-responsive-submenu-trigger').on('click', function () {\r\n var _trigger = $(this);\r\n var _results = $(this).siblings('.js-responsive-submenu-results');\r\n _trigger.parent().toggleClass('open');\r\n _results.stop().slideToggle();\r\n $('.js-responsive-submenu-trigger').not(_trigger).parent().removeClass('open');\r\n $('.js-responsive-submenu-results').not(_results).slideUp();\r\n return false;\r\n });\r\n\r\n $('.js-responsive-menu-trigger').on('click', function () {\r\n if (window._isIntro) {\r\n return false;\r\n }\r\n $(this).parents('.header__burger').toggleClass('open');\r\n $(this).parents('.header__burger').siblings('.responsive-menu').toggleClass('open');\r\n $('body').toggleClass('noscroll');\r\n $('html').toggleClass('noscroll');\r\n return false;\r\n });\r\n\r\n $(document).on('click', function (e) {\r\n var $trigger = $('.js-trigger');\r\n if ($trigger !== e.target && !$trigger.has(e.target).length) {\r\n $('.js-trigger').parent().removeClass('open');\r\n $('.js-results').slideUp();\r\n }\r\n });\r\n\r\n $('.responsive-menu__content').on('click', function (e) {\r\n return e.target != e.currentTarget;\r\n });\r\n\r\n $(document).on('click', function (e) {\r\n if ($('.intro').is(':visible')) {\r\n return false;\r\n }\r\n \r\n var $menu = $('.responsive-menu__content');\r\n if ($menu !== e.target && !$menu.has(e.target).lenght) {\r\n $('.js-responsive-menu-trigger').parents('.header__burger').removeClass('open')\r\n $('.js-responsive-menu-trigger').parents('.header__burger').siblings('.responsive-menu').removeClass('open');\r\n $('body').removeClass('noscroll');\r\n $('html').removeClass('noscroll');\r\n }\r\n });\r\n\r\n //-------------------\r\n var breakpoint = window.matchMedia('(min-width: 1200px)');\r\n let destroyableSwiper = [];\r\n var breakpointChecker = function () {\r\n if (breakpoint.matches === true) {\r\n if (destroyableSwiper == undefined) return;\r\n destroyableSwiper.forEach(function (item) {\r\n item.destroy(true, true);\r\n });\r\n } else if (breakpoint.matches === false) {\r\n return enableSwiper();\r\n }\r\n };\r\n var enableSwiper = function () {\r\n $('.js-responsive-slider .swiper-container').each(function () {\r\n var $elem = $(this);\r\n var $paginationElem = $elem.parents('.js-responsive-slider').find('.swiper-pagination');\r\n destroyableSwiper.push(new Swiper($elem[0], {\r\n slidesPerView: 'auto',\r\n spaceBetween: 10,\r\n loop: true,\r\n pagination: {\r\n el: $paginationElem[0],\r\n clickable: true\r\n },\r\n breakpoints: {\r\n 768: {\r\n slidesPerView: 2,\r\n spaceBetween: 20\r\n }\r\n }\r\n }));\r\n });\r\n };\r\n\r\n breakpoint.addListener(breakpointChecker);\r\n breakpointChecker();\r\n //-------------------\r\n\r\n})();\r\n\r\n// ReCaptcha\r\n(function (target) {\r\n var widgetId = null;\r\n var recaptchaId = \"gi_igrc\";\r\n var latestPromise = null;\r\n\r\n var renderWait = function () {\r\n setTimeout(function () {\r\n if (typeof grecaptcha !== 'undefined' && grecaptcha.render) {\r\n render();\r\n }\r\n else {\r\n renderWait();\r\n }\r\n }, 200);\r\n }\r\n\r\n var render = function () {\r\n widgetId = grecaptcha.render(recaptchaId, {\r\n sitekey: window._data.reCaptchaSiteKey,\r\n size: 'invisible',\r\n badge: \"bottomright\",\r\n theme: \"dark\",\r\n callback: function (token) {\r\n latestPromise.resolve(token);\r\n grecaptcha.reset(widgetId);\r\n }\r\n });\r\n\r\n target._executeRecaptcha = function () {\r\n if (latestPromise != null) {\r\n latestPromise.reject();\r\n }\r\n\r\n var resolveCallback = null;\r\n var rejectCallback = null;\r\n\r\n latestPromise = new Promise(function (resolve, reject) {\r\n resolveCallback = resolve;\r\n rejectCallback = reject;\r\n });\r\n latestPromise.resolve = resolveCallback;\r\n latestPromise.reject = rejectCallback;\r\n\r\n grecaptcha.execute();\r\n return latestPromise;\r\n }\r\n }\r\n\r\n $(document.body).append('
');\r\n\r\n var script = document.createElement('script');\r\n script.src = 'https://www.google.com/recaptcha/api.js?render=explicit';\r\n script.onload = renderWait;\r\n document.head.appendChild(script);\r\n})(window);\r\n\r\n$(function () {\r\n if (!window.location.hash || window.location.hash.length < 2) {\r\n return;\r\n }\r\n\r\n\r\n var anchorElem = document.getElementById(window.location.hash.substr(1));\r\n if (!anchorElem) {\r\n return;\r\n }\r\n\r\n window.scrollTo(0, window.scrollY - 70);\r\n});\r\n\r\n\n(function (target) {\r\n target._stats = {};\r\n\r\n var sendGaEvent = function (eventName, evetData) {\r\n //if (window.ga) {\r\n // ga('send', {\r\n // hitType: 'event',\r\n // eventCategory: eventName,\r\n // eventAction: eventName\r\n // });\r\n //};\r\n \r\n if (window.gtag) {\r\n gtag('event', eventName, evetData);\r\n };\r\n }\r\n\r\n var sendFbEvent = function (eventName, evetData) {\r\n if (window.fbq) {\r\n fbq('trackCustom', eventName, evetData);\r\n }\r\n }\r\n\r\n\r\n target._stats.send = function (eventName, evetData) {\r\n evetData = evetData || {};\r\n\r\n setTimeout(function () {\r\n sendGaEvent(eventName, evetData);\r\n });\r\n setTimeout(function () {\r\n sendFbEvent(eventName, evetData);\r\n });\r\n }\r\n})(window);\r\n\r\n"],"file":"post.min.js"}