// JavaScript Document

// determine which browser is being used; store for reference
var isSafari = navigator.appVersion.indexOf("Safari") != -1;
var isIE = navigator.appName.indexOf("Microsoft") != -1;
var isNNMoz = (navigator.appName.indexOf("Netscape") != -1 && !isSafari);

function addEvent(objObject, strEventName, fnHandler) {
	// Adds event listener to object using DOM model, if available; otherwise tries IE model.
	if (objObject.addEventListener) {
		objObject.addEventListener(strEventName, fnHandler, false);
	}
 	// IE/windows way to add an event listener
	else if (objObject.attachEvent) {
   		objObject.attachEvent("on" + strEventName, fnHandler);
	}
}

function findEventOwner(evt) {
	if (evt.target) {
		// DOM compliant
		var node = evt.target; 
	}
	else {
		// IE/Win
		var node = evt.srcElement;
	}
	while (node) {
		if ( (node.nodeType == node.ELEMENT_NODE || node.nodeType == 1) && node.nodeName == "A" ) {
			// node.ELEMENT_NODE does not seem to work in Safari
			return node;
		}
		node = node.parentNode;
	}
	return null;
}

function getScrollXY() {
	var scrOfX = 0, scrOfY = 0;
	if ( isSafari ) {
		scrOfX = 0;
		scrOfY = 0;
	}
	else if( typeof( window.pageYOffset ) == 'number' ) {
		//Netscape compliant
		scrOfY = window.pageYOffset;
		scrOfX = window.pageXOffset;
	} 
	else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		//DOM compliant
		scrOfY = document.body.scrollTop;
		scrOfX = document.body.scrollLeft;
	} 
	else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		//IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;
		scrOfX = document.documentElement.scrollLeft;
	}
	return { x : scrOfX, y : scrOfY };
}

