var dom = (document.getElementById) ? true : false;



function includeJS(file) {
	document.write('<script type="text/javascript" src="' + file + '"></script>');
}



function includeCSS(file) {
	document.write('<link rel="stylesheet" type="text/css" media="screen" href="' + file + '" />');
}



function strrev(str) {
  return str.split("").reverse().join("");
};



function printpage() {
	window.print();
	return;
};



function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			if (oldonload) {
				oldonload();
			}
		func();
		}
	}
};



function addClass(target, classValue) {
	if (!hasClass(target, classValue)) {
		if (target.className == "") {
			target.className = classValue;
		} else {
			target.className += " " + classValue;
		}
	}
	return true;
};



function removeClass(target, classValue) {
	var removedClass = target.className;
	var pattern = new RegExp("(^| )" + classValue + "( |$)");
	removedClass = removedClass.replace(pattern, "$1");
	removedClass = removedClass.replace(/ $/, "");
	target.className = removedClass;
	return true;
};



function hasClass(target, classValue) {
	var pattern = new RegExp("(^| )" + classValue + "( |$)");
	if (target.className.match(pattern)) {
		return true;
	}
	return false;
};



function getInnerText(target) {
	var text = target.firstChild;
	while (text.nodeValue.match(/^\s*$/)) {
		text = text.nextSibling;
	}
	textString = text.nodeValue.replace(/^\W*(.*\w)\W*$/, "$1");
	return textString;
};



function trim(sString) {
	while (sString.substring(0,1) == ' ') {
		sString = sString.substring(1, sString.length);
	}
	while (sString.substring(sString.length-1, sString.length) == ' ') {
	sString = sString.substring(0,sString.length-1);
	}
	return sString;
};



function clearField(Field,fieldValue) {
	if (Field.value	== fieldValue) {
		Field.value = '';
	}
};



function resetField(Field,fieldValue) {
	if (Field.value	== '') {
		Field.value = fieldValue;
	}
};


function validateEmail(addr) {
	var invalidChars = '\/\'\\ ";:?!()[]\{\}^|';
	for (i=0; i<invalidChars.length; i++) {
		if (addr.indexOf(invalidChars.charAt(i),0) > -1) {
			return false;
		}
	}
	for (i=0; i<addr.length; i++) {
		if (addr.charCodeAt(i)>127) {
		return false;
		}
	}
	var atPos = addr.indexOf('@',0);
	if (atPos == -1) { return false; }
	if (atPos == 0) { return false; }
	if (addr.indexOf('@', atPos + 1) > - 1) { return false; }
	if (addr.indexOf('.', atPos) == -1) { return false; }
	if (addr.indexOf('@.',0) != -1) { return false; }
	if (addr.indexOf('.@',0) != -1){ return false; }
	if (addr.indexOf('..',0) != -1) { return false; }
	var suffix = addr.substring(addr.lastIndexOf('.')+1);
	if (suffix.length != 2 && suffix != 'com' && suffix != 'net' && suffix != 'org' && suffix != 'edu' && suffix != 'int' && suffix != 'mil' && suffix != 'gov' & suffix != 'arpa' && suffix != 'biz' && suffix != 'aero' && suffix != 'name' && suffix != 'coop' && suffix != 'info' && suffix != 'pro' && suffix != 'museum') {
		return false;
	}
	return true;
};

