var snowmax=25; 
var snowcolor = new Array("#aaaacc","#ddddFF","#ccccDD");
var snowtype = new Array("Arial Black","Arial Narrow","Times","Comic Sans MS") 
var snowletter="*"; 
var sinkspeed=0.5;
var snowmaxsize=22;
var snowminsize=8; 
var snowingzone=0;


var snow = new Array(); 
var parent_height;  
var parent_width;  
var timer;  
var i_snow=0;  
var x_mv=new Array(); 
var crds=new Array(); 
var lftrght=new Array(); 



function randommaker(range) 
{ 
	rand=Math.floor(range*Math.random());  
	return rand;  
} 

function initsnow( $element ) 
{ 
	parent_height = $element.clientHeight;
	parent_width = $element.clientWidth; 
		
	var snowsizerange=snowmaxsize-snowminsize;

	for ( i=0; i <= snowmax; i++ ) 
	{ 
		$element.setStyle({ position:'relative' });
		
		var new_span = document.createElement( 'span');		
		new_span.setAttribute('id', 's'+i );
		$element.appendChild( new_span );
//
//		crds[i] = 0; 
//		lftrght[i] = Math.random()*15; 
//		x_mv[i] = 0.03 + Math.random()/10; 
//			
		snow[i] = $('s'+i);// new Array();
		snow[i].size = randommaker(snowsizerange)+snowminsize;
		snow[i].top = (snowmaxsize*(-1)) + randommaker(parent_height-2*snow[i].size);
		snow[i].sink = (sinkspeed*snow[i].size/5);
		snow[i].opacity = 0.95;
	
		if (snowingzone==1) 
			{ snow[i].left = randommaker(parent_width-snow[i].size);} 
		else if (snowingzone==2) 
			{ snow[i].left = randommaker(parent_width/2-snow[i].size);} 
		else if (snowingzone==3) 
			{ snow[i].left = randommaker(parent_width/2-snow[i].size)+parent_width/4;} 
		else if (snowingzone==4) 
			{ snow[i].left = randommaker(parent_width/2-snow[i].size)+parent_width/2;} 
		else
			{ snow[i].left = randommaker(parent_width);}

		$('s'+i).setStyle({
			position:'absolute',
  		top: snow[i].top +'px',
  		left: snow[i].left +'px',
  		fontSize: snow[i].size +'px',
  	  fontFamily: snowtype[randommaker(snowtype.length)],
  		color: snowcolor[randommaker(snowcolor.length)],
  		opacity: snow[i].opacity
//  		borderWidth: '1px',
//  		borderStyle: 'solid'
		});
		
		$('s'+i).innerHTML = snowletter;

	} 

	movesnow(); 
} 

function movesnow() 
{ 
	for (i=0;i<=snowmax;i++) 
	{ 
		if( snow[i].top + (snow[i].size*2) > parent_height )
		{ 
			snow[i].top = (randommaker(parent_height)*(-1)); 
			opacity: snow[i].opacity = 0.95;
		}
		else
		{	
			opacity: snow[i].opacity -= 0.005;
			snow[i].top += snow[i].sink; 
		}
		
					
		$('s'+i).setStyle({
  		top: snow[i].top +'px',
  		left: snow[i].left +'px',
  		opacity: snow[i].opacity
		});
		
//		zIndex: 
//			crds[i] += x_mv[i]; 
//			$('s'+i).posy+=$('s'+i).sink;
//			$('s'+i).style.left = $('s'+i).posx+lftrght[i]*Math.sin(crds[i]); 
//			$('s'+i).style.top=$('s'+i).posy;
//			
//			if ($('s'+i).posy>=parent_height-2*$('s'+i).size || parseInt($('s'+i).style.left)>(parent_width-3*lftrght[i]))
//			{ 
//					if (snowingzone==1) 
//					{ $('s'+i).posx = randommaker(parent_width-$('s'+i).size);  } 
//					
//					if (snowingzone==2) 
//						{$('s'+i).posx = randommaker(parent_width/2-$('s'+i).size); } 
//						
//					if (snowingzone==3) 
//						{$('s'+i).posx = randommaker(parent_width/2-$('s'+i).size)+parent_width/4; } 
//
//					if (snowingzone==4) 
//						{$('s'+i).posx = randommaker(parent_width/2-$('s'+i).size)+parent_width/2; } 
//
//					$('s'+i).posy=0;  
//			} 
	} 
					
	var timer=setTimeout("movesnow()",25);
} 
			


	
