 //time an event
var ms = 0;
var state = 0;

function startstop() {
if (state == 0) {
state = 1;
then = new Date();
then.setTime(then.getTime() - ms);
} else {
state = 0;
now = new Date();
ms = now.getTime() - then.getTime();
return ms;
   }
}




function analyticsTrackEvents()  //created to track events through google analytics
	{
		$("#addthis_services td a").click(function(){
			var title = $(this).text();
                        var category = 'Button';
                        var action = 'Add This';
			gaPagetracker(category,action,'service',title);
		});


        //ADD EVENTS FOR GA HERE

        $("#topnav a").click(function(){
            var title = $(this).text();
            var category = 'LINK TRACKING';
            var action = 'visit link';
            var label = 'header links';
            gaPagetracker(category,action,label,title);
        });

        $("input#f_accepted").click(function(){
           var category = 'TERMS TRACKING';
           var label =  $("#f_email").val();
           if(label==undefined) label = 'Existing Member';
           if($(this).is(':checked')){
               var action = 'agree to terms';
           } else var action = 'disagree to terms';
           var value = 0;

           gaPagetracker(category,action,label,value);
        });

        $("a#termslink").click(function(){
           var category = 'TERMS TRACKING';
           var action = 'open terms';
           var label =  $("#f_email").val();
           if(label==undefined) label = 'Existing Member';
           var value = 0;

           gaPagetracker(category,action,label,value);
           startstop();
        });


        $("a#twitterlink").click(function()
		{
            var category = 'Button';
            var action = 'Twitter Link';
			gaPagetracker(category,action);
		});

        $("a#continueshopping").click(function()
		{
            var category = 'Button';
            var action = 'Checkout: Continue Shopping';
			gaPagetracker(category,action);
		});

        $("a#billingtc").click(function()
		{
            var category = 'Button';
            var action = 'Club Billing T&C Link';
			gaPagetracker(category,action);
		});

        $("#lp_toc a").click(function()
		{
            var category = 'Button';
            var action = 'Club LP T&C Link';
			gaPagetracker(category,action);
		});

        $("#cycle1 a").click(function()
		{
            var category = 'Button';
            var action = 'Homepage Rotating 1';
             var landing = $(this).attr('href');
			gaPagetracker(category,action,landing);
		});

        $("#cycle2 a").click(function()
		{
            var category = 'Button';
            var action = 'Homepage Rotating 2';
             var landing = $(this).attr('href');
			gaPagetracker(category,action,landing);
		});

        $("#cycle3 a").click(function()
		{
            var category = 'Button';
            var action = 'Homepage Rotating 3';
             var landing = $(this).attr('href');
			gaPagetracker(category,action,landing);
		});

        $("#hp_banner1 a").click(function()
		{
            var category = 'Button';
            var action = 'Homepage Spotlight 1';
             var landing = $(this).attr('href');
			gaPagetracker(category,action,landing);
		});

        $("#hp_banner2 a").click(function()
		{
            var category = 'Button';
            var action = 'Homepage Spotlight 2';
             var landing = $(this).attr('href');
			gaPagetracker(category,action,landing);
		});

        $("#promobar a").click(function()
		{
            var href = location.href;
          //  hrefs = location.href.split('bocajava');
            var category = 'Button';
            var action = 'Site Promo Banner';
            if(hrefs[1].length<7) action = 'Homepage Promo Banner;';
            var landing = $(this).attr('href');
			gaPagetracker(category,action,landing);
		});


        $(".selection a.bj_more, a.mainlink").click(function()
		{
            var category = 'Catalog';
            if($(this).parents('div.selection').find("input[name='crossUpsell']").val()=="true") category = 'Cross-sell';

            var action = 'Link to Product Detail Page';

            var parent = $(this).parents('form');
            var title = parent.children('a.product_title').html();
			gaPagetracker(category,action,title);
		}).mouseout(function()
		{
            var category = 'Catalog';
            if($(this).parents('div.selection').find("input[name='crossUpsell']").val()=="true") category = 'Cross-sell';

            var action = 'Details Hover';

            var parent = $(this).parents('form');
            var title = parent.children('a.product_title').html();
			gaPagetracker(category,action,title);
		});
        

         $(".selection a.bj_buynow").click(function()
		{
            var parent = $(this).parents('form');
            var title = parent.children('a.product_title').html();

            var category = 'Catalog';
            if($(this).parents('div.selection').find("input[name='crossUpsell']").val()=="true") category = 'Cross-sell';
          
            var action = 'Open Buy Now Dialog';
			gaPagetracker(category,action,title);
		});

       


        $("#p_myaccount .right p a").click(function()
		{
            if($(this).parent('div').attr('id')=='webloyalty')
            {
            var action = 'AM Banner 1';
            var category = 'Button';
             var landing = $(this).attr('href');
			gaPagetracker(category,action,landing);
            }
		});

     


        $("#btn_addtoclub").click(function()
		{
            var category = 'Button';
            var action = 'PD Add to Club';
            var title = $('title').html();
			gaPagetracker(category,action,title);
		});

        /* $("#btn_addtocart").click(function()
		{
            var category = 'Button';
            var action = 'PD Add to Cart';
            var title = $('title').html();
			gaPagetracker(category,action,title);
		});
*/
	}


        $("#btn_account_submit").click(function(){
            if($("#c_upsell").is(":checked"))
            {
                var category = 'Cluboffer Upsell';
                var action = 'Add to Cart';
                var title = product.productName;
                var value = product.price;
                gaPagetracker(category,action,title,value);
            }
        })

         $(".product_upsell button").click(function(){

                var category = 'Discretionary Upsell';
                var action = 'Add to Cart';
                var title = $("#c_upsell").val();
                var value = $("#c_productID").val();
                gaPagetracker(category,action,title,value);

        })
	

    function gaPagetracker(category, action, label, value)
    {
            if (window.console && window.console.log)  window.console.log('category:'+category+',action:'+action+',label:'+label+',value:'+value);
            _gaq.push(['_trackEvent',category, action, label, value])
    }


