addEvent(window,"load",sortables_init);var SORT_COLUMN_INDEX;function sortables_init(){if(!document.getElementsByTagName){return}tbls=document.getElementsByTagName("table");for(ti=0;ti<tbls.length;ti++){thisTbl=tbls[ti];if(((" "+thisTbl.className+" ").indexOf("sortable")!=-1)&&(thisTbl.id)){ts_makeSortable(thisTbl)}}}function ts_makeSortable(d){if(d.rows&&d.rows.length>0){var e=d.rows[0]}if(!e){return}for(var c=0;c<e.cells.length;c++){var b=e.cells[c];var a=b.innerHTML;b.innerHTML='<a href="#" class="sortheader" onclick="ts_resortTable(this, '+c+');return false;">'+a+'<span class="sortarrow">&nbsp;</span></a>'}}function ts_getInnerText(d){if(typeof d=="string"){return d}if(typeof d=="undefined"){return d}if(d.innerText){return d.innerText}var e="";var c=d.childNodes;var a=c.length;for(var b=0;b<a;b++){switch(c[b].nodeType){case 1:e+=ts_getInnerText(c[b]);break;case 3:e+=c[b].nodeValue;break}}return e}function ts_resortTable(f,h){var l;for(var n=0;n<f.childNodes.length;n++){if(f.childNodes[n].tagName&&f.childNodes[n].tagName.toLowerCase()=="span"){l=f.childNodes[n]}}var a=ts_getInnerText(l);var b=f.parentNode;var c=h||b.cellIndex;var m=getParent(b,"TABLE");if(m.rows.length<=1){return}var g=ts_getInnerText(m.rows[1].cells[c]);sortfn=ts_sort_caseinsensitive;if(g.match(/^\d\d[\/-]\d\d[\/-]\d\d\d\d$/)){sortfn=ts_sort_date}if(g.match(/^\d\d[\/-]\d\d[\/-]\d\d$/)){sortfn=ts_sort_date}if(g.match(/^[�$]/)){sortfn=ts_sort_currency}if(g.match(/^[\d\.]+$/)){sortfn=ts_sort_numeric}SORT_COLUMN_INDEX=c;var d=new Array();var e=new Array();for(i=0;i<m.rows[0].length;i++){d[i]=m.rows[0][i]}for(j=1;j<m.rows.length;j++){e[j-1]=m.rows[j]}e.sort(sortfn);if(l.getAttribute("sortdir")=="down"){ARROW='&nbsp;<img src="'+IMGDIR_BUTTON+'/sortasc.gif" />';e.reverse();l.setAttribute("sortdir","up")}else{ARROW='&nbsp;<img src="'+IMGDIR_BUTTON+'/sortdesc.gif" />';l.setAttribute("sortdir","down")}for(i=0;i<e.length;i++){if(!e[i].className||(e[i].className&&(e[i].className.indexOf("sortbottom")==-1))){m.tBodies[0].appendChild(e[i])}}for(i=0;i<e.length;i++){if(e[i].className&&(e[i].className.indexOf("sortbottom")!=-1)){m.tBodies[0].appendChild(e[i])}}for(i=1;i<m.rows.length;i++){if(m.rows[i].className.substring(0,3)=="alt"){if(i%2){m.rows[i].className="alt2"+m.rows[i].className.substring(4)}else{m.rows[i].className="alt1"+m.rows[i].className.substring(4)}}}var k=document.getElementsByTagName("span");for(var n=0;n<k.length;n++){if(k[n].className=="sortarrow"){if(getParent(k[n],"table")==getParent(f,"table")){k[n].innerHTML="&nbsp;"}}}l.innerHTML=ARROW}function getParent(b,a){if(b==null){return null}else{if(b.nodeType==1&&b.tagName.toLowerCase()==a.toLowerCase()){return b}else{return getParent(b.parentNode,a)}}}function ts_sort_date(d,c){aa=ts_getInnerText(d.cells[SORT_COLUMN_INDEX]);bb=ts_getInnerText(c.cells[SORT_COLUMN_INDEX]);if(aa.length==10){dt1=aa.substr(6,4)+aa.substr(3,2)+aa.substr(0,2)}else{yr=aa.substr(6,2);if(parseInt(yr)<50){yr="20"+yr}else{yr="19"+yr}dt1=yr+aa.substr(3,2)+aa.substr(0,2)}if(bb.length==10){dt2=bb.substr(6,4)+bb.substr(3,2)+bb.substr(0,2)}else{yr=bb.substr(6,2);if(parseInt(yr)<50){yr="20"+yr}else{yr="19"+yr}dt2=yr+bb.substr(3,2)+bb.substr(0,2)}if(dt1==dt2){return 0}if(dt1<dt2){return -1}return 1}function ts_sort_currency(d,c){aa=ts_getInnerText(d.cells[SORT_COLUMN_INDEX]).replace(/[^0-9.]/g,"");bb=ts_getInnerText(c.cells[SORT_COLUMN_INDEX]).replace(/[^0-9.]/g,"");return parseFloat(aa)-parseFloat(bb)}function ts_sort_numeric(d,c){aa=parseFloat(ts_getInnerText(d.cells[SORT_COLUMN_INDEX]));if(isNaN(aa)){aa=0}bb=parseFloat(ts_getInnerText(c.cells[SORT_COLUMN_INDEX]));if(isNaN(bb)){bb=0}return aa-bb}function ts_sort_caseinsensitive(d,c){aa=ts_getInnerText(d.cells[SORT_COLUMN_INDEX]).toLowerCase();bb=ts_getInnerText(c.cells[SORT_COLUMN_INDEX]).toLowerCase();if(aa==bb){return 0}if(aa<bb){return -1}return 1}function ts_sort_default(d,c){aa=ts_getInnerText(d.cells[SORT_COLUMN_INDEX]);bb=ts_getInnerText(c.cells[SORT_COLUMN_INDEX]);if(aa==bb){return 0}if(aa<bb){return -1}return 1}function addEvent(e,d,b,a){if(e.addEventListener){e.addEventListener(d,b,a);return true}else{if(e.attachEvent){var c=e.attachEvent("on"+d,b);return c}else{alert("Handler could not be removed")}}};