
var DL_bOpera = window.opera ? true : false;
var DL_bNS6 = (navigator.vendor == ("Netscape6") || navigator.product == ("Gecko"));
var DL_bNotIE = (DL_bNS6 || DL_bOpera);
var DL_bNS4 = document.layers ? true : false;
var DL_bIE = document.all ? true : false;
var DL_bMac = (navigator.appVersion.indexOf("Mac") != -1);
var DL_bIEM = DL_bIE && DL_bMac;
var DL_bKonqueror = (navigator.userAgent.indexOf("Konqueror")!=-1);

var DL_Allow = ((DL_bIE && !DL_bMac) || DL_bNS6);

var DL_nCurrentX = 0;
var DL_nCurrentY = 0;
var DL_oLayer = null;
var DL_aElements = new Array();
var DL_sPipe = " | ";
var DL_sImageId;

function DL_fGrabEl(e) {
	DL_oLayer = (DL_bNS6) ? e.target : (event.srcElement);
	if(!DL_bNS6) event.cancelBubble = true;
	var oDinerDad = DL_aElements['elDinerDad'];
	var oDiner = DL_aElements['elDiner'];

	while (DL_oLayer != oDinerDad && DL_oLayer != oDiner)
	{
		DL_oLayer = getParentElement(DL_oLayer);
		if (DL_oLayer==null)return true;
	}
	
	var oDoc = document;
	DL_nCurrentX = (DL_bNS6) ? e.pageX : (event.clientX + oDoc.body.scrollLeft);
    DL_nCurrentY = (DL_bNS6) ? e.pageY : (event.clientY + oDoc.body.scrollTop);
	oDoc.onmousemove = DL_fMoveEl;
	oDoc.onmouseup = DL_fDropEl;
	return false;
}

function DL_fMoveEl(e) {
	var oDoc = document;
	var nNewX = (DL_bNS6) ? e.pageX : (event.clientX + oDoc.body.scrollLeft);
    var nNewY = (DL_bNS6) ? e.pageY : (event.clientY + oDoc.body.scrollTop);

	var nDistanceX = (nNewX - DL_nCurrentX);
    var nDistanceY = (nNewY - DL_nCurrentY);
    DL_nCurrentX = nNewX;
    DL_nCurrentY = nNewY;

	DL_oLayer.style.left = (parseInt(DL_oLayer.style.left) + nDistanceX) + "px";
	DL_oLayer.style.top = (parseInt(DL_oLayer.style.top) + nDistanceY) + "px";
    
	DL_fUpdate();
	return false;
}

function DL_fUpdate()
{
	var sLineBrk = "\n";
	var sImageTag = DL_sImageId;
	var oImage = DL_aElements[DL_sImageId];
	var sDisplay = "";
	var sRealX = sRealY = "";
	var nRealX = nRealY = 0;

	var nOffsetLeft = oImage.offsetLeft;
	sRealX += nOffsetLeft;
	nRealX += nOffsetLeft;

	var nOffsetTop = oImage.offsetTop;
	sRealY += nOffsetTop;
	nRealY += nOffsetTop;
	
	var oParElement = oImage.offsetParent;
	sParent = sImageTag + ".offsetParent";
		sDisplay += sImageTag + ".offsetLeft = " + sRealX
				 + sLineBrk + sImageTag + ".offsetTop = " + sRealY

	if(oParElement)
	{

		sDisplay += sLineBrk + sParent + " = " + oParElement.tagName
                    
		var nParentX, nParentY, sOffset;
		while (oParElement != null)
		{
			nParentX = oParElement.offsetLeft;
			nParentY = oParElement.offsetTop;
			nRealX += nParentX;
			sRealX += (" + " + nParentX);
			nRealY += nParentY;
			sRealY += (" + " + nParentY);
	
			sDisplay += sLineBrk + sParent + ".offsetLeft = " + nParentX
					+ sLineBrk + sParent + ".offsetTop = "  + nParentY;
	
			oParElement = oParElement.offsetParent;
			sParentTag = (oParElement==null) ? "null" : oParElement.tagName;
			sParent += ".offsetParent";    
			sDisplay += sLineBrk + sParent + " = " + sParentTag
		}
	}
	else
	{
		sDisplay += sLineBrk + sParent + " = " + "null"
	}

	sDisplay += (sLineBrk+sLineBrk+"Left (x) Page Position of TheWRImage = "+nRealX+" ("+sRealX+")"+sLineBrk+"Top (y) Page Position of TheWRImage = "+nRealY+" ("+sRealY+")");
	var oTA = DL_aElements["TaVal"];
	if(oTA)
	{

		oTA.value = sDisplay;
		if(!DL_bNotIE){setTimeout('DL_aElements["TaVal"].style.height = (DL_aElements["TaVal"].scrollHeight + 60)+"px"',100)}else{DL_aElements["TaVal"].style.height = "300px"};
	}
}

