/* ###################### Search form trackers #####################*/

var ga_sliderTotalModified = false;
var ga_sliderMonthModified = false;
var ga_inputTotalModified  = false;
var ga_inputMonthModified  = false;

var ga_fuelTypeModified = false;
var ga_driveTypeModified = false;
var ga_gearTypeModified = false;
var ga_co2SliderModified = false;
var ga_co2InputModified = false;

var ga_showDetailsModified = false;
var ga_hideDetailsModified = false;

/* ### userCarSearch specifics ### */
var ga_yearModelSliderModified = false;
var ga_yearModelInputModified 	= false;

var ga_milageSliderModified = false;
var ga_milageInputModified 	= false;

var ga_dealerSelectorModified = false;
var ga_openTextSearchModified = false;

function GACarSearchEventTrackers(event, eventType){

	// Skip tracking if events are triggered by load of saved search or cookie
	if(!myCarSearch || myCarSearch.enabled == false) return;

	var url = document.location.pathname;
	
	var commandArray = [];
	
	if(url == '/nybil/'){
		var category = 'Nybilsøk - Bruk av søkefunksjon';
		
	}else if(url == '/bruktbil/'){
		var category = 'Bruktbilsøk - Bruk av søkefunksjon';
	}
	
	switch(event){
		case 'make'				:
				if($('select#brand').val().substr(2)){
					var make = $('select#brand').val().substr(2);
				}else{
					var make = 'alle merker';
				}
				
				commandArray = [
    				  '_trackEvent',
    				  category,
    				  'Merke',
    				  make
    			];
  				
  				console.log("_gaq.push([" + commandArray + "]);");
  				_gaq.push(commandArray);
				
				break;
		case 'model'			:
				if($('select#model').val().substr(2)){
					var model = $('select#model').val().substr(2);
				}else{
					var model = 'alle modeller';
				}
				
				commandArray = [
  				  '_trackEvent',
  				  category,
  				  'Modell',
  				  model				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				break;

		case 'city'			:
			if($('select#location').val()){
				var city = $('select#location').val()+'_'+$('select#location option:selected').text();
			}else{
				var city = 'Velg sted';
			}
			
			commandArray = [
				  '_trackEvent',
				  category,
				  'Sted',
				  city				                
			];
			
			console.log("_gaq.push([" + commandArray + "]);");
			_gaq.push(commandArray);
			break;
				
		case 'priceSliderTotal'	: 
				if(!ga_sliderTotalModified){					
					
					commandArray = [
	  				  '_trackEvent',
	  				  category,
	  				  'Prisnivå',
	  				  'Slider - Totalbeløp'				                
					];
					
					console.log("_gaq.push([" + commandArray + "]);");
					_gaq.push(commandArray);
					
					
					ga_sliderTotalModified = true;
				}
				break;
		case 'priceSliderMonth'	:
				if(!ga_sliderMonthModified){										
					
					commandArray = [
	  				  '_trackEvent',
	  				  category,
	  				  'Prisnivå',
	  				  'Slider - Månedsbeløp'				                
					];
					
					console.log("_gaq.push([" + commandArray + "]);");
					_gaq.push(commandArray);
					
					ga_sliderMonthModified = true;
				}
				break;
		case 'priceInputTotal'	:
				if(!ga_inputTotalModified){
					
					commandArray = [
	  				  '_trackEvent',
	  				  category,
	  				  'Prisnivå',
	  				  'Inputfelt - Totalbeløp'				                
					];
					
					console.log("_gaq.push([" + commandArray + "]);");
					_gaq.push(commandArray);
					
					ga_inputTotalModified = true;
				}
				break;
		case 'priceInputMonth'	: 
				if(!ga_inputMonthModified){
					commandArray = [
	  				  '_trackEvent',
	  				  category,
	  				  'Prisnivå',
	  				  'Inputfelt - Månedsbeløp'				                
					];
					
					console.log("_gaq.push([" + commandArray + "]);");
					_gaq.push(commandArray);
					ga_inputMonthModified = true; 
				}
				break;

		case 'bodyType':			
				
				commandArray = [
				  '_trackEvent',
				  category,
				  'Biltype',
				  eventType				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");				
				_gaq.push(commandArray);
			break;

		case 'fuelType'			: 
			if(!ga_fuelTypeModified){				
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Drivstoff/Hjuldrift/Gir',
					  'Drivstoff'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_fuelTypeModified = true;
			}
				break;
		case 'driveType'		:
			if(!ga_driveTypeModified){				
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Drivstoff/Hjuldrift/Gir',
					  'Hjuldrift'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_driveTypeModified = true;
			}
				break;
		case 'gearType'			: 
			if(!ga_gearTypeModified){				
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Drivstoff/Hjuldrift/Gir',
					  'Gir'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_gearTypeModified = true;
			}
				break;
	
		case 'co2Slider'		:
			if(!ga_co2SliderModified){				
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Miljø',
					  'Slider'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_co2SliderModified = true;
			}
				break;
		case 'co2Input'			:
			if(!ga_co2InputModified){				
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Miljø',
					  'Inputfelt'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_co2InputModified = true;
			}
				break;				

		case 'showDetails'		: 
			if(!ga_showDetailsModified){				
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Vis/Skjul flere Valg',
					  'Vis'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_showDetailsModified = true;
			}
			break;
			
		case 'hideDetails'		:
			if(!ga_hideDetailsModified){				
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Vis/Skjul flere Valg',
					  'Skjul'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);				
				
				ga_hideDetailsModified = true;
			}
			break;
			
		/* ### usedCarSearch specifics ### */	
			
		case 'yearSlider'		:
			if(!ga_yearModelSliderModified){				
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Årsmodell',
					  'Slider'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_yearModelSliderModified = true;
			}
			break;

		case 'yearInput'		:
			if(!ga_yearModelInputModified){
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Årsmodell',
					  'Inputfelt'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_yearModelInputModified = true;
			}
			break;
			
		case 'mileageSlider'		:
			if(!ga_milageSliderModified){				
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Kilometerstand',
					  'Slider'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_milageSliderModified = true;
			}
			break;

		case 'mileageInput'		:
			if(!ga_milageInputModified){								
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Kilometerstand',
					  'Input'				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_milageInputModified = true;
			}
			break;
			
		case 'dealerSelector'		:				
			if($('select#location option:selected').text()){
				var dealer = $('select#location option:selected').text();
			}else{
				var dealer = 'alle forhandlere';
			}
						
			commandArray = [
				  '_trackEvent',
				  category,
				  'Forhandler',
				  dealer			                
			];
			
			console.log("_gaq.push([" + commandArray + "]);");
			_gaq.push(commandArray);
			
			break;

		case 'textSearchInput'		:
			if(!ga_openTextSearchModified){
				if($('div.div-11 input').val()){
					var freetext = $('div.div-11 input').val();
				}else{
					var freetext = 'tom streng';
				}
				
				commandArray = [
					  '_trackEvent',
					  category,
					  'Fritekstsøk',
					  freetext				                
				];
				
				console.log("_gaq.push([" + commandArray + "]);");
				_gaq.push(commandArray);
				
				ga_openTextSearchModified = true;
			}
			break;
	}	
}


/* ## Search result "pageview" trackers ## */

var ga_trackSearchEvent = function (carSearchType,infoString) {
	
	// Skip tracking if events are triggered by load of saved search or cookie
	if(typeof(ga_runPageTracker) == "undefined") return;
	if(!ga_runPageTracker) return;				//	if(!myCarSearch || !mySearch.savedSearch) return;
	
	
	var url = location.pathname;
	url += "?q=" + infoString;
	url += '&kategori=' + carSearchType
	
	// Handle zero hits
	if(searchResults && searchResults.length == 0) {
		url += '&søketreff=0-treff';
	}
	
	// Handle paging
	if(mySearch && mySearch.offset > 0) {
		url += '&side=' + (mySearch.offset+1);
	}

	var commandArray = [
		  '_trackPageview',
		  url	                
	];
	
	console.log("_gaq.push([" + commandArray + "]);");
	_gaq.push(commandArray);	
}


/* ###################### Contact form trackers #####################*/

var ga_trackContactClickEvent = function() {
	var url = location.pathname;	
	
	var commandArray = [
  		  '_trackPageview',
  		  url + 'kontaktskjema'	                
  	];
	
	console.log("_gaq.push([" + commandArray + "]);");
	_gaq.push(commandArray);
}

var ga_trackContactSendEvent = function() {
	var url = location.pathname;
	
	var commandArray = [
  		  '_trackPageview',
  		  url + 'kontaktskjema/takk-for-henvendelsen'               
  	];
	
	console.log("_gaq.push([" + commandArray + "]);");
	_gaq.push(commandArray);
}


