<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>rss terminal</title> <style type="text/css"> div#feedbox { padding: 0; margin: 0; background: #fff; text-align:left; font:9px 'Lucida Console', 'Courier New', monospace; } div#feedbox p { margin:0px 0; } </style> <script type="text/javascript" src="/js/ajax.js"></script> <script type="text/javascript" src="/js/rss2.js"></script> <script type="text/javascript" src="/js/query.js"></script> <script type="text/javascript"> var lines = new Array(); var maxlines = 20; var maxwidth = 90; var maxtime = 10000; // time that should be wasted until everything is scrolled var minwait = 50; // if this is too short, the CPU will eat all performance var maxwait = 500; var scroller = null; var idleping = null; var loader = null; var lastwait = 1000; var tab = " "; var lastShow = new Date(); var set = ""; var requestCount = 0; function fillLines() { alert(maxlines); for (var i = 0; i < maxlines + 1; i++) { alert(maxlines);http://localhost:8080/Steering.html?shutdown= addLine(i + "-123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789-"); //addLine(""); } } function addLine(line) { while (line.length > maxwidth) { lines.push(line.substring(0, maxwidth)); line = tab + line.substring(maxwidth); } lines.push(line); if (lines.length > maxlines) { if (scroller != null) { window.clearInterval(scroller); scroller = null; } scroller=window.setInterval("scroll()", newwait()); } show(); } function show() { now = new Date(); if (now.getTime() - lastShow.getTime() < 50) return; var doc = document.getElementById("content"); doc.innerHTML = ""; for (var i = 0; i < maxlines; i++) { if (lines[i]) doc.innerHTML += lines[i] + "<br />"; } lastShow = new Date(); } function newwait() { if (lines.length > maxlines) { var time = maxtime / (lines.length - maxlines); if (time < minwait) time = minwait; if (time > maxwait) time = maxwait; } else { time = maxwait; } if (time < lastwait) time = (time + maxlines * lastwait) / (maxlines + 1); lastwait = time; return time; } function scroll() { if (scroller != null) { window.clearInterval(scroller); scroller = null; } if (lines.length > maxlines) { var factor = (lines.length - maxlines) / maxlines / 10; if (factor < 0) factor = 1; if (factor > 3) factor = 3; for (var i = 0; i < factor; i++) { lines.shift(); } show(); scroller=window.setInterval("scroll()", newwait()); } } function showRSS(RSS) { //populate the items for (var i=0; i<RSS.items.length; i++) { if (RSS.items[i].title != null) addLine(RSS.items[i].title); if (RSS.items[i].link != null) addLine(tab + RSS.items[i].link); if (RSS.items[i].description != null) addLine(tab + RSS.items[i].description); } return true; } function idlepingExec() { if (lines.length <= maxlines) { // feed in some empty lines to make the list appear alive addLine(""); } } function load() { getRSS("/xml/feed.rss?count=80&set=" + set + "&requestCount=" + requestCount + "&time=" + (new Date()).getTime()); requestCount++; } function init() { if (query.maxlines) maxlines = query.maxlines; if (query.maxwidth) maxwidth = query.maxwidth; if (query.maxtime) maxtime = query.maxtime; if (query.minwait) minwait = query.minwait; if (query.maxwait) maxwait = query.maxwait; if (query.width) { document.getElementById("feedbox").style.width = query.width; } if (query.height) { document.getElementById("feedbox").style.height = query.height; } if (query.set) set = query.set; if (query.background) { document.getElementById("feedbox").style.background = "#" + query.background; } if (query.color) { document.getElementById("feedbox").style.color = "#" + query.color; } idleping = window.setInterval("idlepingExec()", 17000); loader=window.setInterval("load()", 10000); load(); } </script> </head> <body onload="self.getURLparameters();init();"> <div id="feedbox"> <p id="content"></p> </div> </body> </html>