// Dict Layer functions

function hideDict(layerName) {
        if (is.ns) document.getElementById(layerName).style.visibility = "hidden"
        else if (is.ie) document.all[layerName].style.visibility = "hidden"
}

function showDict(layerName) {
	if (is.ns) document.getElementById(layerName).style.visibility = "visible";
	else if (is.ie) document.all[layerName].style.visibility = "visible"
}

function dictLayerWrite(layerName,word,translation,etymologi) {
	html = '<table cellspacing="0" cellpadding="0" border="0">\n' +
	       '<tr><td width="288" height="16" valign="middle" align="right" class="popupheader">' +
	       '<A HREF="javascript:hide(\'' + layerName + '\')">' +
	       '<img src="images/popup/popoplukkeikon.gif" width="10" height="10" border="0"></A>' +
	       '<img src="images/1x1space.gif" width="5" height="1" border="0"></td></tr>' +
	       '<tr><td width="258" height="130" valign="top" align="left" class="popupbody">' +
	       '<table cellspacing="0" cellpadding="0" border="0">\n' +
	       '<tr><td width="258" height="23" valign="top"><SPAN id="jep" class="bold">' + word + ':</SPAN> ' + translation + '</td></tr>\n' +
	       '<tr><td width="258" height="50" valign="top">' + etymologi + '</td></tr>\n' +
	       '<tr><td width="258" height="2"><img src="images/popup/2x2tilstreg.gif" width="258" height="2" border="0"></td></tr>\n' +
	       '<tr><td width="258" height="25" valign="bottom"><A href="maoriwords.asp">' +
	       '<img src="images/popup/bogikon.gif" width="11" height="8" border="0"> Flere Maori ord</A></td></tr>\n' +
	       '</table></td></tr></table>'
	if (is.ns5) {
		document.getElementById("word").innerHTML = word + ':';
		document.getElementById("translation").innerHTML = translation;
		document.getElementById("etymologi").innerHTML = etymologi;
		
	}	
	else if (is.ns) {
		document.layers[layerName].document.open()
		document.layers[layerName].document.write(html)
		document.layers[layerName].document.close()
	}
	else if (is.ie) {
		document.all['word'].innerText = word + ':'
		document.all['translation'].innerText = translation
		document.all['etymologi'].innerHTML = etymologi
	}
}

function openDict(layerName,word,translation,etymologi) {
	dictLayerWrite(layerName,word,translation,etymologi)
	showDict(layerName)
}

// Init
function dictInit() {
	// Misc initialization
	dragActive = false
	if (is.ns) dictLayer = document.layers['dict1']
	else if (is.ie) dictLayer = document.all['dict1'].style
	dictLayer.pixelLeft = 132
	dictLayer.pixelTop = 107
	dictLayerHeight = 16
	dictLayerWidth = 290
	initMouseEvents()
}

// Mouse events
function initMouseEvents() {
	document.onmousedown = mouseDown
	document.onmousemove = mouseMove
	document.onmouseup = mouseUp
	if (is.ns) document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP)
}

function mouseDown(e) {
	if ((is.ns && e.which!=1) || (is.ie && event.button!=1)) return true
	var x = (is.ns)? e.pageX : event.x+document.body.scrollLeft
	var y = (is.ns)? e.pageY : event.y+document.body.scrollTop
	if (is.ns && e.target!=document) routeEvent(e)
	else {
		if (is.ns) {
			alert('')
		}
		else if (is.ie) {
			if (x>=dictLayer.pixelLeft && x<=dictLayer.pixelLeft+dictLayerWidth && y>=dictLayer.pixelTop && y<=dictLayer.pixelTop+dictLayerHeight) {
				dragOffsetX = x-dictLayer.pixelLeft
				dragOffsetY = y-dictLayer.pixelTop
				dragActive = true
				return false
			}
		}
		else return true
	}
}

function mouseMove(e) {
	var x = (is.ns)? e.pageX : event.x+document.body.scrollLeft
	var y = (is.ns)? e.pageY : event.y+document.body.scrollTop
	if (is.ns && e.target!=document) routeEvent(e)
	else { 
		if (dragActive) {
			if (is.ns) {
			   dictLayer.left = x-dragOffsetX
			   dictLayer.top = y-dragOffsetY
			}
			else if (is.ie) {
			   dictLayer.pixelLeft = x-dragOffsetX
			   dictLayer.pixelTop = y-dragOffsetY
			}
			return false
		}
		else return true
	}
}

function mouseUp(e) {
	var x = (is.ns)? e.pageX : event.x+document.body.scrollLeft
	var y = (is.ns)? e.pageY : event.y+document.body.scrollTop
	if (is.ns && e.target!=document) routeEvent(e)
	dragActive = false
	return true
}

