// JavaScript Document
function addLoadListener(fn)
{
	if(typeof window.addEventListener != 'undefined')
	{
		window.addEventListener('load',fn,false);
	}
	else if (typeof document.addEventListener != 'undefined')
	{
		document.addEventListener('load', fn, false);
	}
	else if (typeof window.attachEvent != 'undefined')
	{
		window.attachEvent('onload', fn);
	}
	else
	{
		var oldfn = window.onload;
		if(typeof window.onload != 'function')
		{
			window.onload = fn;
		}
		else
		{
			window.onload = function()
			{
				oldfn();
				fn();
			};
		}
	}
};
function attachEventListener(target, eventType, functionRef, capture){
	if(typeof target.addEventListener != "undefined"){
		target.addEventListener(eventType, functionRef, capture);
	}
	else if (typeof target.attachEvent != "undefined"){
		target.attachEvent("on" + eventType, functionRef);
	}
	else {
		eventType = "on" + eventType;
		
		if(typeof target [evetType] == "function"){
			var oldListener = target[eventType];
			target[eventType] = function(){
				oldListener();
				return functionRef;
			};
		}
		else {
			target[eventType] = functionRef;
		}
	}
	return true;
}
function getScrollingPosition(){
	var position = [0,0];
	if (typeof window.pageYOffset != "undefined"){
		position = [window.pageXOffset, window.pageYOffset];
	} else if (typeof document.documentElement.scrollTop != "undefined" && document.documentElement.scrollTop > 0) {
		position = [document.documentElement.scrollLeft, document.documentElement.scrollTop];
	} else if (typeof document.body.scrollTop != "undefined") {
		position = [document.body.scrollLeft, document.body.scrollTop];
	}
	
	return position;
}
	

function changeBorder(){
	var inblockdiv = document.getElementById('inblock');
	var aanch = inblockdiv.getElementsByTagName('a');
	for(var i=0;i<aanch.length;i++){
		attachEventListener(aanch[i], "mouseover", popdiv, false);
		//attachEventListener(aanch[i], "mousemove", pos, false);
		//attachEventListener(aanch[i], "mouseout", dropdiv, false);
	};
	return true;
};


function popdiv(eventType){
	var scrollingPosition = getScrollingPosition();
	var cursorPosition = [0,0];
	
	if(typeof eventType.pageX != "undefined" && typeof eventType.x != "undefined"){
		cursorPosition[0] = eventType.pageX;
		cursorPosition[1] = eventType.pageY;
	} else {
		cursorPosition[0] = eventType.clientX + scrollingPosition[0];
		cursorPosition[1] = eventType.clientY + scrollingPosition[1];
	}
	if(typeof eventType.srcElement!="undefined"){
		var bc = eventType.srcElement;
		var inblockdiv = document.getElementById('inblock');
		var aanch = inblockdiv.getElementsByTagName('a');
		for(var i=0;i<aanch.length;i++){
			if(aanch[i].getAttributeNode("href").value==bc){
				var bcg = aanch[i].getAttributeNode("name").value;
				attachEventListener(aanch[i], "mousemove", pos, false);
				attachEventListener(aanch[i], "mouseout", dropdiv, false);
			}
		}
	} else {
		var bcg = this.getAttribute("name");
		attachEventListener(this, "mousemove", pos, false);
		attachEventListener(this, "mouseout", dropdiv, false);
	}


	var newAnchor = document.createElement("div");
	var parent = document.getElementsByTagName('body')[0];
	var newText = document.createTextNode("Specification: " + bcg);
	
	var newP = document.createElement("p");
	var newChild = parent.appendChild(newAnchor);
	var newPp = newChild.appendChild(newP);
	newP.appendChild(newText);

	newChild.setAttribute('id','overr');
	newChild.style.left = cursorPosition[0] + 20 + "px";
	newChild.style.top = cursorPosition[1] - 80 + "px";
	var inblockdiv = document.getElementById('inblock');
	
	return true;
	
};
function dropdiv(eventType){
	var inbl = document.getElementById('overr');
	var parent = document.getElementsByTagName('body')[0];	
	var cler = parent.removeChild(inbl);

	return false;
}
function pos(eventType){
	var scrollingPosition = getScrollingPosition();
	var cursorPosition = [0,0];
	
	if(typeof eventType.pageX != "undefined" && typeof eventType.x != "undefined"){
		cursorPosition[0] = eventType.pageX;
		cursorPosition[1] = eventType.pageY;
	} else {
		cursorPosition[0] = eventType.clientX + scrollingPosition[0];
		cursorPosition[1] = eventType.clientY + scrollingPosition[1];
	}
	
	var dChild = document.getElementById('overr');
	dChild.style.left = cursorPosition[0] + 20 + "px";
	dChild.style.top = cursorPosition[1] - 80 + "px";
	
	return cursorPosition;
}

addLoadListener(changeBorder);