/* parseQueryString
parses a string of key value pairs and returns them as an object
object[queryStringName] = queryStringValue
*/


getQueryString = function(ref) {
	var index = ref.indexOf("?");
	if (index < 0) {
		index = 0;
	} else {
		index += 1;
	}
	return ref.substring(index, ref.length);
	
}

parseQueryString = function(query) {
	
	var pairs = query.split('&');
	var obj = new Object();
	
	
	var len = pairs.length;
	for (var i=0; i < len; i++) {
		var arr = pairs[i].split('=');
		obj[arr[0]] = arr[1];
	}
	
	return obj;
	
	
}

addQuery = function(hrefLink, query) {
	var index = hrefLink.indexOf("?");
	var javascriptIndex = hrefLink.indexOf("javascript");
	var anchorIndex = hrefLink.indexOf("#");
	if (javascriptIndex >= 0 || anchorIndex >= 0) {
		return hrefLink;
	}
	
	if (index > 0) {
		hrefLink += "&"+query;
	} else {
		hrefLink += "?"+query;
	}

	return hrefLink;
	
}

addToLinks = function(query) {
	var hrefs = document.links;
		
	for (var i=0; i < hrefs.length; i++) {
		if (hrefs[i].href != "") {
			hrefs[i].href = addQuery(hrefs[i].href, query);		
		}
	}
}

updateLinks = function() {
	var query = getQueryString(window.location.search);
	objQuery = parseQueryString(query);
	if (objQuery.utm_source != undefined) {
		addToLinks("utm_source="+objQuery.utm_source);
	}
	if (objQuery.utm_term != undefined) {
		addToLinks("utm_term="+objQuery.utm_term);
	}
	
}

var objQuery;

updateLinks();


