/**
 * @author Fullsix S.p.a. - http://www.fullsix.it
 * @requires Google Analytics
 * @version 0.3
 *
 * In this new version is possible to track multiple account in the same time
 * defining an Array of trackcodes
 *
 */
var pageTrackers = [];
/**
 * Initialize pageTracker GA object
 *
 */
function ga_init() {
	try {
		var codes = ga_get_site_trackcodes();
		for(var i in codes){
			pageTrackers[i] = _gat._createTracker(codes[i], 'alfaGATracker_'+i);
			pageTrackers[i]._setDomainName(ga_get_domainName());
		}
		ga_track(document.location.href);
	} catch (err) {
		try {
			console.log(err)
		} catch (error) {
		}
	}
}
/**
 * Call pageTracker instance tracking method
 *
 * @param pageURL
 *            URL to track
 *
 */
function ga_track(pageURL) {
	//pageTracker._trackPageview(ga_cleanTrackString(pageURL));
	for(var i in pageTrackers){
		pageTrackers[i]._trackPageview(ga_cleanTrackString(pageURL));
	}
}
/**
 * Clean URL from query string parameters
 *
 * @param pageURL
 *            URL to clean
 * @return URL without query string parameters
 *
 */
function ga_cleanTrackString(pageURL) {
	if (pageURL.indexOf("?") != -1)
		return pageURL.substring(0, pageURL.indexOf("?"));
	else
		return pageURL;
}
/**
 * Get the GA track codes related to domain
 *
 * @return GA track codes for domain
 *
 */
function ga_get_site_trackcodes() {
	var trackcodes = [];
	var domain = document.location.hostname;
	domain = domain.toLowerCase();
	if (domain.substring(domain.lastIndexOf("-") + 1) == "jp.com") {
		trackcodes = [ "UA-15921497-9" ];
	} else {
		domain = domain.substring(domain.lastIndexOf(".") + 1);
		switch (domain.toLowerCase()) {
		case "it":
			trackcodes = [ "UA-15921497-1" ];
			break;
		case "com":
			trackcodes = [ "UA-15921497-2" ];
			break;
		case "uk":
			trackcodes = [ "UA-15921497-6" ];
			break;
		case "de":
			trackcodes = [ "UA-15921497-5" ];
			break;
		case "es":
			trackcodes = [ "UA-15921497-8" ];
			break;
		case "pt":
			trackcodes = [ "UA-15921497-3" ];
			break;
		case "ie":
			trackcodes = [ "UA-15921497-7" ];
			break;
		case "at":
			trackcodes = [ "UA-15921497-4" ];
			break;
		case "lu":
			trackcodes = [ "UA-15921497-21" ];
			break;
		case "be":
			trackcodes = [ "UA-15921497-10" ];
			break;
		case "ch":
			trackcodes = [ "UA-15921497-15" ];
			break;
		case "dk":
			trackcodes = [ "UA-15921497-16", "UA-8063260-6" ];
			break;
		case "cz":
			trackcodes = [ "UA-15921497-17" ];
			break;
		case "hu":
			trackcodes = [ "UA-15921497-20" ];
			break;
		case "sk":
			trackcodes = [ "UA-15921497-18" ];
			break;
		case "tr":
			trackcodes = [ "UA-15921497-19","UA-20054825-1" ];
			break;
		case "fr":
			trackcodes = [ "UA-15921497-11" ];
			break;
		case "nl":
			trackcodes = [ "UA-15921497-12" ];
			break;
		case "gr":
			trackcodes = [ "UA-15921497-13" ];
			break;
		case "pl":
			trackcodes = [ "UA-15921497-14" ];
			break;
		case "mk":
			trackcodes = [ "UA-15921497-22" ];
			break;
		case "se":
			trackcodes = [ "UA-15921497-23","UA-8063260-5" ];
			break;
		}
	}
	return trackcodes;
}
/**
 * Get related domain name for domain
 *
 * @return domainName for domain
 *
 */
function ga_get_domainName() {
	var domainName = null;
	var domain = document.location.hostname;
	domain = domain.toLowerCase();
	if (domain.substring(domain.lastIndexOf("-") + 1) == "jp.com") {
		domainName = "auto";
	} else {
		domain = domain.substring(domain.lastIndexOf(".") + 1);
		switch (domain.toLowerCase()) {
		case "com":
			domainName = ".alfaromeo.com";
			break;
		case "it":
		case "uk":
		case "de":
		case "es":
		case "pt":
		case "ie":
		case "at":
		case "lu":
		case "be":
		case "ch":
		case "dk":
		case "cz":
		case "hu":
		case "sk":
		case "tr":
		case "fr":
		case "nl":
		case "gr":
		case "pl":
		case "mk":
		case "se":
			domainName = "auto";
			break;
		default:
			domainName = "auto";
			break;

		}
	}
	return domainName;
}
