// TableSort.js V4
// Dr. Jürgen Berkemeier, 28. 11. 2002
// www.uni-muenster.de/Physik/AP/Purwins/leute/Berkemeier/index.html
var TS_ssort=0 ;
var TS_first=1 ;
var TS_Array=new Array();
var TS_nzeilen=0,TS_nspalten=0;
var TS_Table;

function InitTable2Array(TabId) {
 TS_Table=document.getElementById(TabId);
  TS_nzeilen=TS_Table.getElementsByTagName("tr").length-1;
  TS_nspalten=TS_Table.getElementsByTagName("tr")[1].getElementsByTagName("td").length;
  for(var z=0;z<TS_nzeilen;z++) TS_Array[z]=new Array(TS_nspalten);
}
function Table2Array() {
 for(var z=0;z<TS_nzeilen;z++) {
  var zeile=TS_Table.getElementsByTagName("tr")[z+1];
  for(var s=0;s<TS_nspalten;s++) {
   var spalte=zeile.getElementsByTagName("td")[s];
   TS_Array[z][s]=spalte.firstChild.nodeValue;
  }
 }
}
function Array2Table() {
 for(var z=0;z<TS_nzeilen;z++) {
  var zeile=TS_Table.getElementsByTagName("tr")[z+1];
  for(var s=0;s<TS_nspalten;s++) {
   var spalte=zeile.getElementsByTagName("td")[s];
   spalte.firstChild.nodeValue=TS_Array[z][s];
  }
 }
}
function VglFkt(a,b) {
 var ta=a[TS_ssort].toUpperCase(),tb=b[TS_ssort].toUpperCase();
  if (ta>tb) return 1;
  else if (ta<tb) return -1;
  else {
   ta=a[0].toUpperCase();
   tb=b[0].toUpperCase();
   if (ta>tb) return 1;
   else if (ta<tb) return -1;
   else return 0;
  }
}
function sort(s,TabId) {
 if (TS_first==1) {
  InitTable2Array(TabId);
  Table2Array();
  TS_first=0;
 }
 if(s==TS_ssort) TS_Array.reverse() ;
 else {
  TS_ssort=s;
  TS_Array.sort(VglFkt);
 }
 Array2Table();
}
function Text2Link(Id,Ziel) {
 var feld=document.getElementById(Id).firstChild ;
 var text=document.createTextNode(feld.nodeValue) ;
 var link=document.createElement("a") ;
  link.href=Ziel ;
  link.title="Nach "+feld.nodeValue+" sortieren" ;
  link.appendChild(text) ;
  document.getElementById(Id).replaceChild(link,feld) ;
}
