// Google Analytics eCommerce Tracking
// Author:		Chris Wolf
// BBNC: 		6.10
// Originated:	4/6/2010
// Modified:	7/22/2010


// Standard Google Code
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write("<script src='"+gaJsHost+"google-analytics.com/ga.js' type='text/javascript'></script>");

function GoogleAnalytics(trackerID)
{

// Begin Execution
 try {
  var pageTracker = _gat._getTracker(trackerID);

  // Standard Page Tracker - DO NOT DELETE
  pageTracker._trackPageview();


/***** ECOMMERCE TRACKING *****/

  // Generate a fake order ID
  var d = new Date();
  var unixTime = d.getTime();
  var orderID = pageTracker._visitCode() + '-' + unixTime;

  // determine if page is the default donation confirmation
  if ($("span[id$=_lblThanks]").length > 0) {
	 
	 // Determine the type of transaction 
	 if ($("span[id$=_lblThanks]:contains('event')").length > 0) {
	 
	  var sku = 'Events';
	  var Funds = $("span[id$=_lblThanks]");
	 
	 } else {
	 
	  var sku = 'Donation';
      // determine if there are multiple designations
	  if ($("span[id$=_lblDesignations]:contains('; ')")) {
	  // define funds
	   var FundsAll = $("span[id$=_lblDesignations]").text();
	   var Funds = FundsAll.split('; ');
	  } else {
	   var Funds = $("span[id$=_lblDesignations]");
	  };		  
	 
	 }
	
	// get label data for overall transaction
	var amt = $("span[id$=_lblDonationAmount]").text();
	var GiftAmount = amt.replace("$","").replace(/,/g,"");
	
     // define Overall Transaction details
	 pageTracker._addTrans(
		orderID, // Order ID
		"", // Affiliation
		GiftAmount, // Total
		"", // Tax
		"", // Shipping
		"", // City
		"", // State
		"" // Country
	 );
	
	 $(Funds).each(function(i){
	  var i = i+1;
	  var thisSKU = sku+'-'+i;
	  
	  if (Funds.length > 1) {
	   var thisItem = $(this).replace(')','');
	   var thisVal = thisItem.split(' ($')[1].replace(/,/g,"");
	   var thisName = thisItem.split(' ($')[0];
	  } else {  
	   var thisVal = GiftAmount;   
	   if ($("span[id$=_lblThanks]:contains('event')").length > 0) {
		var thisName = 'Event Registration'; 
	   } else {
		var thisName = Funds;
	   } 
	  }
	  	 
	  // define Individual Item details
	  pageTracker._addItem( 
		orderID, // Order ID
		thisSKU, // SKU
		thisName, // Product Name
		"Online", // Category
		thisVal, // Price
		"1" // Quantity
	  );
	  
	 });
	
	
  } else if (($('.PaymentPartGrid').length > 0) && ($('.PaymentPartSubmitButton').length == 0)) {
	  	
   $('.PaymentPartGrid tr[class*=PaymentPartGrid]').not('.PaymentPartGrid_Header').each(function(i){
    i = i+1;
    $('td',this).eq(0).addClass('Item-'+i);
    $('td',this).eq(1).addClass('Cost-'+i);
   });
 
   var amt = $('.PaymentPartGrid td:contains("TOTAL :")').next().text();
   var GiftAmount = amt.replace("$","").replace(/,/g,"");
   var Funds = $('td[class*=Item-]');
   var Value = $('td[class*=Cost-]');

     // define Overall Transaction details
	 pageTracker._addTrans(
		orderID, // Order ID
		"", // Affiliation
		GiftAmount, // Total
		"", // Tax
		"", // Shipping
		"", // City
		"", // State
		"" // Country
	 );

	 // define Individual Item details
	 $(Funds).each(function(i){
	  var i = i+1;
	  var thisClass = $(this).attr('class');
	  var thisVal = $(this).siblings(Value).text().replace(/,/g,'').replace('$','');
	  
      if ($('.'+thisClass+':contains("Events")').length > 0) {	  
       var itemSplit = $(this).text().split(': ');
	   var thisName = itemSplit[1];
       var thisSKU = itemSplit[0]+'-'+i;;
      } else {
       var itemSplit = $(this).text().split(' (');
	   var thisName = itemSplit[1].replace(')','');
       var thisSKU = itemSplit[0]+'-'+i;
      }
	  	  	  
	  // define Individual Item details
	  pageTracker._addItem( 
		orderID, // Order ID
		thisSKU, // SKU
		thisName, // Product Name
		"Online", // Category
		thisVal, // Price
		"1" // Quantity
	  );	
	  	     
	 });
   } 
	 
 
   // execute eCommerce tracker
   pageTracker._trackTrans();				

  
 } catch(err) {}	
}; // end GoogleAnalytics();



function initGA(trackerID) {
 if (!window.location.href.match('edit=')) {
  GoogleAnalytics(trackerID);
  Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(function(){
   if (($('.PaymentPartGrid').length > 0) && ($('.PaymentPartSubmitButton').length == 0)) {
    GoogleAnalytics(trackerID);
   }
  });
 }
}