/* =====================================================================
  CoolNicks Stats     ver 1.05     21st Aug 2006
  Copyright (c) 2005 Nick Dell (CoolNicks). All rights reserved.

  The script contained herein is the property of Nick Dell (CoolNicks),
  You are not permitted to copy, transmit, show, adapt or change in
  any way the content of these scripts for any purpose whatsoever without 
  the prior written permission of the Nick Dell (CoolNicks).

  Sign up at http://www.coolnickswebstats.com
====================================================================== */

var cns_jsv="-";
var cns_flv="-";
var cns_swv="-";
var cns_scriptver="1.05";
var cns_scriptloc="http://service.coolnicks.co.uk/";

function cns_getflashver() {
 var n=navigator;
 if (n.plugins && n.plugins.length) {
  for (var ii=0;ii<n.plugins.length;ii++) {
   if (n.plugins[ii].name.indexOf('Shockwave Flash')!=-1) {
    cns_flv=n.plugins[ii].description.split('Shockwave Flash ')[1];
    break;
   }
  }
 }

 if ((navigator.userAgent.indexOf('MSIE') != -1) && (navigator.userAgent.indexOf('Win') != -1)) {
   document.writeln('<scr' + 'ipt language="VBscript">');
   document.writeln('on error resume next');
   document.writeln('set theobj = CreateObject("ShockwaveFlash.ShockwaveFlash")');
   document.writeln('if (IsObject(theobj)) then');
   document.writeln('cns_flv = hex(theobj.FlashVersion())');
   document.writeln('end if');
   document.writeln('</scr' + 'ipt>');
 }
 return "flv="+cns_flv;
}

function cns_browserinfo() {
 var cns_sr="-",cns_wr="-",cns_sc="-",cns_ul="-",cns_fl="-",cns_je="-";
 var n=navigator;
 if (self.screen) {
  cns_sr=screen.width+"x"+screen.height;
  cns_sc=screen.colorDepth;
 } else if (self.java) {
  var j=java.awt.Toolkit.getDefaultToolkit();
  var s=j.getScreenSize();
  cns_sr=s.width+"x"+s.height;
 }

 if (window.innerWidth && window.innerHeight) {
   cns_wr=window.innerWidth+"x"+window.innerHeight
 } else if (document.body) {
   cns_wr=document.body.offsetWidth+"x"+document.body.offsetHeight
 }

  for (var i=5;i>=0;i--) {
   var t="<scr" + "ipt language='JavaScript1."+i+"'>cns_jsv='1."+i+"';</scr" + "ipt>";
   document.write(t);
   if (cns_jsv!="-") break;

 }
 if (n.language) { cns_ul=n.language.toLowerCase(); }
 else if (n.browserLanguage) { ul=n.browserLanguage.toLowerCase(); }
 cns_je=n.javaEnabled()?1:0;

 return "sr="+cns_sr+"&wr="+cns_wr+"&sc="+cns_sc+"&ul="+cns_ul+"&je="+cns_je+"&jsv="+cns_jsv;
}

function cns_windowdetails() {

 var cns_dh="-",cns_ds="-",cns_dr="-",cns_dt="-",cns_dp="-";

 if (document.domain && document.domain!="") cns_dh=escape(cns_stripDomain());
 if (document.location.search && document.location.search!="") cns_ds=escape(document.location.search);
 if (document.referrer && document.referrer!="") cns_dr=escape(document.referrer);
 if (document.title && document.title!="") cns_dt=escape(document.title);
 if (document.location.pathname && document.location.pathname!="") cns_dp=escape(document.location.pathname);

 return "dh="+cns_dh+"&dr="+cns_dr+"&ds="+cns_ds+"&dt="+cns_dt+"&dl="+cns_dp;

}

function cns_getshockver() {
 var n=navigator;
 if (n.plugins && n.plugins.length) {
  for (var ii=0;ii<n.plugins.length;ii++) {
   if (n.plugins[ii].name.indexOf('Shockwave for Director')!=-1) {
    cns_swv=n.plugins[ii].description.split('Macromedia Shockwave for Director Netscape plug-in, version ')[1];
    break;
   }
  }
 }

 if ((navigator.userAgent.indexOf('MSIE') != -1) && (navigator.userAgent.indexOf('Win') != -1)) {

   document.writeln('<scr' + 'ipt language="VBscript">');
   document.writeln('on error resume next');
   document.writeln('set theobj = CreateObject("SWCtl.SWCtl")');
   document.writeln('if (IsObject(theobj)) then');
   document.writeln('cns_swv = theobj.ShockwaveVersion("")');
   document.writeln('end if');
   document.writeln('</scr' + 'ipt>');
 }
 return "swv="+cns_swv;
}

function cns_setSessCookie(CValue) {
  	document.cookie = "cnstsess=" + escape(CValue) + "; path=/; domain="+cns_stripDomain();
}

function cns_setPermCookie(CValue) {
  	document.cookie = "cnstperm=" + escape(CValue) + "; path=/; expires=Wed, 1 Jan 2020 00:00:00 GMT; domain="+cns_stripDomain();
}

function cns_getCookie(CName){
	if (document.cookie.length > 0){
		TRKbegin = document.cookie.indexOf(CName+"=");
	    if (TRKbegin != -1) {
			TRKbegin += CName.length+1; 
			TRKend = document.cookie.indexOf(";", TRKbegin);
			if (TRKend == -1) TRKend = document.cookie.length;
    	  	return unescape(document.cookie.substring(TRKbegin, TRKend));
		}
		return null; 
  	}
	return null; 
}

function cns_newuniquesting(){
  TRKnow = new Date();
  var TRKrandomnumber=Math.floor(Math.random()*10000);
  TRKuserid = "cnst_" + TRKnow.getTime() +"r"+ TRKrandomnumber;
  return TRKnow.getTime() +"r"+ TRKrandomnumber;
}

function cns_getRandomNum(lbound, ubound) {
  return (Math.floor(Math.random() * (ubound - lbound)) + lbound);
}

function cns_getRandomChar() {
  var charSet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  return charSet.charAt(cns_getRandomNum(0, charSet.length));
}

function cns_getPassword(length) {
  var cns_rc = "";
  for (var idx = 1; idx < length; ++idx) {
    cns_rc = cns_rc + cns_getRandomChar();
  }
  return cns_rc;
}

function cns_stripDomain() {
  var d=document.domain;
  if (d.substring(0,4)=="www.") {
   d=d.substring(4,d.length);
  }
 return d;
}

function cns_rootDomain() {
  var d=document.domain;
  if ( d.indexOf(".") > 0 ) {
   d=d.substr(d.indexOf(".")+1);
  }
 return d;
}

function cns_dostats(){
  var cns_stringoutput='';
  var cns_cksess=cns_getCookie('cnstsess');
  var cns_ckperm=cns_getCookie('cnstperm');

  if (cns_cksess==null) {
   cns_cksess=cns_getPassword(15);
   cns_setSessCookie(cns_cksess);
   cns_stringoutput = 'new=1&'+cns_getflashver()+'&'+cns_browserinfo()+'&'+cns_windowdetails()+'&';
  } else {
   cns_stringoutput = 'new=0&'+cns_windowdetails()+'&';
  }
  if (cns_ckperm==null) {
   cns_ckperm=cns_getPassword(15);
   cns_setPermCookie(cns_ckperm);
  }
  cns_stringoutput+='permid='+cns_ckperm+'&sessid='+cns_cksess+'&sv='+cns_scriptver;
  var cns_i2=new Image(1,1);
  cns_i2.src=cns_scriptloc+'service.asp?'+cns_stringoutput;
}
cns_dostats();