//Created by Sean Kane (http://celtickane.com/programming/code/ajax.php)
//Feather Ajax v1.0.1
function AjaxObject101() {
	this.createRequestObject = function() {
		try {
			var ro = new XMLHttpRequest();
		}
		catch (e) {
			var ro = new ActiveXObject("Microsoft.XMLHTTP");
		}
		return ro;
	}
	this.sndReq = function(action, url, data,content) {
			this.div=content;	
			
		if (action.toUpperCase() == "POST") {
			this.http.open("POST",url,true);
			this.http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			this.http.onreadystatechange =this.handleResponse;
			this.http.send(data);
		}
		else {
			this.http.open(action,url + '?' + data,true);
			this.http.onreadystatechange = this.handleResponse;
			this.http.send(null);
		}
	}
	this.handleResponse = function() {
		if ( me.http.readyState == 4) {
			if (typeof me.funcDone == 'function') { me.funcDone();}
			
			 document.getElementById(me.div).innerHTML=me.http.responseText;
			
			 /*
			var rawdata = me.http.responseText.split("|");
			for ( var i = 0; i < rawdata.length; i++ ) {
				var item = (rawdata[i]).split("=>");
				if (item[0] != "") {
					
					if (item[1].substr(0,3) == "%V%" ) {
						document.getElementById(item[0]).value = item[1].substring(3);
					}
					else {
						document.getElementById(item[0]).innerHTML = item[1];
					}
				}
			}
			*/
		}
		if ((me.http.readyState == 1) && (typeof me.funcWait == 'function')) { me.funcWait(); }
	}
	var me = this;
	this.http = this.createRequestObject();
	
	var funcWait = null;
	var funcDone = null;
}
function ajax(url,div,formid,spinner)
{
	data='';
// Collecting form post data 
	if(formid != null && formid != '')
	  {
		var form=document.getElementById(formid);
		
		for ( var e = 0; e < form.elements.length; e ++ ) 
		    {
			var el = form.elements [ e ];
			data+=el.name+'='+el.value+'&';
			}	
	  }
// making ajax object
	var ao = new AjaxObject101();
	
// Spinner show and hide		
	if(spinner != null && spinner != '')
	  {  
	ao.funcWait = function(){document.getElementById(spinner).style.display = 'block';}
	ao.funcDone = function(){document.getElementById(spinner).style.display = 'none';}
	  }	
	  
// Sending Ajax request 	
	ao.sndReq('post',url,data,div);
}

