var timestamp = -1;
var SEP = "|||";
var strings = new Array();

function onLoad() {
    checkTimestamp();
    setInterval("checkTimestamp()",3000);
 }

function checkTimestamp() {
    sendMessage("timestamp",null,"timestampCallback");
}

function checkClipboard() {
    sendMessage("clipboard",null,"clipboardCallback");
}

function timestampCallback(res) {
    var ts = parseInt(res);
    if (ts == timestamp) return;
    timestamp = ts;
    setTimeout("checkClipboard()",500);
    finishCallback();
}

function newTR(i,s) {
    var td;
    var d;

    var tr = document.createElement("TR");

    td = document.createElement("TD");
    tr.appendChild(td);
    td.className = "sum-count";
    d = document.createElement("span");
    td.appendChild(d);
    d.className = "digg-count";
    d.style.color = "#7b702a";
    d.innerHTML = i;

    td = document.createElement("TD");
    tr.appendChild(td);
    d = document.createElement("a");
    var id = "_link_" + i;
    strings[id] = s;
    d.id = id;
    td.appendChild(d);
    d.className = "link";
    d.href = "javascript:useRow('" + (i-1) + "');void(0)";
    d.innerHTML = s;

    return tr;
}

function useRow(s) {
    var args = {"row":s};
    sendMessage("useRow",args);
    checkTimestamp();
}

function clearRow(s) {
    var args = {"row":s};
    sendMessage("clearRow",args);
    checkTimestamp();
}

function clearAll(s) {
    sendMessage("clearAll");
    checkTimestamp();
}

function clipboardCallback(res) {
    var parts = res.split(SEP);
    if (parts.length == 0) return;
    var tab = document.getElementById("mainTable");
    while (tab.childNodes.length > 0) {
	tab.removeChild(tab.childNodes[0]);
    }
    for (var j=1,i=parts.length-1; i>=0; i--,j++) {
	var tr = newTR(j,parts[i]);
	tab.appendChild(tr);
    }
    finishCallback();
}

function reloadPage() {
    document.location = document.location;
}
