function getInternetExplorerVersion() {
// Returns the version of Internet Explorer or a -1 (non-IE browser)
	var rv = -1; // Return value assumes failure.
	if (navigator.appName == 'Microsoft Internet Explorer') {
		var ua = navigator.userAgent;
		var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
		if (re.exec(ua) != null)
			rv = parseFloat( RegExp.$1 );
	}
	return rv;
}

function getNextSibling(obj) { 
	if(obj.nextSibling){
		sibling=obj.nextSibling;
		while(sibling.nodeType != 1){ 
			sibling = sibling.nextSibling;
			if(!sibling){ return false; }
		}
		return sibling;
	} else {
		return false;
	}   
}


function addClass(target, classValue) {
	// from The JavaScript Anthology, page 101
	var pattern = new RegExp("(^| )" + classValue + "( |$)");
	if (!pattern.test(target.className)) {
		if (target.className == "") {
			// if target has no class yet, give it ours
			target.className = classValue;
		} else {
			// otherwise, append ours
			target.className += " " + classValue;
		}
	}
	return true;
}

function errorLabel(target) {
	// alert(getInternetExplorerVersion());
	if(getInternetExplorerVersion()<=7.0 && getInternetExplorerVersion()!=-1) {
		if (target == undefined) {
			var x=document.getElementsByTagName("span");
		} else {
			var x=document.getElementById(target).getElementsByTagName("span");
		}
		// alert('Number of span tags: ' + x.length);
		for (var i=0;i<x.length;i++) {
			// alert('nodeType x[i] = ' + x[i].nodeType);
			// alert('My parentNode is ' + x[i].parentNode.tagName);
			if (x[i].parentNode.tagName != "LI") {
				// if this is a span buried in some other tag, jump to next loop.
				continue;
			}

			var y=getNextSibling(x[i]);
			addClass(y, "unvalidated");

			var z=getNextSibling(y);
			addClass(z, "unvalidated");
		}
	}
}
