// revenue tracking
$(function(){
  
  if($('.receipt_order_id')) {

    // — OPTIONS —    
    var tracking_code        = 'UA-1970251-1';
    var default_country_code = 'UK';
    var default_category     = 'DefaultProductCategory';


    // - The rest looks after it self - //
    var order_id = $('.receipt_order_id').text();

    var total    = $('.receipt_total').text().replace(/[^0-9]/, '');
    var tax      = $('.receipt_tax').text().replace(/[^0-9]/, '');
    var shipping = $('.receipt_shipping').text().replace(/[^0-9]/, '');
    
    var town     = $('.receipt_town').text();
    var county   = $('.receipt_county').text();


    // if country code is set it will be picked up here
    if($('.receipt_country_code').length > 0) {
      default_country_code = $('.receipt_country_code').text();
    }

    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");

    jQuery.getScript(gaJsHost + "google-analytics.com/ga.js", function(){
      
      var pageTracker = _gat._getTracker(tracking_code);
      pageTracker._setDomainName("none");
      pageTracker._initData();
      
      pageTracker._addTrans(
        order_id,                                   // Order ID
        '',                                         // Affiliation
        total,                                      // Total
        tax,                                        // Tax
        shipping,                                   // Shipping
        town,                                       // City
        county,                                     // State
        default_country_code                        // Country
      );
      
      $('.receipt_line').each(function(index){
        
        strip_pattern = /\s/;
        reference = $('.receipt_reference', this).text().replace(strip_pattern, '');
        name      = $('.receipt_name', this).text().replace(strip_pattern, '');
        price     = $('.receipt_price', this).text().replace(/[^0-9]/, '');
        quantity  = $('.receipt_quantity', this).text().replace(/[^0-9]/, '');


        // if .receipt_category is set it will be picked up here
        if($('.receipt_category', this).length > 0) {
          category = $('.receipt_category', this).text();
        }
        else {
          category = default_category;
        }

        pageTracker._addItem(
          order_id,                                 // Order ID
          reference,                                // SKU
          name,                                     // Product Name 
          category,                                 // Category
          price,                                    // Price
          quantity                                  // Quantity
        );
      });

      pageTracker._trackTrans();
      pageTracker._trackPageview();
    });
  };
});
