MediaWiki:Centralnotice-template-B1617 1117 en6C dsk p2 sm top template

<style> /* For IE9 */ @media screen {

   #centralNotice {
      display: block !important;
   }

}

/* Hide when editing */ .action-edit #centralNotice, .ve-activated #centralNotice {

   display: none !important;

}

  1. centralNotice.collapsed .frbanner {
   display: none;

}

.frbanner {

   display: none;
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   z-index: 110;
   background: transparent;
   cursor: pointer;
   color: #222;
   font-weight: 500;

}

.frbanner * {

   -moz-box-sizing:    border-box;
   -webkit-box-sizing: border-box;
   box-sizing:         border-box;

}

.frbanner.nag-reveal {

   position: fixed;
   display: block;
   z-index: 1000;

}

.frbanner.nag-reveal #frbanner-main {

   z-index: 1001;

}

  1. frbanner-main {
   display: table;
   width: 100%;
   height: 120px; /* need to set height for height 100% to work on elements within it */
   padding: .25em 0 .25em .25em;

}

.frbanner-message, .frbanner-form-container {

   display: table-cell;
   height: 100%;
   vertical-align: middle;

}

/* --- Main message --- */ .frbanner-message {

   margin: 0;
   padding: 5px 10px 5px 30px;
   background-color: #f8f9fa;
   background-image: url("//upload.wikimedia.org/wikipedia/donate/9/99/RedInfoI.svg");
   background-repeat: no-repeat;
   background-size: 20px 20px;
   background-position: 5px 6px;
   border: 5px solid #990000;
   border-radius: .5em;
   color: black;
   font-size: 16px;
   line-height: 1.2;
   font-weight: bold;
   text-align: justify;

}

body.rtl .frbanner-message {

   padding: 11px 40px 11px 10px;
   background-position: right 10px top 10px;

}

@media (min-width: 1100px) { .frbanner-message { font-size: 18px; } } @media (min-width: 1200px) { .frbanner-message { line-height: 1.3em; } }

.frbanner-message p {

   margin: 0;

}

.frbanner-greeting {

   font-style: italic;

}

/* --- Form --- */ .frbanner-form-container {

   width: 400px;
   background: white;
   padding: 0.1em 1.5em 0.35em 0.5em;
   position: relative;

}

.frbanner-form fieldset {

   width: 100%;
   border: 0;
   margin: 0 auto;
   padding: 0 0 .5em 0;

}

.frbanner-form ul {

   display: table;
   width: 100%;
   height: 100%;
   padding: 0;
   list-style: none;
   margin: 0;

}

.frbanner-form legend {

   width: 100%;
   margin: 0;
   padding: 0 0 0.3em 0;
   text-align: center;
   font-size: .9em;

}

.frbanner-submit legend {

   display: none;

}

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

.frbanner-btn {

   background-color: #f8f9fa;
   border: 1px solid #9aa0a7;
   border-radius: 2px;
   color: #222;
   display: block;
   padding: .32em .1em;
   font-family: inherit;
   font-weight: 500;
   text-align: center;
   line-height: 1;
   font-size: .9em;
   outline: 0;
   cursor: pointer;
   height: 26px;

}

.frbanner-btn:hover {

   background-color: #fff;
   color: #444;
   border-color: #a2a9b1;

}

.frbanner-btn:active {

   background-color: #d9d9d9;
   color: #000;
   border-color: #7d8389;

}

.frbanner-btn:focus {

   border-color: #3366cc;
   box-shadow: inset 0 0 0 1px #3366cc;

}

.frbanner-btn.checked {

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

}

.frbanner-btn.checked:focus {

   border-color: #3366cc;
   box-shadow: inset 0 0 0 1px #3366cc, inset 0 0 0 2px #ffffff;

}

.frbanner-btn svg {

   width: 100%;
   height: 100%;
   margin-top: -1px;

}

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

.frbanner-frequency li {

   display: table-cell;
   width: 50%;
   padding: 0 .4em 0 0;
   vertical-align: top;

}

body.rtl .frbanner-frequency li { padding: 0 0 0 .4em; }

.frbanner-frequency label {

   display: block;
   width: 100%;
   font-size: .9em;

}

/* Hide radio buttons */ .frbanner-frequency li input[type="radio"], .frbanner-amounts li input[type="radio"] {

   position: absolute;
   overflow: hidden;
   height: 1px;
   width: 1px;
   clip: rect(0 0 0 0);
   border: 0;
   margin: -1px;
   padding: 0;

}

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

.frbanner-form .frbanner-amounts ul.line1 {

   margin-bottom: .3em;

}

.frbanner-amounts {

   font-weight: bold;

}

.frbanner-amounts li {

   display: table-cell;
   width: 18.75%;
   clear: none;
   padding: 0 .4em 0 0;
   vertical-align: middle;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;

}

.frbanner-amounts li#amount_other {

   width: 25%;

}

body.rtl .frbanner-amounts li {

   padding: 0 0 0 .4em;

}

.frbanner-amounts li input[type="radio"] {

   position: absolute;
   overflow: hidden;
   height: 1px;
   width: 1px;
   clip: rect(0 0 0 0);
   border: 0;
   margin: -1px;
   padding: 0;

}

.frbanner-amounts label {

   text-transform: none;

}

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

  1. amount_other .frbanner-btn {
   display: block;
   position: relative;
   padding: .14em 0;

}

  1. amount_other span {
   display: inline-block;
   height: auto;
   cursor: pointer;
   font-size: 1em;
   font-weight: bold;

}

  1. amount_other input[type="text"] {
   background-color: #f8f9fa;
   /* border-radius: 0.3em; */
   border: none;
   box-sizing: border-box;
   color: #757575;
   cursor: pointer;
   display: block;
   font-family: inherit;
   font-size: 0.9em;
   height: 24px;
   line-height: 1;
   padding: 0.32em;
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   text-align: center;

}

  1. amount_other:hover input[type="text"], #amount_other:hover .checked input[type="text"] {
   background-color: white;
   color: #757575;

}

  1. amount_other .checked input {
   background-color: #2a4b8d;
   border-color: #7d8389;
   color: #fff;

}

.frbanner-amounts #input_amount_other_box:focus {

   outline: 0;
   border-color: #3366cc;
   box-shadow: inset 0 0 0 1px #3366cc;

}

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

/* hide methods which aren't monthly capable when monthly option is selected */ .form-monthly .no-monthly {

   display: none !important;

}

.frbanner-form .frbanner-submit {

   padding-bottom: 0;

}

.frbanner-submit ul {

   display: block;

} .frbanner-submit ul li {

   display: block;
   margin-bottom: .4em;
   padding: 0 .4em 0 0;

}

.frbanner-submit button {

   width: 100%;

}

.frbanner-submit .frbanner-btn img {

   display: block;
   margin: 0 auto;
   max-height: 1.25em;
   max-width: 100%;

}

.frbanner-btn.logo {

   padding: .2em;

}

/* If wide enough, put in a row. table-layout: fixed; makes them equal widths */ @media (min-width : 960px) {

   .frbanner-submit ul {
       display: table;
       table-layout: fixed;
   }
   .frbanner-submit ul li {
       display: table-cell;
       vertical-align: top;
       margin: 0;
   }
   body.rtl .frbanner-submit ul li {
       padding: 0 0 0 .4em;
   }

}

.frbanner-submit .frbanner-btn, .frbanner-email-reminder-link.frbanner-btn {

   color: #3366cc;

}

.frbanner-submit .frbanner-btn:hover, .frbanner-email-reminder-link.frbanner-btn:hover {

   background-color: #fff;
   border-color: #859dcc;

}

.frbanner-submit .frbanner-btn:active, .frbanner-email-reminder-link.frbanner-btn:active {

   background-color: #eff3fa;
   color: #2a4b8d;
   border-color: #2a4b8d;
   box-shadow: none

}

/* --- Close Options --- */

  1. frbanner-close {
   display: block;
   position: absolute;
   right: .75em;
   top: .25em;
   cursor: pointer;
   opacity: .5;
   z-index: 999;
   width: 13px;
   height: 13px;
   background: url('//upload.wikimedia.org/wikipedia/donate/3/32/Close-thin.png') no-repeat center center;

}

body.rtl #frbanner-close {

   left: 1em;
   right: auto;

}

  1. frbanner-close:hover {
   opacity: 1;

}


/* --- Legal and smallprint --- */

  1. frbanner-legal {
   display: none;
   position: relative;
   margin: 0;
   padding: 5px 40px;
   background: #e2e2e2;
   font-size: 11px;
   line-height: 1.2;
   font-weight: normal;

}

/* --- "Nag" --- */

  1. frbanner-nag {
   display: none;
   position: fixed;
   top: 0;
   left: 0;
   color: black;
   background-color: #f36b21;
   padding: 5px;
   width: 100%;
   text-align: center;
   font-size: 17px;
   font-weight: bold;
   box-shadow: 0 0 10px rgba(0,0,0,.5);

}

  1. frbanner-nag img {
   margin-right: .4em;
   height: 20px;
   width: 20px;

}

.frbanner-nag-link {

   vertical-align: middle;
   line-height: 26px;

} .frbanner-nag-link:hover {

   text-decoration: underline;

}

  1. frbanner-nag button {
   display: inline-block;
   margin: 0 0 0 1em;
   border-radius: .25em;
   background: #ffed41;
   box-shadow: 0 0 5px rgba(6,7,7,.3);
   color: #990000;
   font-size: .8em;
   padding: .25em .5em;
   font-weight: bold;
   cursor: pointer;
   vertical-align: middle;
   border: none;
   text-transform: uppercase;
   -webkit-transition: all .25s ease-in-out;
   -moz-transition:    all .25s ease-in-out;
   transition:         all .25s ease-in-out;

}

  1. frbanner-nag button:hover {
   -moz-transform:    scale(1.1);
   -ms-transform:     scale(1.1);
   -webkit-transform: scale(1.1);
   transform:         scale(1.1);

}

.frbanner-nag-close {

   display: block;
   position: absolute;
   top: 0;
   right: 15px;
   width: 15px;
   height: 15px;
   background: url('//upload.wikimedia.org/wikipedia/donate/8/84/Close-dark-trilogy.png') no-repeat center center;
   background-size: contain;
   cursor: pointer;
   opacity: 0.8;
   margin: 10px;
   -webkit-transition: all .25s ease-in-out;
   -moz-transition:    all .25s ease-in-out;
   transition:         all .25s ease-in-out;

}

body.rtl .frbanner-nag-close {

   left: 0;
   right: auto;

}

.frbanner-nag-close:hover {

   opacity: 1;
   -moz-transform:    scale(1.1);
   -ms-transform:     scale(1.1);
   -webkit-transform: scale(1.1);
   transform:         scale(1.1);

}

/* --- Remind me by email --- */

.rml {

   position: relative;
   width: 100%;
   text-align: center;
   margin-top: .2em;
   padding: .25em .4em 0 0;
   z-index: 999;
   -moz-box-sizing:    border-box;
   -webkit-box-sizing: border-box;
   box-sizing:         border-box;

}

