| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- /* $Id: ajax.js 3008 2007-05-17 17:07:11Z danez $ */
- // fields
- var ajax_debug = false;
- var ajax_useXML = false;
- var ajax_txtDelim = ";";
- var ajax_updateUrl = "stats.php";
- var ajax_updateParams = "";
- var ajax_updateTimer = 5000;
- var ajax_updateState = 0; // 0 = update off; 1 = update on
- var ajax_httpRequest = false;
- var ajax_requestOpen = false;
- /**
- * get http-request-instance
- */
- function ajax_getHttpRequest() {
- _httpRequest = false;
- if (window.XMLHttpRequest) { // Mozilla, Safari,...
- _httpRequest = new XMLHttpRequest();
- if (_httpRequest.overrideMimeType)
- _httpRequest.overrideMimeType('text/xml');
- } else if (window.ActiveXObject) { // IE
- try {
- _httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
- } catch (e) {
- try {
- _httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
- } catch (e) {}
- }
- }
- if (!_httpRequest) {
- if (ajax_debug)
- alert('Error : cant create XMLHTTP-instance');
- return false;
- }
- return _httpRequest;
- }
- /**
- * ajax_update
- */
- function ajax_update() {
- if (ajax_updateState == 1) {
- try {
- if (!ajax_httpRequest)
- ajax_httpRequest = ajax_getHttpRequest();
- else
- ajax_httpRequest.abort();
- if(ajax_httpRequest && (ajax_httpRequest.readyState == 4 || ajax_httpRequest.readyState == 0))
- {
- ajax_httpRequest.onreadystatechange = ajax_updateCallback;
- ajax_httpRequest.open('GET', ajax_updateUrl + ajax_updateParams, true);
- ajax_httpRequest.send(null);
- ajax_requestOpen = true;
- }
- } catch (ajaxception) {
- if (ajax_debug)
- alert('name : ' + ajaxception.name + ' | message:' + ajaxception.message);
- ajax_updateState = 0;
- }
- }
- }
- /**
- * update-callback
- */
- function ajax_updateCallback() {
- if (ajax_httpRequest.readyState == 4 && ajax_requestOpen === true) {
- if (ajax_httpRequest.status == 200) {
- if (ajax_useXML)
- ajax_processXML(ajax_httpRequest.responseXML);
- else
- ajax_processText(ajax_httpRequest.responseText);
- ajax_requestOpen = false;
- } else {
- if (ajax_debug)
- alert('Error in Request :' + ajax_httpRequest.status);
- }
- }
- }
|