function DL_fDropEl()
{
	DL_oLayer = null;
	document.onmousemove = document.onmouseup = null;
	return false;
}

function DL_GetElementLeft(oElement)
{
	if (arguments.length==0)
	{
		oElement = this;
	}
	var nLeftPos = oElement.offsetLeft;
	var oParElement = oElement.offsetParent;
    while (oParElement != null)
	{
        nLeftPos += oParElement.offsetLeft;
        oParElement = oParElement.offsetParent;
    }
    return nLeftPos;
}

function DL_GetElementTop(oElement)
{
    if (arguments.length==0)
	{
		oElement = this;
	}
	var nTopPos = oElement.offsetTop;
	var oParElement = oElement.offsetParent;
    while (oParElement != null)
	{
        nTopPos += oParElement.offsetTop;
        oParElement = oParElement.offsetParent;
    }
    return nTopPos;
}

function getParentElement(el)
{
	if(DL_bNotIE)
	{
		oParent = el.parentNode;
		if(!oParent || !oParent.tagName)oParent=null;
	}
	else
	{
		oParent = el.parentElement;
	}
	return oParent;
}
	
function DL_fInitIt3()
{
	var oDinerDad = DL_AddElement('elDinerDad');
	var oDiner = DL_AddElement('elDiner');
	oDiner.style.left="30px"
	oDiner.style.top = "125px";

	var oImage = DL_AddElement('IMpos');
	DL_AddElement('TaVal');
	DL_AddElement(DL_sImageId);
	DL_AddElement("TaPar");
	DL_AddElement("TaNode");
	DL_AddElement("TaOff");
	with(oDinerDad)
	{
		onselectstart = DL_onSelectStart;
		onmousedown = DL_fGrabEl;
		with(style)
		{
			left = DL_GetElementLeft(oImage) + "px";
			top = DL_GetElementTop(oImage) + "px";
			height = '200px';
			width = '300px';
			border="1px black solid";
			padding = '10px';
			backgroundColor="#EEEEEE";
			cursor="move";
			visibility="visible";
		}
	}
	oDiner.style.background = "white";
	doPar();
	doOff();
	CalcNodes();
	DL_fUpdate();
}

function DL_onSelectStart()
{
	return false;
}

function DL_AddElement(sElementId)
{
	DL_aElements[sElementId] = DL_bNS6 ? document.getElementById(sElementId) : document.all(sElementId);
	return DL_aElements[sElementId];
}

function DL_fInitIt2(){
	DL_AddElement(DL_sImageId);
	DL_AddElement("TaPar");


	DL_AddElement("TaNode");
	DL_AddElement("TaOff");
	DL_AddElement("TaPos");

	
	DL_DoSpecs();
    doPar();
	doOff();
	CalcNodes();
}

function DL_AppendHTML(sElementId, sHTML)
{
	var oElement = DL_aElements[sElementId];
	if(oElement)
	{
		var sOldHTML = '';//oElement.innerHTML;
		oElement.innerHTML = sOldHTML + sHTML;
	}
}