.frbanner-email-reminder {

   display: none;
   position: absolute;
   padding: 1em;
   top: 2.4em;
   right: 0;
   width: 100%;
   background: #fff;
   border: 1px solid #aaa;
   border-radius: 2px;
   box-shadow: 0 0.15em 0 0 rgba(0, 0, 0, 0.15);
   text-transform: none;
   font-size: .9em;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;

} body.rtl .frbanner-email-reminder .frbanner-email-reminder-form {

   right: auto;
   left: 0;

}

.frbanner-email-reminder * {

   -moz-box-sizing:    border-box;
   -webkit-box-sizing: border-box;
   box-sizing:         border-box;

}

.frbanner-email-reminder-anchor {

   display: block;
   position: absolute;
   top: -10px;
   left: 50%;
   background-repeat: no-repeat;

}

.frbanner-email-reminder-anchor:before, .frbanner-email-reminder-anchor:after {

   content: "";
   position: absolute;
   width: 0;
   height: 0;
   border-style: solid;
   border-color: transparent;
   border-top: 0;

}

.frbanner-email-reminder-anchor:before {

   bottom: -10px;
   left: -9px;
   border-bottom-color: #888888;
   border-width: 10px

}

.frbanner-email-reminder-anchor:after {

   bottom: -10px;
   left: -8px;
   border-bottom-color: #ffffff;
   border-width: 9px;

}

.frbanner-email-reminder input {

   direction: ltr;
   background: #fff;
   width: 100%;
   display: block;
   padding: 0.5em;
   margin: .5em 0 0 0;
   font-size: inherit;
   font-family: inherit;
   color: #000;
   border: 1px solid #9aa0a7;
   border-radius: 2px;

} .frbanner-email-reminder input:focus {

   outline: 0;
   border-color: #3366cc;
   box-shadow: inset 0 0 0 1px #3366cc;

} .frbanner-email-reminder input.error {

   border-color: #ff0000;
   box-shadow: inset 0 0 0 0.1em #ff0000;

}

.frbanner-email-reminder .frbanner-btn {

   width: 100%;
   color: #fff;
   background-color: #3366cc;
   border-color: #3366cc;
   padding: .5em;
   margin-top: .5em;
   font-size: 1em;
   height: auto;

} .frbanner-email-reminder .frbanner-btn:hover {

   background-color: #447ff5;
   border-color: #447ff5;

} .frbanner-email-reminder .frbanner-btn:active {

   background-color: #2a4b8d;
   border-color: #2a4b8d;
   box-shadow: none;

} .frbanner-email-reminder .frbanner-btn:focus {

   border-color: #3366cc;
   box-shadow: inset 0 0 0 1px #3366cc, inset 0 0 0 2px #ffffff;

}

.frbanner-email-reminder #errorMessageContainerId {

   color: #ff0000;

} </style>

