var $ = function(id) { return document.getElementById(id); };
function getX(objectElement) {
	var returnValue = 0;
	while(objectElement != null) {
		returnValue += objectElement.offsetLeft;
		objectElement = objectElement.offsetParent;
	}
	return returnValue;
}
function getY(objectElement) {
	var returnValue = 0;
	while(objectElement != null) {
		returnValue += objectElement.offsetTop;
		objectElement = objectElement.offsetParent;
	}
	return returnValue;
}
function nav() {
	var sBrowser = navigator.userAgent;
	if (sBrowser.toLowerCase().indexOf('trident') > -1 || sBrowser.toLowerCase().indexOf('msie') > -1) {
		//Trident-IE
		return 'ie';
	}else if (sBrowser.toLowerCase().indexOf('webkit') > -1 || sBrowser.toLowerCase().indexOf('safari') > -1) {
		//WebKit-Safari
		return 's';
	}else if (sBrowser.toLowerCase().indexOf('gecko') > -1 || sBrowser.toLowerCase().indexOf('firefox') > -1) {
		//Gecko-Firefox
		return 'ff';
	}else{
		return 'mozilla';
	}
}
function xhr() {
	var xmlHttp = null;
	try {
		xmlHttp = new XMLHttpRequest();
	}
	catch (e) {
		try {
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}catch (e) {
			xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}
function xml(xmlstring) {
	try {
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async="false";
		xmlDoc.loadXML(xmlstring);
		return xmlDoc;
	}
	catch(e) {
		parser=new DOMParser();
		xmlDoc=parser.parseFromString(xmlstring,"text/xml");
		return xmlDoc;
	}
}

!Date.now && (Date.now = function(){ return +new Date; });
Object.clone = function(o) { var _o = {}; for (var i in o) o.hasOwnProperty(i) && (_o[i] = o[i]); return _o; };

//Error Handling
window.onerror = function() {
	//If IE, tell them that when an error is detected, it is recommended they save and refresh the page
	//return true;
}

//Disable Selection
function disabletext(e){
	var eButton = window.event?event.srcElement:e.target;
	if (eButton && (eButton.tagName=="INPUT"||eButton.tagName=="BUTTON"||eButton.tagName=="TEXTAREA"||(eButton.id && eButton.id == "selectEnable"))&&eButton.id.indexOf("menuitem_") == -1) {
		return true;
	}
	return false;
}
function reEnable(){
	return true;
}
////If the browser is IE4+
document.onselectstart=function(e) {
	var eButton = window.event?event.srcElement:e.target;
	if (eButton && (eButton.tagName=="INPUT"||eButton.tagName=="BUTTON"||eButton.tagName=="TEXTAREA"||(eButton.id && eButton.id == "selectEnable"))) {
		return true;
	}
	return false;
}
////If the browser is NS6
if (window.sidebar){
	document.onmousedown=disabletext;
	document.onclick=reEnable;
}

//Disable Context Menu
document.oncontextmenu=function(e) {
	var eButton = window.event?event.srcElement:e.target;
	if (eButton && (eButton.tagName=="INPUT"||eButton.tagName=="TEXTAREA"||(eButton.id && eButton.id == "selectEnable"))) {
		return true;
	}
	return false;
}
