/*
	- - - - - - - - - - - GET METHOD - - - - - - - - - - -
	ajax_request( obx , "GET" , "test1.asp" , null );

	- - - - - - - - - - - POST METHOD - - - - - - - - - - -
	var param = "email=" + escape( encodeURI( document.pad.email.value ) );
	ajax_request( "o3" , "POST" , "test2.asp" , param );
*/
function ajax_createobject() {
	var AJAXObject = false;
	if ( window.XMLHttpRequest ) { // Mozilla, Safari,... 
		AJAXObject = new XMLHttpRequest();
		if ( AJAXObject.overrideMimeType ) {
			AJAXObject.overrideMimeType('text/html');
		}
	} else if ( window.ActiveXObject ) { // IE
		try {
			AJAXObject = new ActiveXObject("Msxml2.XMLHTTP");
		} catch ( e ) {
			try {
				AJAXObject = new ActiveXObject("Microsoft.XMLHTTP");
			} catch ( e ) {}
		}
	}
	if ( !AJAXObject ) {
		alert("Cannot create XMLHTTP instance");
		AJAXObject = false;
	}
	return AJAXObject;
}

function ajax_request( xDest , xMethod , xURL , xParam ) {
	var rndom = Math.floor( Math.random() * 1000001 );
	var AJAX_OBJ = ajax_createobject();
	var AJAX_LOC;

	if ( xURL.indexOf("?") > -1 ) xURL += "&";
	else xURL += "?";
	xURL += "rnd=" + rndom;

	AJAX_LOC = document.getElementById( xDest );
	AJAX_OBJ.open( xMethod , xURL , true );
	if ( xMethod == "POST" ) {
		AJAX_OBJ.setRequestHeader( "Content-type" , "application/x-www-form-urlencoded" );
		AJAX_OBJ.setRequestHeader( "Content-length" , xParam.length );
		AJAX_OBJ.setRequestHeader( "Connection" , "close" );
		AJAX_OBJ.send( xParam );
	} else {
		AJAX_OBJ.send( null );
	}

	AJAX_OBJ.onreadystatechange = function() {
		if( AJAX_OBJ.readyState == 3 ) {
			AJAX_LOC.innerHTML = 'Loading. please wait... <br><img src="images/onload.gif">';
		} else if( AJAX_OBJ.readyState == 4 ) {
			var response = AJAX_OBJ.responseText;
			AJAX_LOC.innerHTML = response;
		}
	};
}