Dear readers, today we ask you to help Wikipedia. To protect our independence, we'll never run ads. We're sustained by donations averaging about %AVERAGE%. Only a tiny portion of our readers give. If everyone reading this gave %MINIMUM%, we could keep Wikipedia thriving for years to come. That's right, the price of a cup of coffee is all we need. We're a non-profit with costs of a top ten website: servers, staff and programs. We run on a fraction of what other top sites spend. If Wikipedia is useful to you, please take one minute to keep it online and growing. Thank you.

           <style>
            /* hide methods which aren't monthly capable when monthly option is selected */
           .form-monthly button.no-monthly {
               display: none !important;
           }
           </style>
           <form id="{{{banner}}}-form" method="GET" name="paypalcontribution" class="frbanner-form">
               <input type="hidden" name="utm_medium" value="sitenotice">
               <input type="hidden" name="utm_campaign" value="{{{campaign}}}">
               <input type="hidden" name="utm_source" value="{{{banner}}}">
               <input type="hidden" name="utm_key" value="">
               <input type="hidden" name="language" value="">
               <input type="hidden" name="country" value="">
               <input type="hidden" name="currency_code" id="input_currency_code" value="">
               <input type="hidden" name="payment_method" value="">
               <input type="hidden" name="payment_submethod" value="">
               <input type="hidden" name="recurring" value="">
               <input type="hidden" name="gateway" value="">
               <input type="hidden" name="ffname" value="">
               <input type="hidden" name="bannerhistlog" value="">
               <fieldset class="frbanner-frequency cf">
  • <label class="frbanner-btn frequency_onetime checked" onclick="toggleMonthly(false);"> <input type="radio" name="frequency" id="frequency_onetime" value="onetime" checked="checked" > One-time </label>
  • <label class="frbanner-btn frequency_monthly" onclick="toggleMonthly(true);"> <input type="radio" name="frequency" id="frequency_monthly" value="monthly" > Monthly </label>
               </fieldset>
               <fieldset class="frbanner-amounts cf">
                   <legend>Select an amount ()</legend>
  • <input name="amount" type="radio" id="field-amount_total_1" value="3"> <label id="amount_label_1" class="frbanner-btn predefined_amount" for="field-amount_total_1">3</label>
  • <input name="amount" type="radio" id="field-amount_total_2" value="5"> <label id="amount_label_2" class="frbanner-btn predefined_amount" for="field-amount_total_2">5</label>
  • <input name="amount" type="radio" id="field-amount_total_3" value="20"> <label id="amount_label_3" class="frbanner-btn predefined_amount" for="field-amount_total_3">20</label>
  • <input name="amount" type="radio" id="field-amount_total_4" value="50"> <label id="amount_label_4" class="frbanner-btn predefined_amount" for="field-amount_total_4">50</label>
  •                                <input id="input_amount_other" type="radio" value="Other" name="amount">
                                   <input id="input_amount_other_box" type="text" value="" placeholder="Other"
                                    autocomplete="off" size="3" name="amountGiven">
    
               </fieldset>
               <fieldset class="frbanner-submit cf">
                   <legend>Select a payment method</legend>
  • <button class="frbanner-btn" onclick="redirectPayment('cc'); return false;"> Credit / Debit Card </button>
  • <button class="frbanner-btn logo" onclick="redirectPayment('paypal'); return false;"> <svg class="frb-logo-paypal" role="img" aria-labelledby="frb-logo-paypal-title" width="80" height="24" viewBox="0 0 80 24" xmlns="http://www.w3.org/2000/svg"><title id="frb-logo-paypal-title">PayPal</title><g fill-rule="nonzero" fill="none"><path d="M12.444 5.085H6.97a.763.763 0 0 0-.752.648L4.006 19.891c-.044.279.17.53.451.53H7.07a.762.762 0 0 0 .751-.647l.597-3.819a.762.762 0 0 1 .75-.648h1.733c3.606 0 5.686-1.76 6.23-5.248.245-1.526.01-2.724-.698-3.564-.778-.922-2.158-1.41-3.99-1.41zm.631 5.171c-.3 1.981-1.8 1.981-3.25 1.981h-.826l.579-3.7a.457.457 0 0 1 .45-.388h.379c.988 0 1.92 0 2.402.569.288.339.376.842.266 1.538zM28.803 10.193h-2.62a.458.458 0 0 0-.451.388l-.116.74-.184-.269c-.567-.83-1.832-1.108-3.095-1.108-2.896 0-5.37 2.213-5.851 5.317-.25 1.548.105 3.029.976 4.061.799.95 1.941 1.345 3.301 1.345 2.334 0 3.628-1.513 3.628-1.513l-.117.734c-.044.281.17.533.45.533h2.36a.763.763 0 0 0 .752-.648l1.416-9.05a.457.457 0 0 0-.449-.53zm-3.653 5.145c-.253 1.51-1.441 2.525-2.957 2.525-.76 0-1.37-.246-1.76-.713-.387-.464-.534-1.123-.411-1.858.236-1.497 1.444-2.544 2.937-2.544.744 0 1.35.25 1.748.72.399.475.557 1.139.443 1.87zM42.761 10.193h-2.634a.761.761 0 0 0-.63.336l-3.632 5.398-1.54-5.187a.764.764 0 0 0-.73-.547h-2.587a.46.46 0 0 0-.433.608l2.9 8.588-2.726 3.884a.46.46 0 0 0 .372.727h2.63c.25 0 .483-.123.625-.33l8.76-12.755a.46.46 0 0 0-.375-.722" fill="#283B82"/><path d="M51.48 5.085h-5.473a.762.762 0 0 0-.75.648l-2.214 14.158c-.044.279.17.53.45.53H46.3c.261 0 .485-.191.525-.453l.628-4.013a.762.762 0 0 1 .751-.648h1.732c3.606 0 5.686-1.76 6.23-5.248.246-1.526.01-2.724-.699-3.564-.777-.922-2.156-1.41-3.987-1.41zm.632 5.171c-.299 1.981-1.799 1.981-3.25 1.981h-.826l.58-3.7a.456.456 0 0 1 .45-.388h.379c.987 0 1.92 0 2.402.569.287.339.375.842.265 1.538zM67.84 10.193h-2.62a.455.455 0 0 0-.45.388l-.116.74-.184-.269c-.567-.83-1.832-1.108-3.094-1.108-2.897 0-5.37 2.213-5.851 5.317-.25 1.548.105 3.029.976 4.061.8.95 1.94 1.345 3.3 1.345 2.334 0 3.628-1.513 3.628-1.513l-.117.734c-.044.281.17.533.452.533h2.36a.762.762 0 0 0 .75-.648l1.417-9.05a.46.46 0 0 0-.452-.53zm-3.654 5.145c-.251 1.51-1.441 2.525-2.957 2.525-.76 0-1.37-.246-1.76-.713-.387-.464-.533-1.123-.41-1.858.237-1.497 1.444-2.544 2.936-2.544.744 0 1.35.25 1.748.72.4.475.56 1.139.443 1.87zM70.929 5.474L68.683 19.89c-.044.279.17.53.45.53h2.258a.761.761 0 0 0 .751-.647l2.215-14.157a.459.459 0 0 0-.45-.532H71.38a.458.458 0 0 0-.45.389" fill="#469BDB"/></g></svg> </button>
  • <button class="frbanner-btn logo" onclick="redirectPayment('amazon'); return false;"> <svg class="frb-logo-amazon-pay" role="img" aria-labelledby="frb-logo-amazon-pay-title" width="80" height="24" viewBox="0 0 80 24" xmlns="http://www.w3.org/2000/svg"><title id="frb-logo-amazon-pay-title">Amazon</title><g fill-rule="nonzero" fill="none"><path d="M17.33 9.035c.278.07.56.125.82.26.655.349 1.01.895 1.097 1.63.03.27.038.542.038.814 0 1.896-.004 3.793-.007 5.689 0 .31-.097.407-.404.407H17.5c-.275 0-.38-.104-.38-.38v-5.08c0-.167-.003-.334-.027-.504-.094-.675-.675-1.01-1.305-.738-.46.195-.63.585-.686 1.051a7.11 7.11 0 0 0-.038.818v4.42c0 .32-.094.417-.41.417h-1.358c-.289 0-.386-.101-.386-.387 0-1.61 0-3.225.003-4.837 0-.31-.013-.612-.104-.911-.122-.4-.376-.623-.745-.65-.497-.036-.814.128-1.002.521-.16.33-.198.689-.202 1.05-.007 1.591-.007 3.178-.007 4.768 0 .359-.083.446-.435.446h-1.34c-.274 0-.379-.105-.379-.376V9.599c0-.293.094-.39.38-.39H10.4c.244 0 .348.108.352.348 0 .316 0 .633.024.957.062-.133.122-.268.195-.394.323-.58.804-.946 1.468-1.047.025-.003.045-.007.052-.035h.696c.007.007.014.025.021.025.752.097 1.222.556 1.552 1.2.038.077.08.157.132.254a5.77 5.77 0 0 1 .074-.163c.295-.627.775-1.04 1.444-1.229.097-.028.205-.02.292-.083.209-.007.417-.007.626-.007zM4.28 9.035c.209.08.435.08.65.139.384.104.746.25 1.066.487.584.435.824 1.044.86 1.744.051 1.113.01 2.223.02 3.337 0 .114 0 .233.004.348.01.344.11.657.302.946.06.087.119.17.181.254.268.366.261.418-.083.71-.317.271-.63.546-.947.818-.223.195-.355.195-.574.003a3.175 3.175 0 0 1-.672-.79c-.076-.128-.121-.153-.243-.031-.425.431-.901.786-1.503.919-.56.125-1.128.153-1.688 0-.93-.254-1.42-.902-1.583-1.827-.007-.038.014-.084-.039-.105v-.835c.049-.02.032-.07.039-.104.1-.574.344-1.075.769-1.483.55-.525 1.238-.748 1.966-.883a17.19 17.19 0 0 1 1.687-.21c.126-.01.185-.04.174-.184-.014-.191 0-.382-.01-.574-.024-.508-.254-.828-.686-.96a1.376 1.376 0 0 0-1.06.104c-.314.16-.495.421-.582.762-.056.226-.15.317-.317.303a51.272 51.272 0 0 1-1.45-.153c-.213-.024-.297-.16-.255-.372.045-.234.115-.46.216-.676.39-.824 1.075-1.273 1.924-1.52.258-.077.533-.077.787-.174.351.007.7.007 1.047.007zm.386 5.317c0-.223-.003-.372 0-.526.004-.08-.02-.11-.107-.107a4.925 4.925 0 0 0-.933.09c-.919.202-1.364.766-1.288 1.646.032.386.167.73.554.898.393.17.758.08 1.092-.17.178-.136.307-.314.414-.509.237-.435.275-.908.268-1.322zM24.88 9.035c.223.049.45.087.668.142.453.115.874.303 1.229.62.532.48.696 1.11.706 1.788.014 1.062.021 2.123.004 3.184-.01.585.139 1.097.511 1.545.049.056.09.122.126.188.07.14.059.265-.07.373-.376.32-.745.643-1.12.967-.206.174-.342.167-.55-.01a3.517 3.517 0 0 1-.703-.835c-.063-.101-.101-.105-.188-.021-.435.438-.912.81-1.531.946-.651.14-1.302.17-1.935-.076-.793-.31-1.214-.923-1.333-1.744-.153-1.047.084-1.97.926-2.676.466-.39 1.023-.577 1.607-.7.613-.128 1.236-.19 1.859-.243.15-.014.219-.052.202-.215-.018-.185-.01-.37-.018-.557-.042-.87-.717-1.076-1.294-.989-.536.08-.895.376-1.034.92-.066.253-.15.305-.414.281-.445-.045-.887-.09-1.33-.143-.232-.027-.32-.17-.27-.407.257-1.169 1.019-1.844 2.136-2.157.275-.077.56-.119.839-.178.327-.003.654-.003.977-.003zm.404 5.296c0-.157-.003-.313 0-.47.004-.097-.017-.146-.132-.142-.296.01-.588.027-.88.083-.958.188-1.41.783-1.312 1.723.08.772.803 1.148 1.478.762.254-.147.435-.362.575-.613.23-.417.268-.877.271-1.343zM48.89 9.035c.178.059.37.073.547.142.766.3 1.159.884 1.302 1.667.07.383.1.77.1 1.159.004 1.827.004 3.654.004 5.48 0 .24-.108.349-.351.352-.488.004-.975.004-1.462 0-.233 0-.344-.118-.344-.358V12.57c0-.278-.021-.557-.094-.824-.101-.376-.31-.648-.717-.707-.418-.062-.738.105-.968.446-.24.354-.327.769-.34 1.186-.05 1.496-.011 2.993-.022 4.49 0 .114.004.232 0 .347-.007.212-.114.327-.323.33-.505.008-1.01.008-1.514 0-.216-.003-.313-.121-.313-.368v-2.906c0-1.646 0-3.292-.004-4.941 0-.327.084-.41.408-.41h1.27c.26 0 .358.097.358.354v1.086c.077-.021.077-.09.098-.136.118-.264.257-.518.438-.748a1.859 1.859 0 0 1 1.187-.692c.03-.007.073.007.087-.035.212-.007.435-.007.654-.007zM40.017 9.035c.126.062.265.055.397.087 1.086.254 1.84.932 2.269 1.928.706 1.635.748 3.302-.004 4.934-.494 1.068-1.322 1.768-2.515 1.976a3.242 3.242 0 0 1-3.428-1.652c-.49-.895-.665-1.855-.661-2.86.007-.94.17-1.845.63-2.677.536-.967 1.336-1.566 2.45-1.705.024-.003.045-.007.055-.031h.807zm-1.597 4.363c0 .314-.017.627.004.94.034.49.1.981.33 1.427.174.337.432.56.825.574.4.01.703-.164.915-.501.122-.192.198-.404.25-.627.182-.8.157-1.61.119-2.422-.024-.48-.08-.956-.247-1.416-.16-.442-.473-.671-.943-.689-.432-.017-.741.181-.95.553a1.894 1.894 0 0 0-.174.435c-.153.564-.15 1.145-.129 1.726z" fill="#343F48"/><path d="M19.626 24.346c-.188-.07-.386-.045-.578-.06a19.687 19.687 0 0 1-9.18-3.058 20.499 20.499 0 0 1-2.543-1.935.514.514 0 0 1-.094-.1c-.066-.091-.09-.189-.02-.29.069-.1.177-.114.281-.08.087.028.167.077.247.122a26.22 26.22 0 0 0 6.994 2.732c1.632.383 3.289.616 4.966.692 3.918.181 7.676-.515 11.299-2 .1-.042.202-.091.313-.095.184-.006.351.084.414.23.066.15.031.324-.129.449-.23.177-.466.345-.71.501-1.304.846-2.714 1.469-4.196 1.935a20.6 20.6 0 0 1-5.008.922c-.038.003-.083-.017-.107.035h-1.95z" fill="#FE9901"/><path d="M56.72 10.176c.192-.136.37-.282.564-.403 1.05-.662 2.175-.884 3.368-.484.989.33 1.605 1.061 1.939 2.022.49 1.423.49 2.86-.032 4.273-.435 1.18-1.245 1.994-2.516 2.23-1.127.21-2.164-.038-3.065-.772-.045-.035-.087-.07-.16-.126v3.742c0 .368-.077.441-.453.445-.268 0-.532.003-.8 0-.282-.004-.38-.098-.38-.376V9.713c0-.271.098-.365.37-.365.233 0 .462-.004.696 0 .212.003.32.094.361.3.021.09.025.184.05.274.027.084.006.174.058.254zm.105 3.296v2.174c0 .07-.007.13.066.181.633.453 1.322.738 2.109.738 1.023 0 1.712-.445 2.025-1.399a5.297 5.297 0 0 0-.01-3.379c-.303-.908-.947-1.336-1.904-1.36-.8-.021-1.514.226-2.168.668-.087.059-.122.118-.118.223.003.716 0 1.433 0 2.154zM32.397 10.917h-2.614c-.292 0-.379-.09-.379-.386V9.54c0-.25.101-.358.345-.358 1.687-.004 3.375-.004 5.063 0 .247 0 .348.1.351.348.004.289 0 .581.004.87.003.23-.126.407-.247.581-.519.748-1.044 1.49-1.566 2.234-.411.588-.825 1.176-1.26 1.796h.296c.898.007 1.76.17 2.568.58.26.133.372.328.365.613-.007.348 0 .696-.003 1.044-.004.317-.185.432-.467.3-1.764-.832-3.528-.836-5.292.006-.265.126-.45.021-.453-.275-.007-.424 0-.845.004-1.27.003-.282.1-.529.264-.758.968-1.382 1.932-2.767 2.895-4.148.039-.049.073-.105.126-.185zM69.4 16.847a4.976 4.976 0 0 1-.876.591c-.905.46-1.852.64-2.84.331-.905-.285-1.416-.926-1.552-1.862-.094-.643-.02-1.263.341-1.82.453-.696 1.128-1.044 1.921-1.186.919-.167 1.823-.042 2.721.153.223.049.223.052.223-.174-.004-.376.01-.755-.014-1.131-.06-.853-.46-1.253-1.308-1.322-1.003-.084-1.973.083-2.93.372-.33.101-.428.035-.432-.306 0-.14.004-.279 0-.418-.007-.226.098-.365.303-.452.466-.198.953-.32 1.451-.4.793-.129 1.59-.178 2.387-.042.741.125 1.392.404 1.775 1.107.209.382.306.803.306 1.235.01 1.949.007 3.897.007 5.842 0 .24-.097.338-.338.341-.226.004-.452.004-.678 0-.237-.003-.338-.087-.38-.316-.03-.17-.052-.338-.086-.543zm-.062-1.844c0-.244-.004-.488 0-.731 0-.084-.024-.118-.111-.14-.717-.149-1.438-.246-2.172-.156-.925.111-1.381.654-1.322 1.576.038.571.372.968.926 1.086.174.038.354.049.535.035.742-.052 1.403-.32 2.008-.741.094-.066.143-.133.136-.254-.007-.223 0-.45 0-.675zM76.05 16.175c.547-1.566 1.083-3.107 1.619-4.645.198-.574.396-1.149.598-1.72.146-.417.216-.462.658-.462.271 0 .546-.004.817 0 .202.003.272.087.23.289-.042.205-.136.393-.212.588a4131.2 4131.2 0 0 1-3.588 9.12 4.17 4.17 0 0 1-.706 1.208c-.407.47-.93.696-1.538.73-.39.021-.776.008-1.155-.1-.265-.073-.352-.181-.359-.456a8.131 8.131 0 0 1 0-.505c.007-.215.094-.296.31-.268.271.035.54.063.814.046.466-.032.828-.23 1.068-.64.282-.477.425-1.013.63-1.521.032-.073-.01-.136-.038-.199-1.037-2.56-2.078-5.122-3.114-7.683a2.001 2.001 0 0 1-.115-.345c-.035-.167.038-.26.205-.264.372-.007.741-.004 1.114 0 .236 0 .344.157.417.355.22.602.439 1.207.658 1.81.54 1.489 1.075 2.982 1.61 4.47.018.057.043.109.077.192z" fill="#343F48"/><path d="M31.36 19.328c-.661 0-1.32.083-1.973.153-.108.01-.237.045-.29-.083-.055-.14.05-.23.15-.303a4.104 4.104 0 0 1 1.504-.647c.94-.213 1.879-.247 2.822-.021.045.01.087.028.132.038.292.07.418.261.425.553a4.896 4.896 0 0 1-.213 1.49c-.247.866-.626 1.666-1.245 2.338a2.283 2.283 0 0 1-.373.338c-.083.059-.184.1-.275.03-.097-.072-.059-.177-.024-.27.25-.64.505-1.281.689-1.946.097-.358.191-.717.164-1.092-.018-.268-.108-.383-.362-.467-.366-.121-.749-.111-1.131-.111z" fill="#FE9901"/></g></svg> </button>
               </fieldset>
           </form>
       <img src="//upload.wikimedia.org/wikipedia/donate/thumb/9/96/I.svg/40px-I.svg.png">
       If we all gave %MINIMUM%, the fundraiser would be over in an hour.
       <button class="frbanner-nag-donate">Donate now</button>
       

