function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
	{
		curleft += obj.x;
	}
	return curleft;
}
function flipstatus(id)
{
	var node = document.getElementById("h"+id);
	if(node.style.display == "none")
	{
		var img = document.getElementById("i"+id);
		img.src = "http://www.mmodb.com/minus.jpg";
		node.style.display = "block";
	} else
	{
		var img = document.getElementById("i"+id);	
		img.src = "http://www.mmodb.com/plus.jpg";
		node.style.display = "none";
	}
}
function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
	{
		curtop += obj.y;
	}
	return curtop;
}
function test()
{
	var w = document.myform.imagecount.selectedIndex;
	var chosen = document.myform.imagecount.options[w].text;
	var i;
	for(i = 0; i <= 10; i++)
	{
		var insert = document.getElementById('f'+(i-1));
		if (insert)
		{
			if (chosen < i)
			{
				insert.style.display = "none";
			} else
			{
				insert.style.display = "block";
			}
		}
	}
}
function clickapproveall(val)
{
	var cnt;
	for(cnt = 0; cnt < document.myform.length;cnt++)
	{
		var el = document.getElementById("approves"+cnt);
		if (el.type == 'checkbox')
		{
			el.checked = val;	
		}
		var el = document.getElementById("denys"+cnt);
		if (el.type == 'checkbox')
		{
			if (val != false)
			{
				el.checked = !val;	
			}
		}		
	}
}
function clickdenyall(val)
{
	var cnt;
	for(cnt = 0; cnt < document.myform.length;cnt++)
	{
		var el = document.getElementById("denys"+cnt);
		if (el.type == 'checkbox')
		{
			el.checked = val;	
		}
		var el = document.getElementById("approves"+cnt);
		if (el.type == 'checkbox')
		{
			if (val != false)
			{
				el.checked = !val;	
			}
		}		
	}
}
function addclick(map,e)
{
	if (!e) var e = window.event;
// gets the actual click point
xPosition = e.clientX?(e.clientX):document.getElementById("map"+map).offsetLeft;
yPosition = e.clientY?(e.clientY):document.getElementById("map"+map).offsetTop;
xPosition = xPosition - findPosX(document.getElementById("map"+map)) + document.documentElement.scrollLeft;
yPosition = yPosition - findPosY(document.getElementById("map"+map)) + document.documentElement.scrollTop;
//xPosition = xPosition - (document.body.scrollLeft * 2);
//yPosition = yPosition - (document.body.scrollTop * 2);
var cl = document.getElementById("click"+map);
var lvl = prompt("Level?","");
//set the hidden click input for that map
cl.value = cl.value + xPosition + "," + yPosition + ":" + lvl + "|";
document.myform.submit();
}
function setReply(id, tit)
{
	var pr = document.getElementById("parent");
	pr.value = id;
	var title = document.getElementById("title");
	title.value = "Re:" + tit;
}
function detect(e)
{
	if (!e) var e = window.event;
// gets the actual click point
x = e.clientX?(e.clientX):document.getElementById("map").offsetLeft;
y = e.clientY?(e.clientY):document.getElementById("map").offsetTop;
x = x - findPosX(document.getElementById("map")) + document.documentElement.scrollLeft;
y = y - findPosY(document.getElementById("map")) + document.documentElement.scrollTop;
var cl = document.getElementById("click");
var click = cl.value;
var clicks = click.split(";");
var data = document.getElementById("data").value;
var dts = data.split("|");
for (var n = 0; n < clicks.length;n++)
{
	var names = clicks[n].split("{");
	var name = names[1];
	var pos = names[0].split("|");
	for(var m = 0; m < pos.length; m++)
	{
		var lvls = pos[m].split(":");
		var ps = lvls[0].split(",");
		if (names[1])
		{
			var tp = names[1].split("[");
		}	
		if ((ps[0] > (x - 8)) && (ps[0] < (x + 8)) && (ps[1] > (y - 8)) && (ps[1] < (y + 8)))
		{
			if (tp[1] == "Mob")
			{
				overlib('lvl: ' + lvls[1] + '<br>' + dts[n], CAPTION,(tp[0] + '(' + tp[1] + ')'));
			} else
			{
				overlib(dts[n], CAPTION,(tp[0] + '(' + tp[1] + ')'));
			}
			return;
		} else
		{
			nd();
		}
	}
}
}
function linkclick(e)
{
	if (!e) var e = window.event;
// gets the actual click point
x = e.clientX?(e.clientX):document.getElementById("map").offsetLeft;
y = e.clientY?(e.clientY):document.getElementById("map").offsetTop;
x = x - findPosX(document.getElementById("map")) + document.documentElement.scrollLeft;
y = y - findPosY(document.getElementById("map")) + document.documentElement.scrollTop;
var cl = document.getElementById("click");
var click = cl.value;
var clicks = click.split(";");
var data = document.getElementById("data").value;
var ids = document.getElementById("ids").value;
var idsa = ids.split("|");
var dts = data.split("|");
for (var n = 0; n < clicks.length;n++)
{
	var names = clicks[n].split("{");
	var name = names[1];
	var pos = names[0].split("|");
	for(var m = 0; m < pos.length; m++)
	{
		var lvls = pos[m].split(":");
		var ps = lvls[0].split(",");
		if (names[1])
		{
			var tp = names[1].split("[");
		}		
		if ((ps[0] > (x - 8)) && (ps[0] < (x + 8)) && (ps[1] > (y - 8)) && (ps[1] < (y + 8)))
		{
			var link = "http://ddo.mmodb.com";
			if (tp[1] == "Mob")
				link += "/bestiary/";
			else if (tp[1] == "NPC")
				link += "/npcs/";	
			else if (tp[1] == "Object")
				link += "/objects/";
			var ts = tp[0].replace(/\s/g,"-");
			link += ts.toLowerCase() + "-" + idsa[n] + ".php";			
			top.location.href = link;
			return;
		}
	}
}
}
function setmouse(e)
{
	document.getElementById("map").onmousemove = detect(e);
	return;
}
function clearmap(map)
{
//clear the hidden click input for that map
var cl = document.getElementById("click"+map);
cl.value = "";
document.myform.submit();
}
function setpage($page)
{
	var pg = document.getElementById("page");
	pg.value = $page;
	document.myform.submit();
	return;	 
}
function addsort(type,column)
{
	var up = document.getElementById("ASC");
	var down = document.getElementById("DESC");
	document.getElementById("first").value = column;
	var rep = new RegExp(column);
	if(type == "ASC")
	{
		up.value += column + "|";
		down.value = down.value.replace(rep,"");
	} else
	{
		down.value += column + "|";
		up.value = up.value.replace(rep,"");
	}
	document.myform.submit();
	return;	
}