var element_tracker = new Class({
	params: {},
	initialize: function(params){
		var aTariffBoxes = $$('.tariffToggle');
		var aTariffTracking = $$('.tariffTracking');
		var formTracking = $$('input[type=submit]');
		
		aTrackingElements = aTariffBoxes.concat(aTariffTracking,formTracking);	
		
		for (var i = 0; i < aTrackingElements.length; i++) {
			new Tracker_Element(aTrackingElements[i], params.tariffName);
		}	
	}
});

var Tracker_Element = new Class({
	initialize: function(element, tariffName){
		this.element = element;
		this.tariffName = tariffName;
		this.setupObservers();
	},
	setupObservers: function(){
		this.element.addEvent('click', this.callTracking.bind(this));
	},
	callTracking: function(){
		var elementClass = this.element.getProperty('class');
		
		if(elementClass == 'tariffToggle'){
			tariffName = this.element.id;
			//alert('changed tariff on choice: '+tariffName);
			cmCreatePageElementTag(tariffName,"FreeSim");
			_gaq.push(['_trackEvent', 'Tariff Change', 'Changed Tariff', tariffName]);
		}else if(elementClass == 'tariffTracking'){
			tariffName = this.element.id.replace('tariff_name_','');
			//alert('Clicked through to form page: '+tariffName);
			_gaq.push(['_trackEvent', 'Tariff Select', 'Go to Form', tariffName]);
		}else if(this.element.id == 'request_submit'){
			//alert('Submit form page: '+this.tariffName);
			_gaq.push(['_trackEvent', 'Submit', 'Form Completed', this.tariffName]);
		}else if(this.element.id == 'send_submit'){
			//alert('Submit STF form page: '+this.tariffName);
			_gaq.push(['_trackEvent', 'Submit', 'STF Form Completed', this.tariffName]);
		}
	}
});


