var SORT_COLUMN_INDEX; function trim( s ) { var i; for( i=0; i0; i-- ) if( s.charAt(i) != " " && s.charCodeAt(i) != 160 ) break; var end=i; return s.substring(start,end+1); } function ts_makeSortable(table, srows) { if (table.rows && table.rows.length > 0) { var firstRow = table.rows[0]; } if (!firstRow) return; // We have a first row: assume it's the header, and make its contents clickable links for( var i=0; i   '; } } function ts_getInnerText(el) { if (typeof el == "string") return trim(el); if (typeof el == "undefined") return trim(el); if (el.innerText) return trim(el.innerText);//Not needed but it is faster var str = ""; var cs = el.childNodes; var l = cs.length; for (var i = 0; i < l; i++) { switch (cs[i].nodeType) { case 1: //ELEMENT_NODE str += ts_getInnerText(cs[i]); break; case 3://TEXT_NODE str += cs[i].nodeValue; break; } } return trim(str); } function ts_resortTable(lnk) { // get the span var span; for (var ci=0;ci