var wto;
var shablon_tr='<tr><td><a href="http://forum.strogi.net/index.php?showforum={1}">{2}</a></td><td><a href="http://forum.strogi.net/index.php?showtopic={3}&amp;view=getnewpost">{4}</a></td><td><a href="http://forum.strogi.net/index.php?showuser={5}">{6}</a></td><td><b>{7}</b></td><td><i>{8}</i></td></tr>';
var vstavok=8; //сколько {i} в шаблоне
var limit_tr=25; //по сколько тем грузить
var max_tr=200; //макс. кол-во тем
var sep1="|"; //разделитель строк
var sep2="^"; //разделитель вставок
var tabler="/temp/tabler.php"; //кто отдаёт данные
var js_table=document.getElementById('js_table');
var cur_tr=js_table.getElementsByTagName('tr').length-1; //сколько сейчас тем на странице
var hdrt='<tr class="pof_hdr">'+js_table.getElementsByTagName('tr')[0].innerHTML+'</tr>'; //считываем заголовок
var time_tr=0; //время текущей версии

var req;
function getXmlHttp(){var xmlhttp;try{xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");}catch(e){try{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}catch(E){xmlhttp=false;}}if(!xmlhttp && typeof XMLHttpRequest!='undefined'){xmlhttp=new XMLHttpRequest();}return xmlhttp;}

function loadXMLDoc(dat) {req = getXmlHttp();req.onreadystatechange=processReqChange;req.open("POST",tabler,true);req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');req.setRequestHeader("Accept-Charset", "windows-1251");req.send(dat);}

function processReqChange(){var wto=window.setTimeout("req.abort();",9000);if(req.readyState==4){clearTimeout(wto);if(req.status==200){
var xDoc=req.responseXML.documentElement;

var xm_tmt=xDoc.getElementsByTagName('tmt');
var xm_part=xDoc.getElementsByTagName('part');

if(xm_part.length>0) {
time_tr=xm_tmt[0].firstChild.data.toString();
var part=xm_part[0].firstChild.data.toString();
js_table.innerHTML=hdrt+shablonizator(part);
}}}}

function ewe() {if(cur_tr<max_tr) {cur_tr+=limit_tr;} clearTimeout(wto); loadXMLDoc("time=0&limit="+cur_tr);}

function shablonizator(arg) {var trs=arg.split(sep1);var trs_len=trs.length;var out="";var kusok="";var vstavki=[]; for(var i=0;i<trs_len;i++) {vstavki=trs[i].split(sep2);kusok=shablon_tr;for(var j=0;j<vstavok;j++) {kusok=kusok.split("{"+(j+1)+"}").join(vstavki[j]);}out+=kusok;}return(out);}

var ti=setInterval(function() {loadXMLDoc("time="+time_tr+"&limit="+cur_tr);},10000);