<script> /**

* NOTE: The following currency mapping is WMF-specific based on payment
* provider availability, NOT necessarily the official currency of the country
*/

function getCurrency() {

   switch(Geo.country) {
       // Big 5 at the top for speed
       case "US": return "USD";
       case "CA": return "CAD";
       case "GB": return "GBP";
       case "AU": return "AUD";
       case "NZ": return "NZD";
       // Euro countries
       case "AD":
       case "AL":
       case "AM":
       case "AT":
       case "AW":
       case "AZ":
       case "BE":
       case "BY":
       case "CI":
       case "CY":
       case "DE":
       case "EE":
       case "ES":
       case "FI":
       case "FR":
       case "GF":
       case "GR":
       case "IE":
       case "IT":
       case "LT":
       case "LU":
       case "LV":
       case "LY":
       case "MC":
       case "ME":
       case "MG":
       case "MT":
       case "NL":
       case "PT":
       case "RE":
       case "RS":
       case "SI":
       case "SK":
       case "SM":
       case "SR":
       case "VA":
           return "EUR";
       // The rest
       case "AE": return "AED";
       case "AR": return "ARS";
       case "BA": return "BAM";
       case "BB": return "BBD";
       case "BD": return "BDT";
       case "BG": return "BGN";
       case "BH": return "BHD";
       case "BM": return "BMD";
       case "BO": return "BOB";
       case "BR": return "BRL";
       case "BZ": return "BZD";
       case "CH": return "CHF";
       case "CK": return "NZD";
       case "CL": return "CLP";
       case "CN": return "CNY";
       case "CO": return "COP";
       case "CR": return "CRC";
       case "CZ": return "CZK";
       case "DK": return "DKK";
       case "DO": return "DOP";
       case "DZ": return "DZD";
       case "EG": return "EGP";
       case "FJ": return "FJD";
       case "FO": return "DKK";
       case "GL": return "DKK";
       case "GT": return "GTQ";
       case "HK": return "HKD";
       case "HN": return "HNL";
       case "HR": return "HRK";
       case "HU": return "HUF";
       case "ID": return "IDR";
       case "IL": return "ILS";
       case "IN": return "INR";
       case "IS": return "ISK";
       case "JM": return "JMD";
       case "JO": return "JOD";
       case "JP": return "JPY";
       case "KE": return "KES";
       case "KI": return "AUD";
       case "KR": return "KRW";
       case "KZ": return "KZT";
       case "LB": return "LBP";
       case "LI": return "CHF";
       case "LK": return "LKR";
       case "MA": return "MAD";
       case "MK": return "MKD";
       case "MV": return "MVR";
       case "MW": return "GBP";
       case "MX": return "MXN";
       case "MY": return "MYR";
       case "NI": return "NIO";
       case "NO": return "NOK";
       case "NP": return "INR";
       case "NR": return "AUD";
       case "OM": return "OMR";
       case "PA": return "PAB";
       case "PE": return "PEN";
       case "PG": return "AUD";
       case "PH": return "PHP";
       case "PK": return "PKR";
       case "PL": return "PLN";
       case "PY": return "PYG";
       case "QA": return "QAR";
       case "RO": return "RON";
       case "RU": return "RUB";
       case "SA": return "SAR";
       case "SD": return "GBP";
       case "SE": return "SEK";
       case "SG": return "SGD";
       case "TH": return "THB";
       case "TM": return "RUB";
       case "TN": return "TND";
       case "TR": return "TRY";
       case "TT": return "TTD";
       case "TW": return "TWD";
       case "UA": return "UAH";
       case "UY": return "UYU";
       case "UZ": return "RUB";
       case "VE": return "VEF";
       case "VN": return "VND";
       case "VU": return "AUD";
       case "ZA": return "ZAR";
       // small multi-country currencies
       case "CW":
       case "SX":
           return "ANG";
       case "AG":
       case "DM":
       case "GD":
       case "KN":
       case "LC":
           return "XCD";
       case "BJ":
       case "BF":
       case "CI":
       case "GW":
       case "ML":
       case "NE":
       case "SN":
       case "TG":
           return "XOF";
       case "PF":
       case "NC":
       case "WF":
           return "XPF";
       // fall back to USD
       default:
           return "USD";
   }

} </script> <script> function currencyLocalize(currency, amount, language){

   // Do some basic number formatting - digit separators etc
   if (window.Intl && typeof window.Intl === "object") {
       if (Geo.country) {
           var locale = language + '-' + Geo.country;
       } else {
           var locale = language;
       }
       var formatter = new Intl.NumberFormat(locale);
   } else {
       // boo, bad browser! let's just have a thing that throws it back unformatted for now
       var formatter = {};
       formatter.format = function(number) {
           return number.toString();
       };
   }
   if (isNaN(amount) || amount == "") {
       // it's probably the "other" string or box
       var fmAmount = amount;
   } else {
       var fmAmount = formatter.format(amount);
   }
   // End number formatting
   var currencies = {
       "USD" : "$\t",
       "EUR" : {
           "en" : "€\t",
           "cy" : "€\t",
           "ga" : "€\t",
           "mt" : "€\t",
           "nl" : "€ \t",
           "lv" : "€ \t",
           "tr" : "€ \t",
           "default" : "\t €"
       },
       "AED" : " د.إ \t",
       "ANG" : "ƒ\t",
       "ARS" : "$\t",
       "AUD" : "$\t",
       "BAM" : "\t KM",
       "BBD" : "Bcs$\t",
       "BDT" : "৳\t",
       "BGN" : "лв\t",
       "BHD" : "د.ب\t",
       "BMD" : "BD$\t",
       "BOB" : "$b\t",
       "BRL" : "R$\t",
       "BZD" : "BZ$\t",
       "CAD" : {
           "fr" : "$\t",
           "default" : "$\t"
       },
       "CHF" : "Fr. \t",
       "CLP" : "$\t",
       "CNY" : "\t ¥",
       "COP" : "$\t",
       "CRC" : "\t ₡",
       "CZK" : "\t Kč",
       "DKK" : "\t kr.",
       "DOP" : "RD$\t",
       "DZD" : "د.ج\t",
       "EEK" : "\t kr",
       "EGP" : {
           "en" : "E£\t",
           "default" : "\t جنيه"
       },
       "FJD" : "FJ$\t",
       "GBP" : "£\t",
       "GTQ" : "Q\t",
       "HKD" : "HK$\t",
       "HNL" : "L\t",
       "HRK" : "\t kn",
       "HUF" : "\t Ft",
       "IDR" : "Rp \t",
       "ILS" : {
           "he" : "\t ₪",
           "yi" : "\t ₪",
           "ar" : "\t ₪",
           "default" : "₪ \t"
       },
       "INR" : "₹ \t",
       "ISK" : "\t kr",
       "JMD" : "J$ \t",
       "JOD" : "دينار\t",
       "JPY" : "¥\t",
       "KES" : "\t KSh",
       "KRW" : "₩\t",
       "KWD" : "د.ك \t",
       "KZT" : "〒 \t", // TODO: don't use the JP postal code symbol once KZT works in unicode
       "LBP" : "LBP \t",
       "LKR" : "\t Rs.",
       "LTL" : "\t Lt",
       "LVL" : "\t Ls",
       "MAD" : "د.م.\t",
       "MKD" : "\t ден",
       "MOP" : "MOP$\t",
       "MUR" : "\t Rs",
       "MXN" : "$\t",
       "MVR" : "Rf. \t",
       "MYR" : "RM\t",
       "NIO" : "C$\t",
       "NOK" : "\t kr",
       "NZD" : "$\t",
       "OMR" : "ر.ع\t",
       "PAB" : "\t B/.",
       "PEN" : "S/. \t",
       "PHP" : "₱\t",
       "PKR" : "Rs \t",
       "PLN" : "\t zł",
       "PYG" : "\t ₲",
       "QAR" : "ر.ق\t",
       "RON" : "\t lei",
       "RUB" : "\t руб",
       "SAR" : "﷼\t",
       "SCR" : "SR \t",
       "SEK" : "\t kr",
       "SGD" : "S$ \t",
       "SVC" : "\t ₡",
       "THB" : {
           "th" : "\t บาท",
           "default" : "\t ฿"
       },
       "TND" : "\t د.ت",
       "TRY" : "₺\t",
       "TTD" : "TT$\t",
       "TWD" : "NT$\t",
       "TZS" : "\t/=",
       "UAH" : "₴\t",
       "UYU" : "$U \t",
       "UZS" : "\t сўм",
       "VEF" : "Bs.F. \t",
       "VND" : "\t₫",
       "VUV" : "VT\t",
       "XAF" : "FCFA\t",
       "XCD" : "EC$\t",
       "XOF" : "CFA \t",
       "XPF" : "\t F",
       "ZAR" : "R \t"
   };
   if(currencies[currency] == null){
       return currency + " " + fmAmount;
   }
   if( currencies[currency] instanceof Object ){ // not a string
       if(currencies[currency][language] != null){
           return currencies[currency][language].replace("\t", fmAmount);
       }
       return currencies[currency]["default"].replace("\t", fmAmount);
   }
   return currencies[currency].replace("\t", fmAmount);

} </script> <script> function getMinimum(currency){

   var minimums = {
       'ADF' : 5.95,
       'ADP' : 150.87,
       'AED' : 3.67,
       'AFA' : 60.47,
       'AFN' : 60.47,
       'ALL' : 124.74,
       'AMD' : 473.47,
       'ANG' : 1.82,
       'AOA' : 122.35,
       'AON' : 122.35,
       'ARS' : 14, // Astropay
       'ATS' : 12.48,
       'AUD' : 1.35,
       'AWG' : 1.79,
       'AZM' : 3926.19,
       'AZN' : 1.05,
       'BAM' : 1.77,
       'BBD' : 2,
       'BDT' : 76.04,
       'BEF' : 36.58,
       'BGL' : 1.77,
       'BGN' : 1.77,
       'BHD' : 0.37,
       'BIF' : 1599.65,
       'BMD' : 1,
       'BND' : 1.33,
       'BOB' : 6.71,
       'BRL' : 3.2,
       'BSD' : 0.99,
       'BTN' : 63.52,
       'BWP' : 9.89,
       'BYR' : 15378.7,
       'BZD' : 1.96,
       'CAD' : 1.27,
       'CDF' : 912.52,
       'CHF' : 0.95,
       'CLP' : 980, // Astropay
       'CNY' : 6.09,
       'COP' : 4000, // Astropay
       'CRC' : 523.08,
       'CUC' : 1,
       'CUP' : 23.15,
       'CVE' : 99.81,
       'CYP' : 0.53,
       'CZK' : 24.59,
       'DEM' : 1.77,
       'DJF' : 177.72,
       'DKK' : 6.77,
       'DOP' : 44.46,
       'DZD' : 99.04,
       'ECS' : 25588.54,
       'EEK' : 14.19,
       'EGP' : 7.81,
       'ESP' : 150.87,
       'ETB' : 20.5,
       'EUR' : 0.91,
       'FIM' : 5.39,
       'FJD' : 2.11,
       'FKP' : 0.65,
       'FRF' : 5.95,
       'GBP' : 0.65,
       'GEL' : 2.25,
       'GHC' : 37964.2,
       'GHS' : 3.8,
       'GIP' : 0.65,
       'GMD' : 38.45,
       'GNF' : 7251.79,
       'GRD' : 308.97,
       'GTQ' : 7.43,
       'GYD' : 197.27,
       'HKD' : 7.75,
       'HNL' : 21.27,
       'HRK' : 6.87,
       'HTG' : 52.41,
       'HUF' : 287.8,
       'IDR' : 13333.3,
       'IEP' : 0.71,
       'ILS' : 3.79,
       'INR' : 63.39,
       'IQD' : 1141.95,
       'IRR' : 29360,
       'ISK' : 133.46,
       'ITL' : 1755.66,
       'JMD' : 113.71,
       'JOD' : 0.71,
       'JPY' : 121.58,
       'KES' : 98.48,
       'KGS' : 62.13,
       'KHR' : 3995.54,
       'KMF' : 445,
       'KPW' : 135.01,
       'KRW' : 1134.04,
       'KWD' : 0.3,
       'KYD' : 0.82,
       'KZT' : 183.31,
       'LAK' : 7923.05,
       'LBP' : 1480.9,
       'LKR' : 130.3,
       'LRD' : 85,
       'LSL' : 12.5,
       'LTL' : 3.13,
       'LUF' : 36.58,
       'LVL' : 0.64,
       'LYD' : 1.34,
       'MAD' : 9.77,
       'MDL' : 18.71,
       'MGA' : 3252.88,
       'MGF' : 9149.13,
       'MKD' : 55.45,
       'MMK' : 1111.03,
       'MNT' : 1958,
       'MOP' : 7.79,
       'MRO' : 320.47,
       'MTL' : 0.39,
       'MUR' : 34.3,
       'MVR' : 14.97,
       'MWK' : 441.83,
       'MXN' : 24, // Astropay
       'MYR' : 3.8,
       'MZM' : 38000,
       'MZN' : 38,
       'NAD' : 12.5,
       'NGN' : 196.44,
       'NIO' : 26.24,
       'NLG' : 2,
       'NOK' : 8.2,
       'NPR' : 99.74,
       'NZD' : 1.5,
       'OMR' : 0.38,
       'PAB' : 1,
       'PEN' : 3.12,
       'PGK' : 2.68,
       'PHP' : 45.15,
       'PKR' : 100.4,
       'PLN' : 3.83,
       'PTE' : 181.78,
       'PYG' : 5065.03,
       'QAR' : 3.64,
       'ROL' : 40637.3,
       'RON' : 4.06,
       'RSD' : 108.68,
       'RUB' : 57.16,
       'RWF' : 721.7,
       'SAR' : 3.75,
       'SBD' : 7.83,
       'SCR' : 12.33,
       'SDD' : 592.4,
       'SDG' : 5.92,
       'SDP' : 2272.21,
       'SEK' : 8.5,
       'SGD' : 1.35,
       'SHP' : 0.62,
       'SIT' : 217.29,
       'SKK' : 27.32,
       'SLL' : 4158,
       'SOS' : 673,
       'SRD' : 3.24,
       'SRG' : 3240,
       'STD' : 22115.7,
       'SVC' : 8.54,
       'SYP' : 217.65,
       'SZL' : 12.5,
       'THB' : 33.94,
       'TJS' : 6.26,
       'TMM' : 14285.71,
       'TMT' : 2.85,
       'TND' : 1.97,
       'TOP' : 2.16,
       'TRL' : 2687990,
       'TRY' : 2.69,
       'TTD' : 6.25,
       'TWD' : 31.04,
       'TZS' : 2185.91,
       'UAH' : 21.25,
       'UGX' : 3454.24,
       'USD' : 1,
       'UYU' : 40, // Astropay
       'UZS' : 2541,
       'VEB' : 6290.36,
       'VEF' : 6.29,
       'VND' : 21482.8,
       'VUV' : 104.5,
       'WST' : 2.36,
       'XAF' : 595.84,
       'XAG' : 0.07,
       'XAU' : 0,
       'XCD' : 2.69,
       'XEU' : 0.91,
       'XOF' : 595.83,
       'XPD' : 0,
       'XPF' : 108.27,
       'XPT' : 0,
       'YER' : 214.8,
       'YUN' : 108.68,
       'ZAR' : 12.5,
       'ZMK' : 5327.65,
       'ZWD' : 376.36
   };
   if($.inArray(currency, minimums)){
       return minimums[currency];
   }
   return 1;

} </script> <script> var fundraisingAmounts = fundraisingAmounts || {};

