Jump to content

MediaWiki:Centralnotice-template-B17WMDE 03 170804 var

From Meta, a Wikimedia project coordination wiki

<style type="text/css">

  1. centralNotice.collapsed #WMDE_Banner {
   display: none;

}

  1. WMDE_Banner {
   font-family: Arial, Helvetica, Verdana, sans-serif;
   font-size:13px;
   text-align: left;
   background: transparent;
   display: none;
   position: fixed;
   left: 0;
   top: 0;
   width: 100%;
   z-index: 9999;

}

  1. WMDE_Banner input, select, button{
   font-family: Arial, Helvetica, Verdana, sans-serif;
   font-size: 13px;

}

  1. WMDE_Banner input {
   background: none repeat scroll 0 0 white;
   border: 1px solid #a9a9a9;
   border-radius: 4px;
   padding: 0 2px;

}

  1. WMDE_Banner input[type=radio] {
   padding: 0;
   border: none;

}

  1. WMDE_Banner input.focused {
   border-color: #545454;

}

  1. WMDE_Banner input.invalid {
   border-color: #C25959;

}

  1. WMDE_Banner hr {
   background-color: #a9a9a9;

}

  1. WMDE_Banner div {
   box-sizing: content-box;

}

  1. WMDE_Banner table {
   border: none;
   border-collapse: collapse!important;
   width: 100%;

}

  1. WMDE_Banner td {
   vertical-align: top;

}

  1. WMDE_BannerForm-wrapper {
   width: 254px;
   height: 158px;
   background: #eef0fc;
   border-left: 1px solid #c2cedb;
   border-right: 1px solid #c2cedb;

}

  1. WMDE_BannerForm {
   height: 100%;

}

  1. WMDE_BannerForm td {
   font-weight: bold;
   min-width: 55px;
   white-space: nowrap;
   margin: 0;
   vertical-align: middle;
   padding: 2px;

}

  1. WMDE_BannerForm span label {
   margin-left: 2px;

}

  1. WMDE_BannerForm .amount-options {
   height: 20%;

}

  1. WMDE_BannerForm-payment td {
   font-weight: bold;
   padding: 4px 8px 0 8px;

}

  1. WMDE_BannerForm-payment td:last-child {
   padding: 4px 8px 0 2px;

}

  1. WMDE_BannerForm-payment .amount-options td {
   padding: 2px 0 2px 2px;

}

  1. WMDE_BannerForm-payment .amount-options td:last-child {
   padding: 2px;

}

  1. WMDE_BannerForm-payment .amount-label {
   width: 36px;
   line-height: 22px;

}

  1. WMDE_BannerForm-payment .amount-radio {
   margin: 3px 0 0 3px;

}

  1. WMDE_BannerForm-payment #amount-other-input {
   width: 27px;

}

  1. WMDE_BannerForm-payment button {
   cursor: pointer;
   display: inline-block;
   font-weight: bold;
   width: 110px;
   border: 3px double #ddd;
   border-radius: 8px;
   background: #ffffff; /* Old browsers */
   background: -moz-linear-gradient(top, #ffffff 0%, #e5e5e5 100%); /* FF3.6+ */
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #e5e5e5)); /* Chrome,Safari4+ */
   background: -webkit-linear-gradient(top, #ffffff 0%, #e5e5e5 100%); /* Chrome10+,Safari5.1+ */
   background: -o-linear-gradient(top, #ffffff 0%, #e5e5e5 100%); /* Opera 11.10+ */
   background: -ms-linear-gradient(top, #ffffff 0%, #e5e5e5 100%); /* IE10+ */
   background: linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%); /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e5e5e5', GradientType=0); /* IE6-9 */
   margin: 0 1px;

}

  1. WMDE_BannerForm-payment button.active {
   color: #FF6C00;
   background: #e5e5e5; /* Old browsers */
   background: -moz-linear-gradient(top, #e5e5e5 0%, #ffffff 100%); /* FF3.6+ */
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #e5e5e5), color-stop(100%, #ffffff)); /* Chrome,Safari4+ */
   background: -webkit-linear-gradient(top, #e5e5e5 0%, #ffffff 100%); /* Chrome10+,Safari5.1+ */
   background: -o-linear-gradient(top, #e5e5e5 0%, #ffffff 100%); /* Opera 11.10+ */
   background: -ms-linear-gradient(top, #e5e5e5 0%, #ffffff 100%); /* IE10+ */
   background: linear-gradient(to bottom, #e5e5e5 0%, #ffffff 100%); /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e5e5e5', endColorstr='#ffffff', GradientType=0); /* IE6-9 */

}

  1. WMDE_BannerForm-payment button:hover {
   color: #0645ad;

}

  1. WMDE_BannerForm-payment button.active:hover {
   color: #FF6C00;

}

  1. WMDE_BannerForm button:hover {
   color: #0645ad;

}

  1. WMDE_Banner-facts {
   background: #CEDFF1 url(https://upload.wikimedia.org/wikipedia/donate/3/37/Information-icon-yellow.png) no-repeat 10px 8px;
   background-position: left 10px bottom 4px;
   height: 100%;
   min-height: 65px;
   padding: 0;
   position: relative;
   width: 100%;
   border: none;
   border-collapse: collapse;

}

  1. WMDE_Banner-text {
   color: #000;
   font-size: 17px;
   font-weight: bold;
   line-height: 1.2em;
   margin: 4px 10px 4px 35px;
   text-align: justify;
   padding-bottom: 2px;

}

  1. WMDE_Banner-legal {
   position: relative;
   margin: 0;
   padding: 10px 40px 10px 40px;
   line-height: 16px;
   z-index: -10;
   background: #CEDFF1;
   top: -100px;
   text-align: center;

}

  1. WMDE_Banner-close-wrapper {
   padding: 0;
   width: 20px;

}

  1. WMDE_Banner-close {
   background: url(https://upload.wikimedia.org/wikipedia/donate/2/27/Small-white-close.png) no-repeat center center;
   background-color: black;
   cursor: pointer;
   display: block;
   height: 20px;
   width: 20px;
   position: absolute;
   top: 0;

}

  1. WMDE_Banner-facts p b {
   background: yellow;
   color: black;
   padding: 1px 0.5em;

}

  1. WMDE_Banner .interval-hidden {
   display: none;

}

  1. WMDE_Banner_info {
   margin: 0 10px 2px 35px;
   line-height: 16px;
   position: relative;
   border-top: 1px solid #988A00;
   padding-top: 2px;
   color: #000000;

}

  1. WMDE_Banner_text {
   display: inline-block;

}

  1. WMDE_Banner_info span {
   margin-right: 10px;

}

  1. WMDE_Banner_info span.binfo-ucase {
   text-transform: uppercase;

}

  1. WMDE_Banner_info span.binfo-bold {
   font-weight: bold;

}

  1. WMDE_Banner span.btext-highlight {
   background-color: yellow;
   padding: 1px 5px;

}

  1. WMDE_Banner .highlight {
   background-color: yellow;

}

  1. amtTarget {
   color: rgba(0, 0, 0, 0.5);
   font-size: 15px;
   font-weight: bold;
   position: absolute;
   right: 0;
   top: 3px;
   width: 70px;

}

/* --- Error Msg --- */

  1. WMDE_Banner-amounts.fieldset-error, #WMDE_Banner-frequency.fieldset-error {
   float: left;
   border: 2px solid red;
   padding-top: 0.2em;
   padding-bottom: 0.2em;
   margin-left: -2px;
   margin-top: 0.3em;
   margin-bottom: 0.3em;

}

  1. WMDE_Banner-amounts-error-text, #WMDE_Banner-frequency-error-text {
   color: red;
   font-weight: bold;
   display: inline-block;
   text-align: center;
   width: 100%;
   margin-bottom: 0.2em;

}</style> <style type="text/css">

  1. WMDE_Banner [class^="icon-"], #WMDE_Banner [class*=" icon-"], #wlightbox [class^="icon-"], #wlightbox [class*=" icon-"] {

display: inline-block; background-repeat: no-repeat; background-image: url('//upload.wikimedia.org/wikipedia/commons/6/6f/Icomoon_website_icon_sprite.svg'); } .icon-ok-inverted { width: 14px; height: 16px; background-position: 0 0; } .icon-parcel { width: 14px; height: 16px; background-position: -20px 0; } .icon-bug { width: 15px; height: 16px; background-position: 0 -20px; } .icon-shield { width: 11px; height: 16px; background-position: -20px -20px; } .icon-bar-chart { width: 17px; height: 16px; background-position: 0 -40px; } .icon-ok { width: 16px; height: 16px; background-position: -20px -40px; } .icon-lock { width: 10px; height: 16px; background-position: 0 -60px; } .icon-notice { width: 11px; height: 16px; background-position: -20px -60px; } .icon-cross { width: 14px; height: 16px; background-position: 0 -80px; } .icon-question { width: 14px; height: 16px; background-position: -20px -80px; } .icon-check-circle { width: 14px; height: 16px; background-position: 0 -100px; } .icon-hand-right { width: 16px; height: 16px; background-position: -20px -100px; }</style> <style type="text/css">

  1. wlightbox-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #7c8499; z-index: 500; display: none; }
  2. wlightbox { position: absolute; z-index: 510; padding: 30px 30px 25px; background: #FFF;

-webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; -moz-box-shadow: 0 1px 4px rgba(0,0,0,0.3); -webkit-box-shadow: 0 1px 4px rgba(0,0,0,0.3);

   box-shadow: 0 1px 4px rgba(0,0,0,0.3);

filter: drop-shadow(0 1px 4px rgba(0,0,0,0.3)); }

  1. wlightbox-content { color: #000; }
  2. wlightbox-content p { margin-bottom: 15px; }
  3. wlightbox-close { text-decoration: none; position: absolute; right: 10px; top: 10px; font-size: 1.2em; }

.wlightbox-title { border-bottom: 1px solid #edeef1; color: #7c8499; font-size: 1.2em; font-weight: bold; padding-bottom: 10px; margin-bottom: 30px; } .wlightbox-icon { font-size: 2em; color: #c8c8c8; display: inline-block; margin-right: 20px; vertical-align: middle; }

.wlightbox-contents { display: none; }

  1. wlightbox:before { border: solid transparent; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; }
  2. wlightbox.arrow-box-right:before { left: 100%; top: 50%; border-left-color: #FFF; border-width: 20px; margin-top: -20px; }
  3. wlightbox.arrow-box-left:before { right: 100%; top: 50%; border-right-color: #FFF; border-width: 20px; margin-top: -20px; }
  4. wlightbox.arrow-box-top:before { bottom: 100%; left: 50%; border-bottom-color: #FFF; border-width: 20px; margin-left: -20px; }
  5. wlightbox.arrow-box-bottom:before { top: 100%; left: 50%; border-top-color: #FFF; border-width: 20px; margin-left: -20px; }
  6. wlightbox.arrow-box-right { margin-right: 20px; }
  7. wlightbox.arrow-box-left { margin-left: 20px; }
  8. wlightbox.arrow-box-top { margin-top: 20px; }
  9. wlightbox.arrow-box-bottom { margin-bottom: 20px; }</style>

<script type="text/javascript">var fundraisingBanner = {};</script> <script type="text/javascript">window.GlobalBannerSettings = { 'goalSum': 7900000, 'donations-date-base': '2017-11-10', 'donations-collected-base': 0, 'donators-base': 0, 'appr-donations-per-minute': 104, 'appr-donators-per-minute': 4.805, 'milion-impressions-per-day': 6, 'impressions-per-day-in-million': 6, 'allBannersCookie': 'banner_impression_count', 'singleBannerCookie': 'single_banner_impression_count', 'campaign-start-date': '2017-11-10', 'campaign-end-date': '2017-12-31', 'banner-close-track-ratio': 1 };</script> <script type="text/javascript">/**

* Get number of pixels remaining in viewport after the banner height was subtracted.
* @param jQuery bannerElement
* @return Number 
*/

fundraisingBanner.getVisibleWikipedia = function ( bannerElement ) {

   return $( window ).height() - bannerElement.height();

}

/**

* Check if Banner takes too much screen space and track the incident
* @param jQuery bannerElement
*/

fundraisingBanner.trackSizeIssues = function( bannerElement ) {

   var bannerHeight = bannerElement.height(),
       viewportHeight = $( window ).height(),
       viewportWidth = $( window ).width(),
       trackRatio = parseFloat( '{{{track-space-ratio}}}' ) || 0.01,
       threshold = 180, // Pixels
       resolutions = ;
   if ( fundraisingBanner.getVisibleWikipedia( bannerElement )  > threshold ) {
       return;
   }
   if ( Math.random() > trackRatio ) {
       return;
   }
   // Avoid multiple tracking when trackSpaceIssues is called multiple times
   if ( $( '#WMDE_Banner-track-sizes', bannerElement ).length > 0 ) {
       return;
   }
   resolutions = [ 
       bannerHeight,
       viewportWidth + 'x' + viewportHeight,
       screen.width + 'x' + screen.height,
       window.outerWidth + 'x' + window.outerHeight
   ].join( '--' );
   var trackUrl = 'https://spenden.wikimedia.de/banner-size-issue/{{{BannerName}}}/' + resolutions;
   bannerElement.append( $( '<img id="WMDE_Banner-track-sizes" width="1" height="1">').attr( 'src', 'https://tracking.wikimedia.de/piwik.php?idsite=1&rec=1&url=' + trackUrl ) );

}</script> <script type="text/javascript">$( function () { $( '#WMDE_Banner' ).on( 'validation:init', setupValidationEventHandling ); } ); </script> <script type="text/javascript">/*jshint latedef: nofunc */ /*jshint unused: false */ /* globals mw, alert, GlobalBannerSettings */ var finalDateTime = new Date( 2017, 11, 31, 23, 59, 59 ), /* jshint -W079 */ GlobalBannerSettings = typeof GlobalBannerSettings !== 'undefined' ? GlobalBannerSettings : {}, /* jshint +W079 */ baseDate = replaceWikiVars( + window.GlobalBannerSettings['donations-date-base'] + ), collectedBase = parseInt( replaceWikiVars( + window.GlobalBannerSettings['donations-collected-base'] + ), 10 ), donorsBase = parseInt( replaceWikiVars( + window.GlobalBannerSettings['donators-base'] + ), 10 ), donationsPerMinApproximation = parseFloat( replaceWikiVars( + window.GlobalBannerSettings['appr-donations-per-minute'] + ) ), donorsPerMinApproximation = parseFloat( replaceWikiVars( + window.GlobalBannerSettings['appr-donators-per-minute'] + ) ), noIntervalSelectedMessage = replaceWikiVars( '{{{no-interval-message}}}' ) || 'Bitte wählen Sie zuerst ein Zahlungsintervall.', amountEmptyMessage = replaceWikiVars( '{{{amount-empty-message}}}' ) || 'Bitte wählen Sie zuerst einen Betrag.', amountTooLowMessage = replaceWikiVars( '{{{amount-too-low-message}}}' ) || 'Bitte geben Sie einen Spendenbetrag von min. 1€ ein.', amountTooHighMessage = replaceWikiVars( '{{{amount-too-high-message}}}' ) || 'Der Spendenbetrag ist zu hoch.', allBannersImpCookie = 'centralnotice_banner_impression_count', singleBannerImpCookie = 'centralnotice_single_banner_impression_count', bannerCloseTrackRatio = replaceWikiVars( '{{{banner-close-track-ratio}}}' ) || 0.01, showBanner = true, BannerEventHandlers = BannerEventHandlers || {}, messages = { en: { day: 'day', days: 'days' }, de: { day: 'Tag', days: 'Tage' } };


BannerEventHandlers.handleAmountSelected = function () { $( '#amount_other' ).prop( 'checked', false ); $( '#amount-other-input' ).val( ); // function call for backwards compatibility, once all banners support validation events, trigger validation:amount:ok instead hideAmountError(); };

BannerEventHandlers.handleCustomAmount = function() { $( 'input:radio[name=betrag_auswahl]' ).prop( 'checked', false ); $( '#amount_other' ).prop( 'checked', true ); hideAmountError(); };

function bannerHasValidationEventHandling() { return typeof $( '#WMDE_Banner' ).data( 'validation-event-handling' ) !== 'undefined'; }

function initializeBannerEvents() { var banner = $( '#WMDE_Banner' );

banner.on( 'amount:select', null, BannerEventHandlers.handleAmountSelected ); banner.on( 'amount:custom', null, BannerEventHandlers.handleCustomAmount );

if ( bannerHasValidationEventHandling() ) { banner.trigger( 'validation:init', banner.data( 'validation-event-handling' ) ); } }


$( function () { $( '#WMDE_Banner-close' ).click( function () { if ( Math.random() < bannerCloseTrackRatio ) { $( '#WMDE_Banner-close-ct' ).attr( 'src', 'https://tracking.wikimedia.de/piwik.php?idsite=1&url=https://spenden.wikimedia.de/banner-closed/{{{BannerName}}}&rec=1' ); } $( '#WMDE_Banner' ).hide(); mw.centralNotice.hideBanner(); removeBannerSpace();

return false; } );

// hide banner when the visual editor is initialized $( '#ca-ve-edit, .mw-editsection-visualeditor' ).click( function () { $( '#WMDE_Banner' ).hide(); removeBannerSpace(); } );

// TODO: remove when all banners use custom events $( '#amount-other-input, #amount_other' ).on( 'click', BannerEventHandlers.handleCustomAmount );

// Does not work in current banners because the input field is hidden - remove whan all banners use custom event $( 'input:radio[name=betrag_auswahl]' ).on( 'click', BannerEventHandlers.handleAmountSelected );

$( '#interval_tab_onetime, #interval_onetime' ).on( 'click', function () { removeSpaceForIntervalOptions(); hideFrequencyError(); $( '.interval-options' ).addClass( 'interval-hidden' ); $( '#interval_onetime' ).prop( 'checked', true ); $( '#interval_multiple' ).prop( 'checked', false ); } );

$( '#interval_tab_multiple, #interval_multiple' ).on( 'click', function () { addSpaceForIntervalOptions(); $( '.interval-options' ).removeClass( 'interval-hidden' ); $( '#interval_multiple' ).prop( 'checked', true ); $( '#interval_onetime' ).prop( 'checked', false ); } ); $( '.donation-interval' ).on( 'click', function () { hideFrequencyError(); } );

initializeBannerEvents(); } );

function getDaysLeft() { var daysLeft = Math.floor( new Date( finalDateTime - new Date() ) / 1000 / 60 / 60 / 24 ); return ( daysLeft < 0 ) ? 0 : daysLeft; }

function getDaysRemaining( language ) { var daysRemaining = getDaysLeft(), lang = language || 'de'; // TODO manually hack to fix older banners from 2014 if ( daysRemaining === 0 ) { $( '#donationRemaining' ).width( 0 ); $( '#donationRemaining' ).html( ); } return daysRemaining + ' ' + ( daysRemaining > 1 ? messages[ lang ].days : messages[ lang ].day ); }

function getSecsPassed() { var startDate = baseDate.split( '-' ), startDateObj = new Date( startDate[ 0 ], startDate[ 1 ] - 1, startDate[ 2 ] ), maxSecs = Math.floor( new Date( finalDateTime - startDateObj ) / 1000 ), secsPassed = Math.floor( ( new Date() - startDateObj ) / 1000 );

if ( secsPassed < 0 ) { secsPassed = 0; } if ( secsPassed > maxSecs ) { secsPassed = maxSecs; }

return secsPassed; }

function getApprDonationsRaw( rand ) { var startDonations = collectedBase, secsPast = getSecsPassed();

return startDonations + getApprDonationsFor( secsPast, rand ); }

function getApprDonatorsRaw( rand ) { var startDonators = donorsBase, secsPast = getSecsPassed();

return startDonators + getApprDonatorsFor( secsPast, rand ); }

function getApprDonationsFor( secsPast, rand ) { var apprDontionsMinute = donationsPerMinApproximation, randFactor = 0;

if ( rand === true ) { randFactor = Math.floor( ( Math.random() ) + 0.5 - 0.2 ); }

return ( secsPast / 60 * ( apprDontionsMinute * ( 100 + randFactor ) ) / 100 ); }

function getApprDonatorsFor( secsPast, rand ) { var apprDonatorsMinute = donorsPerMinApproximation, randFactor = 0;

if ( rand === true ) { randFactor = Math.floor( ( Math.random() ) + 0.5 - 0.2 ); }

return ( secsPast / 60 * ( apprDonatorsMinute * ( 100 + randFactor ) ) / 100 ); }

function getCurrentGermanDay() { switch ( new Date().getDay() ) { case 0: return 'Sonntag'; case 1: return 'Montag'; case 2: return 'Dienstag'; case 3: return 'Mittwoch'; case 4: return 'Donnerstag'; case 5: return 'Freitag'; case 6: return 'Samstag'; default: return ; } }

function getCurrentDayInEnglish() { switch ( new Date().getDay() ) { case 0: return 'Sunday'; case 1: return 'Monday'; case 2: return 'Tuesday'; case 3: return 'Wednesday'; case 4: return 'Thursday'; case 5: return 'Friday'; case 6: return 'Saturday'; default: return ; } }

function getDigitGroupingCharacter() { switch ( mw.config.get( 'wgContentLanguage' ) ) { case 'de': return '.'; case 'en': return ','; default: return '.'; } }

function addPointsToNum( num ) { // jscs:disable disallowImplicitTypeConversion num = parseInt( num, 10 ) + ; // jscs:enable disallowImplicitTypeConversion num = num.replace( /\./g, ',' ); return num.replace( /(\d)(?=(\d\d\d)+(?!\d))/g, '$1' + getDigitGroupingCharacter() ); }

function floorF( num ) { return Math.floor( num * 100 ) / 100; }

function getImpCount() { return parseInt( $.cookie( allBannersImpCookie ), 10 ) || 0; }

function getBannerImpCount( bannerId ) { var cookieValue, cookieData;

if ( $.cookie( singleBannerImpCookie ) ) { cookieValue = $.cookie( singleBannerImpCookie ); cookieData = cookieValue.split( '|' ); if ( cookieData[ 0 ] === bannerId ) { return parseInt( cookieData[ 1 ], 10 ); } } return 0; }

function increaseImpCount() { var impCount = getImpCount(); $.cookie( allBannersImpCookie, impCount + 1, { expires: 7, path: '/' } ); return impCount + 1; }

function increaseBannerImpCount( bannerId ) { var impCount = getBannerImpCount( bannerId );

$.cookie( singleBannerImpCookie, bannerId + '|' + ( impCount + 1 ), { expires: 7, path: '/' } ); return ( impCount + 1 ); }

function validateForm() { var chkdPayment = $( 'input[name=pay]:checked', '#WMDE_BannerForm' ).val(), form = document.donationForm, error = false, amount;

switch ( chkdPayment ) { case 'BEZ': $( '#form-page' ).val( 'Formularseite2-Lastschrift' ); break; case 'UEB': $( '#form-page' ).val( 'Formularseite2-Überweisung' ); break; case 'PPL': $( '#form-page' ).val( 'Formularseite2-PayPal' ); break; case 'MCP': $( '#form-page' ).val( 'Formularseite2-Micropayment' ); break; }

if ( !validateAndSetPeriod() ) { return false; } amount = getAmount();

// Check amount is at least the minimum if ( amount === false ) { showAmountError( amountEmptyMessage ); return false; } else if ( amount < 1 || error ) { showAmountError( amountTooLowMessage ); return false; } else if ( amount > 99999 ) { showAmountError( amountTooHighMessage ); return false; } hideAmountError(); return amount; }

function showAmountError( text ) { if ( !bannerHasValidationEventHandling() ) { alert( text ); return; } $( '#WMDE_Banner' ).trigger( 'validation:amount:error', text ); }

function hideAmountError() { $( '#WMDE_Banner' ).trigger( 'validation:amount:ok' ); }

function showFrequencyError( text ) { if ( !bannerHasValidationEventHandling() ) { alert( text ); return; } $( '#WMDE_Banner' ).trigger( 'validation:period:error', text ); }

function hideFrequencyError() { $( '#WMDE_Banner' ).trigger( 'validation:period:ok' ); }

/**

* Check the "interval" radio buttons and change the "period" and "intervalType" fields accordingly.
* If "periodically" is selected but no interval is selected, this function
* will display an error message via alert.
*/

function validateAndSetPeriod() { var form = document.donationForm; if ( $( '#interval_multiple' ).is( ':checked' ) ) { if ( $( 'input[name=interval]:checked', form ).length !== 1 ) { showFrequencyError( noIntervalSelectedMessage ); return false; } else { $( '#intervalType' ).val( '1' ); $( '#periode' ).val( $( 'input[name=interval]:checked', form ).val() ); } } else if ( $( '#interval_onetime' ).is( ':checked' ) ) { $( '#periode' ).val( '0' ); $( '#intervalType' ).val( '0' ); } else { // check if we have interval tabs (non-fulltop-banner) if ( $( '.interval_tab' ).length > 0 ) { $( '#periode' ).val( '0' ); $( '#intervalType' ).val( '0' ); } else { showFrequencyError( noIntervalSelectedMessage ); return false; } } hideFrequencyError(); return true; }

function getAmount() { var amount = null, otherAmount = $( '#amount-other-input' ).val(), form = document.donationForm;

amount = $( 'input[name=betrag_auswahl]:checked' ).val();

if ( otherAmount !== ) { otherAmount = otherAmount.replace( /[,.](\d)$/, '\:$10' ); otherAmount = otherAmount.replace( /[,.](\d)(\d)$/, '\:$1$2' ); otherAmount = otherAmount.replace( /[\$,.]/g, ); otherAmount = otherAmount.replace( /:/, '.' ); $( '#amount-other-input' ).val( otherAmount ); amount = otherAmount; }

if ( amount === null || isNaN( amount ) ) { return false; }

return amount; }

function addBannerSpace() { var expandableBannerHeight = $( 'div#WMDE_Banner' ).height() + 44, bannerDivElement = $( '#WMDE_Banner' ), skin = getSkin();

if ( !showBanner ) { return; } switch ( skin ) { case 'vector': bannerDivElement.css( 'top', 0 ); bannerDivElement.css( 'display', 'block' ); $( '#mw-panel' ).css( 'top', expandableBannerHeight); $( '#mw-head' ).css( 'top', expandableBannerHeight ); $( '#mw-page-base' ).css( 'paddingTop', expandableBannerHeight ); break; case 'minerva': $( '#mw-mf-viewport' ).css( 'top', expandableBannerHeight ); $( '#mw-mf-page-center, #mw-mf-page-left' ).css( 'top', expandableBannerHeight ); break; case 'monobook': $( '#globalWrapper' ).css( 'position', 'relative' ); $( '#globalWrapper' ).css( 'top', expandableBannerHeight ); bannerDivElement.css( 'top', '-20px' ); bannerDivElement.css( 'background', 'none' ); break; } }

function addBannerSpaceWithRollo() { var expandableBannerHeight = $( 'div#WMDE_Banner' ).height() + 44, bannerDivElement = $( '#WMDE_Banner' ), skin = getSkin();

if ( !showBanner ) { return; } switch ( skin ) { case 'vector': bannerDivElement.css( 'top', 0 - expandableBannerHeight ); $( '#mw-panel' ).animate( { top: expandableBannerHeight }, 1000 ); $( '#mw-head' ).animate( { top: expandableBannerHeight }, 1000 ); $( '#mw-page-base' ).animate( { paddingTop: expandableBannerHeight }, 1000 ); break; case 'minerva': $( '#mw-mf-viewport' ).css( 'top', expandableBannerHeight ); $( '#mw-mf-page-center, #mw-mf-page-left' ).css( 'top', expandableBannerHeight ); break; case 'monobook': $( '#globalWrapper' ).css( 'position', 'relative' ); $( '#globalWrapper' ).css( 'top', expandableBannerHeight ); bannerDivElement.css( 'top', '-20px' ); bannerDivElement.css( 'background', 'none' ); break; } bannerDivElement.css( 'display', 'block' ); bannerDivElement.animate( { top: 0 }, 1000 ); }

function removeBannerSpace() { var skin = getSkin(); switch ( skin ) { case 'vector': $( '#mw-panel' ).css( 'top', 0 ); $( '#mw-head' ).css( 'top', 0 ); $( '#mw-page-base' ).css( 'padding-top', 0 ); break; case 'minerva': $( '#mw-mf-viewport' ).css( 'top', 0 ); $( '#mw-mf-page-center, #mw-mf-page-left' ).css( 'top', 0 ); break; case 'monobook': $( '#globalWrapper' ).css( 'position', 'relative' ); $( '#globalWrapper' ).css( 'top', 0 ); break; } }

function addSpaceForIntervalOptions() { var $intervalOptionsContainer = $( 'div.interval-options' ), expandableBannerHeight = $intervalOptionsContainer.height(); if ( $intervalOptionsContainer && $intervalOptionsContainer.is( ':visible' ) ) { return; }

switch ( getSkin() ) { case 'vector': $( '#mw-panel' ).css( { top: parseInt( $( '#mw-panel' ).css( 'top' ), 10 ) + expandableBannerHeight + 'px' } ); $( '#mw-head' ).css( { top: parseInt( $( '#mw-head' ).css( 'top' ), 10 ) + expandableBannerHeight + 'px' } ); $( '#mw-page-base' ).css( { paddingTop: parseInt( $( '#mw-page-base' ).css( 'padding-top' ), 10 ) + expandableBannerHeight + 'px' } ); break; case 'minerva': $( '#mw-mf-viewport' ).css( { top: parseInt( $( '#mw-mf-viewport' ).css( 'top' ), 10 ) + expandableBannerHeight + 'px' } ); $( '#mw-mf-page-center, #mw-mf-page-left' ).css( { top: parseInt( $( '#mw-mf-page-center' ).css( 'top' ), 10 ) + expandableBannerHeight + 'px' } ); break; case 'monobook': $( '#globalWrapper' ).css( { top: parseInt( $( '#globalWrapper' ).css( 'top' ), 10 ) + expandableBannerHeight + 'px' } ); break; } }

function removeSpaceForIntervalOptions() { var $intervalOptionsContainer = $( 'div.interval-options' ), expandableBannerHeight = $intervalOptionsContainer.height() + 5; if ( $intervalOptionsContainer && !$intervalOptionsContainer.is( ':visible' ) ) { return; }

switch ( getSkin() ) { case 'vector': $( '#mw-panel' ).css( { top: ( parseInt( $( '#mw-panel' ).css( 'top' ), 10 ) - expandableBannerHeight ) + 'px' } ); $( '#mw-head' ).css( { top: ( parseInt( $( '#mw-head' ).css( 'top' ), 10 ) - expandableBannerHeight ) + 'px' } ); $( '#mw-page-base' ).css( { paddingTop: ( parseInt( $( '#mw-page-base' ).css( 'padding-top' ), 10 ) - expandableBannerHeight ) + 'px' } ); break; case 'minerva': $( '#mw-mf-viewport' ).css( { top: ( parseInt( $( '#mw-mf-viewport' ).css( 'top' ), 10 ) - expandableBannerHeight ) + 'px' } ); $( '#mw-mf-page-center, #mw-mf-page-left' ).css( { top: ( parseInt( $( '#mw-mf-page-center' ).css( 'top' ), 10 ) - expandableBannerHeight ) + 'px' } ); break; case 'monobook': $( '#globalWrapper' ).css( { top: ( parseInt( $( '#globalWrapper' ).css( 'top' ), 10 ) - expandableBannerHeight ) + 'px' } ); break; } }

/**

* Calculate the number of donors needed, given an average donation amount.
*
* This function cannot return less than 0 donors when the target has been reached.
*
* @param  {number} averageDonation Average donation amount in EUR
* @return {number} Number of donors needed (rounded up)
*/

function getRemainingDonorsNeeded( averageDonation ) { var dRemaining, dCollected, numDonors; dCollected = getApprDonationsRaw(); dRemaining = GlobalBannerSettings.goalSum - dCollected; numDonors = Math.ceil( dRemaining / averageDonation ); return Math.max( 0, numDonors ); }

function replaceWikiVars( text ) { var re = /\{\{\{([^\}]+)\}\}\}/g, wikiVarMatch; while ( ( wikiVarMatch = re.exec( text ) ) !== null ) { if ( GlobalBannerSettings[ wikiVarMatch[ 1 ] ] ) { text = text.replace( wikiVarMatch[ 0 ], GlobalBannerSettings[ wikiVarMatch[ 1 ] ] ); } else { text = text.replace( wikiVarMatch[ 0 ], ); } } return text; }

function getSkin() { if ( onMediaWiki() ) { return mw.config.get( 'skin' ); } return 'vector'; }

function onMediaWiki() { return typeof mw === 'object' && typeof mw.centralNotice !== 'undefined'; } </script> <script type="text/javascript">var startDate = '2017-07-06',

   endDate = '2017-12-30';

function getCampaignDayString() { var daysSinceStart = getDaysSinceCampaignStart() + 1; return daysSinceStart + '.'; }

function dateObjectFromString( dateStr ) {

       var dateParts = dateStr.split( '-' );
       return new Date( dateParts[ 0 ], dateParts[ 1 ] - 1, dateParts[ 2 ] );

}

function getDaysSinceCampaignStart() { var startDay = dateObjectFromString( startDate ); return Math.floor( new Date( new Date() - startDay ) / 1000 / 60 / 60 / 24 ); }

function getDaysUntilCampaignEnds() {

    	var endDay = dateObjectFromString( endDate ),
           dayDelta = endDay - new Date();
       if ( dayDelta > 0 ) {
           return Math.floor( dayDelta / 1000 / 60 / 60 / 24 );
       } else {
           return 0;
       }

}

function getCampaignDaySentence() {

       if ( getDaysUntilCampaignEnds() == 0 ) {
               return 'Heute ist der letzte Tag unserer Spendenkampagne.';
       } else if ( getDaysUntilCampaignEnds() < 7 ) {
               return 'Dies ist die letzte Woche unserer Spendenkampagne.';
       } else if ( getDaysSinceCampaignStart() > 0 ) {

return 'Heute ist der ' + getCampaignDayString() + ' Tag unserer Spendenkampagne.'; } return 'Heute beginnt unsere Spendenkampagne.'; }

function getEnglishCampaignDaySentence() {

       if ( getDaysUntilCampaignEnds() == 0 ) {
               return 'Today is the final day of our donation campaign.';
       } else if ( getDaysUntilCampaignEnds() < 7 ) {
               return 'This is the last week of our donation campaign.';
       }

return ; } </script> <script type="text/javascript">/*jshint unused: false */

var customDayNames = { '06.12': { de: 'Nikolaustag', en: 'St Nicholas Day' }, '24.12': { de: 'Weihnachtsfeiertag', en: 'Christmas Day' }, '25.12': { de: '1. Weihnachtsfeiertag', en: 'Christmas Day' }, '26.12': { de: '2. Weihnachtsfeiertag', en: 'Christmas Day' } };

function getDateString( date ) { var dateString = , day = date.getDate(), month = date.getMonth() + 1; if ( day < 10 ) { dateString += '0'; } dateString += day; dateString += '.'; if ( month < 10 ) { dateString += month; } dateString += month; return dateString; }

function getCurrentDayName( fallbackFunction, lang ) { var currentDateString = getDateString( new Date() ), language = lang || 'de'; if ( currentDateString in customDayNames ) { return customDayNames[ currentDateString ][ language ]; } return fallbackFunction(); }</script> <script type="text/javascript">( function ( $ ) { var IE = ( !!window.ActiveXObject && +( /msie\s(\d+)/i.exec( navigator.userAgent )[ 1 ] ) ) || undefined;

function getArrowDirection( elementOptions ) {

var arrowDirections = { Top: 'left', Bottom: 'left', Left: 'top', Right: 'top' }, d, optionName; for ( d in arrowDirections ) { if ( arrowDirections.hasOwnProperty( d ) ) { optionName = 'arrow' + d; if ( elementOptions[ optionName ] ) { return { direction: d.toLowerCase(), cssProperty: arrowDirections[ d ], optionName: optionName }; } } } return false; }

$.fn.wlightbox = function ( options ) { return this.each( function () { var s = this, self = $( this ), $inlineContentObj = $( $( self ).attr( 'data-href' ) ), $inlineContentObjContainer = $( $( self ).attr( 'data-href' ) ).parent(),

$wlightbox = $( '

' ), $wlightboxContent = $( '

' ),

$wlightboxClose = $( '<a href="#" id="wlightbox-close" class="icon-cross" title="close"></a>' ),

$wlightboxOverlay = $( '

' ),

$wlightboxCss, open = false;

s.init = function () { s.options = $.extend( {}, $.fn.wlightbox.defaultOptions, options );

// change numeric value into css value with 'px' $.each( 'top bottom left right arrowLeft arrowRight'.split( ' ' ), function ( index, item ) { if ( $.isNumeric( s.options[ item ] ) ) { s.options[ item ] += 'px'; } } );

// open wlightbox self.click( function ( e ) { s.create(); s.initEventHandling(); s.open();

e.preventDefault(); } ); };

s.create = function () { var arrowData; if ( $( '#wlightbox' ).length == 0 ) { $( s.options.container ).append( $wlightbox ); }

$wlightbox.empty();

if ( $( '#wlightbox-content' ).length == 0 ) { $wlightbox.append( $wlightboxContent ); } if ( $( '#wlightbox-overlay' ).length == 0 ) { $( s.options.overlayContainer ).append( $wlightboxOverlay ); }

// close button if ( s.options.closeButton && $( '#wlightbox-close' ).length == 0 ) { $wlightbox.append( $wlightboxClose ); }

// position & size $.each( 'top bottom left right width height maxWidth maxHeight'.split( ' ' ), function ( index, item ) { switch ( typeof s.options[ item ] ) { case "undefined": return; case "function": $wlightbox.css( item, s.options[ item ]( item ) );; default: $wlightbox.css( item, s.options[ item ] ); } } );

s.initArrow();

};

s.initArrow = function () { var arrowData = getArrowDirection( s.options ), cssString; if ( !arrowData ) { return; } cssString = '#wlightbox.arrow-box-' + arrowData.direction + '::before { ' + arrowData.cssProperty + ': ' + s.options[ arrowData.optionName ] + ' }'; if ( !IE ) { $wlightboxCss = $( '<style type="text/css" id="wlightbox-css"></style>' ); $wlightboxCss.empty();

if ( $( '#wlightbox-css' ).length == 0 ) { $( 'head' ).append( $wlightboxCss ); }

// init arrow-box $wlightboxCss.append( cssString );

} else { $.fn.wlightbox.css.cssText = cssString; } $wlightbox.attr( 'class', 'arrow-box-' + arrowData.direction ); };

s.initEventHandling = function () { // close if ( s.options.closeButton ) { $wlightboxClose.on( 'click', function ( e ) { e.preventDefault(); s.close(); } ); }

if ( s.options.overlayClose ) { $wlightboxOverlay.click( function ( e ) { e.preventDefault(); s.close(); } ); }

$( document ).keydown( function ( e ) { var key = e.keyCode; if ( open && s.options.escKey && key === 27 ) { e.preventDefault(); s.close(); } } ); };

s.open = function () { if ( $inlineContentObj.length > 0 ) { $inlineContentObj.appendTo( $wlightboxContent ); }

$wlightbox.hide().fadeIn( s.options.speedIn ); $wlightboxOverlay.hide().fadeTo( s.options.speedIn, s.options.opacity / 100, function () { open = true; } ); };

s.close = function () { // hide & remove content $wlightboxOverlay.fadeOut( s.options.speedOut, function () { $wlightboxOverlay.remove(); } );

$wlightbox.fadeOut( s.options.speedOut, function () { $inlineContentObj.appendTo( $inlineContentObjContainer );

$wlightbox.remove(); } );

open = false; };

s.init(); } ); }; $.fn.wlightbox.defaultOptions = { container: 'body', overlayContainer: 'body', speedIn: 300, speedOut: 300, opacity: 60, overlayClose: true, escKey: true, closeButton: true, top: false, bottom: false, left: false, right: false, arrowBox: true, arrowLeft: false, arrowRight: false, width: false, height: false, maxWidth: false, maxHeight: false };

if ( IE ) { $.fn.wlightbox.css = document.createStyleSheet( ); }

} )( jQuery );</script> <style type="text/css">

 #WMDE_Banner-facts {
   background-color: #ffffff;
   background-image: none;
 }
  1. WMDE_Banner table {
   height: 100%;

}

.banner-left {

   height: 100%;
   padding: 0.25em;

}

.banner-left-wrapper {

   border: 5px solid #990000;
   border-radius: 9px;
   background-color: #f8f9fa;
   height: 96%;
   min-height: 233px;

}

  1. WMDE_Banner .WMDE_Banner_info-cell {
   height: 1%;
   vertical-align: bottom;
   background-image: url('//upload.wikimedia.org/wikipedia/donate/9/99/RedInfoI.svg');
   background-size: 18px 18px;
   background-repeat: no-repeat;
   background-position: left 14px bottom 4px;

}

  1. WMDE_Banner_info {
   border-top: 1px solid #990000;

}

 #WMDE_Banner-text-salute {
   color: #black;
   font-size: 17px;
   font-weight: bold;
   line-height: 1.2em;
   margin: 4px 10px 4px 35px;
   margin-bottom: 0;
   padding-bottom: 0;
 }
#WMDE_Banner-text {
   text-align:left;
}
  1. WMDE_BannerForm-wrapper {
   background-color: #ffffff;
   border: none;
   padding: 0 5px 0 5px;
   height: 250px;

}

  1. WMDE_Banner-form fieldset {
   width: 95%;
   border: 0;
   margin: 0 auto;
   padding: 0 0.5em 0.5em 0.5em;

}

  1. WMDE_Banner-frequency ul,
  2. WMDE_Banner-amounts ul,
  3. WMDE_Banner-payment ul {
   width: 100%;
   height: 100%;
   display: table;
   margin: 0 0 0.3em;
   padding: 0;
   list-style: none;

}

  1. WMDE_Banner-form legend {
   display: none;
   width: 100%;
   margin: 0;
   padding: 0 0 0.3em 0;
   text-align: center;
   font-size: .9em;
   color: rgba(0,0,0,0.42);

}

/* --- Common Button Styles --- */

.WMDE_Banner-btn {

   background: #f8f9fa;
   border: 1px solid #9aa0a7;
   border-radius: 2px;
   padding: 1px 0;
   line-height: 2em;
   width: 100%;
   cursor: pointer;
   display: inline-block;
   margin: 0 1px;
   text-align: center;
   font-weight: bold;

}

.WMDE_Banner-btn:hover {

   background-color: #ffffff;
   color: #444444;
   border-color: #a2a9b1;

}

.WMDE_Banner-btn.checked {

   background: #2a4b8d;
   border-color: #7d8389;
   color: #ffffff;

}

  1. WMDE_Banner-payment .btn-payment-type {
   background: #f8f9fa;
   font-size: 0.9em;
   color: #3366cc;

}

  1. WMDE_Banner-payment .btn-payment-type:hover {
   background: #ffffff;
   color: #3366cc !important;

}

/* --- Frequency Buttons --- */

  1. WMDE_Banner-frequency li {
   display: table-cell;
   width: 33%;
   padding: 0 2% 0 0;
   vertical-align: top;

} body.rtl #WMDE_Banner-frequency li { padding: 0 0 0 2%; }

  1. WMDE_Banner-frequency label {
   width: 100%;
   display: block;
   font-size: .9em;

}

/*@media (min-width : 1100px) { #WMDE_Banner-frequency label { font-size: .95em; } }*/ @media (min-width : 1200px) {

   /*#WMDE_Banner-frequency label {
       font-size: 1em;
   }*/
   /*#WMDE_Banner-payment .WMDE_Banner-btn {
       min-height: 2em !important;
   }
   .WMDE_Banner-btn {
       padding: 4px 0;
   }*/

}

  1. WMDE_Banner-frequency input[type="radio"] {
   border: 0;
   clip: rect(0 0 0 0);
   height: 1px;
   margin: -1px;
   overflow: hidden;
   padding: 0;
   position: absolute;
   width: 1px;

}

/* --- Amount Buttons --- */

  1. WMDE_Banner-amounts legend {
   display: block;

}

  1. WMDE_Banner-amounts li {
   display: table-cell;
   width: 23%;
   height: 100%;
   clear: none;
   padding: 0 2% 0 0;
   vertical-align: top;
   font-weight: bold;

} body.rtl #WMDE_Banner-amounts li {

   padding: 0 0 0 2%;

}

/* Chrome specific - need to be floated for height 100% to work */ @media screen and (-webkit-min-device-pixel-ratio:0) {

   #WMDE_Banner-amounts li { float: left; }
   body.rtl #WMDE_Banner-amounts li { float: right; }

}

  1. WMDE_Banner-amounts li input[type="radio"] {
   border: 0;
   clip: rect(0 0 0 0);
   height: 1px;
   margin: -1px;
   overflow: hidden;
   padding: 0;
   position: absolute;
   width: 1px;

}

  1. WMDE_Banner-amounts label {
   font-size: .9em;
   text-transform: none;

}

/*@media (min-width : 800px) { #WMDE_Banner-amounts .predefined_amount { font-size: 1em; } } @media (min-width : 1100px) { #WMDE_Banner-amounts .predefined_amount { font-size: 1.1em; } }*/

/* --- Other Amount --- */

  1. amount_custom .WMDE_Banner-btn {
   display: inline-block;
   height: 100%;
   width: 100%;
   padding: 0.2em 0 0.4em 0;

}

  1. amount_custom label {
   display: block;
   height: auto;
   margin-bottom: 0.2em;
   font-size: .7em;
   line-height: 1;
   cursor: pointer;

}

  1. amount_custom input {
   width: 85%;
   font-size: .9em;
   padding: .4em;
   text-align: center;
   border: 1px solid #9aa0a7;
   margin: 0 1px;

}

  1. amount_custom .checked input {
   background: #2a4b8d;
   color: #ffffff;

}

  1. amount_custom input:hover {
   box-shadow: 0 0 0 1px #3366cc inset;
   background-color: #ffffff;
   color: #444444;
   border-color: #a2a9b1;

}

/* --- Payment method Buttons --- */

  1. WMDE_Banner-payment {
   padding-bottom: 0.25em;

}

  1. WMDE_Banner-payment ul li {
   display: table-cell;
   padding: 0 2% 0 0;
   vertical-align: top;
   width: 50%;
   margin-bottom: 4px;

} body.rtl #WMDE_Banner-payment ul li {

   padding: 0 0 0 2%;

}

  1. WMDE_Banner-window button {
   width: 100%;
   height: 100%;
   font-size: .9em;
   float: none;
   font-family: inherit;

}

@media all and (min-width: 1px) and (max-width: 900px), all and (min-width: 1050px) and (max-width: 1200px) {

 #WMDE_Banner-payment .btn-payment-type {
   min-height: 4em;
 }

}

@media all and (min-width: 1px) and (max-width: 1050px) {

 #WMDE_Banner-payment ul {
   margin: 0;
   width: 100%;
 }
 #WMDE_Banner-payment ul li {
   display: block;
   width: 100%;
 }

}

  1. WMDE_Banner .highlight {
   border-bottom: solid 3px #990000;
   padding: 0 .1em;
   background:transparent;
   color:black;

}

  1. WMDE_Banner .WMDE_Banner_close {
   background-image: url('//upload.wikimedia.org/wikipedia/commons/c/cb/Close_x_-_black.png');
   background-color: transparent;
   background-size: 18px auto;
   background-position: top right;
   background-repeat:no-repeat;
   text-align: right;
   padding-right: 24px;
   padding-top: 3px;
   text-transform: uppercase;
   margin-right: 0.5em; /* Same as fieldset padding below */
   /* Override DesktopBanner.css */
   position: static;
   width: auto;
   height: auto;

}


  1. application-of-funds-link {
   cursor: pointer;
   margin-left: 1.5em;

}

  1. application-of-funds-link:hover {
   text-decoration: underline;

}

  1. info-application-of-funds {
   width: 720px;
   margin-top: -5px;

}

  1. info-application-of-funds hr {
   margin: 1.4em 0;

}

  1. info-application-of-funds-footer {
   font-size: 0.8em;

}

  1. info-application-of-funds-footer div {
   width: 49%;
   display: inline-block;
   text-align: center;

}

  1. info-application-of-funds-footer a {
   color: #3366cc;

}

/* --- Error Msg --- */

  1. WMDE_Banner-amounts.fieldset-error, #WMDE_Banner-frequency.fieldset-error {
   float: left;
   background: #990000;
   border:none;
   padding-top: 0.2em;
   padding-bottom: 0.2em;
   margin-left: -2px;
   margin-top: 0.3em;
   margin-bottom: 0.3em;

}

  1. WMDE_Banner-amounts-error-text, #WMDE_Banner-frequency-error-text {
   color: white;
   font-weight: bold;
   display: inline-block;
   text-align: center;
   width: 100%;
   margin-bottom: 0.2em;

}

</style>

   <form id="WMDE_Banner-form" method="post" name="donationForm"
         action="https://spenden.wikimedia.de/donation/new?piwik_campaign={{{CampaignName}}}&piwik_kwd={{{BannerName}}}">
<tbody> </tbody>
               Schliessen 
           <fieldset id="WMDE_Banner-frequency" class="cf">
               
  • <input type="radio" id="interval_multiple" /> <label class="WMDE_Banner-btn donation-frequency" for="interval_onetime"> <input type="radio" id="interval_onetime"> einmalig </label>
  • <label class="WMDE_Banner-btn donation-interval" for="interval1"> <input type="radio" id="interval1" name="interval" value="1"> monatlich </label>
  • <label class="WMDE_Banner-btn donation-interval" for="interval3"> <input type="radio" id="interval3" name="interval" value="3"> vierteljährlich </label>
  • <label class="WMDE_Banner-btn donation-interval" for="interval6"> <input type="radio" id="interval6" name="interval" value="6"> halbjährlich </label>
  • <label class="WMDE_Banner-btn donation-interval" for="interval12"> <input type="radio" id="interval12" name="interval" value="12"> jährlich </label>
           </fieldset>
           <fieldset id="WMDE_Banner-amounts" class="cf">
             
  • <input type="radio" name="betrag_auswahl" id="field-amount_total_1" value="5"> <label id="amount_label_1" class="WMDE_Banner-btn predefined_amount" for="field-amount_total_1">5 €</label>
  • <input type="radio" name="betrag_auswahl" id="field-amount_total_2" value="15"> <label id="amount_label_2" class="WMDE_Banner-btn predefined_amount" for="field-amount_total_2">15 €</label>
  • <input type="radio" name="betrag_auswahl" id="field-amount_total_3" value="25"> <label id="amount_label_3" class="WMDE_Banner-btn predefined_amount" for="field-amount_total_3">25 €</label>
  • <input type="radio" name="betrag_auswahl" id="field-amount_total_4" value="50"> <label id="amount_label_4" class="WMDE_Banner-btn predefined_amount" for="field-amount_total_4">50 €</label>
  • <input type="radio" name="betrag_auswahl" id="field-amount_total_5" value="75"> <label id="amount_label_5" class="WMDE_Banner-btn predefined_amount" for="field-amount_total_5">75 €</label>
  • <input type="radio" name="betrag_auswahl" id="field-amount_total_6" value="100"> <label id="amount_label_6" class="WMDE_Banner-btn predefined_amount" for="field-amount_total_6">100 €</label>
  • <input type="radio" name="betrag_auswahl" id="field-amount_total_7" value="250"> <label id="amount_label_7" class="WMDE_Banner-btn predefined_amount" for="field-amount_total_7">250 €</label>
  • <input type="text" name="amountGiven" id="amount-other-input" size="3" autocomplete="off" value="" placeholder="anderer">
           </fieldset>
           <fieldset id="WMDE_Banner-payment" class="cf">
  • <button class="WMDE_Banner-btn btn-payment-type" onclick="$('#zahlweise').val('BEZ');"> Lastschrift </button>
  • <button class="WMDE_Banner-btn btn-payment-type" onclick="$('#zahlweise').val('UEB');"> Überweisung </button>
  • <button class="WMDE_Banner-btn btn-payment-type" onclick="$('#zahlweise').val('MCP');"> Kreditkarte </button>
  • <button class="WMDE_Banner-btn btn-payment-type" onclick="$('#zahlweise').val('PPL');"> PayPal </button>
           </fieldset>
     <input type="hidden" id="periode" name="periode" value="0"/>
     <input type="hidden" id="intervalType" name="intervalType" value="0"/>
     <input type="hidden" id="impCount" name="impCount" value=""/>
     <input type="hidden" id="bImpCount" name="bImpCount" value=""/>
     <input type="hidden" id="zahlweise" name="zahlweise" value=""/>
   </form>
 <img id="WMDE_Banner-close-ct" src="//upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif" border="0" height="1" width="1">
           Wohin geht meine Spende?
           <a href="http://wikimedia.de/wiki/Transparenz" target="_blank"></a>

<img src="//upload.wikimedia.org/wikipedia/commons/8/8a/WMDE-application-of-funds-diagram-2017.png" />

           <img src="//upload.wikimedia.org/wikipedia/commons/0/00/WMDE-application-of-funds-2017.svg" />

<script type="text/javascript">

 // This will be called by DesktopBanner.js on document load
 function setupValidationEventHandling() {
   var banner = $( '#WMDE_Banner' );
   banner.on( 'validation:amount:ok', function () {
       $( '#WMDE_Banner-amounts-error-text' ).hide();

$( '#WMDE_Banner-amounts' ).removeClass( 'fieldset-error' );

           addSpaceInstantly();
   } );
   banner.on( 'validation:amount:error', function ( evt, text ) {
       $( '#WMDE_Banner-amounts-error-text' ).text( text ).show();

$( '#WMDE_Banner-amounts' ).addClass( 'fieldset-error' );

           addSpaceInstantly();
   } );
   banner.on( 'validation:period:ok', function () {
       $( '#WMDE_Banner-frequency-error-text' ).hide();

$( '#WMDE_Banner-frequency' ).removeClass( 'fieldset-error' );

           addSpaceInstantly();
   } );
   banner.on( 'validation:period:error', function ( evt, text ) {
       $( '#WMDE_Banner-frequency-error-text' ).text( text ).show();

$( '#WMDE_Banner-frequency' ).addClass( 'fieldset-error' );

           addSpaceInstantly();
   } );
 }
 function setupAmountEventHandling() {
       var banner = $( '#WMDE_Banner' );
       // using delegated events with empty selector to be markup-independent and still have corrent value for event.target
       banner.on( 'amount:selected', null, function( evt ) {
           $( '#WMDE_Banner-amounts' ).find( 'label' ).removeClass( 'checked' );
           $( '#amount-other-input' ).parent().removeClass( 'checked' );
           $( evt.target ).addClass( 'checked' );  
       } );
       banner.on( 'amount:custom', null, function( evt ) {
           $( '#WMDE_Banner-amounts' ).find( 'label' ).removeClass( 'checked' );
           $( evt.target ).parent().addClass( 'checked' );
       } );
 }
 $( '#interval_onetime' ).off( 'click' ).on( 'click', function () {
      $( '#interval_multiple' ).prop( 'checked', false );
      $( '.donation-interval' ).removeClass( 'checked' );
      $( '#WMDE_Banner' ). trigger( 'validation:period:ok' );
 } );
 $( '#WMDE_Banner-frequency' ).find( 'label' ).click( function () {
   $( '#WMDE_Banner-frequency' ).find( 'label' ).removeClass( 'checked' );
   $( this ).addClass( 'checked' );
   $( '#WMDE_Banner' ). trigger( 'validation:period:ok' );
 } );
 $( '.donation-interval' ).click( function () {
   $( '.donation-interval' ).removeClass( 'checked' );
   $( this ).addClass( 'checked' );
   $( '.donation-frequency' ).removeClass( 'checked' );
   $( '#interval_onetime' ).prop( 'checked', false );
   $( '#interval_multiple' ).prop( 'checked', 'checked' );
 });


 /* Convert browser events to custom events */
 $( '#WMDE_Banner-amounts' ).find( 'label' ).click( function () {
   $( this ).trigger( 'amount:selected' );
 } );
 $( '#amount-other-input' ).change( function () {
   $( this ).trigger( 'amount:custom' );
 } );
 function addSpace() {
   if ( !$( '#WMDE_Banner' ).is( ':visible' ) ) {
     return;
   }
   var bannerHeight = $( 'div#WMDE_Banner' ).height(),
       skin = getSkin();
   switch ( skin ) {
     case 'vector':
       fundraisingBanner.trackSizeIssues( $( 'div#WMDE_Banner' ) );
       $( '#mw-panel' ).animate( {'top':bannerHeight },1000 );
       $( '#mw-head' ).animate( {'top':bannerHeight},1000 );
       $( '#mw-page-base' ).animate( {'padding-top':bannerHeight},1000);
     case 'minerva':
       $( '#mw-mf-viewport' ).animate( {'top':bannerHeight},1000 );
       break;
   }
 }
 function addSpaceInstantly() {
   if ( !$( '#WMDE_Banner' ).is( ':visible' ) ) {
     return;
   }
   var bannerHeight = $( 'div#WMDE_Banner' ).height(),
       skin = getSkin();
   switch ( skin ) {
     case 'vector':
       $( '#mw-panel' ).css( { top: bannerHeight } );
       $( '#mw-head' ).css( { top: bannerHeight } );
       $( '#mw-page-base' ).css( { paddingTop: bannerHeight } );
     case 'minerva':
       $( '#mw-mf-viewport' ).css( { top: bannerHeight } );
       break;
   }
 }
 function displayBanner() {
   if ( !showBanner ) {
     return;
   }

   var bannerElement = $( '#WMDE_Banner' ),
       bannerHeight = bannerElement.height();
   setupAmountEventHandling();
   $( 'body' ).prepend( $( '#centralNotice' ) );
   bannerElement.css( 'top', -bannerHeight );
   bannerElement.css( 'display', 'block' );
   addSpace();
   bannerElement.animate( { top: 0 }, 1000 );
   $( window ).resize( function () {
     addSpaceInstantly();
     calculateLightboxPosition();
   } );
 }
 function calculateLightboxPosition() {
     $( '#wlightbox' ).css( { right: ( $('body').width() - 750 ) / 2 + 'px', top: '20px', top: ( $( '#WMDE_Banner' ).height() + 20 ) + 'px' } );
 }
 $( document ).ready( function() {
   var lightboxOpened = false;
   $( '#WMDE_Banner-payment button' ).click( function( e ) {
     return validateForm();
   } );
   $( '#interval_onetime' ).off( 'click' ) // remove handler from common-banner.js
     .on( 'click', function () {
        $( '#interval_multiple' ).prop( 'checked', false );
        $(".donation-interval").removeClass("checked");
   } );
 
   var impCount = increaseImpCount();
   $( '#impCount' ).val( impCount );
   var bannerImpCount = increaseBannerImpCount( "{{{banner}}}" );
   $( '#bImpCount' ).val( bannerImpCount );
   if ( mw.config.get( 'wgAction' ) === "view" ) {
     setTimeout( displayBanner, 7500 );
   }
   if ( mw.config.get( 'wgUserName' ) !== null ) {
     $( '#wikilogin' ).val( 'yes' );
   }
   $( 'span.numDaysLeft' ).text( getDaysRemaining() );
   $( 'span#weekday' ).text( getCurrentDayName( getCurrentGermanDay ) );
   if ( getCurrentDayName( getCurrentGermanDay ) !== getCurrentGermanDay() ) {
     $( '#weekdayPrepPhrase' ).text( 'am heutigen' );
   }
   $( 'span#campaignDay' ).text( getCampaignDayString() );
   $( 'span#donorsValue' ).html( addPointsToNum( Math.floor( getApprDonatorsRaw() ) ) );
   $( '.bannerImpressions').text( window.GlobalBannerSettings[ 'milion-impressions-per-day' ] );
   $( '#campaignDaySentence' ).text( getCampaignDaySentence() );
   if ( getDaysSinceCampaignStart() < 1 ) {
       $( '#donationRemaining' ).text( 'Unser Spendenziel: ' + ( GlobalBannerSettings.goalSum / 1000000 ).toFixed( 1 ).replace( '.', ',' ) + ' Mio. €' );
       $( '#donationText' ).html(  );
   }
   $( '#application-of-funds-link' ).wlightbox( { container: $( '#mw-page-base' ), right: ( $('body').width() - 750 ) / 2 + 'px', top: function() { return ( $( '#WMDE_Banner' ).height() + 20 ) + 'px'; } } );
   $( '#application-of-funds-link' ).click( function ( e ) {
       window.scrollTo(0, 0);
       $( '#WMDE_Banner-close-ct' ).attr( 'src', 'https://tracking.wikimedia.de/piwik.php?idsite=1&url=https://spenden.wikimedia.de/application-of-funds-lightbox-opened/{{{BannerName}}}&rec=1' );
   } );
   $( '#link-wmf-annual-plan' ).click( function ( e ) {
       $( '#WMDE_Banner-close-ct' ).attr( 'src', 'https://tracking.wikimedia.de/piwik.php?idsite=1&url=https://spenden.wikimedia.de/wmf-annual-plan/{{{BannerName}}}&rec=1' );
   } );
   $( '#link-wmde-annual-plan' ).click( function ( e ) {
       $( '#WMDE_Banner-close-ct' ).attr( 'src', 'https://tracking.wikimedia.de/piwik.php?idsite=1&url=https://spenden.wikimedia.de/wmde-annual-plan/{{{BannerName}}}&rec=1' );
   } );
 } );

</script>