var months = null;
var items = null;

//event handler for XMLHttpRequest
function getUser() {
    document.getElementById("userlist").innerHTML = "<div align=\"center\">lade Daten ... <img align=\"top\" src=\"img/indicator.gif\"></div>";
    if(request.readyState == 4){
        if(request.status == 200){
            document.getElementById("userlist").innerHTML = "<tr><td>Parsing data ...<br></td></tr>";
            //alert(request.responseText);
            var doc = request.responseXML;
            var tournamentList = createUserTable(doc); 
            //alert(tournamentList);
            document.getElementById("userlist").innerHTML = tournamentList;
        } else {
            alert("A problem occurred with communicating between "+
                  "the XMLHttpRequest object and the server program.");
        }
    }//end outer if
}

function getUserList() {
    document.getElementById("userlist").innerHTML = "<div align=\"center\">lade Daten ... <img align=\"top\" src=\"img/indicator.gif\"></div>";
    if(request.readyState == 4){
        if(request.status == 200){
            document.getElementById("userlist").innerHTML = "<tr><td>Parsing data ...<br></td></tr>";
            //alert(request.responseText);
            var doc = request.responseXML;
            var userList = createUserList(doc); 
            //alert(userList);
            document.getElementById("userlist").innerHTML = userList;
        } else {
            alert("A problem occurred with communicating between "+
                  "the XMLHttpRequest object and the server program.");
        }
    }//end outer if
}

function getUserDetails() {
    document.getElementById("userlist").innerHTML = "<div align=\"center\">lade Daten ... <img align=\"top\" src=\"img/indicator.gif\"></div>";
    if(request.readyState == 4){
        if(request.status == 200){
            document.getElementById("userlist").innerHTML = "<tr><td>Parsing data ...<br></td></tr>";
            //alert(request.responseText);
            var doc = request.responseXML;
            var userList = createUserDetails(doc); 
            //alert(userList);
            document.getElementById("userlist").innerHTML = userList;
        } else {
            alert("A problem occurred with communicating between "+
                  "the XMLHttpRequest object and the server program.");
        }
    }//end outer if
}

function createUserList(doc){
  var idx = 0, idx2 = 0;
  var bufferHTML = new Array( );
  var bufferCount = 0;
  bufferHTML[bufferCount++] = "<table class=\"users\" width=\"100%\"><tbody>\n";

  var root = doc.documentElement;
  items = doc.getElementsByTagName("user");

  for(idx; idx < items.length; idx++) {
    if(idx%4==0)
      bufferHTML[bufferCount++] = "<tr>\n";
    bufferHTML[bufferCount++] = "  <td>"+items[idx].getElementsByTagName("vorname")[0].firstChild.data+"</td>\n";
    if(idx%4==3)
      bufferHTML[bufferCount++] = "</tr>\n";
    
  }
  bufferHTML[bufferCount++] = "</tbody></table>\n";
  
  return bufferHTML.join("");
}

