var no = 10; // schnee number
var speed = 4; // smaller number moves the shamrocks faster
var schneeflake = "schnee.gif";

var ns4up = (document.layers) ? 1 : 0; // browser sniffer
var moz   = (document.getElementById) ? 1 : 0;
var ie4up = (document.all) ? 1 : 0;


var dx, xp, yp; // coordinate and position variables
var am, stx, sty; // amplitude and step variables
var i, doc_width = 800, doc_height = 800;

if (ns4up)
{
	doc_width = self.innerWidth;
	doc_height = self.innerHeight;
}
else if(ie4up)
{
	doc_width = document.body.clientWidth;
	doc_height = document.body.clientHeight;
}
else if(moz)
{
	doc_width = document.body.clientWidth;
	doc_height = document.body.clientHeight;
	if(!doc_width && !doc_height)
	{
		doc_width = self.innerWidth;
		doc_height = self.innerHeight;
	}

	if(navigator.userAgent.indexOf("Mozilla") > -1 && uagent.indexOf("Opera")<1) var ns6up = 1;


}

dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();

for (i = 0; i < no; ++ i)
{
	dx[i] = 0; // set coordinate variables
	xp[i] = Math.random()*(doc_width-10); // set position variables
	yp[i] = Math.random()*doc_height;
	am[i] = Math.random()*20; // set amplitude variables
	stx[i] = 0.02 + Math.random()/10; // set step variables
	sty[i] = 0.7 + Math.random(); // set step variables
	if (ns4up)
	{ // set layers
		if (i == 0)
		{
			document.write("<layer name=\"dot"+ i +"\" left=\"15\" ");
			document.write("top=\"15\" visibility=\"show\"><img src=\"");
			document.write(schneeflake + "\" border=\"0\"></layer>");
		}
		else
		{
			document.write("<layer name=\"dot"+ i +"\" left=\"15\" ");
			document.write("top=\"15\" visibility=\"show\"><img src=\"");
			document.write(schneeflake + "\" border=\"0\"></layer>");
		}
	}
	else if (ie4up || moz)
	{
		if (i == 0)
		{
			document.write("<div id=\"dot"+ i +"\" style=\"position: ");
			document.write("absolute; z-index: "+ i +"; visibility: ");
			document.write("visible; top: 15px; left: 15px;\"><img src=\"");
			document.write(schneeflake + "\" border=\"0\"></div>");
		}
		else
		{
			document.write("<div id=\"dot"+ i +"\" style=\"position: ");
			document.write("absolute; z-index: "+ i +"; visibility: ");
			document.write("visible; top: 15px; left: 15px;\"><img src=\"");
			document.write(schneeflake + "\" border=\"0\"></div>");
		}
	}
}

function schneeNS()
{ // Netscape main animation function
	for (i = 0; i < no; ++ i)
	{ // iterate for every dot
		yp[i] += sty[i];
		if (yp[i] > doc_height-10)
		{
			xp[i] = Math.random()*(doc_width-am[i]-10);
			yp[i] = 0;
			stx[i] = 0.02 + Math.random()/10;
			sty[i] = 0.7 + Math.random();
			doc_width = self.innerWidth;
			doc_height = self.innerHeight;
		}
		dx[i] += stx[i];
		document.layers["dot"+i].top = yp[i];
		document.layers["dot"+i].left = xp[i] + am[i]*Math.sin(dx[i]);
	}
setTimeout("schneeNS()", speed);
}

function schneeIE()
{ // IE main animation function
	for (i = 0; i < no; ++ i)
	{ // iterate for every dot
		yp[i] += sty[i];
		if (yp[i] > doc_height-10)
		{
			xp[i] = Math.random()*(doc_width-am[i]-10);
			yp[i] = 0;
			stx[i] = 0.02 + Math.random()/10;
			sty[i] = 0.7 + Math.random();
			doc_width = document.body.clientWidth;
			doc_height = document.body.clientHeight;
		}
		dx[i] += stx[i];
		document.all["dot"+i].style.pixelTop = yp[i];
		document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]);
	}
setTimeout("schneeIE()", speed);
}

function schneeMoz()
{ // Mozilla main animation function
	for (i = 0; i < no; ++ i)
	{ // iterate for every dot
		yp[i] += sty[i];

		if (yp[i] > doc_height-10)
		{
			xp[i] = Math.random()*(doc_width-am[i]-10);
			yp[i] = 0;

			stx[i] = 0.02 + Math.random()/10;
			sty[i] = 0.7 + Math.random();
			doc_width = document.body.clientWidth;
			doc_height = document.body.clientHeight;
		}
		dx[i] += stx[i];
		document.getElementById("dot"+i).style.top = yp[i] + 'px';
		document.getElementById("dot"+i).style.left = xp[i] + am[i]*Math.sin(dx[i]) + 'px';
	}
setTimeout("schneeMoz()", speed);
}

if (ns4up)
{
	schneeNS();
}
else if (ie4up)
{
	schneeIE();
}
else if (moz)
{
	if(!ns6up) schneeMoz();
}

