/*! * @author Gproxy Design Inc. * @copyright (c) 2010, Gproxy Design Inc. All rights reserved. * @version 1.0 * * Gproxy doesn't allow to copy or change this code without Gproxy authorization. * See http://www.gproxy.com/licenses/license01.pdf for the full license governing this code. */ /** * GOOGLE ANALYTICS * Page Tracker */ function setGATracking(){ // Shopping Cart var rExpCart = new RegExp('(sc\.20|sc=20)', 'gi'); var cart = "/shopping-cart"; // Checkout Billing var rExpBilling = new RegExp('(sc\.21/category\.billing|sc=21&category=billing)', 'gi'); var billing = "/checkout-billing"; // Checkout Shipping var rExpShipping = new RegExp('(sc\.21/category\.shipping|sc=21&category=shipping)', 'gi'); var shipping = "/checkout-shipping"; // Checkout Paymeth var rExpPaymeth = new RegExp('(sc\.21/category\.paymeth|sc=21&category=paymeth)', 'gi'); var paymeth = "/checkout-paymeth"; // Checkout Order Confirm var rExpConfirm = new RegExp('(sc\.21/category\.confirm|sc=21&category=confirm|sc\.21/\.f|sc=21&whence)', 'gi'); var confirm = "/checkout-order-confirm"; // Checkout Order Thanks var rExpThanks = new RegExp('(sc=21&category=thanks|sc\.21/category\.thanks)', 'gi'); var thanks = "/checkout-order-thanks"; if (rExpCart.exec(document.location.toString()) !== null) { pageTracker._trackPageview(cart); } else { if (rExpBilling.exec(document.location.toString()) !== null) { pageTracker._trackPageview(billing); } else { if (rExpShipping.exec(document.location.toString()) !== null) { pageTracker._trackPageview(shipping); } else { if (rExpPaymeth.exec(document.location.toString()) !== null) { pageTracker._trackPageview(paymeth); } else { if (rExpConfirm.exec(document.location.toString()) !== null) { pageTracker._trackPageview(confirm); } else { if (rExpThanks.exec(document.location.toString()) !== null) { pageTracker._trackPageview(thanks); } else { pageTracker._trackPageview(); } } } } } } } /** * GOOGLE ANALYTICS * @param {Object} address * @param {Object} orderNumber * @param {Object} siteName * @param {Object} cofirmationTotal * @param {Object} tax * @param {Object} shipping */ function setGATrackingTransaction(address, orderNumber, siteName, cofirmationTotal, tax, shipping){ // Checkout Order Thanks var rExpThanks = new RegExp('(sc=21&category=thanks|sc\.21/category\.thanks)', 'gi'); try { if (rExpThanks.exec(document.location.toString()) !== null) { var auxArray = address.split('
'); var country = 'None'; var city = 'None'; var state = 'None'; try { if (auxArray.length > 0) { country = auxArray[auxArray.length - 1].toString(); var auxArray1 = auxArray[auxArray.length - 2].toString().split(' '); if (auxArray1.length > 0) { city = auxArray1[0].toString(); state = auxArray1[1].toString(); } } } catch (e) { var country = 'Country-Script-Error'; var city = 'City-Script-Error'; var state = 'State-Script-Error'; } /*Change the name of the cookie for a unique name for the customer*/ try { pageTracker._addTrans(orderNumber, siteName, cofirmationTotal, tax, shipping, city, state, country); var strItems = readCookie('_bri_ga_products'); if (strItems != null){ var objItems = eval(unescape(strItems)); for (var i=0; i < objItems.length; i++) { pageTracker._addItem(orderNumber, unescape(objItems[i].name), unescape(objItems[i].sku), 'None', unescape(objItems[i].price), unescape(objItems[i].qty)); } }else{ pageTracker._addItem(orderNumber, 'Cookie-Error', 'Cookie-Error', 'None', '0', '0'); } pageTracker._trackTrans(); } catch (e) { pageTracker._addTrans(orderNumber, siteName, confirmationTotal, tax, shipping, 'Cookie-Error', 'Cookie-Error','Cookie-Error'); pageTracker._addItem(orderNumber, 'Cookie-Error', 'Cookie-Error', 'None', '0', '0'); pageTracker._trackTrans(); } } } catch (ex) { pageTracker._addTrans(orderNumber, siteName, confirmationTotal, tax, shipping, 'Cookie-Error', 'Cookie-Error','Cookie-Error'); pageTracker._addItem(orderNumber, 'Cookie-Error', 'Cookie-Error', 'None', '0', '0'); pageTracker._trackTrans(); } } function saveGAProducts() { // Checkout Order Thanks var rExpThanks = new RegExp('(sc=21&category=thanks|sc\.21/category\.thanks)', 'gi'); //Shopping Cart Columns Position beginning on 0 //Product Name Position var intProdNamePos = 0; //Product SKU Position var intProdSKUPos = 0; //Product Quantity Position var intQtyPos = 1; //Product Price Position var intPricePos = 4; try { if (rExpThanks.exec(document.location.toString()) == null) { var arrCartRows = $("tr[id^=carttablerow]"); var strJSON = ''; var strString = ''; for (var i = 0; i < arrCartRows.length; i++) { var arrCartRowCell = arrCartRows[i].cells[intProdNamePos].getElementsByTagName('a'); var strItemName = arrCartRowCell[0].innerHTML; arrCartRowCell = arrCartRows[i].cells[intProdSKUPos].getElementsByTagName('a'); var strItemSKU = arrCartRowCell[0].innerHTML; var strItemQty = arrCartRows[i].cells[intQtyPos].innerHTML; var strItemPrice = arrCartRows[i].cells[intPricePos].innerHTML; strItemPrice = strItemPrice.replace(/(\(|\$|,|A|€|\))/g, ''); strString += "{name: '"+ escape(strItemName) + "', sku: '" + escape(strItemSKU) + "', qty: '" + escape(strItemQty) + "', price: '" + escape(strItemPrice.replace(/(\$|,)/g, '')) + "'},"; } if(strString != ''){ strString = strString.substring(0, (strString.length - 1)); strJSON = "{Items: [" + strString + "]}"; createCookie('_bri_ga_products',strJSON); } } } catch (ex) { } } function createCookie(name, value, days){ var expires = ''; if (days) { var date = new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); expires = "; expires=" + date.toGMTString(); } else expires = ""; document.cookie = name + "=" + escape(value) + expires + "; path=/"; } function readCookie(name){ if (document.cookie.length > 0) { c_start = document.cookie.indexOf(name + "="); if (c_start != -1) { c_start = c_start + name.length + 1; c_end = document.cookie.indexOf(";", c_start); if (c_end == -1) c_end = document.cookie.length; return unescape(document.cookie.substring(c_start, c_end)); } } return null; }