r96111 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r96110‎ | r96111 | r96112 >
Date:15:59, 2 September 2011
Author:awjrichards
Status:reverted
Tags:
Comment:
MFT r88027
Modified paths:
  • /branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms (modified) (history)
  • /branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/RapidHtml.php (modified) (history)
  • /branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/css/TwoStepTwoColumnLetter3.css (modified) (history)
  • /branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/html/globalcollect_test.html (added) (history)
  • /branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/html/globalcollect_test_2.html (added) (history)
  • /branches/fundraising/deployment/DonationInterface/payflowpro_gateway/payflowpro_gateway.alias.php (modified) (history)

Diff [purge]

Index: branches/fundraising/deployment/DonationInterface/payflowpro_gateway/payflowpro_gateway.alias.php
@@ -1,8 +1,13 @@
22 <?php
33
4 -$aliases = array();
 4+$specialPageAliases = array();
55
66 /** English */
7 -$aliases['en'] = array(
 7+$specialPageAliases['en'] = array(
88 'PayflowProGateway' => array( 'PayflowProGateway' ),
99 );
 10+
 11+/**
 12+ * For backwards compatibility with MediaWiki 1.15 and earlier.
 13+ */
 14+$aliases =& $specialPageAliases;
\ No newline at end of file
Property changes on: branches/fundraising/deployment/DonationInterface/payflowpro_gateway/payflowpro_gateway.alias.php
___________________________________________________________________
Added: svn:mergeinfo
1015 Merged /trunk/extensions/DonationInterface/payflowpro_gateway/payflowpro_gateway.alias.php:r75657-96110
Index: branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/css/TwoStepTwoColumnLetter3.css
@@ -4,6 +4,9 @@
55 border-collapse:collapse;
66 width: 394px;
77 }
 8+table#donation_amount td {
 9+ border:1px solid #AAAAAA;
 10+}
811 table#donation_amount td.amount_header {
912 background-color:#eef2f7;
1013 font-size:90%;
@@ -25,8 +28,9 @@
2629 line-height: 120%;
2730 }
2831 #payflow-table-donor td.label, #payflow-table-comment td.label, #payflow-table-cc td.label {
29 - padding-right:0.5em;
 32+ padding-right: 0.5em;
3033 width: 100px;
 34+ white-space: nowrap;
3135 }
3236 input#city {
3337 width: 130px;
@@ -34,7 +38,9 @@
3539 input#zip {
3640 width: 55px;
3741 }
38 -
 42+input.hasplaceholder {
 43+ color: rgb(153, 153, 153);
 44+}
