var xmlHttp = getXmlHttp(); var xmlHttp4 = getXmlHttp(); var symbol = ''; function getXmlHttp() { try { xmlHttp = new ActiveXObject("Msxml2.xmlHttp"); } catch (e) { try { xmlHttp = new ActiveXObject("Microsoft.xmlHttp"); } catch (E) { xmlHttp = false; } } if (!xmlHttp && typeof XMLHttpRequest!='undefined') { try { xmlHttp = new XMLHttpRequest(); } catch (e) { xmlHttp=false; } } if (!xmlHttp && window.createRequest) { try { xmlHttp = window.createRequest(); } catch (e) { xmlHttp=false; } } return xmlHttp; } function startDataUpdate(s) { symbol = s; window.setInterval("fetchData(symbol)",3000); } function fetchData() { if (!xmlHttp) { return; } document.getElementById("updateSpin").src = 'updating.gif'; xmlHttp.open("GET", "rawbook_guest.php?symbol="+escape(symbol), true); xmlHttp.onreadystatechange=handleData; xmlHttp.send(null); } function handleData() { if (xmlHttp.readyState == 4) { var noChangeColor = 'transparent'; var positiveColor = '#90ee90'; var negativeColor = '#ffb6c1'; // window.setTimeout("fetchData(symbol)",2000); data = eval("(" + xmlHttp.responseText + ")"); document.getElementById("tickSize").innerHTML = data.tickSize; document.getElementById("lastPrice").innerHTML = data.lastPrice; t = document.getElementById("bookTable").tBodies[0]; orderBook = data.book; dlen = orderBook.length; tlen = t.rows.length; l = Math.max(dlen,tlen); for (i = 0; i < l; i++) { if (i < dlen) { var row; if (i < tlen) { row = t.rows[i]; } else { row = t.insertRow(-1); row.insertCell(-1); row.insertCell(-1); row.insertCell(-1); row.insertCell(-1); } if (i == 0) { var lastBid = 0; var lastAsk = 0; var lastBidSize = 0; var lastAskSize = 0; var bid = 0; var ask = 0; var bidSize = 0; var askSize = 0; if (row.cells[0].innerHTML != '') { lastBidSize = parseInt(row.cells[0].innerHTML); lastBid = parseFloat(row.cells[1].innerHTML); } if (row.cells[2].innerHTML != '') { lastAsk = parseFloat(row.cells[2].innerHTML); lastAskSize = parseInt(row.cells[3].innerHTML); } if (orderBook[0][0][0] != '') { bid = parseFloat(orderBook[0][0][0]); bidSize = parseInt(orderBook[0][0][1]); } if (orderBook[0][1][0] != '') { ask = parseFloat(orderBook[0][1][0]); askSize = parseInt(orderBook[0][1][1]); } if (lastBid == bid || (lastBid != 0 && bid == 0)) { row.cells[1].style.backgroundColor = noChangeColor; } else { if (lastBid < bid || lastBid == 0) { row.cells[1].style.backgroundColor = positiveColor; } else { row.cells[1].style.backgroundColor = negativeColor; } } if (lastAsk == ask || (lastAsk != 0 && ask == 0)) { row.cells[2].style.backgroundColor = noChangeColor; } else { if (lastAsk > ask || lastAsk == 0) { row.cells[2].style.backgroundColor = positiveColor; } else { row.cells[2].style.backgroundColor = negativeColor; } } } row.cells[0].innerHTML=orderBook[i][0][1]; row.cells[1].innerHTML=orderBook[i][0][0]; row.cells[2].innerHTML=orderBook[i][1][0]; row.cells[3].innerHTML=orderBook[i][1][1]; } else { t.deleteRow(t.rows.length-1); } } document.getElementById("updateSpin").src = 'updatedone.gif'; } } function getChartHTML(sym) { xmlHttp4.open("GET", "chart.php?symbol="+escape(sym), true); xmlHttp4.onreadystatechange=chartHandler; xmlHttp4.send(null); } function chartHandler() { if (xmlHttp4.readyState == 4) { document.getElementById("chart").innerHTML = xmlHttp4.responseText; } }