function Preloader() {
	
	var sbild;
	var _self = this;
	
	this.setAll = function(bild) {
		sbild = new Image();
		sbild.src = bild;
		
		///hide layer...show preloader
		//opacity('middle',100,0,100)
		//opacity('preloader_mitte',0,100,100);
		
		
		document.getElementById('middle').style.visibility = "hidden";
		changeOpac(0,'middle');
	
		changeOpac(100,'preloader_mitte');
		//spinner(0,'asc');
		document.getElementById('preloader_mitte').style.visibility = "visible";
		
		
		preload();
	}
	
		
	var preload = function() {
		if(!is_loaded()) {
			setTimeout( function() { _self.loaderhelper() },200);	///juhuuuu
		} else {
			//hide preloader...show layer
			
			//document.getElementById('preloader_mitte').style.visibility = "hidden";
			opacity('preloader_mitte',100,0,500);
			window.clearTimeout(spintimer);
			isloading = false;
			
			
		}
	}

	
	var is_loaded = function() {		
		return sbild.complete;
	}
	
	this.loaderhelper = function() {
		preload();
	}
		
}

function opacity(id, opacStart, opacEnd, millisec) { 
		//speed for each frame 
		var speed = Math.round(millisec / 100); 
		var timer = 1; 
	
		//determine the direction for the blending, if start and end are the same nothing happens 
		if(opacStart > opacEnd) { 
			for(i = opacStart; i >= opacEnd; i--) { 
				setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
				timer++; 
			}
			
		} else if(opacStart < opacEnd) { 
			for(i = opacStart; i <= opacEnd; i++) 
				{ 
				setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
				timer++; 
			}
		}
		
} 

//change the opacity for different browsers 
	function changeOpac(opacity, id) { 
		var object = document.getElementById(id).style; 
		object.opacity = (opacity / 100); 
		object.MozOpacity = (opacity / 100); 
		object.KhtmlOpacity = (opacity / 100); 
		object.filter = "alpha(opacity=" + opacity + ")";
		
		if(id == "preloader_mitte" && opacity == 0) {
			changeOpac(0,'middle');
			document.getElementById('middle').style.visibility = "visible";
			this.opacity('middle',0,100,500);
		}
	}
	
	function spinner(id,order) {
		
		if(order == "asc") {
			id++;
		} else {
			id--;	
		}
		
		if(id > 5) {
			id = 5;
			order = "desc";	
		}
		
		if(id < 1) {
			id = 1;
			order = "asc";	
		}
		
		window.clearTimeout(spintimer);
		document.getElementById('spinner').src = "images/pre_"+id+".png";
		spintimer = window.setTimeout("spinner("+id+",'"+order+"')",80);
	}

