function preload(pfad) {
	preloads = new Object();
	preloads[0] = new Image(); preloads[0].src = pfad + "sprechblase/ecke_ol.png";
	preloads[1] = new Image(); preloads[1].src = pfad + "sprechblase/oben.png";
	preloads[2] = new Image(); preloads[2].src = pfad + "sprechblase/ecke_or.png";
	preloads[3] = new Image(); preloads[3].src = pfad + "sprechblase/links.png";
	preloads[4] = new Image(); preloads[4].src = pfad + "sprechblase/rechts.png";
	preloads[5] = new Image(); preloads[5].src = pfad + "sprechblase/bottom_left.png";
	preloads[6] = new Image(); preloads[6].src = pfad + "sprechblase/unten.png";
	preloads[7] = new Image(); preloads[7].src = pfad + "sprechblase/ecke_ur.png";
	preloads[8] = new Image(); preloads[8].src = pfad + "sprechblase/mitte.png";
	preloads[9] = new Image(); preloads[9].src = pfad + "sprechblase/error.png";
	preloads[10] = new Image(); preloads[10].src = pfad + "sprechblase/fragezeichen.png";
	preloads[11] = new Image(); preloads[11].src = "blank.gif";
}

function tooltip(id , typ , box_type ,allgtext_head ,  allgtext )
{
	var elem = $(id);
	var check
	var text
	var error = 0

	if(box_type == undefined)
	{
		box_type = "error";
	}
	
	if(allgtext == undefined)
	{
		allgtext = "";
	}
	
	if($('error_layer') != undefined)
	{
		$('error_layer').remove();
		$('errorl').remove();
	}
	
	
	var typ_split = typ.split(",");

	for (var i=0;i<typ_split.length;i++)
	{
		if(typ_split[i] == "email")
		{
			 check = checkEMail(elem.value);

		}
		else if(typ_split[i] == "empty")
		{
			check = notEmpty(elem.value);

		}
		else if(typ_split[i] == "notwhitespace")
		{
			check = notWhitespace(elem.value);
		}
		else
		{
			check = false;
		}

		if(check == false)
		{
	
		   error = 1

		   var a = new Element("div" , { 'id': 'errorl'}).setStyle("");
		   var coords = elem.positionedOffset();
	
			var height = allgtext.match("#(.*)#");

			if(height != null)
			{
				height = height[1];
			}

		  //	a.innerHTML  = "<div id='error_layer' style='position:absolute;top:"+(coords[1] - 88)+"px;left:"+(coords[0] + elem.getWidth() - 15 )+"px;z-index:1;'><img id='test' src='http://192.168.2.1/versautes/templates/versautesschlafzimmer/images/onlyformtest.jpg' /></div>";
			a.innerHTML = "<div id='error_layer'  style='opacity: 1;position:absolute;top:"+(coords[1] - 80 - height)+"px;margin-left:"+(elem.getWidth()  )+"px;'>" + box(typ_split[i] , box_type , allgtext_head , allgtext) + "</div>"
			
			
			elem.insert({ before: a});
			
			Effect.Fade(a,{duration: 3, from: 0, to:10})
		}
		else
		{
			if(error != 1)
			{
				error = 0
			}
		}
		
	}
	
	if(error == 1)
	{
		elem.setStyle("border:2px solid red");
		return false;
	}
	else
	{
		elem.setStyle("border:2px solid green");
		return true;
	}
}

function notWhitespace(s)
{
	var a = false;
	var res = false;
	reg = new RegExp(/\s/);

	res = (reg.test(s));
	
	if(res == true)
	{
		return false;
	}
	else
	{
		return true;
	}
	
}

function notEmpty(s)
{
	if(s == "")
	{
		return false;
	}
	else
	{
		return true;
	}

}

function checkEMail(s)
{ 
	var a = false;
	var res = false;
	reg = new RegExp(/^((\"[\w-\s]+\")|([\w-]+(?:\.[\w-]+)*)|(\"[\w-\s]+\")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i );
	res = (reg.test(s));

	return(res);
}

function box(typ , boxtyp , allgtext_head , allgtext)
{
	//var box = '<div style="visibility: visible; opacity: 1; position: absolute; margin-left: 187px; top: 52px;" class="tipsbox" id="diverroremail">'
		text_head = new Array();
		
		text_head["empty"] 			= "Dieses Feld muss ausgefüllt sein"
		text_head["email"] 			= "Bitte gib eine richtige E-Mail an"
	 	text_head["notwhitespace"]	= "Bitte keine Leerzeichen eingeben."
	 	
	 	text_bsp = new Array();
	 	
	 	text_bsp["email"]			= "beispiel@example.com";
	 	text_bsp["empty"]			= "";
	 	text_bsp["notwhitespace"]	= "richtig: Susi - falsch Su si";
		
		if(boxtyp == undefined)
		{
			boxtyp = "error";
		}
		
		if(allgtext_head != undefined && allgtext != undefined)
		{
			text_head[typ] = allgtext_head
			text_bsp[typ] = allgtext
		
		}
		
		var img_name = text_bsp[typ].match("IMG(.*)IMG");

		if(img_name != null)
		{
			text_bsp[typ] = "<img src='images/" + img_name[1] + "' />";
		}	
		
		var box = '<table class="tipsbox" border="0" cellpadding="0" cellspacing="0">'
		box = box + '<tbody>'
		box = box +	'<tr>'
		box = box +		'<td border="0" class="tipsbox_top_left"></td>'
		box = box +		'<td class="tipsbox_top"></td>'
		box = box +		'<td class="tipsbox_top_right"></td>'
		box = box +	'</tr>'
		box = box +	'<tr>'
		box = box +		'<td class="tipsbox_left"></td>'
		box = box +		'<td class="tipsbox_inner">'
		box = box +			'<div class="tipsbox_' + boxtyp + '"></div>'
		box = box +				'<p>'+ text_head[typ] + ' <br>'
		box = box +					'<span>' + text_bsp[typ] + '</span>'
		box = box +				'</p>'
		box = box +		'</td>'
		box = box +		'<td class="tipsbox_right"></td>'
		box = box +	'</tr>'
		box = box +	'<tr>'
		box = box +		'<td colspan="2" class="tipsbox_mark"></td>'
		box = box +		'<td class="tipsbox_bottom_right"></td>'
		box = box +	'</tr>'
		box = box + '</tbody>'
		box = box + '</table>'
		//box = box + '</div>';
		
	return box
}

