2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-01-31 18:59:33 +00:00
fhem-mirror/fhem/webfrontend/pgm2/longpoll.js
2012-01-06 17:29:51 +00:00

52 lines
1023 B
JavaScript

var pollConn;
function
cmd(arg)
{
var req = new XMLHttpRequest();
req.open("GET", arg, true);
req.send(null);
}
function
doUpdate()
{
if(pollConn.readyState != 4 || pollConn.status != 200)
return;
var lines = pollConn.responseText.split("\n");
for(var i=0; i < lines.length; i++) {
var d = lines[i].split(";", 3); // Complete arg
if(d.length != 3)
continue;
var el = document.getElementById(d[0]);
if(el)
el.innerHTML=d[2];
}
pollConn.abort();
longpoll();
}
function
longpoll()
{
pollConn = new XMLHttpRequest();
var room="room=all";
var sa = document.location.search.substring(1).split("&");
for(var i = 0; i < sa.length; i++) {
if(sa[i].substring(0,5) == "room=")
room=sa[i];
}
var query = document.location.pathname+"?"+room+"&XHR=1&inform=1";
pollConn.open("GET", query, true);
pollConn.onreadystatechange = doUpdate;
pollConn.send(null);
}
function
delayedStart()
{
setTimeout("longpoll()", 1000);
}
window.onload = delayedStart;