

/*
	Version 1.c. rev 1/4/07
	
html document element (field) ChargeAmount must be present
though mandatory criteria include	
1. AccountID
2. BasketName    (set here or in the form)
3. ChargeAmount  (set here or in the form)

Optional criteria include
1. TransactionID (set in the form)
2. Redirect URL
3. Do Redirect after decline Flag
4. Show Cancel Button Flag
5. & 6. Period and number of recurrences

*/

/*
	******************************
	              Global Settings
	******************************
*/

var gsAlternatePaymentPageURL = 'installment_payments.html';

//Convention: 13967
//James Eyer for Congress 13680
var gsAccountID = '13967';

//Convention: Northern California Convention Planning Committee
//James Eyer for Congress 		
var gsBasketName = 'Libertarian Party of California Convention 2007';

//https://test.128bit.clickandpledge.com/basket.asp
//DO NOT include a final / character
//var gsURLForSubmission = 'http://jimeyer.org/congress/home.php';

var gsURLForSubmission = 'https://128bit.clickandpledge.com/basket.asp';

//redirect URL after transaction, empty string if none.
//http://jimeyer.org/congress/home.php
var gsURLRedirect = 'http://nclpc.org/convention/';

// flag indicating whether to redirect if credit card charge is declined.
//0 = false, 1 = true;
var gbRedirectOnDecline = 1;

// flag indicating whether to allowuser to cancel.
//0 = false, 1 = true;
var gbShowCancelButton = 1;
	
/*
	***********************************
	           setupPayments Function
	***********************************
*/
function setupPayments()
{
	var sLinkText1 = '';
	var sLinkURL1 = '';
	
	var sLinkText2 = '';
	var sLinkText3 = '';

	var sLinkAltPay = '';
	
	var sTransactionID = document.getElementById('TransactionID').value;
	
//      >>>> Pay By Click and Pledge  <<<<

	sLinkURL1 = setupClickAndPledgeURL(); 
		
	sLinkText1 = '<div id="CreditCardLinkDIV" name="CreditCardLinkDIV" class="PaymentLinkCell">' + sLinkURL1 + '</div>';
	
//      >>>> Pay By Check <<<<
	sLinkText2 = '<div class="PaymentLinkCell">';
	
	sLinkText2 =  sLinkText2 + '<b>Pay by Check</b> <a href="javascript:void(0)" onclick="javascript:payByCheck();">';
	
	sLinkText2 =  sLinkText2 + '[click here]</a>';
	
	sLinkText2 =  sLinkText2 + '</div>';

/*
	For button
	sLinkText2 = sLinkText2 + '<img name="PayByCheck" src="pay_by_check_button.gif"  border="0" ';
	sLinkText2 = sLinkText2 + 'usemap="#pbc" style="cursor:hand" onclick="payByCheck();">';
	sLinkText2 = sLinkText2 + '<map name="pbc">';
	sLinkText2 = sLinkText2 + '<area href="javascript:payByCheck()" shape="default"></map>';
*/
	
//      >>>> alternate payment link text   <<<<	
	sLinkAltPay = '<div style="{margin-bottom: 5;}">&nbsp;&nbsp;<b>Installment Payments</b>&nbsp;<a href="' + gsAlternatePaymentPageURL + '?id=' + sTransactionID + '" ' + 'onclick="javascript:payByInstallments();">[click here]</a></div>';
	
/*	
	>>> put html for buttons into the document <<<
*/		
	document.getElementById('SubmitButtonsDIV').innerHTML 
		= sLinkText1 + sLinkText2 + sLinkText3 + sLinkAltPay;	
	
	return true;	
} // end function submitClickAndPledge

/*
	***********************************
	      setupClickAndPledgeURL Function
	***********************************
*/	
function setupClickAndPledgeURL()
{
/*	
	-----------------------------------
	       Required Parameters
	-----------------------------------
*/	
	var sParamsString = '';
	
	var dTotalCharges = 0;
	
	var sFieldName = '';
	
	var sLinkName = '';

//	total charges is the only required param that comes from the document
	sFieldName = 'TotalChargesValue';	
	var oField = document.getElementById(sFieldName);
	
	if(oField == null)
	{
		alert('Total Charges were not specified');
		return false;
	}

	dTotalCharges = oField.value;
	
//	>>> add required parameters to parmeter string <<<
//	account ID parameter	
	sParamsString = sParamsString + '?ID=' + gsAccountID;
	
//	basket name parameter	
	sParamsString = sParamsString + '&B=' + gsBasketName;
	
//	total charges parameter	
	sParamsString = sParamsString + '&T=' + dTotalCharges;	
	
/*	
	-----------------------------------
	       Optional Parameters
	-----------------------------------
*/	
/*
	D = tax deductible portion
	
	I = Reference ID
	
	R = Redirect URL
	
	RD: switch; 0= do not redirect if user credit card is declined
	                    1 = redirect if credit card is/is not declined
						
	C: switch;  0= do not offer a cancel option (button)
	                   1 = offer a cancel option 
	
	P:  period for recurring "pledges"
	     1 = every two weeks, 2 = monthly
               3= every two months
	    4 = quarterly
	    5 = annual
		
	N = number of intervals
*/

//	transaction ID parameter		
	sParamID = 'I';	
	sFieldName = 'TransactionID';	
	var oField = document.getElementById(sFieldName);
	
	if(oField != null)
	{
		sParamsString
			= sParamsString + '&' + sParamID + '=' + oField.value;
	}

//	Redirect URL parameter		
	sParamID = 'R';	
	
	if(gsURLRedirect != '')
	{
		sParamsString
			= sParamsString + '&' + sParamID + '=' + gsURLRedirect;
	}
	
	
//	>>>> for Recurring Charges (pledges)	<<<<

//	Period (of pledge payments) parameter		
	sParamID = 'P';	
	sFieldName = 'Period';	
	var oField = document.getElementById(sFieldName);
	
	if(oField != null)
	{
		sParamsString
			= sParamsString + '&' + sParamID + '=' + oField.value;
	}

//	Periods (intervals) Count parameter		
	sParamID = 'N';	
	sFieldName = 'PeriodCount';	
	var oField = document.getElementById(sFieldName);
	
	if(oField != null)
	{
		sParamsString
			= sParamsString + '&' + sParamID + '=' + oField.value;
	}
	
	sParamID = 'RD';	
	sParamsString
			= sParamsString + '&' + sParamID + '=' + gbRedirectOnDecline;

	sParamID = 'C';	
	sParamsString
			= sParamsString + '&' + sParamID + '=' + gbShowCancelButton;

			
//	tags needed for entire html, too	

	sLinkName = '<b>Pay by Credit Card</b>&nbsp;<a href="';
	
	sLinkName = 
		sLinkName + gsURLForSubmission + sParamsString + '" target="_blank"';
	
	sLinkName = 
		sLinkName + ' onclick="javascript:payByCreditCard();">[click here]</a>';
		
	sLinkName = sLinkName 
		+ '<br><img src="creditcard_visa.gif" border="0">' 
		+ '<img src="creditcard_mc.gif" border="0">'
		+ '<img src="creditcard_discover.gif" border="0">';
		
/*
	sLinkName = 
		sLinkName + '<img src="use_credit_card_button.gif" border="0">';

	sLinkName = sLinkName 
		+ '<br><img src="creditcard_visa.gif" border="0">' 
		+ '<img src="creditcard_mc.gif" border="0">'
		+ '<img src="creditcard_discover.gif" border="0"></a>';
*/

	return sLinkName;
	
} // end function

