/*function wf_spider(entity){
	var spider = $(entity);
	var steps = 8;
	var spideroffset = 10;
	var timeperstep = 20;

	var documenttop = 0;
	var spidertop = 0;

	var process = 0;
	var direction = 0;
	var currpos = 0;
	var endpos = 0;
	var stepoffset = 0;
	
	this.repos = spider_positioning;
	this.check = update_position_vars;

	function spider_positioning(){
		update_position_vars();
		if((process==0)&&(spidertop!=documenttop)){
			process=1;
			direction=(documenttop>spidertop)?1:-1;

			stepoffset = Math.round((documenttop-spidertop)/steps);
			currpos = spidertop;
			endpos = documenttop;

			spider_movement();
		}
	}

	function spider_movement(){
			currpos+=stepoffset;
	
			if(direction>0){
				if(currpos > endpos){
					currpos = endpos;
					process=0;
					spider_positioning();
				}
			}else{
				if(currpos < endpos){
					currpos = endpos;
					process=0;
					spider_positioning();
				}
			}

			$('blabla').value+=currpos + ' / ' + endpos + '\n';
			
			spider_render();
			
		if(process!=0){
			setTimeout(spider_movement,timeperstep);
		}
	}

	function update_position_vars(){
		var docoffs = document.viewport.getScrollOffsets();
		documenttop = docoffs.top;
		var spideroffs = spider.positionedOffset();
		spidertop = spideroffs.top - spideroffset;
	}
	
	function spider_render(){
		spider.style.top = (currpos + spideroffset) + 'px';
	}
}
*/
function wf_spider(entity){
	var spider = $(entity);
	var steps = 8;
	var spideroffset = 10;
	var timeperstep = 20;
	var startY = -205;
	var d = document;
	var pos_y = startY;

	function spider_render(y){
		Element.setStyle(spider,{
			top:y+"px"
		});
	};

	function spider_positioning(){
		var docoffs = document.viewport.getScrollOffsets();
		var pY = docoffs.top; 
		pos_y += (pY + startY - pos_y)/8;
		spider_render(pos_y);	
		setTimeout(spider_positioning, timeperstep);
	}

	spider_positioning();
}
