var image_path="";var image_up="arrow-up.gif";var image_down="arrow-down.gif";var image_none="arrow-none.gif";addEvent(window,"load",sortables_init);var SORT_COLUMN_INDEX;function sortables_init(){if(!document.getElementsByTagName){return}var b=document.getElementsByTagName("script");for(var a=0;a<b.length;a++){if(b[a].src&&(b[a].src.indexOf("sorttable.js")!=-1)){var c=b[a].src;c=c.substring(0,c.lastIndexOf("/"));image_path=c+"/";break}}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=ts_getInnerText(b);if(b.className!="unsortable"&&b.className.indexOf("unsortable")==-1){b.innerHTML='<a href="#" class="sortheader" onclick="ts_resortTable(this);return false;">'+a+'<span class="sortarrow">  <img border=0 src="'+image_path+image_none+'" alt="v"/></span></a>'}}alternate(d)}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){var k;for(var m=0;m<f.childNodes.length;m++){if(f.childNodes[m].tagName&&f.childNodes[m].tagName.toLowerCase()=="span"){k=f.childNodes[m]}}var a=ts_getInnerText(k);var b=f.parentNode;var c=b.cellIndex;var l=getParent(b,"TABLE");if(l.rows.length<=1){return}var g=ts_getInnerText(l.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<l.rows[0].length;i++){d[i]=l.rows[0][i]}for(j=1;j<l.rows.length;j++){e[j-1]=l.rows[j]}e.sort(sortfn);if(k.getAttribute("sortdir")=="down"){ARROW='  <img border=0 src="'+image_path+image_up+'" alt="ˆ"/>';e.reverse();k.setAttribute("sortdir","up")}else{ARROW='  <img border=0 src="'+image_path+image_down+'" alt="v"/>';k.setAttribute("sortdir","down")}for(i=0;i<e.length;i++){if(!e[i].className||(e[i].className&&(e[i].className.indexOf("sortbottom")==-1))){l.tBodies[0].appendChild(e[i])}}for(i=0;i<e.length;i++){if(e[i].className&&(e[i].className.indexOf("sortbottom")!=-1)){l.tBodies[0].appendChild(e[i])}}var h=document.getElementsByTagName("span");for(var m=0;m<h.length;m++){if(h[m].className=="sortarrow"){if(getParent(h[m],"table")==getParent(f,"table")){h[m].innerHTML='  <img border=0 src="'+image_path+image_none+'" alt="v"/>'}}}k.innerHTML=ARROW;alternate(l)}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")}}}function replace(c,b,a){i=c.indexOf(b);r="";if(i==-1){return c}r+=c.substring(0,i)+a;if(i+b.length<c.length){r+=replace(c.substring(i+b.length,c.length),b,a)}return r}function alternate(e){var c=e.getElementsByTagName("tbody");for(var b=0;b<c.length;b++){var d=c[b].getElementsByTagName("tr");for(var a=1;a<d.length;a++){if((a%2)==0){if(d[a].className=="odd"||!(d[a].className.indexOf("odd")==-1)){d[a].className=replace(d[a].className,"odd","even")}else{d[a].className+=" even"}}else{if(d[a].className=="even"||!(d[a].className.indexOf("even")==-1)){d[a].className=replace(d[a].className,"even","odd")}d[a].className+=" odd"}}}};
