CINXE.COM
Spenden | Handicap International
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de_DE" lang="de_DE"> <head> <meta content="text/html; charset=UTF-8" http-equiv="content-type"/> <title>Spenden | Handicap International</title> <link type="text/css" href="https://spenden.handicap-international.de/themes/default/css/style_v2.css?hash=f8b6806de2accedfb5c1d726ef192c66" rel="stylesheet" /> <script type="text/javascript"> // <![CDATA[ const cacheVersion = "24070"; var gamonitoring_previous_page = sessionStorage.getItem('gamonitoring_previous_page') || document.referrer || "https:\/\/spenden.handicap-international.de"; var gamonitoring_session_id = sessionStorage.getItem('gamonitoring_session_id') || String(Math.floor(Math.random() * 8999999999) + 1000000000)+'.'+String(Math.floor(Date.now()/1000)); var gamonitoring_v2_client_id = gamonitoring_session_id; var gamonitoring_v2_session_id = gamonitoring_v2_client_id.replace(/^.*\./, ''); var gamonitoring_sc = ''; if(!sessionStorage.getItem('gamonitoring_session_id')) gamonitoring_sc = 'start'; if(typeof(monitoringvga)=='undefined'){ monitoringvga=1; monitoring_serialize=serialize=function(n){var e=[];for(var o in n)n.hasOwnProperty(o)&&n[o]&&e.push(encodeURIComponent(o)+"="+encodeURIComponent(n[o]));return e.join("&")}; try{ var head = document.getElementsByTagName('HEAD')[0]; document.addEventListener('DOMContentLoaded', function(event) { var monitoringparams = {z:Math.random(),cid:"spenden.handicap-international.de\/"+gamonitoring_session_id,dl:"https:\/\/spenden.handicap-international.de\/HIDE\/b:steps\/cid=1",sc:gamonitoring_sc,dr:gamonitoring_previous_page,cd:"2024-11-23:16.58.09-6741fb91cb0e0",dt:window.location.host+'/'+"donations",ul:"de-DE",ds:"web",}; var inputs = document.querySelectorAll('input[type=hidden][name=context_form_id]'), i; var link = document.createElement('link'); link.rel = 'stylesheet'; link.href = 'https://monitoring.iraiser.eu/check.css?'+monitoring_serialize(monitoringparams); head.appendChild(link); var input = document.createElement("input"); input.setAttribute("type", "hidden"); input.setAttribute("name", "private_monitoring_session_id"); input.setAttribute("value", "spenden.handicap-international.de\/"+gamonitoring_session_id); for (i = 0; i < inputs.length; ++i) { inputs[i].parentNode.insertBefore(input, inputs[i]); } var link_v2 = document.createElement('link'); monitoringparams.cid = gamonitoring_v2_client_id; monitoringparams.sid = gamonitoring_v2_session_id; link_v2.rel = 'stylesheet'; link_v2.type = 'text/css'; link_v2.href = 'https://monitoring.iraiser.eu/v2/check.css?'+monitoring_serialize(monitoringparams); head.appendChild(link_v2); var input_v2_client_id = document.createElement("input"); input_v2_client_id.setAttribute("type", "hidden"); input_v2_client_id.setAttribute("name", "private_monitoring_v2_client_id"); input_v2_client_id.setAttribute("value", gamonitoring_v2_client_id); var input_v2_session_id = document.createElement("input"); input_v2_session_id.setAttribute("type", "hidden"); input_v2_session_id.setAttribute("name", "private_monitoring_v2_session_id"); input_v2_session_id.setAttribute("value", gamonitoring_v2_session_id); for (i = 0; i < inputs.length; ++i) { inputs[i].parentNode.insertBefore(input_v2_client_id, inputs[i]); inputs[i].parentNode.insertBefore(input_v2_session_id, inputs[i]); } }); window.onerror = function (eventOrMessage, url, lineNumber, colNumber, error) { var monitoringerrorparams = {z:Math.random(),cid:"spenden.handicap-international.de\/"+gamonitoring_session_id,t:"event",ec:"JSError",ev:1,ea:"\/HIDE\/b:steps\/cid=1\/",}; if (!eventOrMessage) { return; } if (typeof eventOrMessage !== 'string') { error = eventOrMessage.error; url = eventOrMessage.filename || eventOrMessage.fileName; lineNumber = eventOrMessage.lineno || eventOrMessage.lineNumber; colNumber = eventOrMessage.colno || eventOrMessage.columnNumber; eventOrMessage = eventOrMessage.message || eventOrMessage.name || error.message || error.name; } if (error && error.stack) { eventOrMessage = [eventOrMessage, '; Stack: ', error.stack, '.'].join(''); } var jsFile = (/[^/]+\.js/i.exec(url || '') || [])[0] || 'inline', eventOrMessage = eventOrMessage.replace(/https?\:\/\/[^/]+/gi, '').replace(/[?&]context_form_[^ &]+/gi, ''); stack = [eventOrMessage, ' > ' + jsFile, ':', lineNumber || '?', ':', colNumber || '?'].join('').substring(0,450); monitoringerrorparams.ea += jsFile; monitoringerrorparams.el = stack; var link = document.createElement('link'); link.rel = 'stylesheet'; link.type = 'text/css'; link.href = 'https://monitoring.iraiser.eu/error.css?'+monitoring_serialize(monitoringerrorparams); head.appendChild(link); monitoringerrorparams.cid = gamonitoring_v2_client_id; monitoringerrorparams.sid = gamonitoring_v2_session_id; var link_v2 = document.createElement('link'); link_v2.rel = 'stylesheet'; link_v2.type = 'text/css'; link_v2.href = 'https://monitoring.iraiser.eu/v2/error.css?'+monitoring_serialize(monitoringerrorparams); head.appendChild(link_v2); } } catch (error) {console.error(error);} sessionStorage.setItem('gamonitoring_previous_page',gamonitoring_previous_page); sessionStorage.setItem('gamonitoring_session_id',gamonitoring_session_id); } // ]]> </script><script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/jquery-1.11.2.min.js?hash=5790ead7ad3ba27397aedfa3d263b867" ></script> <script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/jquery.cookie-1.0.min.js?hash=6f6ed3cd5486dbf3bb9143eea287a6a5" ></script> <script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/dnterrors.min.js?hash=af6b6c3691e205792b5ad49d7fa92b5a" ></script> <script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/jquery.config.min.js?hash=aae7bb01c8a0e6da615dd41aaafab4b5" ></script> <script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/step1.min.js?hash=ddb0461c6ec36bc51449a0f8bbafad7b" ></script> <script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/step2.min.js?hash=52f2b25c91cfb4ff1b559c7b186e6da6" ></script> <script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/step3.min.js?hash=1cbc70ae6688f4df94453feb30066dcd" ></script> <script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/steps.min.js?hash=0b3621bd88c488f4f53f841cb640a269" ></script> <script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/jquery.ir-priceinput.min.js?hash=07482ff72021c2c53278074abe52347f" ></script> <script type="text/javascript" src="https://spenden.handicap-international.de/themes/default/js/common.min.js?hash=ef2e383a6a180f6fe62a1f93d12c1436" ></script> <script type="text/javascript"> // <![CDATA[ old_console_log = console.log; if(typeof $.cookie == 'undefined' || !$.cookie('DntManager')){ console.log = function(){}; } if(typeof(String.prototype.replaceAll) == 'undefined') String.prototype.replaceAll = String.prototype.replace; var ira_form_version = 'b'; Common.price_pattern = "1,22 \u20ac" Common.price_default_currency = "EUR" Common.price_campaign_currency = "EUR" Common.price_currencies = {"EUR":"\u20ac","USD":"$","AED":"DH","AFN":"AFN","ALL":"Lek","AMD":"AMD","ANG":"ANG","AOA":"Kz","ARS":"$","AUD":"$","AWG":"AWG","AZN":"AZN","BAM":"KM","BBD":"BBD","BDT":"\u09f3","BGN":"\u043b\u0432","BHD":".\u062f.\u0628 ","BIF":"BIF","BMD":"BMD","BND":"B$","BOB":"BOB","BRL":"R$","BSD":"BSD","BTC":"BTC","BTN":"BTN","BWP":"BWP","BYN":"BYN","BYR":"p.","BZD":"BZD","CAD":"$","CDF":"CDF","CHF":"CHF","CLF":"CLF","CLP":"$","CNY":"CN\u00a5","COP":"$","CRC":"CRC","CUC":"CUC","CUP":"CUP","CVE":"CVE","CYP":"\u00a3","CZK":"K\u010d","DJF":"DJF","DKK":"DKK","DOP":"DOP","DZD":"D.A.","EGP":"E\u00a3","ERN":"ERN","ETB":"ETB","FJD":"FJD","FKP":"FKP","GBP":"\u00a3","GEL":"GEL","GGP":"GGP","GHS":"GH\u20b5","GIP":"GIP","GMD":"GMD","GNF":"GNF","GTQ":"Q","GYD":"GYD","HKD":"$","HNL":"HNL","HRK":"kn","HTG":"HTG","HUF":"Ft","IDR":"Rp","ILS":"\u20aa","IMP":"IMP","INR":"\u20b9","IQD":"\u062f.\u0639","IRR":"IRR","ISK":"kr","JEP":"JEP","JMD":"JMD","JOD":"\u062f.\u0623","JPY":"\u00a5","KES":"KES","KGS":"KGS","KHR":"KHR","KMF":"KMF","KPW":"KPW","KRW":"\u20a9","KWD":"\u062f.\u0643 ","KYD":"KYD","KZT":"KZT","LAK":"LAK","LBP":"\u0644.\u0644.","LKR":"LKR","LRD":"LRD","LSL":"LSL","LTL":"LTL","LVL":"LVL","LYD":"LYD","MAD":"\u062f.\u0645","MDL":"MDL","MGA":"MGA","MKD":"\u0434\u0435\u043d","MMK":"MMK","MNT":"MNT","MOP":"MOP","MRO":"MRO","MUR":"MUR","MVR":"MVR","MWK":"MWK","MXN":"MX$","MYR":"RM","MZN":"MZN","NAD":"NAD","NGN":"\u20a6","NIO":"NIO","NOK":"kr","NPR":"NPR","NZD":"$","OMR":"\u0631.\u0639.","PAB":"PAB","PEN":"S\/.","PGK":"PGK","PHP":"\u20b1","PKR":"\u20a8","PLN":"z\u0142","PYG":"Gs","QAR":"QR","RON":"RON","RSD":"RSD","RUB":"\u0440\u0443\u0431","RWF":"RF","SAR":"SR","SBD":"SBD","SCR":"SCR","SDG":"SDG","SEK":"kr","SGD":"$","SHP":"SHP","SLL":"SLL","SOS":"SOS","SRD":"SRD","STD":"STD","SVC":"SVC","SYP":"SYP","SZL":"SZL","THB":"\u0e3f","TJS":"TJS","TMT":"TMT","TND":"DT","TOP":"TOP","TRY":"\u20ba","TTD":"TTD","TWD":"TWD","TZS":"TZS","UAH":"\u20b4","UGX":"UGX","UYU":"$U","UZS":"UZS","VEF":"VEF","VES":"Bs. S","VND":"\u20ab","VUV":"VUV","WST":"WST","XAF":"FCFA","XAG":"XAG","XAU":"XAU","XCD":"XCD","XDR":"XDR","XOF":"CFA","XPF":"XPF","YER":"YER","ZAR":"R","ZMK":"ZMK","ZMW":"ZK","ZWL":"ZWL"} Common.price_rates = {"AED":3.975162,"AFN":71.402577,"ALL":98.759803,"AMD":419.550178,"ANG":1.956185,"AOA":986.507157,"ARS":1064.147299,"AUD":1.618097,"AWG":1.95081,"AZN":1.834638,"BAM":1.956967,"BBD":2.191527,"BDT":129.707345,"BGN":1.95627,"BHD":0.407955,"BIF":3150.908003,"BMD":1.08228,"BND":1.424963,"BOB":7.516482,"BRL":6.157743,"BSD":1.085357,"BTC":1.5997506e-5,"BTN":91.24511,"BWP":14.481769,"BYN":3.552051,"BYR":21212.695149,"BZD":2.187825,"CAD":1.496393,"CDF":3079.087489,"CHF":0.936259,"CLF":0.03735,"CLP":1030.601247,"CNY":7.710272,"CNH":7.705073,"COP":4629.72483,"CRC":558.132815,"CUC":1.08228,"CUP":28.68043,"CVE":110.33079,"CZK":25.272389,"DJF":193.277037,"DKK":7.457924,"DOP":65.298938,"DZD":144.556962,"EGP":52.638897,"ERN":16.234205,"ETB":130.491912,"EUR":1,"FJD":2.417488,"FKP":0.828127,"GBP":0.832247,"GEL":2.944353,"GGP":0.828127,"GHS":17.355349,"GIP":0.828127,"GMD":75.759333,"GNF":9362.669477,"GTQ":8.393005,"GYD":226.975346,"HKD":8.413929,"HNL":27.032119,"HRK":7.455862,"HTG":142.866511,"HUF":401.471538,"IDR":16859.06004,"ILS":4.101408,"IMP":0.828127,"INR":90.997213,"IQD":1421.860995,"IRR":45566.704929,"ISK":149.105894,"JEP":0.828127,"JMD":172.482852,"JOD":0.767316,"JPY":163.144567,"KES":140.01481,"KGS":92.533751,"KHR":4404.667205,"KMF":492.600137,"KPW":974.052084,"KRW":1493.081285,"KWD":0.331654,"KYD":0.904548,"KZT":523.446968,"LAK":23839.435747,"LBP":97197.056767,"LKR":318.232703,"LRD":208.93652,"LSL":19.127983,"LTL":3.195693,"LVL":0.65466,"LYD":5.223163,"MAD":10.762218,"MDL":19.428765,"MGA":5008.032567,"MKD":61.629257,"MMK":3515.204407,"MNT":3677.588709,"MOP":8.689362,"MRU":42.970623,"MUR":49.860667,"MVR":16.623853,"MWK":1881.939591,"MXN":21.578917,"MYR":4.675991,"MZN":69.103503,"NAD":19.127983,"NGN":1776.519502,"NIO":39.944188,"NOK":11.834893,"NPR":145.992055,"NZD":1.787104,"OMR":0.416635,"PAB":1.085347,"PEN":4.073729,"PGK":4.274549,"PHP":62.694363,"PKR":301.359886,"PLN":4.319711,"PYG":8598.206563,"QAR":3.95856,"RON":4.974052,"RSD":117.036725,"RUB":104.766655,"RWF":1468.48923,"SAR":4.064946,"SBD":8.982198,"SCR":15.347125,"SDG":650.995667,"SEK":11.418025,"SGD":1.423615,"SHP":0.828127,"SLE":24.724683,"SLL":22694.874647,"SOS":620.269867,"SRD":35.947925,"STD":22401.018434,"SVC":9.496751,"SYP":2719.262175,"SZL":19.122579,"THB":36.295356,"TJS":11.564903,"TMT":3.787981,"TND":3.356602,"TOP":2.534808,"TRY":37.062263,"TTD":7.36546,"TWD":34.677382,"TZS":2949.213457,"UAH":44.840953,"UGX":3978.372307,"USD":1.08228,"UYU":45.196951,"UZS":13909.422721,"VEF":218043921113.59,"VES":136836.34,"VND":27452.041451,"VUV":128.490532,"WST":3.031666,"XAF":656.354449,"XAG":0.032085,"XAU":0.000398,"XCD":2.924917,"XDR":0.814093,"XOF":656.354449,"XPF":119.331742,"YER":270.975982,"ZAR":19.042289,"ZMK":9741.82375,"ZMW":28.952532,"ZWL":348.493836,"CYP":1.7086,"SSP":633.704955} Common.price_currency_position = "right" Common.price_frequency_texts = {"once":"einmalig","regular":"monatlich"} Common.campaign_default_frequency = "once" Step1.tax_reduction_rates = {"ir":[66],"isf":[75,0],"corp":[60],"custom1":[],"custom2":[]}; Step1.tax_reduction_ceils = {"ir":[],"isf":[50000],"corp":[],"custom1":[],"custom2":[]}; Step1.tax_reduction_notices = {"ir":"bis zu 20% Ihres steuerpflichtigen Einkommens","isf":"","corp":"bis zu 5\u2030 Ihres Umsatz","custom1":"","custom2":""}; Step1.tax_reduction_triggers = {"ir":"0","isf":"0","corp":"0","custom1":"0","custom2":"0"}; Step1.active_tax_reduction = 0; Step1.adapt_tax_bloc = false; Step1.tax_info = "Die endg\u00fcltigen Kosten Ihrer Spende betragen <strong><span class='price'><data class='price_amount'>%s<\/data> <data class='price_currency'>\u20ac<\/data><\/span><\/strong> (dank des Steuerfreibetrags von <span class='price'><data class='price_amount'>%d<\/data> <data class='price_currency'>\u20ac<\/data><\/span>[notice])."; Step1.is_french_isf = 0; Step1.is_tipping_campaign = 0; Step1.amount_equivalences = {"once":[],"regular":[]} Step1.decimal_sep = ","; Step1.min_once_amount = 0; Step1.max_once_amount = 10000; Step1.min_regular_amount = 0; Step1.max_regular_amount = 10000; DntErrors.errorMsg.errors = "%s Fehler wurden im Formular gefunden"; DntErrors.errorMsg.error = "Ein Fehler wurde im Formular gefunden"; DntErrors.errorMsg.choose_amount = "Bitte w\u00e4hlen Sie einen Betrag f\u00fcr Ihre Spende"; DntErrors.errorMsg.min_once_amount = "Aufgrund Bearbeitungsgeb\u00fchren, ist der Mindestbetrag akzeptiert {min_amount_with_currency} "; DntErrors.errorMsg.max_once_amount = "Ihre Spende kann nicht gr\u00f6\u00dfer sein {max_amount_with_currency} "; DntErrors.errorMsg.min_regular_amount = "Aufgrund Bearbeitungsgeb\u00fchren, ist der Mindestbetrag akzeptiert {min_amount_with_currency} "; DntErrors.errorMsg.max_regular_amount = "Ihre Spende kann nicht gr\u00f6\u00dfer sein {max_amount_with_currency} "; DntErrors.errorMsg.errors = "%s Fehler wurden im Formular gefunden"; DntErrors.errorMsg.error = "Ein Fehler wurde im Formular gefunden"; DntErrors.errorMsg.qualification = "Das Feld \u201e%s\u201c ist erforderlich"; DntErrors.errorMsg.firstname = "Bitte geben Sie Ihren Vornamen ein"; DntErrors.errorMsg.lastname = "Bitte geben Sie ihren Nachnamen ein"; DntErrors.errorMsg.email = "Bitte geben Sie eine g\u00fcltige Email-Adresse ein"; DntErrors.errorMsg.company = "Der Firmenname sollte 70 Zeichen nicht \u00fcberschreiten"; DntErrors.errorMsg.company_siren = "Die SIREN ist leer oder ung\u00fcltig"; DntErrors.errorMsg.company_status = "Die Rechtsform ist leer oder unbekannt"; DntErrors.errorMsg.address1 = "Bitte geben Sie Ihre Adresse ein (maximal 38 Zeichen)"; DntErrors.errorMsg.address2 = "Die Adresse 2 sollte 38 Zeichen nicht \u00fcberschreiten"; DntErrors.errorMsg.postcode = "Bitte geben Sie Ihre Postleitzahl ein (maximal 10 Zeichen)"; DntErrors.errorMsg.city = "Bitte geben Sie Ihre Stadt ein (maximal 38 Zeichen)"; DntErrors.errorMsg.civility = "Bitte tragen Sie noch die Anrede ein"; DntErrors.errorMsg.errors = "%s Fehler wurden im Formular gefunden"; DntErrors.errorMsg.error = "Ein Fehler wurde im Formular gefunden"; DntErrors.errorMsg.cardtype = "Bitte w\u00e4hlen Sie den Kartentyp"; DntErrors.errorMsg.cardnumber = "Bitte geben Sie Ihre Kreditkartennummer an"; DntErrors.errorMsg.cardscode = DntErrors.errorMsg.scode = "Bitte geben Sie Ihre Pr\u00fcfnummer an (die drei letzten Zahlen auf der R\u00fcckseite Ihrer Karte)"; DntErrors.errorMsg.cardmonth = "Bitte nennen Sie den Ablaufmonat Ihrer Kreditkarte"; DntErrors.errorMsg.cardyear = "Bitte nennen Sie das Ablaufjahr Ihrer Kreditkarte"; DntErrors.errorMsg.gocardless = "Diese Zahlungsmethode ist nur f\u00fcr Betr\u00e4ge unter 5000 \u20ac geeignet. Biete verringern Sie den Betrag oder w\u00e4hlen Sie eine andere Zahlungsmethode"; Step2.failed_dnt_url = "/index.php?module=donations&action=xhr:attemptSave"; form_context_lang = "de_DE"; form_context_cid = "1"; Step3.alert_msg = ""; Step3.modal_qualif = "0"; Step3.modal_qualif_url = "/index.php?module=donations&action=default:modalQualification"; Step3.modal_save_card = "0"; Step3.modal_save_card_url = "/index.php?module=donations&action=default:modalSaveCard"; Step3.modal_save_card_set_url = "/index.php?context_form_id=form_3f90dd821a5633fd9a6b75c01996d212353c6a43_6741fb91c3c199.87497021&module=donations&action=default:setSaveCard"; Step3.cards_mastercard_length=16; Step3.cards_mastercard_cvvlength=3; Step3.cards_mastercard_hasalias=1; Step3.cards_visa_length=16; Step3.cards_visa_cvvlength=3; Step3.cards_visa_hasalias=1; Step3.cards_amex_length=15; Step3.cards_amex_cvvlength=4; Step3.cards_amex_hasalias=1; $(document).ready(function() { Step1.init(); Step2.init(); Steps.init(); Steps.submit(); }); organisation_name = "Handicap International e.V."; try{ var ira_context_infos = {"form_id":"form_3f90dd821a5633fd9a6b75c01996d212353c6a43_6741fb91c3c199.87497021","campaign":"1","version":"b","lang":"de_DE","amount":{"amount":null,"amount_donation":0,"frequency":null,"free_amount":null,"currency":null},"reserved":"[]","affectation":null,"_cpn_name_":"meine-spende"}; console.warn(ira_context_infos); }catch(err){} // ]]> </script><meta name="viewport" content="width=device-width" /> <link rel="canonical" href="https://spenden.handicap-international.de/~share?cid=1&lang=de_DE" /> <style type="text/css"> body { background: url(/cdn.iraiser.eu/4kW3VQTyYANK0JxEmr9p+A==/default/origin/spenden-background-HI-KatharinaHyland.jpg); } #header { } </style> <script type='text/javascript'> optionsGlobal = ""; optionsCampaign = {"theme":"arya","active_theme":"1","version":"3","sub_version_v2":"2.7","sub_version_v3":"3.9","sub_version_v4":"4.2","font":"Nunito","font_title":"Nunito","fontsize":"16","wedge":"5","--body-background-color":"#FFFFFF","donation_grid":"1","layout":"1","1_column_direction":"1","widgets_footer":"1","widgets_progress_bar":"false","live_counter_map_sum":"","live_counter_map_count":"","widgets_progress_bar_currency":"","widgets_color_progress_bar_goal":"#0077C8","widgets_progress_bar_goal":"","widgets_progress_bar_add_amount":"","widgets_progress_bar_add_donors":"","widgets_progress_bar_promt_amount":"","widgets_progress_bar_text":"","widgets_progress_bar_text_de_DE":"","widgets_last_donors":"false","widgets_color_last_donors":"#01010175","widgets_last_donors_filter":"20","widgets_last_donors_text":"$n hat $a \u20ac gespendet! Danke!","widgets_last_donors_text_de_DE":"$n hat $a \u20ac gespendet! Danke!","widgets_cookies_banner":"false","widgets_color_cookies_banner":"#0077C8","widgets_cookies_banner_text":"","widgets_cookies_banner_text_de_DE":"","widgets_cookies_banner_button":"","widgets_cookies_banner_button_de_DE":"","widgets_most_popular_once_amount":"","widgets_most_popular_once_title":"","widgets_most_popular_once_title_de_DE":"","widgets_most_popular_once_text":"","widgets_most_popular_once_text_de_DE":"","widgets_most_popular_regular_amount":"","widgets_most_popular_regular_title":"","widgets_most_popular_regular_title_de_DE":"","widgets_most_popular_regular_text":"","widgets_most_popular_regular_text_de_DE":"","--main-action-color":"#D34607","--main-action-color-lighter":"#f9662a","--description-color":"#0077C8","--information-color":"#0077C8","--column-background-color":"","--banner-color":"#0077C8","--banner-color-darker":"#003a81"}; campaign_id = "1"; context_lang = "de_DE"; campaign_stats = {"count":"1428","sum":"18885490","min":"100","max":"1000000","avg":"132.25","progress":"100","last_donators":[{"firstname":"Ay\u00e7a","total":"3000","currency":"EUR","date":"2024-11-22 23:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Katrin","total":"8000","currency":"EUR","date":"2024-11-19 21:55:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Martina","total":"2500","currency":"EUR","date":"2024-11-18 09:27:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Holger","total":"15000","currency":"EUR","date":"2024-11-20 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Claire","total":"10000","currency":"EUR","date":"2024-11-15 16:17:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Regina","total":"20000","currency":"EUR","date":"2024-11-20 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Heiko","total":"1200","currency":"EUR","date":"2024-11-20 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"xxxx","total":"1000","currency":"EUR","date":"2024-11-14 12:39:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Antje","total":"2500","currency":"EUR","date":"2024-11-14 10:45:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Karin","total":"10000","currency":"EUR","date":"2024-11-15 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Christine","total":"1500","currency":"EUR","date":"2024-11-11 20:09:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Larissa","total":"100","currency":"EUR","date":"2024-11-11 13:12:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Uwe","total":"4000","currency":"EUR","date":"2024-11-10 12:08:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Anja","total":"17500","currency":"EUR","date":"2024-11-13 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Alessandra","total":"2500","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Jens","total":"1000","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"G\u00fcnter","total":"1000","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Sandra","total":"1000","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Emre","total":"3000","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Marina","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Iris","total":"3000","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Andre","total":"1500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Anika","total":"1000","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Jana","total":"500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Tobias","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Aylin","total":"300","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Norbert","total":"1500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Leonie","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Sabine","total":"500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Andreas","total":"1500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Johannes","total":"2100","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Katja","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Tobias","total":"500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Ebru","total":"1000","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Wiebke","total":"3500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Sarah","total":"1000","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Andr\u00e9s","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Alexander","total":"1000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Martina","total":"2200","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"J\u00fcrgen","total":"2000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Nils Kolja","total":"3000","currency":"EUR","date":"2024-11-05 03:31:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Mohamed Beyrem","total":"2000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Andrea","total":"1500","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Silvia","total":"1000","currency":"EUR","date":"2024-11-05 03:31:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Melanie","total":"5000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Moritz","total":"3100","currency":"EUR","date":"2024-11-05 03:31:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Peter","total":"4000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Sybille","total":"1000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Bianca","total":"1000","currency":"EUR","date":"2024-11-05 03:31:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Carolin","total":"1000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""}],"date_cache":"2024-11-23"}; campaign_stats_last_donators = [{"firstname":"Ay\u00e7a","total":"3000","currency":"EUR","date":"2024-11-22 23:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Katrin","total":"8000","currency":"EUR","date":"2024-11-19 21:55:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Martina","total":"2500","currency":"EUR","date":"2024-11-18 09:27:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Holger","total":"15000","currency":"EUR","date":"2024-11-20 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Claire","total":"10000","currency":"EUR","date":"2024-11-15 16:17:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Regina","total":"20000","currency":"EUR","date":"2024-11-20 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Heiko","total":"1200","currency":"EUR","date":"2024-11-20 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"xxxx","total":"1000","currency":"EUR","date":"2024-11-14 12:39:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Antje","total":"2500","currency":"EUR","date":"2024-11-14 10:45:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Karin","total":"10000","currency":"EUR","date":"2024-11-15 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Christine","total":"1500","currency":"EUR","date":"2024-11-11 20:09:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Larissa","total":"100","currency":"EUR","date":"2024-11-11 13:12:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Uwe","total":"4000","currency":"EUR","date":"2024-11-10 12:08:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Anja","total":"17500","currency":"EUR","date":"2024-11-13 03:24:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Alessandra","total":"2500","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Jens","total":"1000","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"G\u00fcnter","total":"1000","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Sandra","total":"1000","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Emre","total":"3000","currency":"EUR","date":"2024-11-05 03:40:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Marina","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Iris","total":"3000","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Andre","total":"1500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Anika","total":"1000","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Jana","total":"500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Tobias","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Aylin","total":"300","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Norbert","total":"1500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Leonie","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Sabine","total":"500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Andreas","total":"1500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Johannes","total":"2100","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Katja","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Tobias","total":"500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Ebru","total":"1000","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Wiebke","total":"3500","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Sarah","total":"1000","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Andr\u00e9s","total":"800","currency":"EUR","date":"2024-11-05 03:35:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Alexander","total":"1000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Martina","total":"2200","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"J\u00fcrgen","total":"2000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Nils Kolja","total":"3000","currency":"EUR","date":"2024-11-05 03:31:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Mohamed Beyrem","total":"2000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Andrea","total":"1500","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Silvia","total":"1000","currency":"EUR","date":"2024-11-05 03:31:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Melanie","total":"5000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Moritz","total":"3100","currency":"EUR","date":"2024-11-05 03:31:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Peter","total":"4000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Sybille","total":"1000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Bianca","total":"1000","currency":"EUR","date":"2024-11-05 03:31:00","campaign":"1","city":"N\/A","message":"","avatar":""},{"firstname":"Carolin","total":"1000","currency":"EUR","date":"2024-11-07 04:13:00","campaign":"1","city":"N\/A","message":"","avatar":""}]; campaign_currency = "EUR"; iraiser_counter = ''; client_livecounter = "handicapintde"; bymonth = 'pro Monat'; i18n = []; checkoutPage = ''; </script> <script id="javascript_arya" type="text/javascript" src="https://spenden.handicap-international.de/themes/default/arya/dist/v3.9/arya.js?v=24070" ></script> <link type="text/css" href="https://spenden.handicap-international.de/themes/default/arya/dist/v3.9/arya.css?v=24070" rel="stylesheet" /> <link rel="icon" type="image/png" href="https://cdn.iraiser.eu/4kW3VQTyYANK0JxEmr9p+A==/default/origin/favicon.ico" /> <style> #copyright.unit p { display: none; } </style> <script> $(document).ready(function() { // ... function updateReservedRecipientValidation() { var isReservedGiftChecked = $('input[name=reserved_gift]').is(':checked'); var reservedRecipientValue = $('input[name=reserved_recipient]').val().trim(); if (isReservedGiftChecked && reservedRecipientValue === '') { $('p[name=reserved_gift_text]').show(); $('input[name=reserved_recipient]').prop('required', true); $('input[name=reserved_recipient]').get(0).setCustomValidity('Bitte füllen Sie dieses Feld aus.'); } else { $('p[name=reserved_gift_text]').hide(); $('input[name=reserved_recipient]').prop('required', false); $('input[name=reserved_recipient]').get(0).setCustomValidity(''); } } $('input[name=reserved_gift]').change(function() { updateReservedRecipientValidation(); }); // Initial check on page load updateReservedRecipientValidation(); // Additional check when reserved_recipient field loses focus $('input[name=reserved_recipient]').blur(function() { updateReservedRecipientValidation(); }); }); </script> <!-- OneTrust Cookies Consent Notice start for handicap-international.de higher than any other tag> <script type="text/javascript" src="https://cdn.cookielaw.org/consent/bae3273b-bc5f-4ad5-b97c-5c8e1df96666/OtAutoBlock.js" ></script> <script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" data-language="de" type="text/javascript" charset="UTF-8" data-domain-script="bae3273b-bc5f-4ad5-b97c-5c8e1df96666" ></script> <script type="text/javascript"> function OptanonWrapper() { } </script --> <!-- Matomo Tag Manager --> <script class="optanon-category-C0001"> var _mtm = window._mtm = window._mtm || []; _mtm.push({'mtm.startTime': (new Date().getTime()), 'event': 'mtm.Start'}); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.async=true; g.src='https://cdn.matomo.cloud/hi.matomo.cloud/container_YvSWVErs.js'; s.parentNode.insertBefore(g,s); </script> <!-- End Matomo Tag Manager --> <!-- Google Tag Manager high in the head section, but after OneTrust tag --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-W323VWS');</script> <!-- End Google Tag Manager --></head><body id="type-b" > <!-- Google Tag Manager (noscript) right after body opening tag Common JS analytics trackers --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W323VWS" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <div id="container"> <div id="header" class="line"> <div class="container" id="header_wrapinner"> <div id="logo" class="unit size3of4"> <h1><a href="https://handicap-international.de/" title="Handicap International e.V."><img src="/cdn.iraiser.eu/4kW3VQTyYANK0JxEmr9p+A==/default/origin/handicap-international-logo.png-300px-KatharinaHyland-weiss.png" alt="Handicap International e.V."/></a></h1> </div> <!-- End Logo --> </div> </div> <!-- End Header --> <div id="_wait"> <div id="floatingCirclesG"> <div class="f_circleG" id="frotateG_01"></div> <div class="f_circleG" id="frotateG_02"></div> <div class="f_circleG" id="frotateG_03"></div> <div class="f_circleG" id="frotateG_04"></div> <div class="f_circleG" id="frotateG_05"></div> <div class="f_circleG" id="frotateG_06"></div> <div class="f_circleG" id="frotateG_07"></div> <div class="f_circleG" id="frotateG_08"></div> </div> </div> <div id="main" class="line"> <div class="container" id="main_wrapinner"> <noscript> </noscript> <form action="/b/steps/save" method="post" id="form-steps" autocomplete="off"> <input type="hidden" name="context_form" value="bIALS039uyr/52vJgNjy3rVnMD/eZXcd4IbtIXaOkOVS46ZIm2AOBES+IGOr2zhxa1+BaY3eAlx60msR7eYgBJsUp374kqCGEdPXGTO8YbEVVTi98U+wNP4dk3mpL1oN5gOuICmjMZUAMe+prNSLf6zQsyMGwu3CsqhS946ATa/N2yOQWXjGZT5AOrK5DqLtTRnKwP+ANxuii1Jstx8fvmE0QjOaIkHC0IzIEU7Abbb73BMtHG8xwKDTri56b0bEwjqGDN4hDovt62shzfI8DDCFrHTw967CXd7BRzxzv4/wJaNJ0kNTnHxmt5XrOxs1xRKateQWFMXccklE3Kg4VeGJjL8aRAww7uBYd2Yml2uosexQKvnwPI5sXbE3gvcJZBom8EkU593PbKlakI8iKlkcMDiBgHPYQOX99Req3K9T8HS/NIBx2/uH18oDLrN/HU5vKmh+8/qiuK6WCMnUSrmeJr22rHEy/oUAeDGIpW2iFcFZoAEcEsLQqiQl8jna4Z306Nxr2fMUqVwR1xVx/zQXUU/dSoMvE5YyyBSYdRDq7yKIFCL4M1nFZKehUw9Tmgau276uJXJRZ/EyXlKTtlVaRinB9sZcv9YQQxF0X75l+HIRjplXdcQS4efsEnrJcZfOKIbhF0Cruoktfyrmab3qs2BNz2Nvrzb40GYTc0mDxo82+t9TR1CXbS/hywGGnfIRuhQYFonPySvRigX6vjk+VLwP4IqQyoP1tcEd+tqpqrLn8UH2krZ76M4MHHO+IPtGgJrEk0p5xV4rlSV+I7b6zg/AWFf50CRMwBiPjhJiEbnnX8MmbmyvhPUIqg6U5+PRNotSxRu9KCPoO159iScW06PuImV/0SpIpi2vSzoL8G8B+UOSvEj+rdax7ek/SX+o3PsNltB6GZnIL+L2dq1bt/ADBlsqK7mUYnrMUYNP0Cxy1M7k50MdD6p2suQsXJv5joE5dEuPvHZ0yCdrCpdh40zESRN5HTphzz/R9buiexcwk22HbrZAg006NItABsYpEDsDE/3xUZ6cyz5/gGOSMEJ+uIOc+8CG1++g1JtEaXo9J935LGGWd/ihbVKh4CGgFcELxSU2B1GHIT2lANcutuARoU7SxzTOE5nQV8eALqsJMhtlB+C3UPZUmCi/Np86Y7MCKuXEhKuxnYZnwuMNi6qvenNiIvw6rD3lras=" /> <input type="hidden" name="context_form_id" value="form_3f90dd821a5633fd9a6b75c01996d212353c6a43_6741fb91c3c199.87497021" /> <input type="hidden" name="cid" value="1" /> <input type="hidden" name="lang" value="de_DE" /> <input type="hidden" name="scope" value="" id="scope"/> <input id="useragent_input_0" type="hidden" name="private_user_agent_cli" value=""/> <script type="text/javascript"> document.getElementById("useragent_input_0").value = navigator.userAgent; </script> <input id="referer_input_0" type="hidden" name="private_referer" value=""/> <script type="text/javascript"> document.getElementById("referer_input_0").value = document.referrer; </script> <input id="random_input_0" type="hidden" name="private_random" value=""/> <script type="text/javascript"> document.getElementById("random_input_0").value = Math.random(); setTimeout(function(){ document.getElementById("random_input_0").value = Math.random(); }, 3000); </script> <div id="step-1" class="unit size1of3"> <div class="step-container"> <div class="step-title"> <h2>Meine Spende</h2> </div> <div class="step-content"> <div> </div> <div id="once" class="bloc"> <div class="bloc-content"> <h3>einmalig</h3> <p class="content-desc">Jede Spende hilft. Herzlichen Dank.</p> <div id="bloc-amount-once"> <fieldset class="amount type2ct"> <ul class="radio-desc line" id="amount-list-once"> <li> <div class="unit size1of2"><img src="/cdn.iraiser.eu/4kW3VQTyYANK0JxEmr9p+A==/default/pricelist_item/Afghanistan--Sanaullah-512.jpg" width="120" height="90" alt="" /></div> <div class="unit size1of2 lastUnit"><label><input autocomplete="false" name="amount-once" value="3000" id="amount-once-3000" type="radio" /> <span id="value_of_amount-once-3000"><data class='price_amount'>30</data> <data class='price_currency'>€</data></span></label><p>tragen dazu bei, einem Kind eine Prothese anzupassen</p></div> </li> <li> <div class="unit size1of2"><img src="/cdn.iraiser.eu/4kW3VQTyYANK0JxEmr9p+A==/default/pricelist_item/gift-grid-90-burkina-rollstuhl.jpg" width="120" height="90" alt="" /></div> <div class="unit size1of2 lastUnit"><label><input autocomplete="false" name="amount-once" value="5000" id="amount-once-5000" type="radio" /> <span id="value_of_amount-once-5000"><data class='price_amount'>50</data> <data class='price_currency'>€</data></span></label><p>tragen zu einem Rollstuhl bei: ein Weg aus der Isolation</p></div> </li> <li> <div class="unit size1of2"><img src="/cdn.iraiser.eu/4kW3VQTyYANK0JxEmr9p+A==/default/pricelist_item/HINepal58-512.jpg" width="120" height="90" alt="" /></div> <div class="unit size1of2 lastUnit"><label><input autocomplete="false" name="amount-once" value="12500" id="amount-once-12500" type="radio" /> <span id="value_of_amount-once-12500"><data class='price_amount'>125</data> <data class='price_currency'>€</data></span></label><p>können ein verletztes und behindertes Kind mit Reha unterstützen</p></div> </li> </ul> </fieldset> <div class="amount-equivalences"> <p class="amount-equivalences-img"></p> <p class="amount-equivalences-description"></p> </div> <fieldset class="free-amount"> <p><label>Anderer Betrag <input autocomplete="section-famount" name="famount-once" type="text" size="6" id="famount-once" /> <span class="price_currency">€</span> </label></p> </fieldset> <p class="tax-info"></p> <!--<input type="hidden" value="" name="iraiser_analytics_session_id" id="iraiser_analytics_session_id"/>--> <input type="hidden" name="referrer" /> <script type="text/javascript"> try{ $("input[name=referrer]").val(document.referrer); if(document.location.search.indexOf('_cv')>1) { $('input[name=referrer]').after($('<input type="hidden" name="query_string" />').val(document.location.search.substring(1))); } }catch(e){} </script> </div> </div> </div> <!-- End Once --> <div class="onceblock"> </div> <div id="or"> <p>Oder</p> </div> <div id="regular" class="bloc"> <div class="bloc-content"> <h3>monatlich</h3> <p class="content-desc">Regelmäßige Spenden machen unsere Hilfe nachhaltig und planbar. Herzlichen Dank.</p> <div id="bloc-amount-regular"> <fieldset class="amount type2ct"> <ul class="radio-desc line" id="amount-list-regular"> <li> <div class="unit size1of2"><img src="/cdn.iraiser.eu/4kW3VQTyYANK0JxEmr9p+A==/default/pricelist_item/01-monthly-5EUR-KatharinaHyland.jpg" width="120" height="90" alt="" /></div> <div class="unit size1of2 lastUnit"><label><input autocomplete="false" name="amount-regular" value="800" id="amount-regular-800" type="radio" /> <span id="value_of_amount-regular-800"><data class='price_amount'>8</data> <data class='price_currency'>€</data></span></label><p>tragen zu Notfallrationen für Familien in einem Katastrophengebiet bei.</p></div> </li> <li> <div class="unit size1of2"><img src="/cdn.iraiser.eu/4kW3VQTyYANK0JxEmr9p+A==/default/pricelist_item/02-monthly-8EUR-KatharinaHyland.jpg" width="120" height="90" alt="" /></div> <div class="unit size1of2 lastUnit"><label><input autocomplete="false" name="amount-regular" value="1000" id="amount-regular-1000" type="radio" /> <span id="value_of_amount-regular-1000"><data class='price_amount'>10</data> <data class='price_currency'>€</data></span></label><p>tragen zur Ausbildung einer Entminerin bei.</p></div> </li> <li> <div class="unit size1of2"><img src="/cdn.iraiser.eu/4kW3VQTyYANK0JxEmr9p+A==/default/pricelist_item/03-monthly--12EUR-KatharinaHyland.jpg" width="120" height="90" alt="" /></div> <div class="unit size1of2 lastUnit"><label><input autocomplete="false" name="amount-regular" value="2000" id="amount-regular-2000" type="radio" /> <span id="value_of_amount-regular-2000"><data class='price_amount'>20</data> <data class='price_currency'>€</data></span></label><p>tragen zu neuen Prothesen und Physiotherapie (Gehschule) für Kinder bei.</p></div> </li> </ul> </fieldset> <div class="amount-equivalences"> <p class="amount-equivalences-img"></p> <p class="amount-equivalences-description"></p> </div> <fieldset class="free-amount"> <p><label>Anderer Betrag <input autocomplete="section-famount" name="famount-regular" type="text" size="6" id="famount-regular" /> <span class="price_currency">€</span> </label></p> </fieldset> <p class="tax-info"></p> <!--<input type="hidden" value="" name="iraiser_analytics_session_id" id="iraiser_analytics_session_id"/>--> <input type="hidden" name="referrer" /> <script type="text/javascript"> try{ $("input[name=referrer]").val(document.referrer); if(document.location.search.indexOf('_cv')>1) { $('input[name=referrer]').after($('<input type="hidden" name="query_string" />').val(document.location.search.substring(1))); } }catch(e){} </script> </div> </div> </div> <!-- End Each-month --> <div class="regularblock"> </div> <div> </div> </div> <!-- End Step-content --> <div class="step-info"> <h4>Über uns</h4> <div class="step-info-body"> Handicap International / Humanity & Inclusion (HI) ist eine gemeinnützige Organisation für Nothilfe und Entwicklungszusammenarbeit, die in rund 60 Ländern aktiv ist. Wir setzen uns für eine solidarische und inklusive Welt ein. Wir verbessern langfristig die Lebensbedingungen für Menschen mit Behinderung und unterstützen diejenigen, die besonderen Schutz benötigen. Außerdem arbeiten wir für eine Welt ohne Minen und Streubomben sowie für den Schutz der Zivilbevölkerung im Krieg. HI ist Co-Preisträgerin des Friedensnobelpreises von 1997. Handicap International e.V. ist der deutsche Verein von HI.<br /> <br /> <img alt="https://handicap-international.de/sn_uploads/ch/news/deutscherspendenrat_spendenzertifikat_quer.png" class="transparent" src="https://handicap-international.de/sn_uploads/ch/news/deutscherspendenrat_spendenzertifikat_quer.png" style="width: 200px; height: 100px;" /> </div> </div> <!-- End Step-info --> </div> <!-- End Step-container --> </div> <!-- End Step-1 --> <div id="step-2" class="unit size1of3"> <div class="step-container"> <div class="step-title"> <h2>Meine Daten</h2> </div> <div class="step-content"> <fieldset id="fielset-step2-connect" class="step2_connect_block "> <h4 class="step2_head">Ich melde mich an und bestätige meine Zahlung mit einem Klick</h4> <fieldset id="stripe-connect" class=""> <input type="button" class="button apple_pay_styled_button" id="StripePayButtonLogin" style="display: none;"> </button> <input type="hidden" name="private_stripe_connect_paymentMethod"/> <script type="text/javascript"> if (!window.stripeJsLoaded) { window.stripeJsLoaded = new Promise((resolve, reject) => { const s = document.createElement('script'); s.src = 'https://js.stripe.com/v3/'; s.type = 'text/javascript'; s.onerror = reject; s.onload = resolve; document.head.appendChild(s); }); } </script> <script type="text/javascript"> var Stripe_obj = { PayWithApple:true, PayWithWallet:true, StripeButtonPopulate: false, buttons: { Step2: false, Step3: false }, paymentRequest: false, populate: function (ev) { try { $('input[name=private_stripe_connect_paymentMethod]').val(JSON.stringify(ev)); if ((!$('input[name=lastname]').val() || !$('input[name=firstname]').val()) && ev.payerName) { var name = ev.payerName.split(' ').filter(function(x){ return x&&true;}); if (name.length) { $('input[name=firstname]').val(name[0]); $('input[name=lastname]').val(name.slice(1).join(' ')); }else{ $('input[name=firstname]').val('N/A'); $('input[name=lastname]').val(ev.payerName); } } if (ev.payerEmail) { $('input[name=email]').val(ev.payerEmail); } if (!$('select[name=civility] option:selected').val()) { // If no civility was selected, force a "0" civility value // for the step 2 validation not to fail if the civility was mandatory $('select[name=civility] option:first').prop('selected', 'selected').val("0"); } if ($('input[type=tel]').length && !$('input[type=tel]').val() && ev.payerPhone) { $('input[type=tel]').val(ev.payerPhone); } if (ev.paymentMethod && ev.paymentMethod.billing_details) { let evBillingDetails = ev.paymentMethod.billing_details; if ((!$('input[name=lastname]').val() || !$('input[name=firstname]').val()) && evBillingDetails.name) { var name = evBillingDetails.name.replace('').split(' ').filter(function(x){ return x&&true;}); if (name.length) { $('input[name=firstname]').val(name[0]); $('input[name=lastname]').val(name.slice(1).join(' ')); }else{ $('input[name=firstname]').val('N/A'); $('input[name=lastname]').val(evBillingDetails.name); } } if (evBillingDetails.address) { let evBillingAddress = evBillingDetails.address; if (!$('input[name=country]').val() && evBillingAddress.country) { $('select[name=country] option[value=' + evBillingAddress.country + ']').prop('selected', 'selected'); } if (!$('input[name=address1]').val() && evBillingAddress.line1) { $('input[name=address1]').val(evBillingAddress.line1); } if (!$('input[name=address2]').val() && evBillingAddress.line2) { $('input[name=address2]').val(evBillingAddress.line2); } if (!$('input[name=postcode]').val() && evBillingAddress.postal_code) { $('input[name=postcode]').val(evBillingAddress.postal_code); } if (!$('input[name=city]').val() && evBillingAddress.city) { $('input[name=city]').val(evBillingAddress.city); } } } } catch (err) { let msg = 'Stripe_obj.populate exception: ' + err; console.log(msg); window.onerror(msg); } }, createStripeButton: function (ev) { console.log('Stripe_obj.createStripeButton'); if(!Stripe_obj.buttons.Step3 && !Stripe_obj.buttons.Step2) return; var amount = parseInt(Common.getDonation().amount); var currency = (Common.getCurrency() || "EUR").toLowerCase(); var accountCountry = "DE"; var frequency = Step1.current_donation.frequency; // Some currencies are having an amount with three decimal cents, // We must write 12340 for 12.340 KWD for example (in those cases, last digit must always be a 0) const threeDecimalCurrencies = ["BHD","JOD","KWD","OMR","TND"]; if (threeDecimalCurrencies.includes(currency.toUpperCase())) { amount = amount * 10; } // Some currencies are having an amount with no decimal cents, const zeroDecimalCurrencies = ["BIF","CLP","DJF","GNF","JPY","KMF","KRW","MGA","PYG","RWF","UGX","VND","VUV","XAF","XOF","XPF"]; if (zeroDecimalCurrencies.includes(currency.toUpperCase())) { amount = amount / 100; } console.log({Step2: Stripe_obj.buttons.Step2 && true,Step3: Stripe_obj.buttons.Step3 && true}); console.log({amount: amount, currency: currency, accountCountry: accountCountry, frequency: frequency}); Stripe_obj.paymentRequest = false; try{ if (!Stripe_obj.stripe) { // Create a Stripe client. Stripe_obj.stripe = Stripe("pk_live_srqYyZqem3SpTx2GjUycaPjN", { apiVersion: "2020-08-27" }); } Stripe_obj.paymentRequest = Stripe_obj.stripe.paymentRequest({ country: accountCountry, currency: currency, total: { label: "Handicap International e.V.", amount: parseInt(amount) }, requestPayerName: true, requestPayerEmail: true //requestPayerPhone: true }); }catch(error){ console.log("paymentRequest creation failed"); console.log(error); } if(!Stripe_obj.paymentRequest){ // nothing available Stripe_obj.removeStripeConnect(); Stripe_obj.removeStripePay(); }else { Stripe_obj.paymentRequest.canMakePayment().then( function (result) { console.log('paymentRequest.canMakePayment() - promise fulfilled'); console.log(result); var fieldset = $('#payment_mode-apple_pay-'+frequency); // show / hide the appropriate blocks and mount the button if (result) { if (!result.applePay) { var txt = $("fieldset[data-scope='stripe_apple_pay'] .payment_mode_title").first().text(); var ua = window.navigator.userAgent; if (ua.indexOf('Edge/') > 0) { fieldset.attr('data-stripe-mode','microsoft'); txt = txt.replace('Apple Pay', 'Microsoft Pay'); } else if (ua.indexOf('Chrome') > 0) { txt = txt.replace('Apple Pay', 'Google Pay'); fieldset.attr('data-stripe-mode','google'); } else { txt = txt.replace('Apple Pay', 'Saved Credit Cards'); fieldset.attr('data-stripe-mode','other'); } if(txt) { Common.select("[data-scope='stripe_apple_pay'] .payment_mode_title").text(txt); } Stripe_obj.removeStripeConnect(); if (Stripe_obj.PayWithWallet) { Stripe_obj.mountStripePay(frequency); } else { Stripe_obj.removeStripePay(); } } else { fieldset.attr('data-stripe-mode','apple'); $('#stripe_apple_pay_submit.' + frequency).addClass('apple_pay_styled_button'); //Apple Pay OK if (Stripe_obj.buttons.Step2) { Stripe_obj.mountStripeConnect(frequency); } if (Stripe_obj.buttons.Step3) { if (Stripe_obj.PayWithApple) { // Mount the button with its value cleared // for it not to interfere with Apple Pay styling Stripe_obj.mountStripePay(frequency); } else { Stripe_obj.removeStripePay(); } } Stripe_obj.validatePaymentMethodIfExists(); } } else { // nothing available Stripe_obj.removeStripeConnect(); Stripe_obj.removeStripePay(); } }, function (reason) { console.log('paymentRequest.canMakePayment() - promise rejected'); console.log(reason); Stripe_obj.removeStripeConnect(); Stripe_obj.removeStripePay(); } ); Stripe_obj.paymentRequest.on('cancel', function (ev) { console.log('paymentRequest.on(cancel)'); $('.ira-processing').removeClass('ira-processing'); }); Stripe_obj.paymentRequest.on('paymentmethod', function (ev) { console.log('paymentRequest.on(paymentMethod)'); console.log(ev); if (Stripe_obj.StripeButtonPopulate) { Stripe_obj.populate(ev); Stripe_obj.StripeButtonPopulate = false; } // Send the paymentMethod to your server to charge it $('#stripe_apple_pay_paymentMethod.' + frequency).val(ev.paymentMethod.id); ev.complete('success'); $('#stripe_apple_pay_submit.' + frequency).prop('disabled', false).trigger('click'); //$('.ira-processing').removeClass('ira-processing'); }); } }, mountStripePay:function(frequency){ console.log(`mountStripePay(${frequency})`); $('#stripe_apple_pay_submit.' + frequency).prop('disabled', false).show(); }, validatePaymentMethodIfExists:function(){ }, removeStripePay: function(){ Stripe_obj.buttons.Step3 = false; console.log("removeStripePay"); Common.select("[data-scope='stripe_apple_pay']").hide(); }, mountStripeConnect:function(frequency){ console.log(`mountStripeConnect(${frequency})`); $('#StripePayButtonLogin').attr('data-frequency', frequency).show(); }, removeStripeConnect: function(){ console.log("removeStripeConnect"); Stripe_obj.buttons.Step2 = false; $("#stripe-connect").detach(); if(!$('#fielset-step2-connect fieldset').length){ // no connector available $('.step2_connect_block').detach(); // remove all blocks related to connectors }else{ var fieldsetlength = $('#fielset-step2-connect fieldset').length; if($("#fielset-step2-connect fieldset.regularblock").length == fieldsetlength){ $('.step2_connect_block').addClass('regularblock'); }else if($("#fielset-step2-connect fieldset.onceblock").length == fieldsetlength){ $('.step2_connect_block').addClass('onceblock'); } } }, stripe: false } window.stripeJsLoaded.then(() => { $('body').on('init_done tip_changed', Stripe_obj.createStripeButton); Stripe_obj.createStripeButton(); }); </script> <script> Stripe_obj.buttons.Step2 = true; $('#StripePayButtonLogin').click(function(event){ if (Stripe_obj.buttons.Step2 && Step1.check()) { Stripe_obj.StripeButtonPopulate = true; console.log('paymentRequest.show() -- stripeConnect'); Stripe_obj.paymentRequest.show(); } return false; }); </script> <style> #StripePayButtonLogin { -webkit-appearance: -apple-pay-button !important; } #StripePayButtonLogin[data-frequency='once'] { -apple-pay-button-type: donate; } #StripePayButtonLogin[data-frequency='regular'] { -apple-pay-button-type: subscribe; } </style> </fieldset> </fieldset> <fieldset id="fieldset-step2"> <h4 class="step2_head step2_connect_block ">oder ich gebe meine Daten ein</h4> <p id="c-email"> <label for="email">E-Mail-Adresse <span class="required">*</span> <span class="help">z. B. muster@muster.de</span></label> <input type="text" name="email" id="email" /> </p> <fieldset id="fielset-name"> <p id="c-isc"> <label><input type="checkbox" value="OK" name="iscompany" id="iscompany" /> Ich spende im Namen eines Unternehmens</label> </p> <p id="c-isc-inf" class="company-infos hidden"> <label for="company">Firma <span class="help">z. B. Musterfirma</span> </label> <input type="text" name="company" id="company" /> </p> <p id="c-civ"> <label for="civility">Anrede <span class="required">*</span></label> <select name="civility" id="civility"> <option value=""></option> <option value="1">Herr</option> <option value="2">Frau</option> <option value="3">keine Angabe</option> </select> </p> <p id="c-fname"> <label for="firstname">Vorname <span class="required">*</span> <span class="help">z. B. Max</span></label> <input type="text" name="firstname" id="firstname" /> </p> <p id="c-lname"> <label for="lastname">Nachname <span class="required">*</span> <span class="help">z. B. Mustermann</span></label> <input type="text" name="lastname" id="lastname" /> </p> </fieldset> <fieldset id="fielset-address"> <input type="hidden" name="address1" value="N/A"/> <input type="hidden" name="address2" value="N/A"/> <div class="line"> <input type="hidden" name="postcode" value="N/A"/> <input type="hidden" name="city" value="N/A" /> </div> <input type="hidden" name="country" value="DE" /> <!-- FindMyAddress not enabled on this campaign --> </fieldset> <p name="reserved_gift" id="reserved_gift_id_6741fb91dd56d" data-type="checkbox" > <label for="reserved_gift"> <input type="hidden" name="reserved_gift" value="0" /> <input id="reserved_gift" type="checkbox" aria-describedby="nameHelp_reserved_gift" name="reserved_gift" data-scope="step2" data-required="" value="1" /> <span class="reserved_title"><b>Soll diese Spende ein Geschenk sein?</b></br></br>Bitte ankreuzen, wenn Sie die Spende verschenken möchten. Sie erhalten per E-Mail eine Geschenkurkunde zum Ausdrucken oder Weiterleiten.</span> <span id="nameHelp_reserved_gift" class="help"></span> </label> </p> <p name="reserved_recipient" id="reserved_recipient_id_6741fb91dd5d3" data-type="short" > <label for="reserved_recipient"> <span class="reserved_title">Name des/der Beschenkten</span> <span id="nameHelp_reserved_recipient" class="help"></span> </label> <input id="reserved_recipient" type="text" aria-describedby="nameHelp_reserved_recipient" name="reserved_recipient" data-scope="step2" data-required="" value=""/> </p> <p id="required-info"><span class="required">*</span> <span class="help">Pflichtfelder </span></p> </fieldset> </div> <!-- End Bloc --> <div class="step-info"> <h4>Spendenkonto</h4> <div class="step-info-body"> IBAN DE56 3702 0500 0008 8172 00<br /> SozialBank AG<br /> Handicap International e.V. ist beim Finanzamt München als gemeinnützig und mildtätig anerkannt.<br /> Spenden können steuerlich geltend gemacht werden. <details><summary>Informationen zu Ihrer Spende</summary> <h2>Spenden für Menschen mit Behinderung</h2> <strong>Unterstützen Sie die humanitäre Arbeit von Handicap International und helfen Sie uns, die Lebensbedingungen von Menschen mit Behinderung und schutzbedürftigen Familien nachhaltig zu verbessern. Ihr Engagement ist lebenswichtig und hilft Kindern und Erwachsenen in Not weltweit.</strong><br /> Wir sind empört über die Ungerechtigkeiten, denen Menschen mit Behinderung und besonders Schutzbedürftigen ausgesetzt sind. Deshalb setzen wir uns für eine solidarische und inklusive Welt ein, in der uns alle Unterschiede bereichern. Mit Ihrer Spende helfen Sie uns, diese Vision Wirklichkeit werden zu lassen. Gemeinsam können wir viel bewegen und eine gerechtere Zukunft für alle Betroffenen schaffen. <h2>Unsere Hilfe im Überblick</h2> Unsere Hilfe zeigt Wirkung – das beweisen die <a href="https://www.handicap-international.de/de/ihre-hilfe-kommt-an">Geschichten aus unseren über 400 Projekten in rund 60 Ländern</a>. Wir helfen dort, wo es am nötigsten ist, und ermöglichen Kindern und Erwachsenen langfristig einen Zugang zu inklusiver Katastrophenhilfe, Rehabilitation, Schutz, Prävention, Gesundheit, Gleichberechtigung, Bildung und Arbeit.<br /> Mit Ihrer Spende … <ul> <li>… helfen wir jährlich etwa 3 Millionen Menschen mit Behinderung rund 60 Ländern – seit über 40 Jahren.</li> <li>… leisten wir <a href="https://www.handicap-international.de/de/katastrophenhilfe/index" target="_self">inklusive Nothilfe</a> nach Naturkatastrophen oder bei bewaffneten Konflikten und verteilen Nahrungsmittel und Hilfsgüter.</li> <li>… unterstützen wir amputierte oder verletzte Menschen langfristig mit <a href="https://www.handicap-international.de/de/rehabilitation/index" target="_self">Reha-Maßnahmen</a>, Physiotherapie, Prothesen und Rollstühlen.</li> <li>… kümmern wir uns um die <a href="https://www.handicap-international.de/de/rehabilitation/praevention" target="_self">Prävention</a> und einen gleichberechtigten Zugang zum Gesundheitssystem für alle Menschen.</li> <li>… setzen wir uns für <a href="https://www.handicap-international.de/de/bildung-fuer-alle/index">Bildung für Kinder mit Behinderung</a> ein und schulen Lehrkräfte in inklusiver Bildung.</li> <li>… unterstützen wir die berufliche <a href="https://www.handicap-international.de/de/flucht-und-behinderung/inklusion">Inklusion</a> von Menschen mit Behinderung in lokale Strukturen.</li> <li>… fördern wir die <a href="https://www.handicap-international.de/de/flucht-und-behinderung/rechte-von-menschen-mit-behinderung" target="_self">Rechte von Menschen mit Behinderung</a>.</li> <li>… setzen wir uns gegen <a href="https://www.handicap-international.de/de/minen-streubomben-und-andere-explosivwaffen" target="_self">Minen und Streubomben</a> ein und für den Schutz der Zivilbevölkerung im Krieg.</li> </ul> Mit Ihrer finanziellen Unterstützung schenken Sie Menschen mit Behinderung und besonders Schutzbedürftigen Perspektiven und die Chance auf eine bessere Zukunft. Herzlichen Dank für Ihre Solidarität! <h2>Warum soll ich Handicap International unterstützen?</h2> Seit ihrer Gründung ist Handicap International an der Seite der schutzbedürftigsten Menschen und setzt sich für eine solidarische und inklusive Welt ein. Mit Ihrer Spende ermöglichen Sie es uns, dort zu helfen, wo es am Nötigsten ist. Handicap International e. V. ist beim Finanzamt München als gemeinnützig und mildtätig anerkannt. Ihre Spenden können also steuerlich geltend gemacht werden.<br /> Als gewissenhafte, nicht gewinnorientierte Organisation, die zusammen mit anderen Organisationen mit dem <strong>Friedensnobelpreis</strong> und dem <a href="https://www.handicap-international.de/de/neuigkeiten/hi-mit-spendenzertifikat-vom-deutschen-spendenrat-e-v-ausgezeichnet">Spendenzertifikat des Deutschen Spendenrats e. V</a>. ausgezeichnet wurde, stellen wir sicher, dass Ihre Spenden in qualitativ hochwertige Hilfsprojekte für Kinder und Erwachsene mit Behinderung und besonders schutzbedürftige Familien fließen. Das Spendenzertifikat bestätigt, dass wir hohe Qualitätsstandards einhalten und die Spenden- und Fördergelder transparent, effizient und wirtschaftlich einsetzen. Darüber hinaus folgen wir strengen ethischen Werten und verpflichten uns zur Einhaltung verschiedener Verhaltenskodizes in Bezug auf den Umgang mit Begünstigten, Ethik in Spendenmailings und Öffentlichkeitsarbeit.<br /> <strong>Unsere Arbeit wäre nicht denkbar ohne unsere zahlreichen Spender*innen, die unsere Einsätze begleiten. Nur dank Ihrer Großzügigkeit können wir konkrete Projekte vor Ort umsetzen.</strong> <h2>Fragen und Antworten zum Spendenprozess</h2> Sie haben Fragen zu Ihrer Spende oder wünschen weitere Informationen zum Spendenprozess? Nachfolgend finden Sie unsere Antworten auf häufige Fragen unserer Spender*innen. Auch unsere Mitarbeiterin im Spenderservice unterstützt Sie gerne:<br /> <strong>Spendenservice</strong><br /> Mechthild Stier<br /> Telefon: 089/54 76 06 17<br /> E-Mail: <a href="mailto:spenden@deutschland.hi.org">spenden@deutschland.hi.org</a> <h2>Wie kann ich für Handicap International spenden?</h2> <strong>Der einfachste Weg, Handicap International eine Spende zukommen zu lassen, ist eine Online-Spende per Kreditkarte, PayPal oder IBAN</strong>. Füllen Sie dazu ganz einfach das obenstehende Spendenformular aus. Die Online-Spende ist sicher und schnell und kann auf zwei Arten erfolgen: <ul> <li>als <strong>einmalige Spende, </strong>um schnell auf Krisen, Katastrophen oder andere akute Notsituationen zu reagieren;</li> <li>als <strong>regelmäßige, monatliche Spende</strong>, um die humanitäre Arbeit von Handicap International langfristig zu unterstützen.</li> </ul> <strong>Gerne können Sie Ihre Spende auch direkt auf unser Spendenkonto überweisen</strong>:<br /> <strong>Handicap International e. V.</strong><br /> IBAN DE56 3702 0500 0008 8172 00<br /> SozialBank AG <h2>Ist es sicher, online zu spenden?</h2> Ja, Sie brauchen sich keine Sorgen zu machen. Eine Spende über unser Online-Spendenformular ist genauso sicher wie E-Banking. Ihre Online-Spende wird mit modernster Sicherheitstechnologie (SSL-Verschlüsselung) an uns übermittelt, sodass jederzeit höchste Sicherheit gewährleistet ist. Ihre persönlichen Daten werden verschlüsselt und sind für Außenstehende nicht lesbar. Diese sichere Verbindung erkennen Sie z. B. an einem geschlossenen Vorhängeschloss in der Statusleiste Ihres Internetbrowsers. Darüber hinaus geben wir Ihre Daten nicht an Dritte weiter. <h2>Ist meine Spende steuerlich absetzbar?</h2> Ja, Spenden an steuerbegünstigte Organisationen wie Stiftungen und Vereine mit Sitz in Deutschland sind steuerfrei, d. h. steuerlich absetzbar. Dazu gehört auch Handicap International e.V. Wir sind beim Finanzamt München als gemeinnützig und mildtätig anerkannt. Bis zu einem gespendeten Betrag von 300 Euro (früher 200 Euro) erkennt das Finanzamt die Kopie des Überweisungsträgers oder Ihren Kontoauszug als Spendennachweis an. Für größere Spenden erhalten Sie im Januar/Februar des Folgejahres – sofern uns Ihre vollständige und aktuelle Adresse vorliegt – automatisch eine Spendenbescheinigung über den gespendeten Betrag, die Sie bei Ihrer Steuererklärung geltend machen können. <h2>Warum ist eine Dauerspende sinnvoll?</h2> Wenn Sie regelmäßig spenden, haben wir die finanziellen Mittel, um in Notsituationen wie nach einem Erdbeben oder einem Taifun schnell reagieren zu können. Außerdem können wir langfristige Projekte in Angriff nehmen und besser planen. Darüber hinaus können wir durch wiederkehrende Spenden die Kosten für die Spendensammlung und Spendenbearbeitung senken. Diese Einsparungen kommen direkt unseren Hilfsprojekten vor Ort zugute.<br /> Auch für Sie als Spender*in bietet die Dauerspende Vorteile. Mit einer Dauerspende teilen Sie Ihre Hilfe in dem von Ihnen gewünschten Rhythmus über das Jahr auf, ohne ständig daran denken zu müssen. Sie können Ihren Spendenauftrag jederzeit per E-Mail oder telefonisch ändern oder stornieren. Außerdem können Sie mit abzugsfähigen Spenden Ihre Steuerbelastung reduzieren. <h2>Welcher Anteil der Spenden fließt direkt in die Projekte? Wie hoch ist der Verwaltungs- und Werbeaufwand?</h2> <strong>Ca. 85 Prozent der Spenden fließen direkt in unsere weltweite Projektarbeit (der genaue Wert wird jedes Jahr neu berechnet)</strong>. Der Rest ist notwendig für die Verwaltung unserer Organisation und die Spendenwerbung. Weitere Informationen zur Mittelverwendung und zu unseren Aktivitäten finden Sie im <a href="https://www.handicap-international.de/de/jahresberichte">aktuellen Jahresbericht</a>. Die uns anvertrauten Spenden werden entsprechend dem aktuellen Bedarf auf unsere Projekte verteilt. So helfen wir immer dort, wo wir am dringendsten gebraucht werden. <h2>Kann ich Handicap International in meinem Testament berücksichtigen?</h2> Ja, Sie haben die Möglichkeit, Handicap International in Ihrem Testament zu bedenken, der Organisation einen bestimmten Betrag zu vermachen oder sie als Begünstigte Ihrer Lebensversicherung einzusetzen. Handicap International ist als gemeinnützige und besonders förderungswürdig anerkannte Organisation <strong>von der Erbschaft- und Schenkungsteuer befreit.</strong><br /> Alle Einnahmen aus Vermächtnissen, Erbeinsetzungen und Lebensversicherungen kommen direkt Menschen mit Behinderung und besonders Schutzbedürftigen zugute. <a href="https://www.handicap-international.de/de/testamentsspende/">Wie Sie mit Ihrem Testament über Ihr Leben hinaus etwas Gutes tun können, erfahren Sie hier</a>. <h2>Wie kann ich Handicap International noch unterstützen?</h2> Suchen Sie eine andere Möglichkeit, Handicap International sinnvoll zu unterstützen? Auf unserer Website finden Sie vielfältige Ideen, wie Sie sich für unsere Organisation engagieren können: Fördern Sie langfristige Zwecke mit einer Zustiftung in den <a href="https://www.handicap-international.de/de/handicap-international-stiftungsfonds">Handicap International Stiftungsfonds</a>, spenden Sie <a href="https://www.handicap-international.de/de/payback-punkte-spenden">PAYBACK Punkte</a>, verzichten Sie auf Geschenke und stellen Sie an Ihrem Geburtstag oder Ihrer Hochzeit stattdessen eine <a href="https://www.handicap-international.de/de/ihre-anlass-spende-fur-handicap-international">Spendenbox</a> auf, schalten Sie eine <a href="https://www.handicap-international.de/de/foerdern-und-stiften/freianzeigen">Freianzeige</a> in Ihrer Zeitung oder auf Ihrer Website, ersteigern Sie exklusive Erlebnisse auf <a href="https://www.handicap-international.de/de/foerdern-und-stiften/auktion">ausgewählten Auktionsportalen</a> zugunsten von Handicap International, organisieren Sie ein <a href="https://www.handicap-international.de/de/bildungsprojekt/index">Bildungsprojekt</a> in Deutschland, nehmen Sie an unseren <a href="https://www.handicap-international.de/de/foerdern-und-stiften/veranstaltungen">Veranstaltungen</a> teil oder werden Sie <a href="https://www.handicap-international.de/de/jetzt-mitglied-werden">Mitglied</a>. <h2>Haben Sie weitere Fragen?</h2> <p>Weitere Fragen und Antworten finden Sie auf der <a href="https://www.handicap-international.de/de/ihre-spende-unser-service">Webseite unseres Spendenservices</a>. Oder kontaktieren Sie uns direkt. Unser Spendenservice ist für Sie da und unterstützt Sie gerne persönlich:<br /> <br /> <strong>Spendenservice</strong><br /> Mechthild Stier<br /> Telefon: 089/54 76 06 17<br /> E-Mail: <a href="mailto:spenden@deutschland.hi.org">spenden@deutschland.hi.org</a></p> </details> </div> </div> <!-- End Step-info --> </div> <!-- End Step-container --> </div> <!-- End Step-2 --> <div id="step-3" class="unit size1of3 lastUnit"> <div class="step-container"> <div class="step-title"> <h2>Meine Zahlung</h2> </div> <div class="step-content"> <div id="security-info"> <p>Hochsichere Zahlungen mit der 256-Bit-SSL-Verschlüsselungsmethode, dem höchsten Sicherheitsstandard.</p> </div> <div class="payment"> <div id="payment_modes_once"> <!-- STANDARD BUTTONS --> <fieldset id="payment_mode-gw_paypal_paypal" class="payment_mode " > <h4 class="payment_head"> <span class="payment_mode_title">Bezahlen mit Paypal</span> </h4> <div class="payment_body" id="gw_paypal_paypal"> <!-- GOCARDLESS BACS SPECIFIC TEXT & CHECKBOX (must be checked to submit payment) --> <!-- LEGAL UK REQUIREMENTS FOR BANK MANDATES --> <input name="type" type="hidden" value="" data-scope="gw_paypal_paypal"/> <input name="mode" type="hidden" value="gw_paypal_paypal" data-scope="gw_paypal_paypal"/> <p id="gw_paypal_paypal-submit" class="payment-submit gateway"> <input name="gw_paypal_paypal_submit" type="submit" value="Einreichen" id="gw_paypal_paypal_submit" class="button gateway" data-scope="gw_paypal_paypal"/> </p> </div> </fieldset> <fieldset id="payment_mode-iban" class="payment_mode"> <h4 class="payment_head"> <span class="payment_mode_title">Bezahlen mit IBAN</span> </h4> <div class="payment_body" id="iban"> <p id="iban-input"> <label for="iban-number">IBAN</label> <input type="text" name="iban-number" id="iban-number" maxlength="34" autocomplete="off" /> </p> <p id="iban-submit" class="payment-submit"> <input name="stripe_sepa_debit_submit" type="submit" value="Einreichen" id="iban_submit" class="button" data-scope='stripe_sepa_debit'/> </p> </div> </fieldset> <input type="hidden" name="paymentNonce" id="paymentNonce" value="" autocomplete="off"/> <input type="hidden" name="stripeErrorCode" id="stripeErrorCode" value="" autocomplete="off"/> <input type="hidden" name="stripeError" id="stripeError" value="" autocomplete="off"/> <fieldset id="payment_mode-card" class="payment_mode"> <h4 class="payment_head"> <span class="payment_mode_title">Bezahlen mit Kreditkarte</span> </h4> <div class="payment_body" id="creditcard"> <p id="card-number"> <label for="stripe_creditcard_cardNumber_placeholder_once">Bitte fügen Sie die Kreditkartennummer ein</label> <input type="text" id="stripe_creditcard_cardNumber_placeholder_once" autocomplete="off"/> </p> <div class="line"> <p id="card-expiry" class="unit size1of2"> <label for="stripe_creditcard_cardExpiry_placeholder_once">Gültig bis</label> <input type="text" id="stripe_creditcard_cardExpiry_placeholder_once" autocomplete="off"/> </p> <p id="card-scode" class="unit size2of2 lastUnit"> <label for="stripe_creditcard_cardCvc_placeholder_once">Sicherheitscode</label> <input type="text" id="stripe_creditcard_cardCvc_placeholder_once" autocomplete="off"/> <span class="help">Der Sicherheitscode besteht aus drei Ziffern auf der Rückseite Ihrer Kreditkarte</span> <span class="help amex" style="display: none;">Der Sicherheitscode besteht aus 4 Ziffern, die sich oben rechts auf der Rückseite Ihrer EC-Karte befinden</span> </p> </div> <script type="text/javascript"> if (!window.stripeJsLoaded) { window.stripeJsLoaded = new Promise((resolve, reject) => { const s = document.createElement('script'); s.src = 'https://js.stripe.com/v3/'; s.type = 'text/javascript'; s.onerror = reject; s.onload = resolve; document.head.appendChild(s); }); } </script> <input type="hidden" name="stripe_creditcard_paymentMethod" id="stripe_creditcard_paymentMethod_once" data-scope="stripe" data-required = "1" data-ira-check="window.stripe_creditcard.checkPaymentMethod('once')"/> <script> var stripeElementGetFrequency = () => Step1.current_donation.frequency; if (!window.stripe_creditcard) { const VAL_ERROR = 'error'; const VAL_NOT_SET = 'N/A'; const defaultCoords = {}; defaultCoords["firstname"] = null; defaultCoords["lastname"] = null; defaultCoords["email"] = null; const defaultPaymentMethodErrorMessage = "Ihre Bankinformationen sind nicht korrekt. Bitte überprüfen Sie diese und geben Sie die Informationen erneut ein."; const lang = "de_DE"; const cardCvcPlaceholder = "CVC"; const stripePublicApiKey = "pk_live_srqYyZqem3SpTx2GjUycaPjN"; const stripeApiVersion = "2020-08-27"; const coordNames = Object.keys(defaultCoords); const elementConf = { 'cardNumber': { defaultErrorMessage: DntErrors.errorMsg.cardnumber, options: {showIcon: true}, }, 'cardExpiry': { defaultErrorMessage: DntErrors.errorMsg.cardmonth, }, 'cardCvc': { defaultErrorMessage: DntErrors.errorMsg.cardscode, }, }; // only add a CVC placeholder for languages which have a short CVC provided if (cardCvcPlaceholder != 'Use the value provided by Stripe') { elementConf.cardCvc.options = {placeholder: cardCvcPlaceholder}; } const elementTypes = Object.keys(elementConf); window.stripe_creditcard = { complete: {}, elements: {}, error: {}, frequencies: {}, lastInitFrequency: '', stripe: false, checkElement: function(frequency, elementType) { this.log('checkElement', [frequency, elementType]); if (frequency !== this.lastInitFrequency) return false; const complete = this.complete[frequency][elementType]; const error = this.error[frequency][elementType]; const placeholder = $('#' + this.getPlaceholderId(frequency, elementType)); if (!complete || error) { placeholder.attr('data-ira-errormsg', error && error.message ? error.message : elementConf[elementType].defaultErrorMessage ); return false; } else { placeholder.removeAttr('data-ira-errormsg'); return true; } }, checkPaymentMethod: function(frequency) { this.log('checkPaymentMethod', [frequency]); if (frequency !== this.lastInitFrequency) return false; const paymentMethodInput = this.getPaymentMethodInput(frequency); if (paymentMethodInput.val() === VAL_ERROR) { paymentMethodInput.attr('data-ira-errormsg', this.error[frequency].paymentMethod || defaultPaymentMethodErrorMessage); return false; } else { paymentMethodInput.removeAttr('data-ira-errormsg'); return true; } }, createPaymentMethod: function (frequency) { if (frequency !== this.lastInitFrequency) return; this.log('createPaymentMethod', [frequency]); const paymentMethodInput = this.resetPaymentMethod(frequency); for (let elementType of elementTypes) { if (!this.complete[frequency][elementType]) return; } const coords = {}; for (let coordName of coordNames) { const coordInput = $('input[name="' + coordName + '"]'); coords[coordName] = coordInput.length ? coordInput.val() : defaultCoords[coordName]; if (!coords[coordName]) return; } // All other inputs we rely on are ok and won't trigger any error message display, // so until createPaymentMethod succeds, we must ensure paymentMethodInput does paymentMethodInput.val(VAL_ERROR); // Prevent form submission before createPaymentMethod answers $('#stripe_submit.' + frequency).prop('disabled', true); setTimeout(() => { try { this.stripe.createPaymentMethod({ type: 'card', card: this.elements[frequency].cardNumber, billing_details: { name: coords.firstname + ' ' + coords.lastname, email: coords.email, } }).then(result => { $('#stripe_submit.' + frequency).prop('disabled', false); console.log(result); if (result.paymentMethod && result.paymentMethod.id) { paymentMethodInput.val(result.paymentMethod.id); console.log('paymentMethod = ' + paymentMethodInput.val()); } else { this.error[frequency].paymentMethod = result.error.message; for (let prop of ['type', 'code', 'decline_code', 'message']) { window.onerror('createPaymentMethod error.' + prop + ' = ' + result.error[prop]); } } }); } catch (e) { console.log(e); $('#stripe_submit.' + frequency).prop('disabled', false); } }, 500); }, getContainerId: function(frequency, elementType) { return 'stripe_creditcard_' + elementType + '_container_' + frequency; }, getPaymentMethodInput: function(frequency) { return $('#stripe_creditcard_paymentMethod_' + frequency); }, getPlaceholderId: function(frequency, elementType) { return 'stripe_creditcard_' + elementType + '_placeholder_' + frequency; }, /** * Build an array of Stripe JS CssFontSource objects * from the fonts used by the specified elements. * * See https://stripe.com/docs/js/appendix/css_font_source_object * * Warning: works only for fonts loaded from a google-style stylesheet URL * with a family=xxx parameter (where xxx is the font-family) */ getStripeJsCssFontSources: function(ids) { try { const used = {}; for (let id of ids) { const computedStyle = window.getComputedStyle(document.getElementById(id)); const fontFamily = computedStyle.getPropertyValue('font-family'); used[fontFamily] = true; } const hrefs = []; for (let s of document.styleSheets) { if (!s.href) continue; const params = new URLSearchParams(new URL(s.href).search); const fontFamily = params.get('family'); if (used[fontFamily] && (hrefs.indexOf(s.href) === -1)) { hrefs.push(s.href); } } return hrefs.map(href => ({cssSrc: href})); } catch (error) { /** * Stripe Element implementation has javascript incompatibility with Opera browser. * We work around this problem by catching exceptions in getStripeJsCssFontSources and returning an empty list. * This fix will have an impact on the design of Stripe Elements, but it will not block the creation of donations. */ return []; } }, /** * Get the locale as expected by Stripe JS * * See https://stripe.com/docs/js/appendix/supported_locales */ getStripeJsLocale: function () { switch(lang) { case 'en_EN': return 'en-GB'; case 'se_SE': return 'sv'; case 'zh_TW': return lang.substring(0, 2) + '-' + lang.substring(3, 5); default: return lang.substring(0, 2); } }, /** * Build a Stripe JS Style object from the specified element's computed style * and copy all other styles to the provided container. * * See https://stripe.com/docs/js/appendix/style */ getStripeJsStyle: function(id, container) { const styleKeyMap = { // Stripe JS recommands setting background-color on the container //'background-color': 'backgroundColor', 'color': 'color', 'font-family': 'fontFamily', 'font-size': 'fontSize', 'font-smoothing': 'fontSmoothing', 'font-style': 'fontStyle', 'font-variant': 'fontVariant', 'font-weight': 'fontWeight', // Stripe JS doesn't like line-height and doesn't even take it into account //'line-height': 'lineHeight', 'letter-spacing': 'letterSpacing', 'text-align': 'textAlign', 'text-decoration': 'textDecoration', 'text-shadow': 'textShadow', 'text-transform': 'textTransform', }; const baseStyle = {}; const computedStyle = window.getComputedStyle(document.getElementById(id)); for (let cssProp of computedStyle) { const styleKey = styleKeyMap[cssProp]; const cssValue = computedStyle.getPropertyValue(cssProp); if (styleKey) { baseStyle[styleKey] = cssValue; } else { container.css(cssProp, cssValue); } } return {base: baseStyle}; }, init: function (reason) { const frequency = stripeElementGetFrequency(); if (!this.frequencies[frequency]) return; this.log('init', [frequency, reason]); // Stripe elements are reset at every init so we need to reset as well this.complete[frequency] = {}; this.error[frequency] = {}; this.resetPaymentMethod(frequency); this.lastInitFrequency = frequency; this.mount(frequency); }, isMounted: function(frequency) { return !!this.elements[frequency]; }, log: function (method, params = []) { console.log('stripe_creditcard.' + method + '(' + params.join(', ') + ')'); }, mount: function (frequency) { const wasAlreadyMounted = this.unmount(frequency); this.log('mount', [frequency]); if (!this.stripe) { this.stripe = Stripe(stripePublicApiKey, { locale: this.getStripeJsLocale(), apiVersion: stripeApiVersion }); } const stripeElements = this.stripe.elements({ fonts: this.getStripeJsCssFontSources( elementTypes.map(elementType => this.getPlaceholderId(frequency, elementType)) ), }); this.elements[frequency] = {}; for (let elementType of elementTypes) { const placeholderId = this.getPlaceholderId(frequency, elementType); const containerId = this.getContainerId(frequency, elementType); const container = $('<span/>').attr('id', containerId); const element = stripeElements.create(elementType, Object.assign( {style: this.getStripeJsStyle(placeholderId, container)}, elementConf[elementType].options )); this.elements[frequency][elementType] = element; $('#' + placeholderId) .attr('data-scope', 'stripe') .attr('data-required', '1') .attr('data-ira-check', "window.stripe_creditcard.checkElement('" + frequency + "', '" + elementType + "')") .val(VAL_NOT_SET) .hide() .after(container); element.mount('#' + containerId); // Stripe creates an intermediate div between the container and its iframe // Let's force this div's contents to be vertically centered inside the container $('#' + containerId + ' div').css({ display: 'flex', height: '100%', 'align-items': 'center', }); element.on('change', ev => this.onElementChanged(frequency, ev)); } if (!wasAlreadyMounted) { for (let coordName of coordNames) { $('input[name="' + coordName + '"]').on('change', () => this.createPaymentMethod(frequency)); } // Force a re-init if the payment mode was previously hidden // as Stripe does not mount well hidden fields const cvcPlaceholderId = this.getPlaceholderId(frequency, 'cardCvc'); $('#payment_mode-card:has(#' + cvcPlaceholderId + ')').on('payment_shown', () => this.init('payment_shown')); } }, unmount: function (frequency) { if (!this.isMounted(frequency)) return false; this.log('unmount', [frequency]); for (let elementType of elementTypes) { this.elements[frequency][elementType].destroy(); $('#' + this.getContainerId(frequency, elementType)).remove(); $('#' + this.getPlaceholderId(frequency, elementType)).show(); } return true; }, onElementChanged: function (frequency, ev) { this.log('onElementChanged', [ frequency, ev.elementType, ev.complete ? 'complete' : 'not complete', ev.error ? ev.error.message : 'no error', ]); this.complete[frequency][ev.elementType] = ev.complete; this.error[frequency][ev.elementType] = ev.error; this.createPaymentMethod(frequency); }, resetPaymentMethod: function (frequency) { const paymentMethodInput = this.getPaymentMethodInput(frequency); paymentMethodInput.val(VAL_NOT_SET); this.error[frequency].paymentMethod = false; return paymentMethodInput; }, }; window.stripeJsLoaded.then(() => { // Force a reinit when the donation amount or the style change for (let event of ['init_done', 'WebFont.fontactive']) { $('body').on(event, () => window.stripe_creditcard.init(event)); } }); } if (!window.stripe_creditcard.frequencies["once"]) { window.stripe_creditcard.frequencies["once"] = true; window.stripeJsLoaded.then(() => { // Ensure the 1st init is done only once, for the active frequency if (stripeElementGetFrequency() === "once") { window.stripe_creditcard.init("stripeJsLoaded"); } }); } </script> <p id="card-submit" class="payment-submit"> <input name="stripe_submit" type="submit" value="Einreichen" id="stripe_submit" class="button once" data-scope='stripe'/> </p> </div> </fieldset> <fieldset id="payment_mode-apple_pay-once" class="payment_mode" data-scope='stripe_apple_pay'> <h4 class="payment_head"><span class="payment_mode_title">Apple Pay</span></h4> <div class="payment_body" id="apple_pay"> <div id="apple_pay-submit" class="payment-submit"> <input name="stripe_apple_pay_submit" type="submit" value="Einreichen" alt="Apple Pay" id="stripe_apple_pay_submit" class="button once" data-scope='stripe_apple_pay' style="display:none;" disabled/> </div> <input type="hidden" name="stripe_apple_pay_paymentMethod" id="stripe_apple_pay_paymentMethod" class="once" value=""/> </div> </fieldset> <script> Stripe_obj.buttons.Step3 = true; $('#stripe_apple_pay_submit.once').click(function(event){ // Submit the form if called after receiving the paymentMethod if ( (Stripe_obj.buttons.Step2 || Stripe_obj.buttons.Step3) && $('#stripe_apple_pay_paymentMethod.once').val() ) { console.log('stripe_apple_pay_submit -- submitting form'); return true; } else if (Stripe_obj.buttons.Step3) { // Or show the Apple/Google/Microsoft popup if called in step 3 and the form is valid if (Step1.check() && Step2.check() && Step3.check()) { console.log('paymentRequest.show() -- stripePay'); Stripe_obj.paymentRequest.show(); return false; } else { DntErrors.displayErrors(); } } // Or stay on the form setTimeout(() => $('.ira-processing').removeClass('ira-processing'), 500); return false; }); </script> <style> #stripe_apple_pay_submit.apple_pay_styled_button { -webkit-appearance: -apple-pay-button !important; -apple-pay-button-type: donate; color: transparent !important; } </style> </div> <div id="payment_modes_regular" style="display:none"> <!-- STANDARD BUTTONS --> <fieldset id="payment_mode-gw_paypal_paypal" class="payment_mode " > <h4 class="payment_head"> <span class="payment_mode_title">Bezahlen mit Paypal</span> </h4> <div class="payment_body" id="gw_paypal_paypal"> <!-- GOCARDLESS BACS SPECIFIC TEXT & CHECKBOX (must be checked to submit payment) --> <!-- LEGAL UK REQUIREMENTS FOR BANK MANDATES --> <input name="type" type="hidden" value="" data-scope="gw_paypal_paypal"/> <input name="mode" type="hidden" value="gw_paypal_paypal" data-scope="gw_paypal_paypal"/> <p id="gw_paypal_paypal-submit" class="payment-submit gateway"> <input name="gw_paypal_paypal_submit" type="submit" value="Einreichen" id="gw_paypal_paypal_submit" class="button gateway" data-scope="gw_paypal_paypal"/> </p> </div> </fieldset> <fieldset id="payment_mode-iban" class="payment_mode"> <h4 class="payment_head"> <span class="payment_mode_title">Bezahlen mit IBAN</span> </h4> <div class="payment_body" id="iban"> <p id="iban-input"> <label for="iban-number">IBAN</label> <input type="text" name="iban-number" id="iban-number" maxlength="34" autocomplete="off" /> </p> <p id="iban-submit" class="payment-submit"> <input name="stripe_sepa_debit_submit" type="submit" value="Einreichen" id="iban_submit" class="button" data-scope='stripe_sepa_debit'/> </p> </div> </fieldset> <input type="hidden" name="paymentNonce" id="paymentNonce" value="" autocomplete="off"/> <input type="hidden" name="stripeErrorCode" id="stripeErrorCode" value="" autocomplete="off"/> <input type="hidden" name="stripeError" id="stripeError" value="" autocomplete="off"/> <fieldset id="payment_mode-card" class="payment_mode"> <h4 class="payment_head"> <span class="payment_mode_title">Bezahlen mit Kreditkarte</span> </h4> <div class="payment_body" id="creditcard"> <p id="card-number"> <label for="stripe_creditcard_cardNumber_placeholder_regular">Bitte fügen Sie die Kreditkartennummer ein</label> <input type="text" id="stripe_creditcard_cardNumber_placeholder_regular" autocomplete="off"/> </p> <div class="line"> <p id="card-expiry" class="unit size1of2"> <label for="stripe_creditcard_cardExpiry_placeholder_regular">Gültig bis</label> <input type="text" id="stripe_creditcard_cardExpiry_placeholder_regular" autocomplete="off"/> </p> <p id="card-scode" class="unit size2of2 lastUnit"> <label for="stripe_creditcard_cardCvc_placeholder_regular">Sicherheitscode</label> <input type="text" id="stripe_creditcard_cardCvc_placeholder_regular" autocomplete="off"/> <span class="help">Der Sicherheitscode besteht aus drei Ziffern auf der Rückseite Ihrer Kreditkarte</span> <span class="help amex" style="display: none;">Der Sicherheitscode besteht aus 4 Ziffern, die sich oben rechts auf der Rückseite Ihrer EC-Karte befinden</span> </p> </div> <script type="text/javascript"> if (!window.stripeJsLoaded) { window.stripeJsLoaded = new Promise((resolve, reject) => { const s = document.createElement('script'); s.src = 'https://js.stripe.com/v3/'; s.type = 'text/javascript'; s.onerror = reject; s.onload = resolve; document.head.appendChild(s); }); } </script> <input type="hidden" name="stripe_creditcard_paymentMethod" id="stripe_creditcard_paymentMethod_regular" data-scope="stripe" data-required = "1" data-ira-check="window.stripe_creditcard.checkPaymentMethod('regular')"/> <script> var stripeElementGetFrequency = () => Step1.current_donation.frequency; if (!window.stripe_creditcard) { const VAL_ERROR = 'error'; const VAL_NOT_SET = 'N/A'; const defaultCoords = {}; defaultCoords["firstname"] = null; defaultCoords["lastname"] = null; defaultCoords["email"] = null; const defaultPaymentMethodErrorMessage = "Ihre Bankinformationen sind nicht korrekt. Bitte überprüfen Sie diese und geben Sie die Informationen erneut ein."; const lang = "de_DE"; const cardCvcPlaceholder = "CVC"; const stripePublicApiKey = "pk_live_srqYyZqem3SpTx2GjUycaPjN"; const stripeApiVersion = "2020-08-27"; const coordNames = Object.keys(defaultCoords); const elementConf = { 'cardNumber': { defaultErrorMessage: DntErrors.errorMsg.cardnumber, options: {showIcon: true}, }, 'cardExpiry': { defaultErrorMessage: DntErrors.errorMsg.cardmonth, }, 'cardCvc': { defaultErrorMessage: DntErrors.errorMsg.cardscode, }, }; // only add a CVC placeholder for languages which have a short CVC provided if (cardCvcPlaceholder != 'Use the value provided by Stripe') { elementConf.cardCvc.options = {placeholder: cardCvcPlaceholder}; } const elementTypes = Object.keys(elementConf); window.stripe_creditcard = { complete: {}, elements: {}, error: {}, frequencies: {}, lastInitFrequency: '', stripe: false, checkElement: function(frequency, elementType) { this.log('checkElement', [frequency, elementType]); if (frequency !== this.lastInitFrequency) return false; const complete = this.complete[frequency][elementType]; const error = this.error[frequency][elementType]; const placeholder = $('#' + this.getPlaceholderId(frequency, elementType)); if (!complete || error) { placeholder.attr('data-ira-errormsg', error && error.message ? error.message : elementConf[elementType].defaultErrorMessage ); return false; } else { placeholder.removeAttr('data-ira-errormsg'); return true; } }, checkPaymentMethod: function(frequency) { this.log('checkPaymentMethod', [frequency]); if (frequency !== this.lastInitFrequency) return false; const paymentMethodInput = this.getPaymentMethodInput(frequency); if (paymentMethodInput.val() === VAL_ERROR) { paymentMethodInput.attr('data-ira-errormsg', this.error[frequency].paymentMethod || defaultPaymentMethodErrorMessage); return false; } else { paymentMethodInput.removeAttr('data-ira-errormsg'); return true; } }, createPaymentMethod: function (frequency) { if (frequency !== this.lastInitFrequency) return; this.log('createPaymentMethod', [frequency]); const paymentMethodInput = this.resetPaymentMethod(frequency); for (let elementType of elementTypes) { if (!this.complete[frequency][elementType]) return; } const coords = {}; for (let coordName of coordNames) { const coordInput = $('input[name="' + coordName + '"]'); coords[coordName] = coordInput.length ? coordInput.val() : defaultCoords[coordName]; if (!coords[coordName]) return; } // All other inputs we rely on are ok and won't trigger any error message display, // so until createPaymentMethod succeds, we must ensure paymentMethodInput does paymentMethodInput.val(VAL_ERROR); // Prevent form submission before createPaymentMethod answers $('#stripe_submit.' + frequency).prop('disabled', true); setTimeout(() => { try { this.stripe.createPaymentMethod({ type: 'card', card: this.elements[frequency].cardNumber, billing_details: { name: coords.firstname + ' ' + coords.lastname, email: coords.email, } }).then(result => { $('#stripe_submit.' + frequency).prop('disabled', false); console.log(result); if (result.paymentMethod && result.paymentMethod.id) { paymentMethodInput.val(result.paymentMethod.id); console.log('paymentMethod = ' + paymentMethodInput.val()); } else { this.error[frequency].paymentMethod = result.error.message; for (let prop of ['type', 'code', 'decline_code', 'message']) { window.onerror('createPaymentMethod error.' + prop + ' = ' + result.error[prop]); } } }); } catch (e) { console.log(e); $('#stripe_submit.' + frequency).prop('disabled', false); } }, 500); }, getContainerId: function(frequency, elementType) { return 'stripe_creditcard_' + elementType + '_container_' + frequency; }, getPaymentMethodInput: function(frequency) { return $('#stripe_creditcard_paymentMethod_' + frequency); }, getPlaceholderId: function(frequency, elementType) { return 'stripe_creditcard_' + elementType + '_placeholder_' + frequency; }, /** * Build an array of Stripe JS CssFontSource objects * from the fonts used by the specified elements. * * See https://stripe.com/docs/js/appendix/css_font_source_object * * Warning: works only for fonts loaded from a google-style stylesheet URL * with a family=xxx parameter (where xxx is the font-family) */ getStripeJsCssFontSources: function(ids) { try { const used = {}; for (let id of ids) { const computedStyle = window.getComputedStyle(document.getElementById(id)); const fontFamily = computedStyle.getPropertyValue('font-family'); used[fontFamily] = true; } const hrefs = []; for (let s of document.styleSheets) { if (!s.href) continue; const params = new URLSearchParams(new URL(s.href).search); const fontFamily = params.get('family'); if (used[fontFamily] && (hrefs.indexOf(s.href) === -1)) { hrefs.push(s.href); } } return hrefs.map(href => ({cssSrc: href})); } catch (error) { /** * Stripe Element implementation has javascript incompatibility with Opera browser. * We work around this problem by catching exceptions in getStripeJsCssFontSources and returning an empty list. * This fix will have an impact on the design of Stripe Elements, but it will not block the creation of donations. */ return []; } }, /** * Get the locale as expected by Stripe JS * * See https://stripe.com/docs/js/appendix/supported_locales */ getStripeJsLocale: function () { switch(lang) { case 'en_EN': return 'en-GB'; case 'se_SE': return 'sv'; case 'zh_TW': return lang.substring(0, 2) + '-' + lang.substring(3, 5); default: return lang.substring(0, 2); } }, /** * Build a Stripe JS Style object from the specified element's computed style * and copy all other styles to the provided container. * * See https://stripe.com/docs/js/appendix/style */ getStripeJsStyle: function(id, container) { const styleKeyMap = { // Stripe JS recommands setting background-color on the container //'background-color': 'backgroundColor', 'color': 'color', 'font-family': 'fontFamily', 'font-size': 'fontSize', 'font-smoothing': 'fontSmoothing', 'font-style': 'fontStyle', 'font-variant': 'fontVariant', 'font-weight': 'fontWeight', // Stripe JS doesn't like line-height and doesn't even take it into account //'line-height': 'lineHeight', 'letter-spacing': 'letterSpacing', 'text-align': 'textAlign', 'text-decoration': 'textDecoration', 'text-shadow': 'textShadow', 'text-transform': 'textTransform', }; const baseStyle = {}; const computedStyle = window.getComputedStyle(document.getElementById(id)); for (let cssProp of computedStyle) { const styleKey = styleKeyMap[cssProp]; const cssValue = computedStyle.getPropertyValue(cssProp); if (styleKey) { baseStyle[styleKey] = cssValue; } else { container.css(cssProp, cssValue); } } return {base: baseStyle}; }, init: function (reason) { const frequency = stripeElementGetFrequency(); if (!this.frequencies[frequency]) return; this.log('init', [frequency, reason]); // Stripe elements are reset at every init so we need to reset as well this.complete[frequency] = {}; this.error[frequency] = {}; this.resetPaymentMethod(frequency); this.lastInitFrequency = frequency; this.mount(frequency); }, isMounted: function(frequency) { return !!this.elements[frequency]; }, log: function (method, params = []) { console.log('stripe_creditcard.' + method + '(' + params.join(', ') + ')'); }, mount: function (frequency) { const wasAlreadyMounted = this.unmount(frequency); this.log('mount', [frequency]); if (!this.stripe) { this.stripe = Stripe(stripePublicApiKey, { locale: this.getStripeJsLocale(), apiVersion: stripeApiVersion }); } const stripeElements = this.stripe.elements({ fonts: this.getStripeJsCssFontSources( elementTypes.map(elementType => this.getPlaceholderId(frequency, elementType)) ), }); this.elements[frequency] = {}; for (let elementType of elementTypes) { const placeholderId = this.getPlaceholderId(frequency, elementType); const containerId = this.getContainerId(frequency, elementType); const container = $('<span/>').attr('id', containerId); const element = stripeElements.create(elementType, Object.assign( {style: this.getStripeJsStyle(placeholderId, container)}, elementConf[elementType].options )); this.elements[frequency][elementType] = element; $('#' + placeholderId) .attr('data-scope', 'stripe') .attr('data-required', '1') .attr('data-ira-check', "window.stripe_creditcard.checkElement('" + frequency + "', '" + elementType + "')") .val(VAL_NOT_SET) .hide() .after(container); element.mount('#' + containerId); // Stripe creates an intermediate div between the container and its iframe // Let's force this div's contents to be vertically centered inside the container $('#' + containerId + ' div').css({ display: 'flex', height: '100%', 'align-items': 'center', }); element.on('change', ev => this.onElementChanged(frequency, ev)); } if (!wasAlreadyMounted) { for (let coordName of coordNames) { $('input[name="' + coordName + '"]').on('change', () => this.createPaymentMethod(frequency)); } // Force a re-init if the payment mode was previously hidden // as Stripe does not mount well hidden fields const cvcPlaceholderId = this.getPlaceholderId(frequency, 'cardCvc'); $('#payment_mode-card:has(#' + cvcPlaceholderId + ')').on('payment_shown', () => this.init('payment_shown')); } }, unmount: function (frequency) { if (!this.isMounted(frequency)) return false; this.log('unmount', [frequency]); for (let elementType of elementTypes) { this.elements[frequency][elementType].destroy(); $('#' + this.getContainerId(frequency, elementType)).remove(); $('#' + this.getPlaceholderId(frequency, elementType)).show(); } return true; }, onElementChanged: function (frequency, ev) { this.log('onElementChanged', [ frequency, ev.elementType, ev.complete ? 'complete' : 'not complete', ev.error ? ev.error.message : 'no error', ]); this.complete[frequency][ev.elementType] = ev.complete; this.error[frequency][ev.elementType] = ev.error; this.createPaymentMethod(frequency); }, resetPaymentMethod: function (frequency) { const paymentMethodInput = this.getPaymentMethodInput(frequency); paymentMethodInput.val(VAL_NOT_SET); this.error[frequency].paymentMethod = false; return paymentMethodInput; }, }; window.stripeJsLoaded.then(() => { // Force a reinit when the donation amount or the style change for (let event of ['init_done', 'WebFont.fontactive']) { $('body').on(event, () => window.stripe_creditcard.init(event)); } }); } if (!window.stripe_creditcard.frequencies["regular"]) { window.stripe_creditcard.frequencies["regular"] = true; window.stripeJsLoaded.then(() => { // Ensure the 1st init is done only once, for the active frequency if (stripeElementGetFrequency() === "regular") { window.stripe_creditcard.init("stripeJsLoaded"); } }); } </script> <p id="card-submit" class="payment-submit"> <input name="stripe_submit" type="submit" value="Einreichen" id="stripe_submit" class="button regular" data-scope='stripe'/> </p> </div> </fieldset> <fieldset id="payment_mode-apple_pay-regular" class="payment_mode" data-scope='stripe_apple_pay'> <h4 class="payment_head"><span class="payment_mode_title">Apple Pay</span></h4> <div class="payment_body" id="apple_pay"> <div id="apple_pay-submit" class="payment-submit"> <input name="stripe_apple_pay_submit" type="submit" value="Einreichen" alt="Apple Pay" id="stripe_apple_pay_submit" class="button regular" data-scope='stripe_apple_pay' style="display:none;" disabled/> </div> <input type="hidden" name="stripe_apple_pay_paymentMethod" id="stripe_apple_pay_paymentMethod" class="regular" value=""/> </div> </fieldset> <script> Stripe_obj.buttons.Step3 = true; $('#stripe_apple_pay_submit.regular').click(function(event){ // Submit the form if called after receiving the paymentMethod if ( (Stripe_obj.buttons.Step2 || Stripe_obj.buttons.Step3) && $('#stripe_apple_pay_paymentMethod.regular').val() ) { console.log('stripe_apple_pay_submit -- submitting form'); return true; } else if (Stripe_obj.buttons.Step3) { // Or show the Apple/Google/Microsoft popup if called in step 3 and the form is valid if (Step1.check() && Step2.check() && Step3.check()) { console.log('paymentRequest.show() -- stripePay'); Stripe_obj.paymentRequest.show(); return false; } else { DntErrors.displayErrors(); } } // Or stay on the form setTimeout(() => $('.ira-processing').removeClass('ira-processing'), 500); return false; }); </script> <style> #stripe_apple_pay_submit.apple_pay_styled_button { -webkit-appearance: -apple-pay-button !important; -apple-pay-button-type: subscribe; color: transparent !important; } </style> </div> </div> <!-- End Payment --> </div> <!-- End Bloc --> <div class="step-info"> <h4>Hilfe, die ankommt</h4> <div class="step-info-body"> Von 10 gespendeten Euro fließen <strong>9,20 € in die Projektarbeit</strong>. Der Rest ist notwendig für Verwaltung und Spendenwerbung.<br /> <br /> <strong>Haben Sie Fragen? </strong>Wir helfen Ihnen gerne weiter und freuen uns auf Ihre Nachricht. Spenderservice-Telefon: 089/54 76 06 17, Email: spenden@deutschland.hi.org<br /> <div><a href="https://handicap-international.de/de/kontakt">Kontakt</a> | <a href="https://www.handicap-international.de/de/faq-zum-datenschutz">Datenschutz Handicap International</a> | <a href="https://www.iraiser.com/legal-informations/">Datenschutz</a><a href="http://www.iraiser.com/legal-informations/"> iRaiser</a> | <a href="https://handicap-international.de/de/impressum">Impressum</a></div> </div> </div> <!-- End Step-info --> </div> <!-- End Step-container --> </div> <!-- End Step 3 --> </form> </div> </div> <!-- End Main --> <div id="footer" class="line"> <div class="container" id="footer_wrapinner"> <div id="powered" class="unit size1of3" style="display:block !important;"> <p style="display:block !important;"><a style="display:block !important;" href="https://www.iraiser.eu/en/" title="Powered by iRaiser"><img style="display:block !important; min-width: 100px!important;min-height: 15px!important;" src="/libs.iraiser.eu/design/powered-by/v1/powered-by-iraiser.png" alt="Powered by iRaiser" width="120" height="18"/></a></p> </div> <div id="copyright" class="unit size2of3 lastUnit"> <p> <a href="https://spenden.handicap-international.de/impressum" title="Impressum">Impressum</a> <span>|</span> <a href="https://spenden.handicap-international.de/datenschutz" title="Datenschutz">Datenschutz</a> <span>|</span> <a href="https://spenden.handicap-international.de/kontakt" title="Kontakt">Kontakt</a> </p> </div> </div> </div> <!-- End Footer --> </div> <!-- End Container --> </body></html>