//############################################################################### // пример вызова функции: // Top.dspReq(S_PathName + URL, '', false, true, 'PResFunc',w); // 1 параметр - URL // 2 параметр - xml, если необходимо передать данные на сервер методом "POST" // 3 параметр - метод запроса. Если false, по умолчанию "GET" // 4 параметр - асинхронность запроса. По умолчанию true // 5 параметр - имя функции обработки пришедшего ответа для отображенния данных //############################################################################### // получение кроссбраузерного объекта запроса // диспетчер запросов function dspReq(path, xml, meth, asy, func, w) { var method=(meth)?meth:"GET", async=(asy==false)?false:true; var xmlHTTP = getXmlHttp(); try{xmlHTTP.open(method, path, async, "", "")}catch(e){}; function onRSChange(){ if (xmlHTTP.readyState==4) { var rStatus=xmlHTTP.status, rHeaders=xmlHTTP.getAllResponseHeaders(); xmlHTTP.onreadystatechange=new Function(''); if(rStatus==200){ try{eval('Top.'+func+'(w,xmlHTTP.responseText)')}catch(e){}; } xmlHTTP=null; xml=null; } } xmlHTTP.onreadystatechange = onRSChange; // xmlHTTP.setRequestHeader("XMLHTTP","1"); xmlHTTP.setRequestHeader("Content-Type","text/html"); xmlHTTP.send(xml); } // функция - пример, использовалась для теста function PResFunc(w,html,Func){ mw.document.body.innerHTML = html; w._iPostResponse=0; w.clearInterval(w.HTTPInterval); // if(Func!=='')w.HTTPInterval=w.setInterval("Top.onReadyData(w,'"+Func+"')",1000); } //================================================================== //XML HTTP Request module //================================================================== var _gPOST_FRAME="_POST_FRAME_"; var BSSReqIFRAME; var _gPOSTMETHOD = "POST"; var _gGETMETHOD = "GET"; function getXmlHttp(){ var xmlhttp; try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e){ try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E){xmlhttp=false} } if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); } return xmlhttp; } function dpUpdateData(xmlDoc){ if(xmlDoc==null)return; var oNodes,sValue,sName,o,sTagName; try{oNodes = xmlDoc.selectNodes('//I');}catch(e){} if(!oNodes) oNodes = xmlDoc.getElementsByTagName('I'); var iCount=oNodes.length; for(var i=0;i.*","ig"); var respBody = arguments[1]; var errText = re.exec(respBody); if(errText){ errText = errText.toString(); errText=errText.replace(/bss_error/g,'BSS_ERROR'); respBody=respBody.replace(re,''); errText = errText.toString(); errText = errText.replace('','').replace('',''); } this.errorCode=arguments[0]; this.error=errText; var updateObj=null; re = new RegExp(".*","ig"); var strXML = re.exec(respBody); if (strXML!='' && strXML!=null){ strXML = strXML.toString(); strXML = strXML.replace(/