/**
* Phinest basic ajax library (experimental)
*/

 
function AjxObject() {
	var http_request = false;

	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}
	return http_request;
}

function AjxRequest(url, id, errorText, postsVars, http_request) 
{

if ((arguments.length < 5) || (http_request==null) ) {
		http_request = AjxObject();
	}
	if (!http_request) {
		 alert('Giving up: Cannot create an XMLHTTP instance');
		return false;
	}
    try{       
    http_request.cbId = id; 
    http_request.cbErrorText = errorText;
    }catch(e){} 
    
	http_request.onreadystatechange = function() { CBalertContents(http_request); };
	if (postsVars == null) 
    {
    
		http_request.open('GET', url, true);
		http_request.send(null);
	} else {
        
		http_request.open('POST', url, true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Content-length", postsVars.length);
		http_request.send(postsVars);
	}
}

function CBalertContents(http_request) 
{                        
    try
    {                                            
        document.getElementById('whats_happening').innerHTML = http_request.responseText;
        if ((http_request.status == 200) && http_request.responseText.trim()!="")
        {      
            document.getElementById(http_request.cbId).style.display="block";
            document.getElementById(http_request.cbId).innerHTML = http_request.responseText;
        }
        else if(document.getElementById(http_request.cbId).innerHTML.trim()!="")
        {                                                                
            document.getElementById(http_request.cbId).style.display="none";
        }
        else
        {
           document.getElementById(http_request.cbId).style.display="none";
        }      
    }catch(w){}
   return 1;         
}

String.prototype.trim = function() 
{ 
    return this.replace(/^\s+|\s+$/g,""); 
}
 <!-- 
 
 -->