function createRequestObject() {
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}


function sendCustomRequest(address, responseHandler) {
	localHttp = createRequestObject();
	localHttp.open('get', address);
    localHttp.onreadystatechange = function(){ responseHandler( localHttp )};
    localHttp.send(null);
}

function sendRequest(address, output, a) {
	localHttp = createRequestObject();
	localHttp.open('get', address);
	if ( ! ( a instanceof baseHandler ) ) {
		a = new baseHandler();
	}
	a.setTarget( output );
	a.setRequestObject ( localHttp );
    localHttp.onreadystatechange = function(){a.handler()};
    localHttp.send(null);
}

baseHandler = function(){
	this.objElement;
	this.objRequest;
	
	baseHandler.prototype.setTarget = function( objElement ){
		this.objElement = objElement;
	}
	
	baseHandler.prototype.setRequestObject = function( objRequest ){
		this.objRequest = objRequest;
	}
	
	baseHandler.prototype.handler = function(){		
		if(this.objRequest.readyState == 4){
	        var response = this.objRequest.responseText;
			this.objElement.innerHTML = response;
    	}
	}
}

function confirmDelete ( strURL, customMessage ) {
	if ( !customMessage ){
		customMessage = 'Are you sure you want to delete this item? This action cannot be undone.';
	}
	if ( confirm( customMessage )){
		document.location.href = strURL;
	}
}

objOptionalHandler = null;