var livestats=false;

function LiveStatsKeyValue(_k,_v){
    this.k=_k;
    this.v=_v;
}

function LiveStats(){

	var ls=false;
	var pingcount=0;

	this.init=function(){

	ls=this;

	if(!ls.readcookie('lsTracker')){
		    ls.createcookie('lsTracker', ls.randomstring(), 2);
		}

	}

	 this.addParam=function(arr,k,v){
	arr[arr.length]=new LiveStatsKeyValue(k,v);
	}

	this.randomstring=function(){
		var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
		var s = '';
		for (i = 0; i < 32; i++) {
		    var rnum = Math.floor(Math.random() * chars.length);
		    s += chars.substring(rnum, rnum + 1);
		        }
	        return s;
	    }

  
    this.getnavigatortoken=function(){
        if(window.opera || window.Opera){
            return 'O';
        }
        if(navigator.userAgent){
            return 'U';
        }
        return "X";
    }

    this.getlantoken=function(){
        return (navigator.browserLanguage || navigator.language || "");
    }

    this.readcookie=function(k) {
        var c=""+document.cookie;
        var ind=c.indexOf(k);
        if (ind==-1 || k==""){
            return "";
        }
        var ind1=c.indexOf(';',ind);
        if (ind1==-1){
            ind1=c.length;
        }
        return unescape(c.substring(ind+k.length+1,ind1));
    }

    this.createcookie=function(k,v,days){
        var exp='';
        if(days>0){
            var expires = new Date();
            expires.setDate(expires.getDate() + days);
            exp = expires.toGMTString();
        }
        cookieval = k + '=' + v + '; ' + ((exp)?('expires=' + exp + ' ;'):'') + 'path=/';
        document.cookie = cookieval;
    }

    this.request=function(url){

        var script=document.createElement('script');
        script.type="text/javascript";
        script.src = url;

	var heads=document.getElementsByTagName('head');

	if(heads.length>0){
	        heads[0].appendChild(script);
        }else{
		document.body.appendChild(script);
	}

    }

      this.track=function(){

        var date=new Date();

        var arr=new Array();

	ls.addParam(arr,'lsTracker', ls.readcookie('lsTracker'));
	ls.addParam(arr,'site', lsSite);
	ls.addParam(arr,'browser',ls.getnavigatortoken());
	ls.addParam(arr,'platform',navigator.platform);
	ls.addParam(arr,'language',ls.getlantoken());
	ls.addParam(arr,'pagetitle',document.title);
	ls.addParam(arr,'url',document.location.pathname);
	ls.addParam(arr,'referer',document.referrer);
	ls.addParam(arr,'screen',screen.width + 'x' + screen.height);
	ls.addParam(arr,'localtime',date.getHours()+':'+date.getMinutes());

        var c=0;

        c=0;

        var url='';
        for (c=0;c<arr.length;c++){
            url+="&"+encodeURIComponent(arr[c].k)+"="+encodeURIComponent(arr[c].v);
        }

        ls.request('http://livestats.enlh.com/track.php?ra='+ls.randomstring()+url);
    }
    
    this.ping=function(){
				
				pingcount+=1;
				if (pingcount>25)
					return;
					
        var date=new Date();

        var arr=new Array();

				ls.addParam(arr,'lsTracker', ls.readcookie('lsTracker'));
				ls.addParam(arr,'site', lsSite);
				ls.addParam(arr,'ping',pingcount);
				ls.addParam(arr,'localtime',date.getHours()+':'+date.getMinutes());

        var c=0;

        c=0;

        var url='';
        for (c=0;c<arr.length;c++){
            url+="&"+encodeURIComponent(arr[c].k)+"="+encodeURIComponent(arr[c].v);
        }

        ls.request('http://livestats.enlh.com/track.php?ra='+ls.randomstring()+url);
    }


}


livestats=new LiveStats();
livestats.init();
livestats.track();
setInterval(livestats.ping,12*1000);
