function Zuruecksetzen()
  {
  // zurücksetzen des Formulares
  document.getElementById("kontakt").reset();
  }
  
function ZeigeStatus(Status)
  {
  // initialisieren des Statusliste
  var AnzeigeStatus = {"eingabe" : 0, "warten" : 1, "okay" : 2, "fehler" : 3};
  
  // setzen der jeweiligen Anzeigemodi, je nach Status
  for (var Name in AnzeigeStatus) document.getElementById(Name).style.display = (Status == AnzeigeStatus[Name]) ? "block" : "none";
  }
  
function Antwort(Code, Daten)
  {
  // prüfen ob ein Fehler aufgetreten ist
  if ((Code == 4) && (Daten.code == 0))
    {
    // anzeigen der Sendebestätigung
    ZeigeStatus(2);
    }
  else if ((Code != 6) && (Code > 3))
    {
    // prüfen ob ein interner Fehler aufgetreten ist
    if ((Code == 4) && ((Daten.code >> 16) == 4) && ((Daten.code & 0xffff) < 4))
      {
      // ermitteln des einzelnen Codes
      var UnterCode = (Daten.code & 0xffff);
      
      // prüfen ob der Nachname hervorgehoben werden muss
      document.getElementById("_nachname").className = (UnterCode == 0) ? "error" : "";
      
      // prüfen ob die Erreichbarkeit hervorgehoben werden muss
      document.getElementById("_telefon").className = (UnterCode == 1) ? "error" : "";
      document.getElementById("_mail").className = ((UnterCode == 1) || (UnterCode == 2)) ? "error" : "";
      
      // prüfen ob der Text hervorgehoben werden muss
      document.getElementById("_text").className = (UnterCode == 3) ? "error" : "";
      
      // Fehlermeldung ausgeben
      document.getElementById("meldung").firstChild.nodeValue = Daten.message;
      
      // anzeigen der Fehlermeldung
      ZeigeStatus(3);
      }
    else
      {
      // Fehlermeldung ausgeben
      ZeigeFehler(Code, Daten);
      
      // anzeigen der Eingabemaske
      ZeigeStatus(0);
      }
    
    // einblenden des Dialogfeldes
    parent.__Dialog.anzeigen(null, null, null);
    }
  }
  
function Senden()
  {
  // anzeigen der Wartemeldung
  ZeigeStatus(1);
  
  // ermitteln des Resulates der Anfrage
  var __Anfrage = new Ajax(null, "ajax", Antwort);
  
  // senden des Formulares
  document.getElementById("kontakt").submit();
  }
  
function Zurueck()
  {
  // anzeigen der Eingabemaske
  ZeigeStatus(0);
  }
  
function Init()
  {
  // hinzufügen eines Divs
  var Div = ErzeugeElement("div", document.body, null, null);
  
  // ermitteln der Position des Divs
  Hoehe = Div.offsetTop;
  
  // entfernen des Divs
  Div.parentNode.removeChild(Div);
  
  // Dialog anzeigen, wenn die Höhe gültig ist
  if (Hoehe > 0)
    {
    // initialisieren des Statusliste
    AnzeigeStatus = {"eingabe" : {"id" : 0, "tasten" : -1}, "warten" : {"id" : 1, "tasten" : 0}, "okay" : {"id" : 2, "tasten" : 0}, "fehler" : {"id" : 3, "tasten" : 1}};
    
    // Dialog anzeigen
    parent.__Dialog.anzeigen(null, Hoehe, 700);

    // Größe der übrigen Felder setzen
    for (var Index in AnzeigeStatus) if (AnzeigeStatus[Index].tasten != -1)
      {
      // ermitteln der Fläche
      var Flaeche = document.getElementById(Index + "_flaeche");
      
      // Höhe für die Fläche festlegen
      SetzeCSS(Flaeche, {"height" : Hoehe - (AnzeigeStatus[Index].tasten + 1) * 22 - 10});
      }
    }
  else window.setTimeout(Init, 100);
  }