function DL_DoSpecs()
{
	var sLineBrk = "<BR>";
	var sImageTag = DL_sImageId;
	var oImage = DL_aElements[DL_sImageId];
	var sDisplay = "";
	var sRealX = sRealY = "";
	var nRealX = nRealY = 0;

	var nOffsetLeft = oImage.offsetLeft;
	sRealX += nOffsetLeft;
	nRealX += nOffsetLeft;

	var nOffsetTop = oImage.offsetTop;
	sRealY += nOffsetTop;
	nRealY += nOffsetTop;
	
	var oParElement = oImage.offsetParent;
	sParent = sImageTag + ".offsetParent";

	sDisplay += sImageTag + ".offsetLeft = " + sRealX
			 + sLineBrk + sImageTag + ".offsetTop = " + sRealY
			 + sLineBrk + sParent + " = " + oParElement.tagName
                    
	var nParentX, nParentY, sOffset;
	while (oParElement != null)
	{
		nParentX = oParElement.offsetLeft;
		nParentY = oParElement.offsetTop;
		nRealX += nParentX;
		sRealX += (" + " + nParentX);
		nRealY += nParentY;
		sRealY += (" + " + nParentY);

		sDisplay += sLineBrk + sParent + ".offsetLeft = " + nParentX
				+ sLineBrk + sParent + ".offsetTop = "  + nParentY;

		oParElement = oParElement.offsetParent;
		//sParentTag = (oParElement==null) ? "null" : oParElement.tagName;
		sParentTag = (oParElement==null) ? "null" : oParElement.tagName;
		sParent += ".offsetParent";    
		sDisplay += sLineBrk + sParent + " = " + sParentTag
	}

	sDisplay += (sLineBrk+sLineBrk+"Left (x) Page Position of TheWRImage = "+nRealX+" ("+sRealX+")"+sLineBrk+"Top (y) Page Position of TheWRImage = "+nRealY+" ("+sRealY+")");
	DL_AppendHTML("TaPos", sDisplay);
}

function doPar()
{
	var sTagName;
	var oImage = DL_aElements[DL_sImageId];

	var sHTML = DL_sImageId;
	var sParent = "";
	var oParElement = oImage.parentElement;
	while (oParElement != null)
	{
		sTagName = oParElement.tagName;
		sParent += DL_sPipe + sTagName;
		oParElement = oParElement.parentElement;
	}
	if(sParent)
	{
		//if(oParElement == null)oParElement = "null";
		sHTML += (sParent + DL_sPipe + oParElement);
	}
	else
	{
		sHTML += (DL_sPipe + "<i>n/a</i>");
	}
	DL_AppendHTML("TaPar", sHTML);
}

function CalcNodes()
{
	var oImage = DL_aElements[DL_sImageId];
	var sParent = DL_sImageId;
	var oParElement = oImage.parentNode;
	if(!oParElement)
	{
		sParent += DL_sPipe + "n/a";
		DL_AppendHTML("TaNode", sParent);
		return;
	}
	while (oParElement != document && oParElement != null)
	{
		sParent += DL_sPipe + oParElement.tagName;
		oParElement = oParElement.parentNode;
	}
	sParent += DL_sPipe + (oParElement ? "document" : "null");
	DL_AppendHTML("TaNode", sParent);
}



function doOff()
{
	var oImage = DL_aElements[DL_sImageId];
	var sOffset = DL_sImageId;
	var oParElement = oImage.offsetParent;
	
	while (oParElement != null)
	{
		sOffset += DL_sPipe + oParElement.tagName;
		oParElement = oParElement.offsetParent;
	}

	sOffset += DL_sPipe + oParElement;
	DL_AppendHTML("TaOff", sOffset);
}
   
if(DL_Allow)
{

var DL_InitIt = (DL_nCurrentPage >= 3 && DL_nCurrentPage <= 5) ? DL_fInitIt2 : DL_fInitIt3;
onload = function (){
	DL_sImageId = "TheWRImage";
	if(window.bord)bord.style.width = bord.offsetWidth + 16;
	setTimeout('DL_InitIt()',10);
}
}