/**
*
*  URL encode / decode
*  http://www.webtoolkit.info/
*
**/

var Url = {

    // public method for url encoding
    encode : function (string) {
        return escape(this._utf8_encode(string));
    },

    // public method for url decoding
    decode : function (string) {
        return this._utf8_decode(unescape(string));
    },

    // private method for UTF-8 encoding
    _utf8_encode : function (string) {
        string = string.replace(/\r\n/g,"\n");
        var utftext = "";

        for (var n = 0; n < string.length; n++) {

            var c = string.charCodeAt(n);

            if (c < 128) {
                utftext += String.fromCharCode(c);
            }
            else if((c > 127) && (c < 2048)) {
                utftext += String.fromCharCode((c >> 6) | 192);
                utftext += String.fromCharCode((c & 63) | 128);
            }
            else {
                utftext += String.fromCharCode((c >> 12) | 224);
                utftext += String.fromCharCode(((c >> 6) & 63) | 128);
                utftext += String.fromCharCode((c & 63) | 128);
            }

        }

        return utftext;
    },

    // private method for UTF-8 decoding
    _utf8_decode : function (utftext) {
        var string = "";
        var i = 0;
        var c = c1 = c2 = 0;

        while ( i < utftext.length ) {

            c = utftext.charCodeAt(i);

            if (c < 128) {
                string += String.fromCharCode(c);
                i++;
            }
            else if((c > 191) && (c < 224)) {
                c2 = utftext.charCodeAt(i+1);
                string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
                i += 2;
            }
            else {
                c2 = utftext.charCodeAt(i+1);
                c3 = utftext.charCodeAt(i+2);
                string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
                i += 3;
            }

        }

        return string;
    }

}

function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
	num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+','+
	num.substring(num.length-(4*i+3));
	return (num + '.' + cents);
}



