

/**
 * Tracks click events on a set of elements.
 *
 * event is the GA event you want to trigger
 * when the click occurs.
 *
 * Pass in null to apply to the element rather than children.
 *
 */

function lbStart(element, children, event){

	window._gaq = window._gaq || [];

	var elements;

	if( children != null ){
		elements = $(children, element);
	}else{
		elements = $(element);
	}

	var triggered = false;

	$(elements).click(function(){

		if(!triggered){
			triggered = true;
			window._gaq.push(['_trackEvent', event[0], event[1]]);
		}

	});

}

/*
* Usage lbSubmit(['1', '2'], data.id)
*/
function lbSubmit(event, data){

    window._gaq = window._gaq || [];
    if(data != undefined)
        window._gaq.push(['_trackEvent', event[0], event[1], data.toString()]);
    else
        window._gaq.push(['_trackEvent', event[0], event[1]]);
}

/*
* Usage lbClick('#usedOptionPrint a', ['5', '3'])
*/
function lbClick(element, event, data){

    window._gaq = window._gaq || [];
    $(element).click(function(){

        if($(element).data('lbIsActive') != true){

            $(element).data('lbIsActive', true);

            if(data != undefined)
                window._gaq.push(['_trackEvent', event[0], event[1], data.toString()]);
            else
                window._gaq.push(['_trackEvent', event[0], event[1]]);
        }
    });
}

/*
* Usage lbEvent(['9', '2']);
*/
function lbEvent(event, data){

    window._gaq = window._gaq || [];
	if(data != undefined)
		window._gaq.push(['_trackEvent', event[0], event[1], data.toString()]);
	else
		window._gaq.push(['_trackEvent', event[0], event[1]]);
}
