// AJAX request using native JavaScript 
// by: Victorio Duran III - victorio_duran@yahoo.com - iiimedia.net

// Core AJAX function for submitting post vars to serverside page
function submitAJAXVars (AJAXArea, waitMsg, postvar, serverSidePage) {

	// display message while connecting to server side page
	if (AJAXArea && waitMsg) {
		infoArea = document.getElementById('pl-ajax-gallary-info');
		infoArea.style.backgroundPosition = 'left top';
		infoArea.innerHTML = waitMsg + infoArea.innerHTML;
	}
	
	// create AJAX object
	var xmlHttp;
	try {
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	} catch (e) {
		// Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
				// alert ("browser does not support AJAX");
				return false;
			}
		}
	}
			
	// update on AJAX state change
	xmlHttp.onreadystatechange = function () {
		if (xmlHttp.readyState == 4) {	
			AJAXArea.innerHTML = xmlHttp.responseText
		}		
	}
	
	// combine post variables	
	if (postvar) {
		for (i = 0; i < postvar.length; i++) {
			if (i==0) postVars = postvar[i][0] + "=" + postvar[i][1];	
			else postVars += "&" + postvar[i][0] + "=" + postvar[i][1];			
		}
	} else {
		postVars = false;	
	}
	
	// debug	
	//alert("post variable to send : " + postVars);
		
	// open the http request, use POST method	
	xmlHttp.open("POST", serverSidePage ,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.setRequestHeader("Content-length", postVars.length);
	xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(postVars);
	
}
