
/*****************************/
/** A AJAXConnection class  */
function AJAXConnection(name) {    
    this.className = 'AJAXConnection';
    //alert(this.className + ' ' + name);
    
    /** Default construtor
     *
     * name - div name
     */
    {    
        this.name = name;
    }

    this.xmlhttpPost = function (strURL, functionObj) {
        var xmlHttpReq = false;
        var self = this;
        // Mozilla/Safari
        if (window.XMLHttpRequest) {
            self.xmlHttpReq = new XMLHttpRequest();
            if (self.xmlHttpReq.overrideMimeType) {
                self.xmlHttpReq.overrideMimeType('text/xml');
                // See note below about this line
            }
        // IE
        } else if (window.ActiveXObject) { // IE
            try {
                self.xmlHttpReq = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
            }
        }
        if (!self.xmlHttpReq) {
            alert('ERROR AJAX:( Cannot create an XMLHTTP instance');
            return false;
        }    
        self.xmlHttpReq.open('GET', strURL, true);
        self.xmlHttpReq.setRequestHeader('Content-Type',
            'application/x-www-form-urlencoded');
        self.xmlHttpReq.onreadystatechange = function() { 
            _callBackFunction(self.xmlHttpReq, functionObj); 
        };
        self.xmlHttpReq.send("");
    }
    
    _callBackFunction = function (http_request, functionObj) {
        if (http_request.readyState == 4) {
            if (http_request.status == 200) {
                //alert(http_request.responseText);
                functionObj.callBackFunction(http_request.responseText);
            } else {
                alert('ERROR: AJAX request status = ' + http_request.status);
            }
        }
	}
}


/** moduledet */
function moduledet() {	
    this.className = 'moduledet';
    
    /** Call Back Function - called by AJAXAdaptor
     *
     * str - string from XMLHttpRequest
     */    
    this.callBackFunction = function(str) {
			loadModuleDef(str); 
           }    
}


/** findPkeys */
function findPkeys() {	
    this.className = 'findPkeys';   
    this.callBackFunction = function(str) {
		 	mygrid.cells(mygrid.getSelectedId(),5).setValue(str+"1");
			document.all.prkeys.value=str+1;
    }    
}

/** getFields */
function getFields() {	
    this.className = 'getFields';   
    this.callBackFunction = function(str) {
		 mygrid.cells(mygrid.getSelectedId(),3).setValue(str);
		document.all.t1.value=str;
		//updateflds=str; alert(updateflds);
    }    
}


/********Usage 

			var ajaxConnectionMD = new AJAXConnection('ajaxConnectionMD');
			var MDobj = new moduledet();
			urlval="ajaxHelp.asp?"+"flg=moduledet&data="+cellval;
			ajaxConnectionMD.xmlhttpPost(urlval, MDobj);
****/
/****************************/
