Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (function() {
- Y.use('jquery-noconflict', function() {
- jQuery(function($) {
- $(document).ready(function() {
- //console.log("custom javascript ready!");
- /* ------------ Section ------------ */
- $("div.donation-level-container input:radio").each(function() {
- if ($(this).prop("checked")) {
- $(this).parents("div.donation-level-container").addClass("selected");
- }
- });
- /* ------------ Section ------------ */
- // var selected_amt;
- // on click of donation amount buttons
- // add selected class and change radio prop
- $('.donation-level-container').on('change', function() {
- $('.donation-level-container').removeClass('selected');
- $(this).addClass('selected');
- $(this).find('input[type="radio"]').prop('checked', true);
- // var donation_amt_text = $.trim($(this).find('.donation-level-label-container').text());
- //
- // selected_amt = $.trim((donation_amt_text).slice(1));
- });
- /* ------------ Section ------------ */
- var rememberLevel = readCookie('levelId');
- var otherAmt = readCookie('otherAmt');
- var coverFees = readCookie('coverFees');
- // move donor cover checkbox below donation amount
- $('#level_standard_row > .form-content').append($('#cc_fees_row'));
- $('#cc_fees_row').show();
- // add class to donor entered amount parent container
- $('.donation-level-user-entered').parent().addClass('other-amount');
- var deleteCookie = function(name) {
- document.cookie = name + '=;expires= Thu, 01 Jan 1970 00:00:01 GMT;';
- };
- var formatMoney = function(amount) {
- amountInCents = Number(amount);
- var i = parseInt(amount = Math.abs(+amount || 0).toFixed(2), 10) + '',
- j = (j = i.length) > 3 ? j % 3 : 0,
- formattedMoney = '$' + (j ? i.substr(0, j) + ',' : '') +
- i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + ',') +
- '.' + Math.abs(amount - i).toFixed(2).slice(2);
- formattedMoney = formattedMoney.replace('.00', '');
- return formattedMoney;
- }
- var populateBtn = function(activeAmt) {
- if ($('#cover_fees').is(':checked')) {
- var btnText = 'Donate ' + activeAmt;
- }
- else {
- var btnText = 'Donate';
- }
- if ($('#pstep_finish').length > 0) {
- $('#pstep_finish').text(btnText);
- }
- }
- var getAmt = function() {
- if ($('.other-amount input[type="radio"]').is(':checked')) {
- selectAmt = Number(delimitNumbers($('.donation-level-user-entered input').val()));
- document.cookie="levelId=other";
- document.cookie="otherAmt=" + selectAmt;
- } else {
- $("[id^=level_standardexpanded]").each(function() {
- if ($(this).is(':checked')) {
- var selectedLevelId = $(this).prop('id');
- selectAmt = Number(delimitNumbers($(this).parent().next().children('.donation-level-label-container').text()));
- document.cookie="levelId=" + selectedLevelId;
- }
- });
- }
- activeAmtAdd = Number(strRound(delimitNumbers(selectAmt)*.06248),2);
- activeAmtAdd = activeAmtAdd + .26;
- activeAmt = strRound(delimitNumbers(selectAmt + activeAmtAdd));
- activeAmtFormat = formatMoney(activeAmt);
- $('.cover_fees_total').html('for a total of <strong>' + activeAmtFormat + ' (Credit Card)</strong>');
- donateAmt = activeAmtFormat;
- console.log('donateAmt is ' + donateAmt);
- }
- function delimitNumbers(str) {
- return (str + '').replace(/[^\d.-]/g, '');
- }
- function removeNonNumbers(str) {
- return (str + '').replace(/[^0-9\.]+/g, '');
- }
- function strRound(str) {
- str = removeNonNumbers(str).split('.', 2);
- if (str[1]) {
- str[1] = str[1].substring(0,2);
- }
- str = str.join('.');
- return str;
- }
- function readCookie(name) {
- var nameEQ = name + '=';
- var ca = document.cookie.split(';');
- for(var i=0;i < ca.length;i++) {
- var c = ca[i];
- while (c.charAt(0)==' ') c = c.substring(1,c.length);
- if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
- }
- return null;
- }
- if(rememberLevel != undefined || rememberLevel != null) {
- $('#' + rememberLevel).prop('checked', true);
- $('.donation-level-user-entered input[type="text"]').val('');
- if (rememberLevel == 'other') {
- $('.other-amount input[type="radio"]').prop('checked', true);
- $('.donation-level-user-entered input[type="text"]').val(otherAmt);
- }
- }
- if (coverFees == 'true') {
- $('#cover_fees').prop('checked', true);
- getAmt();
- populateBtn(donateAmt);
- }
- $('#cover_fees, .donation-level-container').change(function(){
- if ($('#cover_fees').is(':checked')) {
- getAmt();
- }
- else {
- getAmt();
- deleteCookie('coverFees');
- deleteCookie('levelId');
- deleteCookie('otherAmt');
- }
- populateBtn(donateAmt);
- });
- $('#ProcessForm').submit(function() {
- if ($('#cover_fees').is(':checked')) {
- getAmt();
- $('.other-amount input[type="radio"]').prop('checked', true);
- $('.donation-level-user-entered input[type="text"]').val(donateAmt);
- document.cookie = 'coverFees=true';
- return true;
- }
- else {
- deleteCookie('coverFees');
- deleteCookie('levelId');
- deleteCookie('otherAmt');
- return true;
- }
- });
- });
- });
- });
- })();
Add Comment
Please, Sign In to add comment