window._onDomReady = function(fn)
{
	if(document.addEventListener) document.addEventListener("DOMContentLoaded", fn, false);
	else document.onreadystatechange = function(){
		if(document.readyState == "complete") {
			fn();
		}
	}
}
window._onDomReady(function() { 
	hashDetector(); 
	setInterval("hashDetector();",1000); 
	var loader = document.createElement("script");
	loader.type="text/javascript";
	loader.src="http://tracker.mylo.bg/trackData.js?"+(new Date()).getTime();
	document.body.appendChild(loader);
});
var recentHash = "";
function hashDetector() {
 if (window.location.hash==recentHash) {
   return 
 } else {
	if(window.location.hash.substring(0,5) == "#mylo") {
		recentHash = window.location.hash;
		/* Set new referral*/
		var date = new Date();
		date.setTime(date.getTime()+(15*24*60*60*1000));
		document.cookie = "myloref="+window.location.hash.substring(6)+("; expires="+date.toGMTString())+"; path=/";
	}
 }
}
var myloAffiliates = {
	onLoader:[],
	actionDone:function(id,tag) {
		if(document.cookie.indexOf("myloref=") > -1) {			
			var date = new Date();
			/* send track to server */
			var campaignHash = myloAffiliates.getCampaignHash();
			var campaignId = campaignHash[0] == undefined ? "" : campaignHash[0];
			var refId = campaignHash[1] == undefined ? "" : campaignHash[1];
			hash = myloAffiliatesData.hash;
			if(campaignId == "" || refId == "") return;
			var uri = "http://tracker.mylo.bg/atrx?cid="+campaignId+"&t="+escape(tag)+"&h="+hash+"&rf="+escape(refId)+"&re="+escape(document.referrer)+"&"+date.getTime();
			(new Image()).src = uri;
			//document.body.innerHTML += "<a href='"+uri+"'>asdf tracked!</a>";
			
			
			/* clear cookie */
			date.setTime(date.getTime()-(100*24*60*60*1000));
			document.cookie = "myloref=0"+("; expires="+date.toGMTString())+"; path=/";	
		}
	},
	getActiveCampaignId:function() {
		return myloAffiliates.getCampaignHash()[0];
	},
	getCampaignHash:function() {
		var cookies = document.cookie.split("; ");
		for(var i=0;i<cookies.length;i++) {
			var pair = cookies[i].split("=");
			if(pair[0] == "myloref")
				return pair[1].split("-");
		}
		return "";
	},
	doTracking:function() {
			var date = new Date();
			/* send track to server */
			var campaignHash = myloAffiliates.getCampaignHash();
			var campaignId = campaignHash[0] == undefined ? "" : campaignHash[0];
			var refId = campaignHash[1] == undefined ? "" : campaignHash[1];
			hash = myloAffiliatesData.hash;
			
			if(campaignId == "" || refId == "") return;
			
			var uri = "http://tracker.mylo.bg/trx?cid="+campaignId+"&h="+hash+"&rf="+escape(refId)+"&re="+escape(document.referrer)+"&"+date.getTime();
			(new Image()).src = uri;
			//document.body.innerHTML += "<a href='"+uri+"'>asdf</a>";
	},
	onLoad:function(fn) {
		this.onLoader.push(fn);
	},
	fireLoad:function() {
		for(var i=0;i<this.onLoader.length;i++)
			this.onLoader[i]();
	}
};