$.extend($.ford, {credit: {}});
$.extend($.ford.credit, {baseUrl: 'https://www.onlinevehiclefinancing.com/ovfui/fcovfui'});
$.extend($.ford.credit, {buildUrl: function(params) {
	return $.ford.credit.baseUrl + '?' + params;
}});

$.extend($.ford.credit, {sendEspotData: function() {
	var params = '';
	if (_F.dc) {
		params += 'ATD_SERVLET_ACTION=PA';
		params += '&ATD_SERVLET_PAGE_CLASS=AAExternal';
		params += '&SourceOfData=CADC';
		params += '&CountryCode=CAN';
		params += '&LanguageCode=' + _F.lang;
		
		var dealer = _F.dealer;
		params += '&InterfaceHomeURL=' + dealer.url;
		params += '&DealerPACode=' + dealer.key;
		params += '&DealerName=' + dealer.name;
		params += '&dealerState=' + dealer.province;
		params += '&dealerCity=' + dealer.city;
		params += '&DealerFullFax=' + dealer.fax;
		params += '&DealerFullPhone=' + dealer.phone;
		params += '&DealerEmailAddr=' + dealer.email;
		params += '&paCurResState=ON';
	} else {
		params += 'ATD_SERVLET_ACTION=PA';
		params += '&ATD_SERVLET_PAGE_CLASS=AAExternal';
		params += '&WindowStyle=P';
		params += '&SourceOfData=CANBC';
		params += '&CountryCode=CAN';
		params += '&LanguageCode=' + _F.lang;
	}
	
	var url = $.ford.credit.buildUrl(params);
	var newWindowFocus = window.open(url, 'fordfinance', 'menubar=yes,toolbar=yes,scrollbars=yes,resizable=yes');
	newWindowFocus.focus();
}});

//$.extend($.ford.credit, {sendEspotData: function() {
//	var params = '';
//	if ($.ford.vars.get('dc')) {
//		params += 'ATD_SERVLET_ACTION=PA';
//		params += '&ATD_SERVLET_PAGE_CLASS=AAExternal';
//		params += '&SourceOfData=CADC';
//		params += '&CountryCode=CAN';
//		params += '&LanguageCode=' + $.ford.vars.get('lang');
//		
//		var dealer = $.ford.vars.get('dealer');
//		params += '&InterfaceHomeURL=' + dealer.url;
//		params += '&DealerPACode=' + dealer.key;
//		params += '&DealerName=' + dealer.name;
//		params += '&dealerState=' + dealer.province;
//		params += '&dealerCity=' + dealer.city;
//		params += '&DealerFullFax=' + dealer.fax;
//		params += '&DealerFullPhone=' + dealer.phone;
//		params += '&DealerEmailAddr=' + dealer.email;
//		params += '&paCurResState=ON';
//	} else {
//		params += 'ATD_SERVLET_ACTION=PA';
//		params += '&ATD_SERVLET_PAGE_CLASS=AAExternal';
//		params += '&WindowStyle=P';
//		params += '&SourceOfData=CANBC';
//		params += '&CountryCode=CAN';
//		params += '&LanguageCode=' + $.ford.vars.get('lang');		
//	}
//	
//	var url = $.ford.credit.buildUrl(params);
//	var newWindowFocus = window.open(url, 'fordfinance', 'menubar=yes,toolbar=yes,scrollbars=yes,resizable=yes');
//	newWindowFocus.focus();
//}});
$.extend($.ford.credit, {sendBnpData: function(bnpJsonData) {
	var obj = eval('(' + bnpJsonData + ')');
	var params = '';
	var goodThruDate = "2008-03-30";
	var vehicle = Ford.Vehicle.get(obj.acode);

	if ($.ford.vars.get('dc')) {
		// Add the header data URL parameters.
		params += 'ATD_SERVLET_ACTION=CA';
		params += '&ATD_SERVLET_PAGE_CLASS=AAExternal';
		params += '&CountryCode=CAN';
		params += '&LanguageCode=' + _F.lang;
		params += '&InterfaceHomeURL=http://www.ford.ca';
		params += '&WindowStyle=P';
		params += '&SourceOfData=CANBC';

		// Add the dealer data URL parameters if a dealer was specified.
		if (_F.dealer) {
			params += '&DealerPACode=' + _F.dealer.key;
			params += '&DealerName=' + _F.dealer.name;
			params += '&DealerFullFax=' + _F.dealer.fax;
			params += '&DealerFullPhone=' + _F.dealer.phone;
			if(_F.dealer.email) {
				params += '&DealerEmailAddr=' + _F.dealer.email;
			}
		}

		// Add the general contract and vehicle data URL parameters.
		params += '&prodType=Buy';
		params += '&totalMonthlyPayment=' + obj.Payment;	
		params += '&msrp=' + obj.MSRP;
		params += '&goodThruDate=' + goodThruDate;
		params += '&SellingPrice=' + obj.Total;
		params += '&term=' + obj.Term;
		params += '&ePrice=N';
		params += '&PEPDiscount=0';
		params += '&NewUsedIndicator=N';
		if(_F.location) {
			params += '&paCurResState=' + _F.location.province;
		}
		params += '&Mileage=0';
		params += '&ModelName=' + vehicle.model;
		params += '&ModelPrice=' + obj.Total;
		params += '&EngineCode=' + vehicle.engine;
		params += '&AutoTrans=' + vehicle.transmission;
		params += '&TrimCode=' + vehicle.trimCode;
	} else {
		// Add the header data URL parameters.
		params += 'ATD_SERVLET_ACTION=CAOEM';
		params += '&ATD_SERVLET_PAGE_CLASS=AAExternal';
		params += '&InterfaceHomeURL=http://www.ford.ca';
		params += '&SourceOfData=CANBC';
		params += '&CountryCode=CAN';
		params += '&LanguageCode=' + _F.lang;
		params += '&WindowStyle=P';

		params += '&EngineCode=' + vehicle.engine;
		params += '&vin567=' + vehicle.vin567;
		params += '&make=' + vehicle.make;
		params += '&AutoTrans=' + vehicle.transmission;
		params += '&modelYear=' + vehicle.year;
		params += '&NewUsedIndicator=N';
		params += '&TrimCode=' + vehicle.trimCode;

		params += '&dealerDataSW=N';
		params += '&zipCode=' + _F.postal;
		if(_F.location) {
			params += '&paCurResState=' + _F.location.province;
		}
		params += '&prodType=Buy';
		params += '&totalMonthlyPayment=' + obj.Payment;	
		params += '&msrp=' + obj.MSRP;
		params += '&goodThruDate=' + goodThruDate;
		params += '&SellingPrice=' + obj.Total;
		params += '&term=' + obj.Term;
		params += '&ModelName=' + vehicle.model;
	}
	
	// TODO When we figure out how to call the QA URL, perform a check to set the
	// base URL based on the current domain.
	var baseUrl = 'https://www.onlinevehiclefinancing.com/ovfui/fcovfui?';
	var newWindowFocus = window.open(baseUrl + params, 'fordfinance', 'menubar=yes,toolbar=yes,scrollbars=yes,resizable=yes');
	newWindowFocus.focus();
}});

