/** COMMON TRACKING JS **/
var host = "tracker.marinsoftware.com";

if (typeof override != "undefined") {
	host = override;
}

function checkHiddenForms(clientId) {
	var forms = document.getElementsByTagName('form');
	for (var i = 0; i < forms.length; i++) {
		//wrap try around this later.
		if (forms[i].getAttribute('name') == 'utmform') {
			handleDynamicForm(clientId, forms[i]);
		}
	}	
}

function trackPage(clientId) {
	var new_url = window.location.protocol 
			+ '//'+host+'/tracker/track?'
			+ 'act=1'
			+ '&cid=' + clientId
			+ '&page=' + escape(window.location) 
			+ '&ref=' + escape(document.referrer)
			+ '&dn=' + getDomain();	
	addPixel(new_url);
	checkHiddenForms(clientId);
}

function trackPageSelective(clientId, ids) {
	if (!ids) {
		ids = '';
	}
	var splitIds = ids.split(",");
	var testedId = false;
	var foundMatch = false;
	for (var i in splitIds) {
		var idParam = splitIds[i];
		testedId = true;
		if (window.location.toString().indexOf(idParam) > -1) {
			foundMatch = true;
			break;
		}
	}
	if (foundMatch || !testedId) {
		var new_url = window.location.protocol 
				+ '//'+host+'/tracker/track?'
				+ 'act=1'
				+ '&cid=' + clientId
				+ '&page=' + escape(window.location) 
				+ '&ref=' + escape(document.referrer)
				+ '&dn=' + getDomain();	
		addPixel(new_url);
	}
	checkHiddenForms(clientId);
}

function handleDynamicForm(clientId, form_el) {
	if (form_el.utmtrans != undefined && form_el.utmtrans.value != undefined) {
		var url = window.location.protocol 
			+ '//'+host+'/tracker/track?'
			+ 'act=2'
			+ '&cid=' + clientId
			+ '&trans=' + escape(form_el.utmtrans.value) 
			+ '&page=' + escape(window.location)
			+ '&dn=' + getDomain();
		addPixel(url);
	}
}

function addPixel(url) {
        document.write("<img src=" + url + " border=0 height=1 width=1>");
}

function getDomain() {
	var d = document.domain;
	if (d.substring(0,4)=="www.") {
		d=d.substring(4,d.length)
	}
	return d;
}
