var objPayPal2 = {

    // REPLACE THESE VARIABLES

    formID: 'form5530',
    email: 'donation@identitynetwork.net',
    productName: 'Prophetic Partner Registration',
    productID: 'ProphPartReg',
    returnURL: 'http://www.identitynetwork.net/pages.asp?pageid=109334',
    recurringPeriod: 'm',
    totalField: '#form5530 input[name=fldAmount2]',
    fieldPrefix: 'fldOption',

    // DO NOT CHANGE THESE VARIABLES

    total: 0,
    optionValues: [],
    onceURL: 'https://www.paypal.com/xclick/business=**EMAIL**&item_name=**PRODUCTNAME**&item_number=**PRODUCTID**&amount=**TOTAL**&return=**RETURNURL**',
    recurringURL: 'https://www.paypal.com/cgi-bin/webscr?cmd=_xclick-subscriptions&business=**EMAIL**&lc=US&item_name=**PRODUCTNAME**&no_note=1&no_shipping=2&a3=**TOTAL**&currency_code=USD&src=1&p3=1&t3=**RECURRINGPERIOD**&sra=1&bn=PP%2dSubscriptionsBF%3abtn_subscribeCC_LG%2egif%3aNonHosted&return=**RETURNURL**',

    // SYSTEM FUNCTIONS

    setValue: function (vFieldName, vFieldValue) {
        if (objPayPal2.optionValues[vFieldName] != undefined) {
            objPayPal2.optionCount = objPayPal2.optionCount + 1;
        }
        objPayPal2.optionValues[vFieldName] = vFieldValue;
        objPayPal2.recalculate();
    },

    recalculate: function () {
        objPayPal2.total = 0;
        for (vKey in objPayPal2.optionValues) {
            if (objPayPal2.optionValues[vKey] != undefined) {
                objPayPal2.total = eval(objPayPal2.total) + eval(objPayPal2.optionValues[vKey]);
            }
        }
        $(objPayPal2.totalField).val(objPayPal2.formatCurrency(objPayPal2.total));
    },

    submitPayment: function (vType) {
        switch (vType) {
            case 'once':
                objPayPal2.onceURL = objPayPal2.onceURL.replace('**EMAIL**', escape(objPayPal2.email));
                objPayPal2.onceURL = objPayPal2.onceURL.replace('**PRODUCTNAME**', escape(objPayPal2.productName));
                objPayPal2.onceURL = objPayPal2.onceURL.replace('**PRODUCTID**', escape(objPayPal2.productID));
                objPayPal2.onceURL = objPayPal2.onceURL.replace('**RETURNURL**', escape(objPayPal2.returnURL));
                objPayPal2.onceURL = objPayPal2.onceURL.replace('**TOTAL**', escape($(objPayPal2.totalField).val()));
                window.open(objPayPal2.onceURL, 'PayPalOnce');
                break;
            case 'recurring':
                objPayPal2.recurringURL = objPayPal2.recurringURL.replace('**EMAIL**', escape(objPayPal2.email));
                objPayPal2.recurringURL = objPayPal2.recurringURL.replace('**PRODUCTNAME**', escape(objPayPal2.productName));
                objPayPal2.recurringURL = objPayPal2.recurringURL.replace('**PRODUCTID**', escape(objPayPal2.productID));
                objPayPal2.recurringURL = objPayPal2.recurringURL.replace('**RETURNURL**', escape(objPayPal2.returnURL));
                objPayPal2.recurringURL = objPayPal2.recurringURL.replace('**RECURRINGPERIOD**', escape(objPayPal2.recurringPeriod));
                objPayPal2.recurringURL = objPayPal2.recurringURL.replace('**TOTAL**', escape($(objPayPal2.totalField).val()));
                window.open(objPayPal2.recurringURL, 'PayPalRecurring');
                break;
            default:
                alert('Invalid Payment Type (' + vType + ')');
        }
        $('#' + objPayPal2.formID)[0].onsubmit();
    },

    formatCurrency: function(num) {
        num = isNaN(num) || num === '' || num === null ? 0.00 : num;    
        return parseFloat(num).toFixed(2);
    }

}


