//Basic Ajax Routine- Author: Dynamic Drive (http://www.dynamicdrive.com)
//Last updated: Jan 15th, 06'

function createAjaxObj(){
var httprequest=false
if (window.XMLHttpRequest){ // if Mozilla, Safari etc
httprequest=new XMLHttpRequest()
if (httprequest.overrideMimeType)
httprequest.overrideMimeType('text/xml')
}
else if (window.ActiveXObject){ // if IE
try {
httprequest=new ActiveXObject("Msxml2.XMLHTTP");
} 
catch (e){
try{
httprequest=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e){}
}
}
return httprequest
}

var ajaxpack=new Object()
ajaxpack.basedomain="http://"+window.location.hostname
ajaxpack.ajaxobj=createAjaxObj()
ajaxpack.filetype="txt"
ajaxpack.addrandomnumber=0 //Set to 1 or 0. See documentation.

ajaxpack.getAjaxRequest=function(url, parameters, elemid, filetype){
ajaxpack.ajaxobj=createAjaxObj() //recreate ajax object to defeat cache problem in IE
if (ajaxpack.addrandomnumber==1) //Further defeat caching problem in IE?
	var parameters=parameters+"&ajaxcachebust="+new Date().getTime()
if (this.ajaxobj){
	this.filetype=filetype
	this.ajaxobj.onreadystatechange=function()
	{
		if (ajaxpack.ajaxobj.readyState == 4){ //if request of file completed
    			if (ajaxpack.ajaxobj.status==200 || window.location.href.indexOf("http")==-1){ //if request was successful or running script locally
//		        	if (filetype=="txt")
						document.getElementById("elemid").innerHTML=ajaxpack.ajaxobj.responseText;
				}
		}	
	}


this.ajaxobj.open('GET', url+"?"+parameters, true)
this.ajaxobj.send(null)

}
}

ajaxpack.postAjaxRequest=function(url, parameters, elemid, filetype){
ajaxpack.ajaxobj=createAjaxObj() //recreate ajax object to defeat cache problem in IE
if (this.ajaxobj){

	this.filetype=filetype
	this.ajaxobj.onreadystatechange=function()
	{
		if (ajaxpack.ajaxobj.readyState == 4){ //if request of file completed
    			if (ajaxpack.ajaxobj.status==200 || window.location.href.indexOf("http")==-1){ //if request was successful or running script locally
//		        	if (filetype=="txt")
						document.getElementById("elemid").innerHTML=ajaxpack.ajaxobj.responseText;
				}
		}	
	}


this.ajaxobj.open('GET', url+"?"+parameters, true)
this.ajaxobj.send(null)

this.ajaxobj.open('POST', url, true);
this.ajaxobj.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
this.ajaxobj.setRequestHeader("Content-length", parameters.length);
this.ajaxobj.setRequestHeader("Connection", "close");
this.ajaxobj.send(parameters);
}
}