function createUserTable(doc){
  var idx = 0, idx2 = 0;
  var bufferHTML = new Array( );
  var bufferCount = 0;
  bufferHTML[bufferCount++] = "<table class=\"userlist\" width=\"100%\"><tbody>";

  var root = doc.documentElement;
  items = doc.getElementsByTagName("user");
  //bufferHTML[bufferCount++] = "<tr>\n";
/*  for(idx; idx < items.length; idx++) {
    if(idx%3==3)
      bufferHTML[bufferCount++] = "<tr>\n";
    bufferHTML[bufferCount++] = "  <td><a href=\"#\""+items[idx].getElementsByTagName("vorname")[0].firstChild.data+"\" onClick=\"createUserDetails('"+idx+"')\">"+items[idx].getElementsByTagName("vorname")[0].firstChild.data+"</a></td>";
    if(idx%3==2)
      bufferHTML[bufferCount++] = "</tr>\n";
  } */
  //bufferHTML[bufferCount++] = "</tr>\n";
  
  //bufferHTML[bufferCount++] = "<tr><th>Vornamen</th><th>Nick</th><th>Nachname</th><th>w/m</th><th>Status</th><th>letzer Login</th><th>gespielte Turniere</th><th></th></tr>";
  
  for(idx; idx < items.length; idx++) {
    bufferHTML[bufferCount++] = "<tr style=\"";
    if(idx%2==0)
      bufferHTML[bufferCount++] = "background-color: #F7F7F7; ";
//    if(items[idx].getElementsByTagName("turniere")[0].firstChild.data=="0")
//      bufferHTML[bufferCount++] = "font-style:italic; ";
    bufferHTML[bufferCount++] =  "\">\n";  
    bufferHTML[bufferCount++] = "  <td class=\"userentry\">"+items[idx].getElementsByTagName("vorname")[0].firstChild.data+"</td>\n";
    if(items[idx].getElementsByTagName("nick")[0].hasChildNodes())
      bufferHTML[bufferCount++] = "  <td class=\"userentry\">'"+items[idx].getElementsByTagName("nick")[0].firstChild.data+"'</td>\n";
    else
      bufferHTML[bufferCount++] = "  <td class=\"userentry\">&nbsp;</td>";
    if(items[idx].getElementsByTagName("nachname")[0].hasChildNodes())
      bufferHTML[bufferCount++] = "  <td class=\"userentry\">"+items[idx].getElementsByTagName("nachname")[0].firstChild.data+"</td>\n";
    if(items[idx].getElementsByTagName("geschlecht")[0].firstChild.data=="w")
      bufferHTML[bufferCount++] = "  <td class=\"userentry\"><img src=\"img/female.png\"></td>\n";
    else
      bufferHTML[bufferCount++] = "  <td class=\"userentry\"><img src=\"img/male.png\"></td>\n";
    bufferHTML[bufferCount++] = "  <td class=\"userentry\">"+items[idx].getElementsByTagName("status")[0].firstChild.data+"</td>\n";
    bufferHTML[bufferCount++] = "  <td class=\"userentry\">"+items[idx].getElementsByTagName("lastlogin")[0].firstChild.data+"</td>\n";
    bufferHTML[bufferCount++] = "  <td class=\"userentry\">"+items[idx].getElementsByTagName("turniere")[0].firstChild.data+"</td>\n";
    bufferHTML[bufferCount++] = "  <td class=\"userentry\"><a href=\"admin.php?content=user&action=show&uid="+items[idx].getAttribute("id")+"\"><img src=\"img/user.png\" border=\"0\"></a> <a href=\"admin.php?content=user&action=edit&uid="+items[idx].getAttribute("id")+"\"><img src=\"img/user_edit.png\" border=\"0\"></a> <a href=\"admin.php?content=user&action=delete&uid="+items[idx].getAttribute("id")+"\"><img src=\"img/user_delete.png\" border=\"0\"></a></td>\n";
    if(items[idx].getElementsByTagName("turniere")[0].firstChild.data=="0")
      bufferHTML[bufferCount++] = "  <td class=\"userentry\">?</td>\n";  
    else
      bufferHTML[bufferCount++] = "  <td class=\"userentry\">&nbsp;</td>\n";
    bufferHTML[bufferCount++] = "</tr>\n";
  }
  
  bufferHTML[bufferCount++] = "</tbody></table><br/>\n";
  bufferHTML[bufferCount++] = items.length+" Benutzer gefunden.<br/><br/>\n";
  bufferHTML[bufferCount++] = "<div>";
  bufferHTML[bufferCount++] = "<div style=\"float: left; width: 65px; border: 1px solid rgb(224,224,224); background-color: #F7F7F7;\"><a href=\"admin.php?content=user&start=1&step=20\"><img src=\"img/resultset_first.png\" border=\"0\"></a>";
  bufferHTML[bufferCount++] = "<a href=\"admin.php?content=user&start="+(parseInt(root.getAttribute("start"))-parseInt(root.getAttribute("step")))+"&step="+root.getAttribute("step")+"\"><img src=\"img/resultset_previous.png\" border=\"0\"></a>";
  bufferHTML[bufferCount++] = "<a href=\"admin.php?content=user&start="+(parseInt(root.getAttribute("start"))+parseInt(root.getAttribute("step")))+"&step="+root.getAttribute("step")+"\"><img src=\"img/resultset_next.png\" border=\"0\"></a>";
  bufferHTML[bufferCount++] = "<a href=\"#\"><img src=\"img/resultset_last.png\" border=\"0\"></a></div>";
  bufferHTML[bufferCount++] = "<div style=\"float: right; width: 17px; border: 1px solid rgb(224,224,224); background-color: #F7F7F7;\"><a href=\"admin.php?content=user&action=add\"><img src=\"img/user_add.png\" border=\"0\"></a>";  
  bufferHTML[bufferCount++] = "</div><br  style=\"float: none;\">";
  return bufferHTML.join("");
};