fundraisingAmounts.asks = {

   "USD" : {
       "default" : [3, 5, 10, 20, 30, 50, 100]
   },
   "EUR" : {
       "default" : [2, 5, 10, 20, 30, 50, 100]
   },
   "GBP" : [2, 5, 10, 20, 30, 50, 100],
   "CAD" : [3, 5, 10, 20, 30, 50, 100],
   "AUD" : [3, 5, 10, 20, 30, 50, 100],
   "NZD" : [3, 5, 10, 20, 30, 50, 100],
   "AED" : [25, 50, 100, 200, 300, 500, 1000],
   "ANG" : [5, 10, 20, 35, 50, 100, 200],
   "ARS" : [30, 50, 100, 200, 500, 750, 1000],
   "BAM" : [3, 5, 10, 25, 40, 70, 140],
   "BBD" : [5, 10, 20, 40, 60, 100, 200],
   "BDT" : [200, 400, 800, 1500, 2000, 4000, 7500],
   "BGN" : [10, 25, 50, 75, 100, 150, 200],
   "BHD" : [1, 2, 4, 8, 10, 20, 40],
   "BMD" : [3, 5, 10, 20, 30, 50, 100],
   "BOB" : [20, 30, 60, 140, 200, 300, 600],
   "BRL" : [10, 20, 30, 50, 100, 250, 500],
   "BZD" : [5, 10, 20, 40, 60, 100, 200],
   "CLP" : [1500, 2500, 5000, 10000, 15000, 25000, 50000],
   "CNY" : [50, 75, 100, 300, 500, 1000, 1500],
   "COP" : [7000, 10000, 20000, 50000, 100000, 150000, 200000],
   "CRC" : [2500, 5000, 10000, 20000, 50000, 75000, 100000],
   "CZK" : [50, 100, 200, 400, 600, 1000, 2000],
   "DKK" : [20, 100, 150, 200, 300, 500, 1000],
   "DOP" : [200, 500, 1000, 2000, 5000, 7500, 10000],
   "DZD" : [200, 400, 750, 1500, 2000, 4000, 7500],
   "FJD" : [5, 10, 20, 40, 50, 100, 200],
   "GTQ" : [20, 40, 80, 150, 200, 350, 750],
   "HKD" : [20, 50, 100, 150, 200, 500, 1000],
   "HNL" : [50, 100, 200, 400, 600, 1000, 1800],
   "HRK" : [35, 50, 100, 250, 500, 1000, 1500],
   "HUF" : [500, 1000, 2000, 4000, 5000, 7000, 10000],
   "IDR" : [35000, 50000, 75000, 100000, 150000, 250000, 500000],
   "ISK" : [300, 500, 1000, 2000, 3000, 5000, 10000],
   "ILS" : [15, 50, 100, 200, 300, 500, 1000],
   "INR" : [100, 200, 300, 500, 1000, 2000, 3000],
   "JMD" : [300, 500, 1000, 2000, 3000, 5000, 10000],
   "JPY" : [300, 1000, 1500, 2000, 3000, 5000, 10000],
   "KRW" : [5000, 10000, 20000, 30000, 50000, 75000, 100000],
   "KWD" : [2, 5, 10,15, 25, 30, 75],
   "KZT" : [750, 1500, 3000, 7500, 12000, 15000, 35000],
   "LBP" : [7500, 15000, 30000, 75000, 120000, 175000, 350000],
   "LTL" : [15, 25, 50, 100, 200, 250, 600],
   "MKD" : [100, 200, 400, 800, 1200, 2000, 4000],
   "MVR" : [40, 75, 150, 300, 450, 750, 1500],
   "MXN" : [35, 50, 100, 200, 500, 750, 1000],
   "MYR" : [10, 30, 50, 100, 200, 300, 500],
   "NIO" : [100, 250, 500, 1000, 1500, 2500, 5500],
   "NOK" : [20, 100, 150, 200, 500, 750, 1000],
   "OMR" : [1, 2, 4, 8, 10, 20, 40],
   "PAB" : [3, 5, 10, 20, 30, 50, 100],
   "PEN" : [10, 30, 50, 150, 200, 275, 700],
   "PHP" : [200, 500, 750, 1000, 2000, 3000, 5000],
   "PLN" : [10, 20, 50, 100, 200, 300, 500],
   "PYG" : [10000, 20000, 40000, 80000, 120000, 200000, 400000],
   "QAR" : [20, 50, 75, 185, 250, 350, 1000],
   "RON" : [10, 50, 75, 100, 200, 300, 500],
   "RUB" : [100, 150, 200, 500, 1000, 2000, 3000],
   "SAR" : [20, 50, 100, 200, 500, 1000, 1500],
   "SEK" : [30, 50, 100, 200, 300, 500, 1000],
   "SGD" : [3, 5, 10, 20, 30, 50, 100],
   "THB" : [50, 100, 250, 500, 750, 1000, 2000],
   "TND" : [5, 10, 15, 30, 50, 75, 150],
   "TRY" : [5, 10, 20, 40, 50, 100, 200],
   "TTD" : [20, 30, 60, 120, 200, 300, 600],
   "TWD" : [150, 300, 500, 1000, 1500, 2000, 5000],
   "UAH" : [50, 75, 150, 300, 500, 750, 1000],
   "UYU" : [70, 100, 200, 400, 1000, 1500, 2000],
   "VEF" : [20, 30, 50, 100, 200, 300, 600],
   "VND" : [60000, 100000, 200000, 400000, 600000, 1000000, 2000000],
   "XCD" : [5, 10, 20, 50, 80, 120, 250],
   "XOF" : [1000, 2000, 5000, 10000, 150000, 200000, 400000],
   "XPF" : [250, 400, 800, 1600, 2500, 4000, 8000],
   "ZAR" : [30, 50, 100, 200, 300, 500, 1000],
   "CHF" : [3, 5, 10, 20, 30, 50, 100]

};

