//window.onload = init;

function init() {
	if (!document.getElementsByTagName) return null;
	replaceProfileLinks();
}

function listItem(text, url) {
	this.text = text;
	this.url = url;
}

var show      = false;
var listItems = new Array()
	listItems[0] = new listItem("Bekijk profiel", "/profile/$id");
	listItems[1] = new listItem("Zoek postings", "/postings/$id");
	listItems[2] = new listItem("Zoek foto's", "/fotos/user/$id");
	listItems[3] = new listItem("Stuur MpD Mail", "/mail/send/$id");

function replaceProfileLinks() {
	aas = document.getElementsByTagName('a');
	for (i = 0; i < aas.length; i++) {
		if(aas[i].href.indexOf('profiler') > 0) {
			var ahref = aas[i].href
			var uid = ahref.substring(ahref.lastIndexOf('/') + 1, ahref.length)
			aas[i].href = "javascript:void("+ uid+")";
			aas[i].onclick = dropProfile;
			aas[i].onmouseover = function(){showTrue();window.status=this.title; return true;};
			aas[i].onmouseout = delProfile;
		}
	}
}

function dropProfile() {
	var y, up = false;
	if (document.getElementById('dropdown')) { show = false; hideCont() }

	var posX = getX(this) - getX(document.getElementById('content'));
	var posY = getY(this) - getY(document.getElementById('content')) + 15;
	var uid  = this.href.substring(this.href.lastIndexOf('(') + 1, this.href.length - 1);

	if (self.innerHeight){ y = self.innerHeight + self.pageYOffset; }
		else if (document.documentElement && document.documentElement.clientHeight) {y = document.documentElement.clientHeight + document.documentElement.scrollTop;}
		else if (document.body) {y = document.body.clientHeight + document.body.scrollTop; }

	if(posY + 400 > y){ posY -= 100; up = true; }

	var list = document.createElement('ul');
		for(y = 0; y < 4; y++) {
			var listitem = document.createElement('li');
			list.appendChild(listitem);
		}

	var fakediv = document.createElement('div');
		fakediv.setAttribute("id", "fake");
		fakediv.style.left = posX - 40 + 'px';
		fakediv.style.top = posY - 5 - (up?25:0) + 'px';
		fakediv.onmouseover = delProfile;
		document.getElementById('content').appendChild(fakediv);

	var cont = document.createElement('div');
		cont.setAttribute("id", "dropdown");
		cont.appendChild(list);
		cont.onmouseover = showTrue;
		document.getElementById('content').appendChild(cont);

	var drop = document.getElementById('dropdown');
		drop.style.left = posX + 'px';
		drop.style.top = posY + 'px';

	for(z = 0; z < listItems.length;z++) {
		var text = document.createTextNode(listItems[z].text);
		var link = document.createElement("a");
			link.appendChild(text);
			link.setAttribute("href", listItems[z].url.replace('$id', uid));
		drop.firstChild.childNodes[z].appendChild(link);
	}
}

function getX(el)
{
	var posX = el.offsetLeft;
	var par = el.offsetParent;
	while (par != null) {
		posX += par.offsetLeft;
		par = par.offsetParent;
	}
	return posX;
}

function getY(el)
{
	var posY = el.offsetTop;
	var par = el.offsetParent;
	while (par != null) {
		posY += par.offsetTop;
		par = par.offsetParent;
	}
	return posY;
}

function delProfile() {
	show = false;
	window.status="";
	setTimeout('hideCont()', 200);
}

function showTrue() {
	show = true;
}

function hideCont() {
	if(!show && document.getElementById('dropdown')) {
		document.getElementById('content').removeChild(document.getElementById('dropdown'));
		document.getElementById('content').removeChild(document.getElementById('fake'));
	}
}