function createUserDetails(doc){
    var bufferHTML = new Array( );
    var bufferCount = 0;

    var root = doc.documentElement;
    items = doc.getElementsByTagName("user");
    
    id = 0;
    
    bufferHTML[bufferCount++] = items[id].getElementsByTagName("vorname")[0].firstChild.data+" ";
    if(items[id].getElementsByTagName("nick")[0].hasChildNodes())
      bufferHTML[bufferCount++] = " '"+items[id].getElementsByTagName("nick")[0].firstChild.data+"' ";
    bufferHTML[bufferCount++] = items[id].getElementsByTagName("nachname")[0].firstChild.data+"<br/>";
    if(items[id].getElementsByTagName("email")[0].hasChildNodes())
      bufferHTML[bufferCount++] = "<a href=\""+items[id].getElementsByTagName("email")[0].firstChild.data+"\">"+items[id].getElementsByTagName("email")[0].firstChild.data+"</a><br/><br/>";
    if(items[id].getElementsByTagName("strasse")[0].hasChildNodes())
      bufferHTML[bufferCount++] = items[id].getElementsByTagName("strasse")[0].firstChild.data;
    if(items[id].getElementsByTagName("hausnr")[0].hasChildNodes())
      bufferHTML[bufferCount++] = " "+items[id].getElementsByTagName("hausnr")[0].firstChild.data+"<br/>";   
    if(items[id].getElementsByTagName("plz")[0].hasChildNodes())
      bufferHTML[bufferCount++] = items[id].getElementsByTagName("plz")[0].firstChild.data;
    if(items[id].getElementsByTagName("ort")[0].hasChildNodes())
      bufferHTML[bufferCount++] = " "+items[id].getElementsByTagName("ort")[0].firstChild.data+"<br/><br/>";
    if(items[id].getElementsByTagName("telefon")[0].hasChildNodes())
      bufferHTML[bufferCount++] = "Tel.: "+items[id].getElementsByTagName("telefon")[0].firstChild.data+"<br/>";
    if(items[id].getElementsByTagName("mobil")[0].hasChildNodes())
      bufferHTML[bufferCount++] = "Mobil: "+items[id].getElementsByTagName("mobil")[0].firstChild.data+"<br/><br/>";
    bufferHTML[bufferCount++] = "Eingetragen am "+items[id].getElementsByTagName("created")[0].firstChild.data+"<br/>";
    bufferHTML[bufferCount++] = "letztes Login am "+items[id].getElementsByTagName("lastlogin")[0].firstChild.data+"<br/><br/>";     
    bufferHTML[bufferCount++] = "gespielte Turniere: "+items[id].getElementsByTagName("turniere")[0].firstChild.data;
    return bufferHTML.join("");
}