/* Usual formula: take 1st, 3rd, 4th, 6th and 7th from desktop asks */ fundraisingAmounts.mobileAsks = {

   "USD" : [3, 15, 20, 50, 100],
   "CAD" : [3, 15, 20, 50, 100],
   "AUD" : [3, 15, 20, 50, 100],
   "NZD" : [3, 15, 20, 50, 100],
   "GBP" : [2, 10, 20, 50, 100],
   "EUR" : [2, 10, 20, 50, 100],
   "ARS" : [30, 100, 200, 750, 1000],
   "BRL" : [10, 30, 50, 100, 250],
   "CHF" : [3, 15, 20, 50, 100],
   "CLP" : [1500, 5000, 10000, 25000, 50000],
   "CNY" : [50, 100, 300, 500, 1000],
   "COP" : [7000, 20000, 50000, 150000, 200000],
   "DKK" : [20, 100, 200, 500, 1000],
   "HKD" : [20, 100, 150, 500, 1000],
   "HUF" : [500, 2500, 4000, 7000, 10000],
   "ILS" : [15, 50, 200, 600, 1000],
   "INR" : [100, 300, 500, 2000, 3000],
   "JPY" : [300, 1500, 2000, 5000, 10000],
   "MXN" : [35, 100, 200, 750, 1000],
   "MYR" : [10, 50, 100, 300, 500],
   "NOK" : [20, 100, 200, 500, 1000],
   "PEN" : [10, 50, 150, 300, 700],
   "PLN" : [10, 50, 100, 300, 500],
   "RON" : [10, 50, 100, 200, 1000],
   "SEK" : [30, 100, 200, 500, 1000],
   "UAH" : [50, 150, 300, 750, 1000],
   "UYU" : [70, 200, 400, 1500, 2000],
   "ZAR" : [30, 100, 200, 500, 1000]

};

fundraisingAmounts.averages = {

   "USD" : 15,
   "EUR" : 10,
   "GBP" : 10,
   "CAD" : 15,
   "AUD" : 15,
   "NZD" : 15,
   "AED" : 50,
   "ALL" : 1500,
   "AMD" : 5000,
   "ANG" : 25,
   "ARS" : 100,
   "AZN" : 10,
   "BAM" : 20,
   "BBD" : 30,
   "BDT" : 1000,
   "BGN" : 20,
   "BHD" : 6,
   "BMD" : 15,
   "BND" : 20,
   "BOB" : 100,
   "BRL" : 25,
   "BSD" : 15,
   "BZD" : 30,
   "CHF" : 15,
   "CLP" : 8000,
   "CNY" : 100,
   "COP" : 30000,
   "CRC" : 7500,
   "CZK" : 250,
   "DKK" : 100,
   "DOP" : 600,
   "DZD" : 1000,
   "EGP" : 100,
   "ETB" : 250,
   "FJD" : 25,
   "GEL" : 25,
   "GNF" : 100000,
   "GTQ" : 100,
   "HKD" : 100,
   "HNL" : 250,
   "HRK" : 80,
   "HUF" : 2500,
   "IDR" : 150000,
   "ILS" : 50,
   "INR" : 750,
   "IQD" : 15000,
   "ISK" : 1500,
   "JMD" : 1500,
   "JOD" : 10,
   "JPY" : 1500,
   "KES" : 1000,
   "KRW" : 15000,
   "KWD" : 5,
   "KZT" : 2000,
   "LBP" : 20000,
   "LKR" : 2000,
   "LTL" : 40,
   "LVL" : 10,
   "MAD" : 120,
   "MKD" : 600,
   "MOP" : 100,
   "MUR" : 500,
   "MVR" : 200,
   "MXN" : 150,
   "MYR" : 50,
   "MZN" : 50,
   "NGN" : 2500,
   "NIO" : 350,
   "NOK" : 100,
   "OMR" : 5,
   "PAB" : 15,
   "PEN" : 40,
   "PHP" : 600,
   "PKR" : 1500,
   "PLN" : 50,
   "PYG" : 60000,
   "QAR" : 50,
   "RON" : 50,
   "RSD" : 1200,
   "RUB" : 500,
   "SAR" : 50,
   "SBD" : 100,
   "SEK" : 100,
   "SGD" : 20,
   "THB" : 500,
   "TND" : 25,
   "TRY" : 25,
   "TTD" : 100,
   "TWD" : 500,
   "UAH" : 150,
   "UYU" : 300,
   "VEF" : 100,
   "VND" : 300000,
   "XCD" : 40,
   "XOF" : 7000,
   "XPF" : 1000,
   "ZAR" : 150,
   "CHF" : 15

};

// Mostly the same as first asks option. // For backwards compatibility, these need to be given as an array of one number fundraisingAmounts.ifEveryone = {

   "USD" : {
       "default" : [3]
   },
   "EUR" : {
       "default" : [2]
   },
   "GBP" : [2],
   "CAD" : [3],
   "AUD" : [3],
   "NZD" : [3],
   "AED" : [25],
   "ANG" : [5],
   "ARS" : [30],
   "BAM" : [3],
   "BBD" : [5],
   "BDT" : [200],
   "BGN" : [10],
   "BHD" : [1],
   "BMD" : [3],
   "BOB" : [20],
   "BRL" : [10],
   "BZD" : [5],
   "CLP" : [1500],
   "CNY" : [50],
   "COP" : [7000],
   "CRC" : [2500],
   "CZK" : [50],
   "DKK" : [20],
   "DOP" : [200],
   "DZD" : [200],
   "FJD" : [5],
   "GTQ" : [20],
   "HKD" : [20],
   "HNL" : [50],
   "HRK" : [35],
   "HUF" : [500],
   "IDR" : [35000],
   "ILS" : [15],
   "INR" : [100],
   "ISK" : [300],
   "JMD" : [300],
   "JPY" : [300],
   "KRW" : [5000],
   "KWD" : [2],
   "KZT" : [750],
   "LBP" : [7500],
   "LTL" : [15],
   "MKD" : [100],
   "MVR" : [40],
   "MXN" : [35],
   "MYR" : [10],
   "NIO" : [100],
   "NOK" : [20],
   "OMR" : [1],
   "PAB" : [3],
   "PEN" : [10],
   "PHP" : [200],
   "PLN" : [10],
   "PYG" : [10000],
   "QAR" : [20],
   "RON" : [10],
   "RUB" : [100],
   "SAR" : [20],
   "SEK" : [30],
   "SGD" : [3],
   "THB" : [50],
   "TND" : [5],
   "TRY" : [5],
   "TTD" : [20],
   "TWD" : [150],
   "UAH" : [50],
   "UYU" : [70],
   "VEF" : [20],
   "VND" : [60000],
   "XCD" : [5],
   "XOF" : [1000],
   "XPF" : [250],
   "ZAR" : [30],
   "CHF" : [3]

}; </script> <script> var fundraisingAmounts = fundraisingAmounts || {};

fundraisingAmounts.pick = function(source, currency, country) {

   /*
    * Select the correct amount or array of amounts from object in "source"
    * In future may extend to allow a language parameter too
    * 
    * @param {object} source   - the amounts object e.g. fundraisingAmounts.asks, fundraisingAmounts.averages
    * @param {string} currency - ISO code of currency
    * @param {string} country  - ISO code of country (optional)
    * @return {array/number}   - depending on source
    */
   if ( source[currency]["default"] ) { // we need to go deeper
       if ( source[currency][country] !== undefined ) {
           return source[currency][country];
       } else {
           return source[currency]["default"];
       }
   } else {
       return source[currency];
   }

};

function convertAsk(amount, currency, country) {

   /*
    * Given an amount in USD, find an "equivalent" local ask amount for the given currency and country
    * @TODO: namespace this
    * 
    * @param {number} amount   - USD amount
    * @param {string} currency - ISO code of currency
    * @param {string} country  - ISO code of country
    * @return {number}         - local amount
    */
   var usdbase = [3, 5, 10, 20, 30, 50, 100];
   var usdamount = parseInt(amount, 10);
   if(isNaN(usdamount)){
       return 0;
   }

   var index = $.inArray(usdamount, usdbase);
   if (index == -1) {
       // the amount is not in the USD ask array, find a near neighbor
       index = 0;
       while (usdbase[index+1] < usdamount && index < usdbase.length + 1) {
           index++;
       }
   }
   var array = fundraisingAmounts.pick(fundraisingAmounts.asks, currency, country);
   if (array === undefined) {
       // in case we don't have amounts for this currency
       return usdamount;
   } else {
       return array[index];
   }

}

function getAverage(currency, country, language) {

   /*
    * Return a formatted string with the "average" donation amount in the given currency, country and language
    * @TODO: just move this into banner code
    * 
    * @param {string} currency - ISO code of currency
    * @param {string} country  - ISO code of country
    * @param {string} country  - ISO code of language     
    * @return {string}         - formatted amount 
    */
   var amount = fundraisingAmounts.pick(fundraisingAmounts.averages, currency, country);
   return currencyLocalize(currency, amount, language);

}

function getMinimumString(currency, country, language) {

   /*
    * Return a formatted string with the "if everyone" amount in the given currency, country and language
    * @TODO: just move this into banner code
    * 
    * @param {string} currency - ISO code of currency
    * @param {string} country  - ISO code of country
    * @param {string} country  - ISO code of language     
    * @return {string}         - formatted amount 
    */
   var amount = fundraisingAmounts.pick(fundraisingAmounts.ifEveryone, currency, country)[0];
   return currencyLocalize(currency, amount, language);

} </script> <script> // Various common actions for banner setup.

var getQuerystring = function(key) {

   // Should not be used any more, use mw.util.getParamValue() instead
   // Kept for now though because this returns  instead of null if key is not present
   key = key.replace( /[\[]/, '\\\[' ).replace( /[\]]/, '\\\]' );
   var regex = new RegExp( '[\\?&]' + key + '=([a-zA-Z0-9\_\-]*)' );
   var qs = regex.exec( window.location.search );
   return qs == null ?  : qs[1];

};

