/**********************************************
* Cross browser cursor trailer script- By Brian Caputo (bcaputo@icdc.com)
* Visit Dynamic Drive (http://www.dynamicdrive.com/) for full source code
* Modified Dec 31st, 02" by DD. This notice must stay intact for use
* Rewritten 2004-05-15 MCH - make callable from *.js
***********************************************/

var offsetx=0; //x offset of trail from mouse pointer
var offsety=0; //y offset of trail from mouse pointer
var rate=50;
var ie5fix1=0;
var ie5fix2=0;
var A=document.getElementById;
var B=document.all;           
var nos=0;
var wid=50;
var hei=40;
var rightedge=0;
var bottomedge=0;

function getXpos(N){
	if (A)
		return parseInt(document.getElementById(N).style.left)
	else if (B)
		return parseInt(B[N].style.left)
}

function getYpos(N){
	if (A)
		return parseInt(document.getElementById(N).style.top)
	else if (B)
		return parseInt(B[N].style.top)
}

function moveContainer(N,DX,DY){
	c=(A)? document.getElementById(N).style : (B)? B[N].style : '';
	if (!B){
		rightedge=window.innerWidth-wid-20;
		bottomedge=window.pageYOffset+window.innerHeight-hei;
	}
	c.left=Math.min(rightedge, DX+offsetx);
	c.top=Math.min(bottomedge, DY+offsety);
}

function cycle(){
	if (document.all&&window.print){
		ie5fix1=document.body.scrollLeft;
		ie5fix2=document.body.scrollTop;
	}
	for (i=0;i<(nos-1);i++){
		moveContainer('CUR'+i,getXpos('CUR'+(i+1)),getYpos('CUR'+(i+1)))
	}
}

function newPos(e){
	moveContainer('CUR'+(nos-1),(B)?event.clientX+ie5fix1:e.pageX+2,(B)?event.clientY+ie5fix2:e.pageY+2)
}

function getedgesIE(){
	rightedge=document.body.clientWidth-wid;
	bottomedge=document.body.scrollHeight-hei;
}

function init() {
	nos=6;
	rightedge=B? document.body.clientWidth-wid : window.innerWidth-wid-20;
	bottomedge=B? document.body.scrollTop+document.body.clientHeight-hei : window.pageYOffset+window.innerHeight-hei;
	if (B){
		window.onload=getedgesIE;
		window.onresize=getedgesIE
	}
	document.onmousemove=newPos;
	setInterval('cycle()',rate);
}


// eof