var ajaxVC;
var strVC;
var urlVCError = '/Erros/server_busy.htm';
var url_db     = '/comum/verify_connection.asp';
var url_cfm    = '/comum/verify_connection.cfm';

function XMLHTTPRequest() {
	if (window.XMLHttpRequest) {
		objHTTP = new XMLHttpRequest();
	} else {
		try {
			objHTTP = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			try {
				objHTTP = new ActiveXObject("Microsoft.XMLHTTP");
			} catch(e) {
				objHTTP = false;
			};
		};
	};
	if (navigator.userAgent.toLowerCase().indexOf("msie 5.0") !=- 1) objHTTP = false;
	return objHTTP;
};

function redirError(o) {
	window.top.location = urlVCError;
	if (o!=null) o.href = urlVCError;
	return false;
}

function VerifyConnectionJRUN(objVC){
	ajaxVC=XMLHTTPRequest();
	
	if (ajaxVC) {
		ajaxVC.open('GET', url_cfm, false);
		ajaxVC.send(null);
		strVC=ajaxVC.responseText.split("|")[1];
		if(strVC=='Ok') {
			return true;
		} else {
			redirError(objVC);
			return false;
		};
	} else {
		redirError(objVC);
		return false;
	}

}

function VerifyConnectionDB(objVC){
	ajaxVC=XMLHTTPRequest();

	if (ajaxVC) {
		ajaxVC.open('GET', url_db, false);
		ajaxVC.send(null);
		strVC=ajaxVC.responseText;
		if(strVC=='Ok') {
			return true;
		} else {
			redirError(objVC);
			return false;
		}
	} else {
		redirError(objVC);
		return false;
	}
}

function VerifyConnection(o) {
	if(!VerifyConnectionJRUN(o)) return false;
	if(!VerifyConnectionDB(o)) return false;
	return true;
}

function add_href_verification(){
	if (a=document.body.getElementsByTagName("a")) {
		for (i = 0; i < a.length; i++) {
			if(a[i].href.indexOf(".cfm")!=-1) {
				if(a[i].addEventListener) {
					a[i].addEventListener("click", function() { VerifyConnection(this); }, false);
				} else if(a[i].attachEvent) {
					a[i].attachEvent("onmousedown", function() { VerifyConnection(this); });
				}
			}
		}
	}
}