$(document).ready( function () {

   // Allow overriding the geolocation for testing different countries
   if(mw.util.getParamValue('country')) {
       Geo.country = mw.util.getParamValue('country');
   }
   var language = mw.config.get('wgUserLanguage'),
       currency = getCurrency(Geo.country);
   // Localize links in the smallprint
   $('#{{{banner}}}-legal a, #frbanner-legal a, .frbanner-legal a').each(function(index) {
       // Add parameters for LandingCheck
       var uri = new mw.Uri( $(this).attr("href") );
       uri.extend({
           country:      Geo.country,
           language:     language,
           uselang:      language,
           utm_medium:   'sitenotice',
           utm_campaign: mw.centralNotice.getDataProperty('campaign'),
           utm_source:   mw.centralNotice.getDataProperty('banner')
       });
       $(this).attr( "href", uri.toString() );
       // Make links open in new tab
       $(this).attr("target", "_blank");
   });
   // Show the correct legal text variant
   if (Geo.country === 'US') {
       $('.informationsharing-US').show();
       $('.informationsharing-NL').hide();
       $('.informationsharing-nonUS').hide();
   }
   if (Geo.country === 'NL') {
       $('.informationsharing-US').hide();
       $('.informationsharing-NL').show();
       $('.informationsharing-nonUS').hide();
   }
   // Find instances of %AVERAGE% in banner text, and replace with correct average for currency & country
   $(".frbanner, div#{{{banner}}}, #frbanner3").each(function(index){
       var avgString = getAverage(currency, Geo.country, language).replace(/\.$/, ); // strip any period from end for use in running text
       var newHtml = $(this).html().replace(/%AVERAGE%/g, avgString );
       $(this).html(newHtml);
   });
   // Find instances of %MINIMUM% in banner text, and replace with correct minimum for currency & country
   $(".frbanner, div#{{{banner}}}, #frbanner3").each(function(index){
       var ifString = getMinimumString(currency, Geo.country, language).replace(/\.$/, ); // strip any period from end for use in running text
       var newHtml = $(this).html().replace(/%MINIMUM%/g, ifString );
       $(this).html(newHtml);
   });
   
   /* Replace class "frbanner-currencycode" with currency ISO code */
   $('.frbanner-currencycode').html(currency);

}); </script> <script> /**

 * Core code for forms in banners.
 * Handles showing the correct payment methods, validating input, and sending on to payments wiki.
 * (Note that localizing amount options is done elsewhere, in BannerFormAmountOptions.js)
 *
 * Dependencies:
 *     MediaWiki:FR2013/Resources/CurrencyMinimums.js
 *     MediaWiki:FR2013/Resources/Country2Currency.js
 *     MediaWiki:FR2013/Resources/PaymentOutages.js
 *     MediaWiki:FR2015/Resources/MethodLocalize.js
 *
 */

function checkPaymentOutages() {

   /* Check against the scheduled payment method outages below
    * and hide the relevant button for any which are ongoing.
    */
   /* This file can be used to schedule hiding of individual payment methods from banners
* e.g. if they have scheduled downtime.
*
* Valid methods are:
*	ideal, cc, pp, amazon, bpay, webmoney, cash, pp-usd
* (most of the time it's 'ideal'...)
* Can also limit outage to a specific country with country: "XX" (where XX is an ISO code)
*
* Note that in JavaScript dates the months (and only the months) start at 0.
* Jan=0, Feb=1, Mar=2, Apr=3 etc. How hateful.
*
* Be sure to also update donatewiki if needed e.g. by commenting the method templates
* found at https://donate.wikimedia.org/wiki/Template:2012FR/Form-section/Paymentmethods
* 
*/

var outages = [

   {
       start:      new Date(Date.UTC(2016, 8, 18, 1)),
       end:        new Date(Date.UTC(2016, 8, 18, 7)),
       method:     "ideal"
   }

];

   var now = new Date();
   for (var i = outages.length - 1; i >= 0; i--) {
       if ( now > outages[i]['start'] && now < outages[i]['end'] ) {
           if (outages[i]['country'] === undefined || outages[i]['country'] == Geo.country) {
               $('.paymentmethod-' + outages[i]['method']).hide();
           }
       }
   }

}

function validateForm(form) {

   /* Check the form, especially the amount submitted 
    * Return the amount if valid, otherwise return false
    */
   var error = true;
   var amount = null;
   if (form.amount) {
       // If there are some amount radio buttons, then look for the checked one
       for (var i = 0; i < form.amount.length; i++) {
           if (form.amount[i].checked) {
               amount = form.amount[i].value;
           }
       }
   }
   // Check the "other" amount box
   if (form.amountGiven.value != ) {
       var otherAmount = form.amountGiven.value;
       otherAmount = otherAmount.replace(/[,.](\d)$/, ':$10');
       otherAmount = otherAmount.replace(/[,.](\d)(\d)$/, ':$1$2');
       otherAmount = otherAmount.replace(/[$£€¥,.]/g, );
       otherAmount = otherAmount.replace(/:/, '.');
       form.amountGiven.value = otherAmount;
       amount = otherAmount;
   }
   // Check amount is a real number
   error = ( amount == null || isNaN(amount) || amount.value <= 0 );
   // Check amount is at least the minimum
   var currency = form.currency_code.value;
   if (amount < getMinimum(currency) || error) {
       alert('You must contribute at least $1'.replace('$1', getMinimum(currency) + ' ' + currency));
       error = true;
   }
   if ( error ) {
       return false;
   } else {
       return amount;
   }

}

function redirectPayment(paymentMethod, paymentSubMethod, skipValidation) {

   if ( skipValidation || validateForm(document.paypalcontribution) ) {
       if (typeof paymentSubMethod == 'undefined') {
           paymentSubMethod = ;
       }
       var form = document.paypalcontribution; // we should really change this some day
       var paymentsURL = 'https://payments.wikimedia.org/index.php/Special:GatewayFormChooser';
       form.action = paymentsURL;
       if ( form.language.value === 'pt' && Geo.country === 'BR' ) {
           form.language.value = 'pt-br';
       }
       // WorldPay override for cc
       if( paymentMethod === 'cc-wp' ) {
           paymentMethod = 'cc';
           form.payment_method.value = 'cc';
           form.gateway.value = 'worldpay';
           form.ffname.value = 'worldpay';
       }
       
       // Adyen override for cc
       if( paymentMethod === 'cc-adyen' ) {
           paymentMethod = 'cc';
           form.payment_method.value = 'cc';
           form.gateway.value = 'adyen';
       }
       // Express Checkout override for PayPal
       if( paymentMethod === 'paypal-ec' ) {
           paymentMethod = 'paypal';
           form.payment_method.value = 'paypal';
           form.gateway.value = 'paypal_ec';
       }
       var frequency = $("input[name='frequency']:checked").val();
       if( frequency !== 'monthly' ){
           frequency = 'onetime';
           form.recurring.value = 'false';
       } else {
           form.recurring.value = 'true';
       }
       var mixins = mw.centralNotice.getDataProperty( 'mixins' );
       if ( mixins && mixins.bannerHistoryLogger ) {
           form.bannerhistlog.value = mw.centralNotice.bannerHistoryLogger.id;
       }
       form.utm_key.value = mw.centralNotice.bannerData.cookieCount || 0;
       form.payment_method.value = paymentMethod;
       form.payment_submethod.value = paymentSubMethod;
       
       var full_dotted_payment_method = paymentMethod;
       if ( form.recurring.value == 'true' ) {
           full_dotted_payment_method = 'r' + full_dotted_payment_method;
       }
       if ( paymentSubMethod ) {
           full_dotted_payment_method = form.payment_method.value + '.' + paymentSubMethod;
       }
       form.utm_source.value += '.no-LP.' + full_dotted_payment_method;
       $('.frbanner-form button').attr('disabled', 'disabled'); // Disable to prevent double submission
       if ( mixins && mixins.bannerHistoryLogger ) {
           mw.centralNotice.bannerHistoryLogger.ensureLogSent().always(function() {
               form.submit();
           });
       } else {
           form.submit();
       }
       
   }

}

function toggleMonthly( monthly ){

   if( monthly.type === 'checkbox' ){
       monthly = monthly.checked;
   }
   if (monthly) {
       $('#{{{banner}}}-form').addClass('form-monthly');
   } else {
       $('#{{{banner}}}-form').removeClass('form-monthly');
   }

}


$(document).ready( function() {

   mw.loader.using(['mediawiki.util']).then(function() {
       // Allow overriding the geolocation for testing different countries
       if(mw.util.getParamValue('country') !== null) {
           Geo.country = mw.util.getParamValue('country');
       }
       var currency = getCurrency(Geo.country);
       var language = mw.config.get('wgUserLanguage');
       // Display correct payment methods
       /** MediaWiki:FR2015/Resources/MethodLocalize.js
 * Display the correct payment methods for current country. Used by both desktop and mobile banners.
 */

// Countries with no credit card option (currently none) var noCC = []; if ($.inArray(Geo.country, noCC) !== -1) {

   $(".paymentmethod-cc").remove();

}

// Can't do monthly credit card in Brazil if (Geo.country === 'BR') {

   $(".paymentmethod-cc").addClass("no-monthly");

}

// Remove any leftover WorldPay $(".paymentmethod-cc-wp").remove();

// Countries using Adyen for credit card if (Geo.country === 'FR' || Geo.country === 'IL') {

   $(".paymentmethod-cc").remove();
   $(".paymentmethod-cc-adyen").show();

} else {

   $(".paymentmethod-cc-adyen").remove();

}

// Countries with no PayPal option var noPP = ['IN', 'RU', 'SG', 'AE', 'QA', 'JP', 'OM', 'BD', 'BO', 'PA',

           'PE', 'PY', 'GT', 'JM', 'TT', 'DZ'];

if ($.inArray(Geo.country, noPP) !== -1) {

   $(".paymentmethod-pp").remove();
   $(".paymentmethod-pp-usd").remove();

}

// Countries where PayPal must be in USD var ppUSD = ['BG', 'HR', 'LT', 'MK', 'RO', 'UA', 'SA', 'CN', 'ID', 'KR',

            'KZ', 'MY', 'VN', 'AR', 'CL', 'DO', 'CO', 'NI', 'UY', 'ZA',
            'BH', 'LB', 'VE', 'TR', 'IS', 'BA', 'MV', 'BB', 'BM', 'BZ',
            'CR', 'CW', 'SX', 'HN', 'KN', 'DM', 'AG', 'LC', 'GD', 'FJ',
            'TN', 'BJ', 'BF', 'CI', 'GW', 'ML', 'NE', 'SN', 'TG', 'BR'];

if ($.inArray(Geo.country, ppUSD) !== -1) {

   $(".paymentmethod-pp").remove();
   $(".paymentmethod-pp-usd").show();

} else {

   $(".paymentmethod-pp").show();
   $(".paymentmethod-pp-usd").remove();

}

