var GXLastAjaxSt = 0; function gxgetXMLHTTP() { var A=null; try { A=new ActiveXObject("Msxml2.XMLHTTP") } catch(e) { try { A=new ActiveXObject("Microsoft.XMLHTTP") } catch(oc) { A=null } } if(!A && typeof XMLHttpRequest != "undefined") { A=new XMLHttpRequest() } return A } function gxcallRPC( sURL) { gxcallajaxbackend( '', sURL, '', false); } function gxcallajaxbackend( backcall, sURL, sufix, ExecAtFail) { var GXAjaxResult; var _xmlHttp = gxgetXMLHTTP(); if(_xmlHttp) { try { var res = _xmlHttp.open("GET",sURL,false); _xmlHttp.send(null); } catch(e) { window.status = 'GXAjax HTTP error: '+ e.message; return null; } window.status = ''; if ((_xmlHttp.readyState != 4) || (_xmlHttp.status != 200)) { window.status = 'GXAjax HTTP error: ('+ _xmlHttp.status + ') - ' + _xmlHttp.statusText; } else { if(_xmlHttp.responseText && _xmlHttp.responseText.length > 0 && _xmlHttp.responseText.charAt(0) != '<') { GXLastAjaxSt = 0; eval( 'Response =' + _xmlHttp.responseText); try { GXAjaxResult = Response[0]; GXLastAjaxSt = Response[1]; if (GXLastAjaxSt == undefined) GXLastAjaxSt = 0; if (backcall && (ExecAtFail || GXLastAjaxSt == null || GXLastAjaxSt == 0)) return eval( backcall + gxArrayToSource(GXAjaxResult) + sufix); } catch(e){} } else window.status = 'GXAjax HTTP error: (bad response format)'; } } return GXAjaxResult; } function gxSuggestProvider(ControlId, ControlRefresh, CtrlSvc) { this.ControlId = ControlId; this.ControlRefresh = ControlRefresh; this.CtrlSvc = CtrlSvc; } gxSuggestProvider.prototype.requestSuggestions = function(oAutoSuggestControl, bTypeAhead) { var backcall = "GXReturnAutosuggestValues('" + this.VarRefresh + "',"; var sURL = getObjectUrl() + '?' + 'gxajaxSuggest_' + this.CtrlSvc; for (var i=0; i