function highlightDot(nr, type)
{
	var dot = $('dot_' + nr);
	// if(parseInt(Element.getStyle(dot, 'width')) >= 16) {
	// 	return;
	// }
	
	var x = parseInt(Element.getStyle(dot, 'left'));
	var y = parseInt(Element.getStyle(dot, 'top'));
	var xOff = x-3;
	var yOff = y-3;
	var toW = 16;
	var toH = 16;
	var ext = '.png'
	
	if(isIE && IEOld) {
		var ext = '.gif'
	}

	if('current' == type) {
		toW = 24;
		toH = 24;
		xOff = x-2;
		yOff = y-2;
		ext = '.gif'
	}

	

	Element.setStyle(dot, {
		width:toW,
		height:toH,
		left:xOff+"px",
		top:yOff+"px",
		zIndex:1000,
		background: "url(../Images/" + type + "_big"+ext+") no-repeat"
	});

//	Element.show('info_'+nr);
}

function lowlightDot(nr, type)
{
	var dot = $('dot_' + nr);
	var x = parseInt(Element.getStyle(dot, 'left'));
	var y = parseInt(Element.getStyle(dot, 'top'));
	
	var toW = 10;
	var toH = 10;
	
	var xOff = 3;
	var yOff = 3;
	var ext = '.png'
	
	if(isIE && IEOld) {
		var ext = '.gif'
	}

	if('current' == type) {
		toW = 20;
		toH = 20;
		xOff = 2;
		yOff = 2;
		ext = '.gif'

	} 
	Element.setStyle(dot, {
		left:x+xOff+"px",
		top:y+yOff+"px",
		width:toW,
		height:toH,
		background: "url(../Images/" + type + ""+ext+")"
	});
}
var IEOld = false;
var isIE = false;
var posed = [];
function showInfo(nr, stop, xOffset, yOffset, isCurrent, data, language) {
	if (language == "de") {
		var printmap = "Karte drucken";
		var closewindow = "Fenster schließen";
	} else {
		var printmap = "print map";
		var closewindow = "close window";
	}
	var dot = $('dot_' + nr);
	var info = $('info_' + nr);
	if(!posed[nr]) {
		var x = parseInt(Element.getStyle(dot, 'left'));
		var y = parseInt(Element.getStyle(dot, 'top'));
		var xOff = x-3;
		var yOff = y-3;
		var infoHeight = parseInt(Element.getHeight(info));
		var infoWidth = parseInt(Element.getWidth(info));
		var infoX = xOff + 11;
		var infoY = (y-infoHeight+7);
		var flip = $('flip_'+nr);
		infoinnerHTML = "";
		infoinnerHTML += "<input type=\"hidden\" value=\""+ posed[nr]+"\" id=\"positioned_"+nr+"\"></span>";
		infoinnerHTML += "<input type=\"hidden\" name=\"flip_" + nr + "\" value=\"" + flip.value + "\" id=\"flip_" + nr + "\">";
		infoinnerHTML += "<div class=\"bubble\">";
		infoinnerHTML += "<blockquote>";
		infoinnerHTML += "<table><tr><td><div class=\"datele\">"+data['date']+"</div></td>";
//nav
		infoinnerHTML += "<td><div class=\"nav\"><nobr><a href=\"print.php?id=" + nr + "\" target=\"_blank\">"+printmap+"</a>";
		infoinnerHTML += "&nbsp;¦&nbsp;";
		infoinnerHTML += "<a href=\"#\" onClick=\"Element.hide('info_' + " + nr + ");return false;\" id=\"close_" + nr + "\">"+closewindow+"</a></nobr></div></td></tr></table>";
//endnav


		infoinnerHTML += "<div class=\"map\"><a href=\"images.php?id=" + nr + "\" class=\"map_link\"><img src=\"../Images/Maps/m" + nr + ".png\" width=\"300\" height=\"180\"/></a></div>";

		infoinnerHTML += "<div class=\"addressle\"><a href=\"images.php?id=" + nr + "\" class=\"map_link\"><nobr>"+data['text']+"</nobr></a></div>";
		infoinnerHTML += "</blockquote>";
		infoinnerHTML += "</div>";
		infoinnerHTML += "<div class=\"arrow\" id=\"arrow_" + nr + "\">&nbsp;</div>";
		
		info.innerHTML = infoinnerHTML;

		if((xOff + infoWidth) > 1000) {
			var overlap = (xOff + infoHeight) - 950;
		 	var arrow = $('arrow_' + nr);
			if(!isIE) {
			 	Element.setStyle(arrow, {
			 		marginLeft: overlap + "px"
			 	});
				infoX -= overlap;
			}
		}
	

		if((yOff - infoHeight) < 20) {
		 	var arrow = $('arrow_' + nr);
		 	Element.setStyle(arrow, {
		 		background: "url(../Images/tip_dg_flip.gif)",
		 		marginTop: -(infoHeight) + "px",
		 		width:35 + "px"
		 	});
			infoY += infoHeight + 35;
		}
		
		if((yOff - infoHeight) < 20) {
			yOffset = 35;
			flip.value = "true";
		} else {
			infoX += xOffset || 0;
			infoY += yOffset || 0;
		}
	
		var infoZindex = Element.getStyle(info, 'zIndex');
		if(infoZindex == 1100) {
			infoZindex = 1001;
		} else {
			infoZindex = 1100;
		}
	
		if(isCurrent) {
			infoX += 4;
			infoY += 3;
		}
	
		Element.setStyle(info, {
			left:infoX+"px",
			top:infoY+"px",
			zIndex:infoZindex
		});
	}
	
	//ugly hack, but works
	 if(stop == null) {
		showInfo(nr, true, xOffset, yOffset, isCurrent, data, language);
	} else {
		Element.toggle(info);
		posed[nr] = "true";
	}
}

function generateRandomDot(nr)
{
	window.setTimeout("foundRandomPlace("+nr+")", 3000)
}

function foundRandomPlace(nr)
{
	new Effect.Opacity('generator', {duration:1.5, from:0.7, to:0.0, afterFinish:function() {
		Element.hide('generator');
		$('dot_'+nr).removeClassName('upcoming');
		$('dot_'+nr).addClassName('current');
		new Effect.Scale('dot_' + nr, 100, {scaleFromCenter:true, duration:0.5, afterFinish:function() {
			var dot = $('dot_'+nr);
			dot.onmouseover = function() { highlightDot($('currentDot').value, 'current') };
			dot.onmouseout = function() { lowlightDot($('currentDot').value, 'current') };
			Element.show('upload');
		}});
	}});
}