// Show any extra local payment methods, or remove them if not needed var extrapaymentmethods = {

   'amazon'     : ['US'],
   'bpay'       : ['AU'],
   'ideal'      : ['NL'],
   'yandex'     : ['RU'],
   'webmoney'   : ['RU'],
   'dd'         : ['AT', 'DE', 'ES', 'NL'],
   'enets'      : ['SG'],
   'sofort'     : [],
   'bt'         : ['AR', 'BR', 'CL', 'CO'],      // Bank Transfer (Astropay)
   'cash'       : ['AR', 'BR', 'CO', 'MX', 'UY'] // "Cash" methods (Astropay)

};

// Methods with different labels per country if (Geo.country === 'AR') {

   $('.paymentmethod-bt button, button.paymentmethod-bt').html('Santander');

} if (Geo.country === 'CO') {

   $('.paymentmethod-bt button, button.paymentmethod-bt').html('PSE Pagos');

} if (Geo.country === 'UY') {

   $('.paymentmethod-cash button, button.paymentmethod-cash').html('RedPagos');

} if (Geo.country === 'CL' && mw.config.get('wgUserLanguage') == 'es') {

   $('.paymentmethod-bt button, button.paymentmethod-bt').html('Trans. bancaria');

}

for (var method in extrapaymentmethods) {

   var $methodbutton = $('.paymentmethod-' + method);
   if ( $.inArray(Geo.country, extrapaymentmethods[method]) !== -1 ) { // country is in the list
       $methodbutton.show();
   } else {
       $methodbutton.remove();
   }

}

       checkPaymentOutages();
       // If there are no recurring payment methods available, disable the "monthly" option
       if ( !$('#{{{banner}}}-form *[class^="paymentmethod-"]:not(.no-monthly)').length ) {
           $('#frequency_monthly').prop('disabled', 'disabled');
       }
       // Set the form fields
       $("input[name='country']").val(Geo.country);
       $("input[name='currency_code']").val(currency);
       $("input[name='language']").val(language);
       $("input[name='return_to']").val( encodeURI('Special:LandingCheck?basic=true&landing_page=Thank_You&uselang=' + mw.config.get('wgUserLanguage')) );
       // Handle pressing Enter on "Other" field
       $(document).on('keydown', 'input[name="amountGiven"]', function(e) {
           if (e.keyCode == 13) {
               e.preventDefault();
               $('.paymentmethod-options button, .frbanner-submit button').filter(':visible').first().click();
               return false;
           }
       });
   });

}); </script> <script> /**

* Localize amount options in banner forms.
*
* Dependencies: FR2013/Resources/Country2Currency.js
*               FR2013/Resources/CurrencyLocalize.js
*/

$(document).ready( function () {

   var currency = getCurrency(Geo.country);
   var language = mw.config.get('wgUserLanguage');
   // do fun things to localize currency in the banner and form
   $("input[name='amount']").each(function(index){
       var id = $(this).attr("id");
       var $label = $("label[for='" + id + "']");
       var amount = convertAsk($(this).val(), currency, Geo.country);
       $(this).val(amount);
       $label.html(amount);
       // $label.html(currencyLocalize(currency, amount, language));
   });

}); </script>

<script> /** Provides alterImpressionData hook for CentralNotice

*  This info will be sent back with Special:RecordImpression
*/

mediaWiki.centralNotice.bannerData.alterImpressionData = function( impressionData ) {

   // Returning true from this function indicates the banner was shown
   if (mediaWiki.centralNotice.bannerData.hideReason) {
       impressionData.reason = mediaWiki.centralNotice.bannerData.hideReason;
   }
   if (mediaWiki.centralNotice.bannerData.cookieCount) {
       impressionData.banner_count = mediaWiki.centralNotice.bannerData.cookieCount;
   }
   
   return !mediaWiki.centralNotice.bannerData.hideResult;

};

var fundraisingBanner = {};

fundraisingBanner.addSpace = function() {

   if ( $('#{{{banner}}}').is(':visible') ) {
       /* add space for the banner, and extra px if given below. called on load and window resize */
       var extra = 0;
       var bannerHeight = $('#frbanner-main').height();
       $('#mw-panel').css('top', bannerHeight+extra);
       $('#mw-head').css('top', bannerHeight+extra);
       $('#mw-page-base').css('margin-top', bannerHeight+extra);
   }

};

fundraisingBanner.show = function() {

   $('body').prepend($('#centralNotice'));
   $('#{{{banner}}}').css('display', 'block');
   fundraisingBanner.addSpace();
   setTimeout(function (){ fundraisingBanner.addSpace(); }, 100);
   setTimeout(function (){ fundraisingBanner.addSpace(); }, 500);
   setTimeout(function (){ fundraisingBanner.addSpace(); }, 1000);
   setTimeout(function (){ fundraisingBanner.addSpace(); }, 5000);
   $(window).resize(function() {
       fundraisingBanner.addSpace();
   });

};

fundraisingBanner.hide = function() {

   /* hide the banner, and remove the extra space which was added for it */
   mw.centralNotice.hideBanner();
   $('#{{{banner}}}').hide();
   $('#mw-panel').css('top', '0px');
   $('#mw-head').css('top', '0px');
   $('#mw-page-base').css('margin-top', '0');
   return false;

};

fundraisingBanner.postReminderForm = function() {

   // Create the iframe for the form and use it as the form's target
   var frameName = "remindFrame";
   var $form = $(".frbanner-email-reminder-form form");
   if ($("iframe[name=" + frameName + "]").length == 0) {
       var $iframe = $('<iframe style="display: none;" name="' + frameName + '"></iframe>');
       $form.attr("target", $iframe.attr("name"));
       $form.after($iframe);
   }
   $form[0].submit();

};

fundraisingBanner.getCurrentDate = function() {

   var today = new Date();
   var dd = today.getDate();
   var mm = today.getMonth()+1; //January is 0!
   var yyyy = today.getFullYear();
   if(dd<10) {
       dd='0'+dd;
   }
   if(mm<10) {
       mm='0'+mm;
   }
   today = mm+'/'+dd+'/'+yyyy;
   return today;

};

fundraisingBanner.initReminderForm = function() {

   $(".frbanner-email-reminder-form input[name=rml_country]").val(Geo.country);
   $(".frbanner-email-reminder-form input[name=rml_language]").val(mw.config.get('wgUserLanguage'));
   $(".frbanner-email-reminder-form input[name=rml_submitDate]").val(fundraisingBanner.getCurrentDate());
   $(".frbanner-email-reminder-form input[name=rml_segment]").val(Math.floor((Math.random() * 100) + 1));
   $(".frbanner-email-reminder-link").click(function() {
       $('.frbanner-email-reminder').toggle();
       $('#control_EMAIL').focus();
   });
   $(".frbanner-email-reminder-form button").on("click", function() {
       if ( mw.util.validateEmail( $(".frbanner-email-reminder-form form input[name='Email']").val() ) ) {
           fundraisingBanner.postReminderForm();
           $(".frbanner-email-reminder-form form").hide();
           $(".frbanner-email-reminder-done").show();
           $(".frbanner-email-reminder").delay(2000).fadeOut(1500);
           mw.centralNotice.hideBanner(); // Hide future banners for 7 days
           return false;
       } else {
           $(".frbanner-email-reminder-form form input[name='Email']").addClass("error");
           $(".frbanner-email-reminder-form #errorMessageContainerId").show();
           $('#control_EMAIL').focus();
           return false;
       }
   });

};

fundraisingBanner.addNag = function() {

   var nagHoverTimeout;
   var bannerHeight = $('#frbanner-main').height();
   $(window).scroll(function() {
       if ($(window).scrollTop() <= bannerHeight) {
           $('#frbanner-nag').finish();
           $('#frbanner-nag').hide();
       } else {
           setTimeout(function(){
               if ( !$('.frbanner' ).hasClass('nag-reveal') && $(window).scrollTop() > bannerHeight) {
                   $('#frbanner-nag').slideDown();
               }
           }, 1500);
       }
   });
   $('#frbanner-nag').mouseenter(function() {
       nagHoverTimeout = window.setTimeout(function() {
           $('#frbanner-nag').hide();
           $('.frbanner').addClass('nag-reveal');
       }, 2000);
   });
   $('#frbanner-nag').mouseleave(function() {
       window.clearTimeout(nagHoverTimeout);
   });
   $('.frbanner').mouseleave(function(e) {
       if ( $('.frbanner').hasClass('nag-reveal') ) {
           $('.frbanner').removeClass('nag-reveal');
           $('#frbanner-nag').show();
       }
   });
   $('#frbanner-nag').click(function() {
       $('#frbanner-nag').remove();
       window.clearTimeout(nagHoverTimeout);
       window.scrollTo(0,0);
   });
   $('.frbanner-nag-close').click(function(e) {
       $('#frbanner-nag').remove();
       e.stopPropagation();
   });

};

fundraisingBanner.countryNames = {

   'US' : 'the U.S.',
   'CA' : 'Canada',
   'GB' : 'the UK',
   'IE' : 'Ireland',
   'AU' : 'Australia',
   'NZ' : 'New Zealand',
   'IT' : 'Italy',
   'FR' : 'France'

};

$(document).ready(function() {

   $('.frbanner-replace-country').text( fundraisingBanner.countryNames[Geo.country] );
   fundraisingBanner.initReminderForm();
   $(".frbanner-frequency label").click(function() {
       $(".frbanner-frequency label").removeClass("checked");
       $(this).addClass("checked");
   });
   $(".frbanner-amounts .frbanner-btn").click(function() {
       $(".frbanner-amounts .frbanner-btn").removeClass("checked");
       $(this).addClass("checked");
       $('#input_amount_other_box').val(); // Clear "other" box
   });
   $("#amount_other").click(function() {
       document.getElementById("input_amount_other").checked = true;
       $("#input_amount_other_box").focus();
   });
   // Block typing symbols in input field, otherwise Safari allows them and then chokes
   // https://phabricator.wikimedia.org/T118741
   document.getElementById('input_amount_other_box').onkeypress = function(e) {
       var chr = String.fromCharCode(e.which);
       if ("$£€¥".indexOf(chr) !== -1) {
           return false;
       }
   };
   /* --- Code for legal text --- */
   $('.frbanner').mouseenter( function() {
       $('#frbanner-legal').show();
   });
   $('.frbanner').mouseleave( function() {
       $('#frbanner-legal').hide();
   });
   /* --- End code for legal text --- */
   /* Hide banner outside of main namespace (and Main Page, for sites where that isn't in main namespace) */
   if ( mw.config.get('wgNamespaceNumber') > 0 && !mw.config.get('wgIsMainPage') ) {
       mw.centralNotice.bannerData.hideResult = true;
       mw.centralNotice.bannerData.hideReason = 'namespace';
   }
   if (!mw.centralNotice.bannerData.hideResult) {
       fundraisingBanner.show();
       fundraisingBanner.addNag();
   }

}); </script>