3945 .payflow-cc-form-section {
4046 float: none;
4147 margin-right: 0em;
Index: branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/html/globalcollect_test.html
@@ -0,0 +1,240 @@
 2+<link rel="stylesheet" href="@script_path/skins/vector/main-ltr.css" />
 3+<link rel="stylesheet" href="@script_path/extensions/DonationInterface/payflowpro_gateway/forms/css/TwoStepTwoColumnLetter3.css" />
 4+<link rel="stylesheet" href="@script_path/extensions/DonationInterface/payflowpro_gateway/payflowpro_gateway.css" />
 5+<style>
 6+ .step2hidden{ display:none; }
 7+ #footer-places { display:none; }
 8+</style>
 9+
 10+<script type="text/javascript">
 11+function formCheck( ccform ) {
 12+ var msg = [ 'EmailAdd', 'Fname', 'Lname', 'Street', 'City', 'Zip' ];
 13+
 14+ var fields = ["emailAdd","fname","lname","street","city","zip" ],
 15+ numFields = fields.length,
 16+ i,
 17+ output = '',
 18+ currField = '';
 19+
 20+ for( i = 0; i < numFields; i++ ) {
 21+ if( document.getElementById( fields[i] ).value == '' ) {
 22+ currField = window['payflowproGatewayErrorMsg'+ msg[i]];
 23+ output += payflowproGatewayErrorMsgJs + ' ' + currField + '.\r\n';
 24+ }
 25+ }
 26+
 27+ if (document.getElementById('fname').value == '$first') {
 28+ output += payflowproGatewayErrorMsgJs + ' first name.\r\n';
 29+ }
 30+ if (document.getElementById('lname').value == '$last') {
 31+ output += payflowproGatewayErrorMsgJs + ' last name.\r\n';
 32+ }
 33+ if (document.getElementById('street').value == '$street') {
 34+ output += payflowproGatewayErrorMsgJs + ' street address.\r\n';
 35+ }
 36+ if (document.getElementById('city').value == '$city') {
 37+ output += payflowproGatewayErrorMsgJs + ' city.\r\n';
 38+ }
 39+ if (document.getElementById('zip').value == '$zip') {
 40+ output += payflowproGatewayErrorMsgJs + ' zip code.\r\n';
 41+ }
 42+
 43+ var stateField = document.getElementById( 'state' );
 44+ if( stateField.options[stateField.selectedIndex].value == '' ) {
 45+ output += payflowproGatewayErrorMsgJs + ' ' + window['payflowproGatewayErrorMsgState'] + '.\r\n';
 46+ }
 47+
 48+ // validate email address
 49+ var apos = document.payment.emailAdd.value.indexOf("@");
 50+ var dotpos = document.payment.emailAdd.value.lastIndexOf(".");
 51+
 52+ if( apos < 1 || dotpos-apos < 2 ) {
 53+ output += payflowproGatewayErrorMsgEmail;
 54+ }
 55+
 56+ if( output ) {
 57+ alert( output );
 58+ return false;
 59+ }
 60+}
 61+</script>
 62+
 63+<table width="100%" cellspacing="0" cellpadding="0" border="0">
 64+ <tr>
 65+ <td id="appeal" valign="top">
 66+ <div style="margin:9em 0;">
 67+ <table class="quote"
 68+ style="margin: auto; border-collapse: collapse; border-style: none; background-color: transparent; width: auto; margin: 10px auto;">
 69+ <tr>
 70+ <td width="20" valign="top"
 71+ style="color: rgb(178, 183, 242); font-size: 40px; font-family: &#39;Times New Roman&#39;,serif; font-weight: bold; text-align: left; padding: 10px;">
 72+ “
 73+ </td>
 74+ <td valign="top" style="padding: 4px 5px; font-size: 26px; line-height: 30px;">Imagine a
 75+ world in which every single person on the planet has free access to the sum of all
 76+ human knowledge.
 77+ </td>
 78+ <td width="20" valign="bottom"
 79+ style="color: rgb(178, 183, 242); font-size: 40px; font-family: &#39;Times New Roman&#39;,serif; font-weight: bold; text-align: right; padding: 10px;">
 80+ ”
 81+ </td>
 82+ </tr>
 83+ <tr>
 84+ <td style="padding-right: 4%;" colspan="3">
 85+ <p style="font-size: 18px; text-align: right;"><cite
 86+ style="font-style: normal;">&mdash;Jimmy Wales, Founder of Wikipedia</cite>
 87+ </p>
 88+ </td>
 89+ </tr>
 90+ </table>
 91+ </div>
 92+ </td>
 93+ <td id="donate" valign="top">
 94+ <noscript>
 95+ <div id="noscript"><p id="noscript-msg">It appears that you do not have JavaScript enabled, or
 96+ your browser does not support it.
 97+ In order to provide a safe, secure and pleasant experience, our donation form requires
 98+ JavaScript.</p>
 99+
 100+ <p id="noscript-redirect-msg">If you cannot or do not wish to enable JavaScript, you may
 101+ still contribute by visiting:</p>
 102+
 103+ <p id="noscript-redirect-link"><a href="http://wikimediafoundation.org/wiki/DonateNonJS/en">http://wikimediafoundation.org/wiki/DonateNonJS/en</a>
 104+ </p></div>
 105+ </noscript>
 106+ <h2 id="donate-head">Please complete your donation below ...</h2>
 107+
 108+ <p class='creditcard-error-msg'>#general#retryMsg</p>
 109+
 110+ <form name="payment" method="post"
 111+ action="@action"
 112+ onsubmit="return formCheck(this)" autocomplete="off">
 113+ <div id="payflowpro_gateway-personal-info">
 114+ <table id="payflow-table-donor">
 115+ <tr>
 116+ <td colspan="2">
 117+ <table cellspacing="0" cellpadding="4" border="1" id="donation_amount">
 118+ <tr>
 119+ <td class="amount_header">Description</td>
 120+ <td class="amount_header" style="text-align:right;width:75px;">Amount
 121+ </td>
 122+
 123+ </tr>
 124+ <tr>
 125+ <td class="amount_data">Donation</td>
 126+ <td class="amount_data" style="text-align:right;width:75px;">$ @amount<input
 127+ type="hidden" value="@amount" name="amount"/></td>
 128+
 129+ </tr>
 130+ </table>
 131+ </td>
 132+ </tr>
 133+ <tr class="step2hidden">
 134+ <td colspan="2"><h3 class="cc_header">Billing information<img
 135+ src="@script_path/extensions/DonationInterface/payflowpro_gateway/includes/padlock.gif"
 136+ style="vertical-align:baseline;margin-left:8px;"/></h3></td>
 137+ </tr>
 138+ <tr>
 139+ <td class="label"></td>
 140+ <td><img src="@script_path/extensions/DonationInterface/payflowpro_gateway/includes/credit_card_logos.gif" style="padding-top: 10px;"/>
 141+ </td>
 142+ </tr>
 143+ <tr>
 144+ <td colspan="2"><span class="creditcard-error-msg">#card#card_num</span></td>
 145+ </tr>
 146+ <tr>
 147+ <td class="label"><label for="card_num">Card number</label></td>
 148+ <td><input name="card_num" size="30" value="@card_num" type="text" maxlength="100"
 149+ id="card_num" class="fullwidth" autocomplete="off"/></td>
 150+ </tr>
 151+ <tr>
 152+ <td class="label"><label for="expiration">Expiration date</label></td>
 153+ <td><select name="mos" id="expiration">
 154+ <option value="01">1 (January)</option>
 155+ <option value="02">2 (February)</option>
 156+ <option value="03">3 (March)</option>
 157+ <option value="04">4 (April)</option>
 158+ <option value="05">5 (May)</option>
 159+ <option value="06">6 (June)</option>
 160+ <option value="07">7 (July)</option>
 161+ <option value="08">8 (August)</option>
 162+ <option value="09">9 (September)</option>
 163+ <option value="10">10 (October)</option>
 164+ <option value="11">11 (November)</option>
 165+ <option value="12">12 (December)</option>
 166+ </select> / <select name="year" id="year">
 167+ <option value="2011">2011</option>
 168+ <option value="2012">2012</option>
 169+ <option value="2013">2013</option>
 170+ <option value="2014">2014</option>
 171+ <option value="2015">2015</option>
 172+ <option value="2016">2016</option>
 173+ <option value="2017">2017</option>
 174+ <option value="2018">2018</option>
 175+ <option value="2019">2019</option>
 176+ <option value="2020">2020</option>
 177+ <option value="2021">2021</option>
 178+ </select></td>
 179+ </tr>
 180+ <tr>
 181+ <td colspan=2><span class="creditcard-error-msg">#cvv</span></td>
 182+ <tr>
 183+ <td class="label"><label for="cvv">Security code</label></td>
 184+ <td><input name="cvv" size="5" value="@cvv" type="text" maxlength="10" id="cvv"
 185+ autocomplete="off"/> <a href="javascript:PopupCVV();">Where is this?</a>
 186+ </td>
 187+ </tr>
 188+ <tr>
 189+ <td class="label"></td>
 190+ <td>
 191+ <div id="mw-donate-submit-button"><input style="margin-top:19px;"
 192+ src="@script_path/extensions/DonationInterface/payflowpro_gateway/includes/submit-donation-button.png" alt="Submit donation" type="image"/></div>
 193+ <div class="mw-donate-submessage" id="payflowpro_gateway-donate-submessage"><img src="@script_path/extensions/DonationInterface/payflowpro_gateway/includes/padlock.gif" style="vertical-align:baseline;margin-right:4px;">Your credit / debit card will be securely processed.</div>
 194+ </td>
 195+ </tr>
 196+ </table>
 197+ </div>
 198+ <input type="hidden" name="emailAdd" size="30" value="@emailAdd" onfocus="clearField( this, &#039;Email address&#039; )" maxlength="64"id="emailAdd" class="fullwidth"/>
 199+ <input type="hidden" name="fname" size="30" value="@fname"onfocus="clearField( this, &#039;First name&#039; )" maxlength="25" class="required" id="fname"/>
 200+ <input type="hidden" name="lname" size="30" value="@lname" onfocus="clearField( this, &#039;Last name&#039; )" maxlength="25" id="lname"/>
 201+ <input type="hidden" name="street" size="30" value="@street" onfocus="clearField( this, &#039;Street&#039; )" maxlength="100" id="street" class="fullwidth"/>
 202+ <input type="hidden" name="city" size="18" value="@city" onfocus="clearField( this, &#039;City&#039; )" maxlength="40" id="city"/>
 203+ <input type="hidden" name="state" size="18" value="@state" maxlength="40" id="state"/>
 204+ <input type="hidden" name="zip" size="5" value="@zip" onfocus="clearField( this, &#039;Zip code&#039; )"maxlength="10" id="zip"/>
 205+ <input type="hidden" name="country" value="@country"/>
 206+
 207+ <input type="hidden" value="@utm_source" name="utm_source"/>
 208+ <input type="hidden" value="@utm_medium" name="utm_medium"/>
 209+ <input type="hidden" value="@utm_campaign" name="utm_campaign"/>
 210+ <input type="hidden" value="@language" name="language"/>
 211+ <input type="hidden" value="@referrer" name="referrer"/>
 212+ <input type="hidden" value="@comment" name="comment"/>
 213+ <input type="hidden" value="@comment-option" name="comment-option"/>
 214+ <input type="hidden" value="@email-opt" name="email-opt"/>
 215+ <input type="hidden" value="processed" name="payment_method"/>
 216+ <input type="hidden" value="@token" name="token"/>
 217+ <input type="hidden" value="@order_id" name="order_id"/>
 218+ <input type="hidden" value="@numAttempt" name="numAttempt"/>
 219+ <input type="hidden" value="@contribution_tracking_id" name="contribution_tracking_id"/>
 220+ <input type="hidden" value="@data_hash" name="data_hash"/>
 221+ <input type="hidden" value="@action" name="action"/>
 222+ <input type="hidden" value="@owa_session" name="owa_session"/>
 223+ <input type="hidden" value="@owa_ref" name="owa_ref"/>
 224+ </form>
 225+ <div class="payflow-cc-form-section" id="payflowpro_gateway-donate-addl-info">
 226+ <div id="payflowpro_gateway-donate-addl-info-text">
 227+ <div style="text-align:center;">* * *</div>
 228+ <div class="">We do not store your credit card information, and your personal data is
 229+ subject to our <a target="_new" href="http://wikimediafoundation.org/wiki/Donor_policy">donor privacy policy</a>.
 230+ </div>
 231+ <div class="">There are <a target="_new"
 232+ href="http://wikimediafoundation.org/wiki/Ways_to_Give/en">other
 233+ ways to give</a>, including by check.
 234+ </div>
 235+ <div class="">Questions or comments? Contact: <a href="mailto:donate@wikimedia.org">donate@wikimedia.org</a>
 236+ </div>
 237+ </div>
 238+ </div>
 239+ </td>
 240+ </tr>
 241+</table>
\ No newline at end of file
Property changes on: branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/html/globalcollect_test.html
___________________________________________________________________
Added: svn:eol-style
1242 + native
Index: branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/html/globalcollect_test_2.html
@@ -0,0 +1,369 @@
 2+<link rel="stylesheet" href="@script_path/skins/vector/main-ltr.css" />
 3+<link rel="stylesheet" href="@script_path/extensions/DonationInterface/payflowpro_gateway/forms/css/TwoStepTwoColumnLetter3.css" />
 4+<link rel="stylesheet" href="@script_path/extensions/DonationInterface/payflowpro_gateway/payflowpro_gateway.css" />
 5+<style>
 6+ .step2hidden{ display:none; }
 7+ #footer-places { display:none; }
 8+</style>
 9+<script type="text/javascript">
 10+//make HTML5 placeholders work in non supportive browsers
 11+$("input[placeholder]").each(function() {
 12+ if($(this).val()=="") {
 13+ $(this).addClass('hasplaceholder');
 14+ $(this).val($(this).attr("placeholder"));
 15+ $(this).focus(function() {
 16+ if($(this).val()==$(this).attr("placeholder")) $(this).val("");
 17+ $(this).removeClass('hasplaceholder');
 18+ });
 19+ $(this).blur(function() {
 20+ if($(this).val()=="") {
 21+ $(this).addClass('hasplaceholder');
 22+ $(this).val($(this).attr("placeholder"));
 23+ }
 24+ });
 25+ }
 26+});
 27+
 28+$('form').submit(function(evt){
 29+ $('input[placeholder]').each(function(){
 30+ if($(this).attr("placeholder") == $(this).val()) {$(this).val('');}
 31+ });
 32+});
 33+
 34+function formCheck( ccform ) {
 35+ var msg = [ 'EmailAdd', 'Fname', 'Lname', 'Street', 'City', 'Zip' ];
 36+
 37+ var fields = ["emailAdd","fname","lname","street","city","zip" ],
 38+ numFields = fields.length,
 39+ i,
 40+ output = '',
 41+ currField = '';
 42+
 43+ for( i = 0; i < numFields; i++ ) {
 44+ if( document.getElementById( fields[i] ).value == '' ) {
 45+ currField = window['payflowproGatewayErrorMsg'+ msg[i]];
 46+ output += payflowproGatewayErrorMsgJs + ' ' + currField + '.\r\n';
 47+ }
 48+ }
 49+
 50+ if (document.getElementById('fname').value == '$first') {
 51+ output += payflowproGatewayErrorMsgJs + ' first name.\r\n';
 52+ }
 53+ if (document.getElementById('lname').value == '$last') {
 54+ output += payflowproGatewayErrorMsgJs + ' last name.\r\n';
 55+ }
 56+ if (document.getElementById('street').value == '$street') {
 57+ output += payflowproGatewayErrorMsgJs + ' street address.\r\n';
 58+ }
 59+ if (document.getElementById('city').value == '$city') {
 60+ output += payflowproGatewayErrorMsgJs + ' city.\r\n';
 61+ }
 62+ if (document.getElementById('zip').value == '$zip') {
 63+ output += payflowproGatewayErrorMsgJs + ' zip code.\r\n';
 64+ }
 65+
 66+ var stateField = document.getElementById( 'state' );
 67+ if( stateField.options[stateField.selectedIndex].value == '' ) {
 68+ output += payflowproGatewayErrorMsgJs + ' ' + window['payflowproGatewayErrorMsgState'] + '.\r\n';
 69+ }
 70+
 71+ // validate email address
 72+ var apos = document.payment.emailAdd.value.indexOf("@");
 73+ var dotpos = document.payment.emailAdd.value.lastIndexOf(".");
 74+
 75+ if( apos < 1 || dotpos-apos < 2 ) {
 76+ output += payflowproGatewayErrorMsgEmail;
 77+ }
 78+
 79+ if( output ) {
 80+ alert( output );
 81+ return false;
 82+ }
 83+}
 84+</script>
 85+
 86+
 87+<table width="100%" cellspacing="0" cellpadding="0" border="0">
 88+ <tr>
 89+ <td id="appeal" valign="top">
 90+ <div style="margin:9em 0;">
 91+ <table class="quote"
 92+ style="margin: auto; border-collapse: collapse; border-style: none; background-color: transparent; width: auto; margin: 10px auto;">
 93+ <tr>
 94+ <td width="20" valign="top"
 95+ style="color: rgb(178, 183, 242); font-size: 40px; font-family: &#39;Times New Roman&#39;,serif; font-weight: bold; text-align: left; padding: 10px;">
 96+ “
 97+ </td>
 98+ <td valign="top" style="padding: 4px 5px; font-size: 26px; line-height: 30px;">Imagine a
 99+ world in which every single person on the planet has free access to the sum of all
 100+ human knowledge.
 101+ </td>
 102+ <td width="20" valign="bottom"
 103+ style="color: rgb(178, 183, 242); font-size: 40px; font-family: &#39;Times New Roman&#39;,serif; font-weight: bold; text-align: right; padding: 10px;">
 104+ ”
 105+ </td>
 106+ </tr>
 107+ <tr>
 108+ <td style="padding-right: 4%;" colspan="3">
 109+ <p style="font-size: 18px; text-align: right;"><cite
 110+ style="font-style: normal;">&mdash;Jimmy Wales, Founder of Wikipedia</cite>
 111+ </p>
 112+ </td>
 113+ </tr>
 114+ </table>
 115+ </div>
 116+ </td>
 117+ <td id="donate" valign="top">
 118+ <noscript>
 119+ <div id="noscript"><p id="noscript-msg">It appears that you do not have JavaScript enabled, or
 120+ your browser does not support it.
 121+ In order to provide a safe, secure and pleasant experience, our donation form requires
 122+ JavaScript.</p>
 123+
 124+ <p id="noscript-redirect-msg">If you cannot or do not wish to enable JavaScript, you may
 125+ still contribute by visiting:</p>
 126+
 127+ <p id="noscript-redirect-link"><a href="http://wikimediafoundation.org/wiki/DonateNonJS/en">http://wikimediafoundation.org/wiki/DonateNonJS/en</a>
 128+ </p></div>
 129+ </noscript>
 130+ <h2 id="donate-head">Please complete your donation below ...</h2>
 131+
 132+ <p class='creditcard-error-msg'>#general#retryMsg</p>
 133+
 134+ <form name="payment" method="post"
 135+ action="@action"
 136+ onsubmit="return formCheck(this)" autocomplete="off">
 137+ <div id="payflowpro_gateway-personal-info">
 138+ <table id="payflow-table-donor">
 139+ <tr>
 140+ <td colspan="2"><span class="creditcard-error-msg">#amount</span></td>
 141+ </tr>
 142+ <tr>
 143+ <td colspan="2">
 144+ <table id="donation_amount" cellspacing="0" cellpadding="4" border="1">
 145+ <tbody>
 146+ <tr>
 147+ <td class="amount_header">Description</td>
 148+ <td class="amount_header" style="text-align:right;width:75px;">Amount</td>
 149+ </tr>
 150+ <tr>
 151+ <td class="amount_data">Donation</td>
 152+ <td class="amount_data" style="text-align:right;width:75px;">
 153+ $ @amount
 154+ <input type="hidden" name="amount" value="@amount" />
 155+ <input type="hidden" name="currency_code" value="@currency_code" />
 156+ </td>
 157+ </tr>
 158+ </tbody>
 159+ </table>
 160+ </td>
 161+ </tr>
 162+ <tr>
 163+ <td colspan="2">
 164+ <h3 class="cc_header">
 165+ Billing information <img style="vertical-align:baseline;margin-left:8px;" src="@script_path/extensions/DonationInterface/payflowpro_gateway/includes/padlock.gif">
 166+ </h3>
 167+ </td>
 168+ </tr>
 169+ <tr>
 170+ <td class="label"></td>
 171+ <td><img
 172+ src="@script_path/extensions/DonationInterface/payflowpro_gateway/includes/credit_card_logos.gif"/>
 173+ </td>
 174+ </tr>
 175+ <tr>
 176+ <td colspan=2><span class="creditcard-error-msg">#card#card_num</span></td>
 177+ <tr>
 178+ <tr>
 179+ <td class="label"><label for="card_num">Card number</label></td>
 180+ <td><input name="card_num" size="30" value="@card_num" type="text" maxlength="100"
 181+ id="card_num" class="fullwidth" autocomplete="off"/></td>
 182+ </tr>
 183+ <tr>
 184+ <td class="label"><label for="expiration">Expiration date</label></td>
 185+ <td><select name="mos" id="expiration">
 186+ <option value="01">1 (January)</option>
 187+ <option value="02">2 (February)</option>
 188+ <option value="03">3 (March)</option>
 189+ <option value="04">4 (April)</option>
 190+ <option value="05">5 (May)</option>
 191+ <option value="06">6 (June)</option>
 192+ <option value="07">7 (July)</option>
 193+ <option value="08">8 (August)</option>
 194+ <option value="09">9 (September)</option>
 195+ <option value="10">10 (October)</option>
 196+ <option value="11">11 (November)</option>
 197+ <option value="12">12 (December)</option>
 198+ </select> / <select name="year" id="year">
 199+ <option value="2011">2011</option>
 200+ <option value="2012">2012</option>
 201+ <option value="2013">2013</option>
 202+ <option value="2014">2014</option>
 203+ <option value="2015">2015</option>
 204+ <option value="2016">2016</option>
 205+ <option value="2017">2017</option>
 206+ <option value="2018">2018</option>
 207+ <option value="2019">2019</option>
 208+ <option value="2020">2020</option>
 209+ <option value="2021">2021</option>
 210+ </select></td>
 211+ </tr>
 212+ <tr>
 213+ <td colspan=2><span class="creditcard-error-msg">#cvv</span></td>
 214+ <tr>
 215+ <tr>
 216+ <td class="label"><label for="cvv">Security code</label></td>
 217+ <td><input name="cvv" size="5" value="@cvv" type="text" maxlength="10" id="cvv"
 218+ autocomplete="off"/> <a href="javascript:PopupCVV();">Where is this?</a>
 219+ </td>
 220+ </tr>
 221+ <tr>
 222+ <td colspan=2><span class="creditcard-error-msg">#fname#lname</span></td>
 223+ </tr>
 224+ <tr>
 225+ <td class="label"><label for="fname">Name</label></td>
 226+ <td>
 227+ <input name="fname" size="30" value="@fname" type="text"
 228+ placeholder="First name" maxlength="25" class="required" id="fname"/>
 229+ <input name="lname" size="30" value="@lname" type="text"
 230+ placeholder="Last name" maxlength="25" id="lname"/>
 231+ </td>
 232+ </tr>
 233+ <tr>
 234+ <td colspan=2><span class="creditcard-error-msg">#street</span></td>
 235+ </tr>
 236+ <tr>
 237+ <td class="label"><label for="street">Address</label></td>
 238+ <td>
 239+ <input name="street" size="30" value="@street" type="text"
 240+ placeholder="Street" maxlength="100" id="street" class="fullwidth"/>
 241+ </td>
 242+ </tr>
 243+ <tr>
 244+ <td colspan=2><span class="creditcard-error-msg">#state#zip</span></td>
 245+ </tr>
 246+ <tr>
 247+ <td class="label"></td>
 248+ <td>
 249+ <input name="city" size="18" value="@city" type="text"
 250+ placeholder="City" maxlength="40" id="city"/>
 251+ <select name="state" id="state">
 252+ <option value=""/>
 253+ <option value="AK">AK</option>
 254+ <option value="AL">AL</option>
 255+ <option value="AR">AR</option>
 256+ <option value="AZ">AZ</option>
 257+ <option value="CA">CA</option>
 258+ <option value="CO">CO</option>
 259+ <option value="CT">CT</option>
 260+ <option value="DC">DC</option>
 261+ <option value="DE">DE</option>
 262+ <option value="FL">FL</option>
 263+ <option value="GA">GA</option>
 264+ <option value="HI">HI</option>
 265+ <option value="IA">IA</option>
 266+ <option value="ID">ID</option>
 267+ <option value="IL">IL</option>
 268+ <option value="IN">IN</option>
 269+ <option value="KS">KS</option>
 270+ <option value="KY">KY</option>
 271+ <option value="LA">LA</option>
 272+ <option value="MA">MA</option>
 273+ <option value="MD">MD</option>
 274+ <option value="ME">ME</option>
 275+ <option value="MI">MI</option>
 276+ <option value="MN">MN</option>
 277+ <option value="MO">MO</option>
 278+ <option value="MS">MS</option>
 279+ <option value="MT">MT</option>
 280+ <option value="NC">NC</option>
 281+ <option value="ND">ND</option>
 282+ <option value="NE">NE</option>
 283+ <option value="NH">NH</option>
 284+ <option value="NJ">NJ</option>
 285+ <option value="NM">NM</option>
 286+ <option value="NV">NV</option>
 287+ <option value="NY">NY</option>
 288+ <option value="OH">OH</option>
 289+ <option value="OK">OK</option>
 290+ <option value="OR">OR</option>
 291+ <option value="PA">PA</option>
 292+ <option value="PR">PR</option>
 293+ <option value="RI">RI</option>
 294+ <option value="SC">SC</option>
 295+ <option value="SD">SD</option>
 296+ <option value="TN">TN</option>
 297+ <option value="TX">TX</option>
 298+ <option value="UT">UT</option>
 299+ <option value="VA">VA</option>
 300+ <option value="VT">VT</option>
 301+ <option value="WA">WA</option>
 302+ <option value="WI">WI</option>
 303+ <option value="WV">WV</option>
 304+ <option value="WY">WY</option>
 305+ <option value="AA">AA</option>
 306+ <option value="AE">AE</option>
 307+ <option value="AP">AP</option>
 308+ </select> <input name="zip" size="5" value="@zip" type="text"
 309+ placeholder="Zip" maxlength="10" id="zip"/><input type="hidden"
 310+ value="@country" name="country" />
 311+ </td>
 312+ </tr>
 313+ <tr>
 314+ <td colspan=2><span class="creditcard-error-msg">#emailAdd</span></td>
 315+ </tr>
 316+ <tr>
 317+ <td class="label"><label for="emailAdd">E-mail</label></td>
 318+ <td>
 319+ <input name="emailAdd" size="30" value="@emailAdd" type="text"
 320+ placeholder="Email address" maxlength="64" id="emailAdd" class="fullwidth"/>
 321+ </td>
 322+ </tr>
 323+ <tr>
 324+ <td class="label"></td>
 325+ <td>
 326+ <div id="mw-donate-submit-button">&#160;<br/><input
 327+ src="@script_path/extensions/DonationInterface/payflowpro_gateway/includes/submit-donation-button.png"
 328+ alt="Submit donation" type="image"/></div>
 329+ <div class="mw-donate-submessage" id="payflowpro_gateway-donate-submessage"><img src="@script_path/extensions/DonationInterface/payflowpro_gateway/includes/padlock.gif" style="vertical-align:baseline;margin-right:4px;">Your credit / debit card will be securely processed.</div>
 330+ </td>
 331+ </tr>
 332+ </table>
 333+ </div>
 334+ <input type="hidden" value="@utm_source" name="utm_source"/>
 335+ <input type="hidden" value="@utm_medium" name="utm_medium"/>
 336+ <input type="hidden" value="@utm_campaign" name="utm_campaign"/>
 337+ <input type="hidden" value="@language" name="language"/>
 338+ <input type="hidden" value="@referrer" name="referrer"/>
 339+ <input type="hidden" value="@comment" name="comment"/>
 340+ <input type="hidden" value="@comment-option" name="comment-option"/>
 341+ <input type="hidden" value="@email-opt" name="email-opt"/>
 342+ <input type="hidden" value="@payment_method" name="payment_method"/>
 343+ <input type="hidden" value="@token" name="token"/>
 344+ <input type="hidden" value="@order_id" name="order_id"/>
 345+ <input type="hidden" value="@num_attempt" name="numAttempt"/>
 346+ <input type="hidden" value="@contribution_tracking_id" name="contribution_tracking_id"/>
 347+ <input type="hidden" value="@data_hash" name="data_hash"/>
 348+ <input type="hidden" value="@action" name="action"/>
 349+ <input type="hidden" value="@owa_session" name="owa_session"/>
 350+ <input type="hidden" value="@owa_ref" name="owa_ref"/>
 351+ </form>
 352+ <div class="payflow-cc-form-section" id="payflowpro_gateway-donate-addl-info">
 353+ <div id="payflowpro_gateway-donate-addl-info-text">
 354+ <div style="text-align:center;">* * *</div>
 355+ <div class="">We do not store your credit card information, and your personal data is
 356+ subject to our <a target="_new"
 357+ href="http://wikimediafoundation.org/wiki/Donor_policy">donor privacy
 358+ policy</a>.
 359+ </div>
 360+ <div class="">There are <a target="_new"
 361+ href="http://wikimediafoundation.org/wiki/Ways_to_Give/en">other
 362+ ways to give</a>, including by check.
 363+ </div>
 364+ <div class="">Questions or comments? Contact: <a href="mailto:donate@wikimedia.org">donate@wikimedia.org</a>
 365+ </div>
 366+ </div>
 367+ </div>
 368+ </td>
 369+ </tr>
 370+</table>
\ No newline at end of file
Property changes on: branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/html/globalcollect_test_2.html
___________________________________________________________________
Added: svn:eol-style
1371 + native
Index: branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms/RapidHtml.php
@@ -52,6 +52,10 @@
5353 '@gateway', // => 'payflowpro', // this may need to become dynamic in the future
5454 '@owa_session', // => $wgRequest->getText( 'owa_session', null ),
5555 '@owa_ref', // => $owa_ref,
 56+ // Not actually data tokens, but available to you in html form:
 57+ // @captcha -> the captcha form
 58+ // @script_path -> maps to $wgScriptPath
 59+ // @action -> generate correct form action for this form
5660 );
5761
5862 /**
@@ -77,16 +81,15 @@
7882
7983 public function __construct( &$form_data, &$form_errors ) {
8084 global $wgRequest;
 85+ parent::__construct( $form_data, $form_errors );
8186
82 - parent::__construct( $form_data, $form_errors );
83 -
8487 $this->loadValidateJs();
8588
8689 // set html-escaped filename.
8790 $this->set_html_file_path( htmlspecialchars( $wgRequest->getText( 'ffname', 'default' )));
8891
8992 // fix general form error messages so it's not an array of msgs
90 - if ( count( $form_errors[ 'general' ] )) {
 93+ if ( is_array( $form_errors[ 'general' ] ) && count( $form_errors[ 'general' ] )) {
9194 $general_errors = "";
9295 foreach ( $form_errors[ 'general' ] as $general_error ) {
9396 $general_errors .= "<p class='creditcard'>$general_error</p>";
@@ -118,15 +121,38 @@
119122 * @return string The HTML form with real data in it
120123 */
121124 public function add_data( $html ) {
 125+ global $wgScriptPath;
 126+
 127+ /**
 128+ * This is a hack and should be replaced with something more performant.
 129+ */
 130+ $form = $html;
 131+
 132+ // handle form action
 133+ $form = str_replace( "@action", $this->getNoCacheAction(), $form );
 134+
122135 // replace data
123 - $form = str_replace( $this->data_tokens, $this->form_data, $html );
124 -
 136+ foreach ( $this->data_tokens as $token ) {
 137+ $key = substr( $token, 1, strlen( $token )); //get the token string w/o the '@'
 138+ if ( $key == 'emailAdd' ) $key = 'email';
 139+ if ( $key == 'currency_code' ) $key = 'currency';
 140+ if ( array_key_exists( $key, $this->form_data )) {
 141+ $replace = $this->form_data[ $key ];
 142+ } else {
 143+ $replace = '';
 144+ }
 145+ $form = str_replace( $token, $replace, $form );
 146+ }
 147+
125148 // replace errors
126149 $form = str_replace( $this->error_tokens, $this->form_errors, $form );
127150
128151 // handle captcha
129152 $form = str_replace( "@captcha", $this->getCaptchaHtml(), $form );
130153
 154+ // handle script path
 155+ $form = str_replace( "@script_path", $wgScriptPath, $form );
 156+
131157 $form = $this->fix_dropdowns( $form );
132158
133159 return $form;
@@ -223,4 +249,4 @@
224250
225251 $this->html_file_path = $full_path;
226252 }
227 -}
\ No newline at end of file
 253+}
Property changes on: branches/fundraising/deployment/DonationInterface/payflowpro_gateway/forms
___________________________________________________________________
Added: svn:mergeinfo
228254 Merged /trunk/extensions/DonationInterface/payflowpro_gateway/forms:r75657-77440,77442-79147,79149-79286,79288-79296,79298-79299,79301-79303,79305-96110

Follow-up revisions

RevisionCommit summaryAuthorDate
r96113Revert r96111 - screwed up the commit messageawjrichards16:02, 2 September 2011

Past revisions this follows-up on

RevisionCommit summaryAuthorDate
r88027Fix/cleanup $specialPageAliasessiebrand23:45, 13 May 2011

Status & tagging log