
AJAX = {

    getXML : function( url, callback ) 
    { 
        return AJAX.ajaxFull( url, callback, false ); 
    },  

    getText : function( url, callback ) 
    { 
        return AJAX.ajaxFull( url, callback, true ); 
    },  


    setInnerHTML: function ( url, element )
    {
        AJAX.getText( url, function( text ){

            if( element && element.innerHTML )
                element.innerHTML = text;

        }); 
    },


    setInnerHTMLById : function( url, id )
    {
        if( document.getElementById )
            return AJAX.setInnerHTML( url, document.getElementById( id ) );

    },  

    setValue: function ( url, element )
    {
        AJAX.getText( url, function( text ){

            if( element && element.value )
                element.value = text;

        }); 
    },  

    setValueById : function( url, id )
    {
        if( document.getElementById )
            return AJAX.setValue( url, document.getElementById( id ) );

    },  

    ajaxFull : function( url, callback, textInsteadOfXml ) 
    { 
        var request = AJAX.httprequest(); 
        request.open("GET", url, true); 
        request.onreadystatechange = function() { 
            if( request.readyState == 4 ) { 

                if( textInsteadOfXml ) {
    
                    callback( request.responseText ); 
    
                } 
 
                else {
    
                    var xmlDoc = request.responseXML; 

                    if( xmlDoc.documentElement == null && GXml && GXml.parse ) 
                        xmlDoc = GXml.parse( request.responseText ); 

                    callback( xmlDoc ); 
    
                } 
            } 
        }; 
    
        request.send(null); 
    
    },

    httprequest : function()
    {

        if( typeof ActiveXObject != 'undefined' ){
            try {
                return new ActiveXObject( 'Microsoft.XMLHTTP' );
            } catch( exc ) {

            }  
        }   
    

        if( typeof XMLHttpRequest != 'undefined' ){
            try {
                return new XMLHttpRequest();
            } catch( exc ) {
              
            }  
        }  
    }
    
}   

