var REFRESH_RATE = 5000; //create new AJAX object, depending on browser if (window.XMLHttpRequest) sensor_request = new XMLHttpRequest(); else sensor_request = new ActiveXObject("Microsoft.XMLHTTP"); sensor_request.onreadystatechange = parseSensorReadings; function parseSensorReadings() { if (sensor_request.readyState == 4 && sensor_request.status == 200) { var lines = sensor_request.responseText.split("\n"); var serial; var stat; document.getElementById("localtime").innerHTML = lines.shift(); document.getElementById("allswell").innerHTML = lines.shift(); for (i in lines) { var sensor = lines[i].split("|"); if (sensor[0].charAt(0) == '@') { serial = sensor[0].substring(1, sensor[0].length); stat = sensor[1]; if (!document.getElementById("dev_" + serial)) { window.location.reload(); //If a new serial number is encountered, refresh } continue; } meas_idx = parseInt(sensor[0]); try { document.getElementById("meas_" + serial + "-" + meas_idx).className = sensor[1]; document.getElementById("meas_" + serial + "-" + meas_idx).innerHTML = sensor[2]; document.getElementById("status_" + serial + "-" + meas_idx).innerHTML = stat; } catch(e) {} } window.setTimeout(getSensorReadings, REFRESH_RATE); } } function getSensorReadings() { sensor_request.open("GET", "sensors_min.txt" + Math.floor(Math.random() * 1000) + lang_override, true); sensor_request.send(); } function refreshGraphic(graph_name) { var image = document.getElementById(graph_name); var refresh = Math.floor(Math.random() * 1000); var temp_src = image.src.replace(/refresh=\d*/, "refresh=" + refresh); if (temp_src == image.src) //if no change took place, add refresh manually { var delimeter = (image.src.lastIndexOf('?') > 0)?'&':'?'; image.src = image.src + delimeter +"refresh=" + refresh; } else image.src = temp_src; }