function kontrollierenSuche(theForm)
{
  var hasit = false;
  var checkStr = theForm.Stueckname.value;
  for (i = 0;  i < checkStr.length;  i++)
          {
            ch = checkStr.charAt(i);
            if (ch == "\"")
            {
                    hasit = true;
            }
   }

  if (hasit)
  {
    alert("Das Feld \"Stückname\" darf kein Anführungszeichen enthalten.");
    theForm.Stueckname.focus();
    return (false);
  }
return (true);
}

function kontrollieren(theForm)
{
  if (theForm.Stueckname.value == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Stueckname\" ein.");
    theForm.Stueckname.focus();
    return (false);
  }

  var hasit = false;
  var checkStr = theForm.Stueckname.value;
  for (i = 0;  i < checkStr.length;  i++)
          {
            ch = checkStr.charAt(i);
            if (ch == "\"")
            {
                    hasit = true;
            }
   }

  if (hasit)
  {
    alert("Das Feld \"Stückname\" darf kein Anführungszeichen enthalten.");
    theForm.Stueckname.focus();
    return (false);
  }

  if (theForm.original.value == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Original\" ein.");
    theForm.original.focus();
    return (false);
  }

  var hasit = false;
  var checkStr = theForm.original.value;
  for (i = 0;  i < checkStr.length;  i++)
          {
            ch = checkStr.charAt(i);
            if (ch == "\"")
            {
                    hasit = true;
            }
   }

  if (hasit)
  {
    alert("Das Feld \"Original\" darf kein Anführungszeichen enthalten.");
    theForm.original.focus();
    return (false);
  }

  if (trim(theForm.original.value.length) < 3)
  {
    alert("Bitte geben Sie einen gueltigen Wert ins Feld \"Original\" ein.");
    theForm.original.focus();
    return (false);
  }

  if (theForm.Autor.value == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Autor\" ein.");
    theForm.Autor.focus();
    return (false);
  }

  var hasit = false;
  var checkStr = theForm.Autor.value;
  for (i = 0;  i < checkStr.length;  i++)
          {
            ch = checkStr.charAt(i);
            if (ch == "\"")
            {
                    hasit = true;
            }
   }

  if (hasit)
  {
    alert("Das Feld \"Autor\" darf kein Anführungszeichen enthalten.");
    theForm.Autor.focus();
    return (false);
  }

  if (trim(theForm.Autor.value.length) < 5)
  {
    alert("Bitte geben Sie einen gueltigen Wert ins Feld \"Autor\" ein.");
    theForm.Autor.focus();
    return (false);
  }

  if (theForm.Regie.value == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Regie\" ein.");
    theForm.Regie.focus();
    return (false);
  }

  var hasit = false;
  var checkStr = theForm.Regie.value;
  for (i = 0;  i < checkStr.length;  i++)
          {
            ch = checkStr.charAt(i);
            if (ch == "\"")
            {
                    hasit = true;
            }
   }

  if (hasit)
  {
    alert("Das Feld \"Regie\" darf kein Anführungszeichen enthalten.");
    theForm.Regie.focus();
    return (false);
  }
  if (trim(theForm.Regie.value.length) < 5)
  {
    alert("Bitte geben Sie einen gueltigen Wert ins Feld \"Regie\" ein.");
    theForm.Regie.focus();
    return (false);
  }

  if (!isRealEntry(theForm.Ort.value))
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Ort\" ein.");
    theForm.Ort.value = "Keine Angabe";
    theForm.Ort.focus();
    return (false);
  }

  var hasit = false;
  var checkStr = theForm.Ort.value;
  for (i = 0;  i < checkStr.length;  i++)
          {
            ch = checkStr.charAt(i);
            if (ch == "\"")
            {
                    hasit = true;
            }
   }

  if (hasit)
  {
    alert("Das Feld \"Ort\" darf kein Anführungszeichen enthalten.");
    theForm.Ort.focus();
    return (false);
  }

  if (!isRealEntry(theForm.Vorverkauf.value))
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Vorverkauf\" ein.");
    theForm.Vorverkauf.value = "Keine Angabe";
    theForm.Vorverkauf.focus();
    return (false);
  }
  var hasit = false;
  var checkStr = theForm.Vorverkauf.value;
  for (i = 0;  i < checkStr.length;  i++)
          {
            ch = checkStr.charAt(i);
            if (ch == "\"")
            {
                    hasit = true;
            }
   }

  if (hasit)
  {
    alert("Das Feld \"Vorverkauf\" darf kein Anführungszeichen enthalten.");
    theForm.Vorverkauf.focus();
    return (false);
  }

  if (theForm.Tag.value == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Tag\" ein.");
    theForm.Tag.focus();
    return (false);
  }

  if (!isinteger(theForm.Tag.value))
  {
    alert("Bitte geben Sie nur Ziffern in das Feld \"Tag\" ein.");
    theForm.Tag.focus();
    return (false);
  }

  if (theForm.Tag.value.length != 2)
  {
    alert("Bitte geben Sie genau 2 Ziffern ins Feld \"Tag\" ein.");
    theForm.Tag.focus();
    return (false);
  }

  var chkVal = theForm.Tag.value;
  var prsVal = chkVal;
  if (chkVal != "" && !(prsVal <= "31"))
  {
    alert("Bitte geben Sie einen Wert kleiner oder gleich 31 ins Feld \"Tag\" ein.");
    theForm.Tag.focus();
    return (false);
  }
  if (chkVal != "" && !(prsVal >= "01"))
  {
    alert("Bitte geben Sie einen Wert grösser oder gleich 01 ins Feld \"Tag\" ein.");
    theForm.Tag.focus();
    return (false);
  }

  if (theForm.Monat.value == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Monat\" ein.");
    theForm.Monat.focus();
    return (false);
  }

  if (!isinteger(theForm.Monat.value))
  {
    alert("Bitte geben Sie nur Ziffern in das Feld \"Monat\" ein.");
    theForm.Monat.focus();
    return (false);
  }

  if (theForm.Monat.value.length != 2)
  {
    alert("Bitte geben Sie genau 2 Ziffern ins Feld \"Monat\" ein.");
    theForm.Monat.focus();
    return (false);
  }

  var chkVal = theForm.Monat.value;
  var prsVal = chkVal;
  if (chkVal != "" && !(prsVal <= "12"))
  {
    alert("Bitte geben Sie einen Wert kleiner oder gleich 12 ins Feld \"Monat\" ein.");
    theForm.Monat.focus();
    return (false);
  }
  if (chkVal != "" && !(prsVal >= "01"))
  {
    alert("Bitte geben Sie einen Wert grösser oder gleich 01 ins Feld \"Monat\" ein.");
    theForm.Monat.focus();
    return (false);
  }

  if (theForm.Jahr.value == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Jahr\" ein.");
    theForm.Jahr.focus();
    return (false);
  }

  if (!isinteger(theForm.Jahr.value))
  {
    alert("Bitte geben Sie nur Ziffern in das Feld \"Jahr\" ein.");
    theForm.Jahr.focus();
    return (false);
  }

  if (theForm.Jahr.value.length !=4)
  {
    alert("Bitte geben Sie genau 4 Ziffern ins Feld \"Jahr\" ein.");
    theForm.Jahr.focus();
    return (false);
  }

  var chkVal = theForm.Jahr.value;
  var prsVal = chkVal;
  if (chkVal != "" && !(prsVal >= "1900"))
  {
    alert("Bitte geben Sie einen realistischen Wert ins Feld \"Jahr\" ein.");
    theForm.Jahr.focus();
    return (false);
  }

  if (theForm.Stunde.value == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Stunde\" ein.");
    theForm.Stunde.focus();
    return (false);
  }

  if (!isinteger(theForm.Stunde.value))
  {
    alert("Bitte geben Sie nur Ziffern in das Feld \"Stunde\" ein.");
    theForm.Stunde.focus();
    return (false);
  }

  if (theForm.Stunde.value.length != 2)
  {
    alert("Bitte geben Sie genau 2 Ziffern ins Feld \"Stunde\" ein.");
    theForm.Stunde.focus();
    return (false);
  }

  var chkVal = theForm.Stunde.value;
  var prsVal = chkVal;
  if (chkVal != "" && !(prsVal <= "23"))
  {
    alert("Bitte geben Sie einen Wert kleiner oder gleich 23 ins Feld \"Stunde\" ein.");
    theForm.Stunde.focus();
    return (false);
  }

  if (theForm.Minuten.value == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Minuten\" ein.");
    theForm.Minuten.focus();
    return (false);
  }

  if (!isinteger(theForm.Minuten.value))
  {
    alert("Bitte geben Sie nur Ziffern in das Feld \"Minuten\" ein.");
    theForm.Minuten.focus();
    return (false);
  }

  if (theForm.Minuten.value.length != 2)
  {
    alert("Bitte geben Sie genau 2 Ziffern ins Feld \"Minuten\" ein.");
    theForm.Minuten.focus();
    return (false);
  }

  var chkVal = theForm.Minuten.value;
  var prsVal = chkVal;
  if (chkVal != "" && !(prsVal <= "59"))
  {
    alert("Bitte geben Sie einen Wert kleiner oder gleich 59 ins Feld \"Minuten\" ein.");
    theForm.Minuten.focus();
    return (false);
  }

  if (trim(theForm.Kontakt.value) == "")
  {
    alert("Bitte geben Sie einen Wert ins Feld \"Kontakt\" ein.");
    theForm.Kontakt.focus();
    return (false);
  }
  if (trim(theForm.Kontakt.value.length) < 5)
  {
    alert("Bitte geben Sie einen gueltigen Wert ins Feld \"Kontakt\" ein.");
    theForm.Kontakt.focus();
    return (false);
  }

  return (true);
}

function isinteger (checkStr)
{
        var checkOK = "0123456789";
          var allValid = true;
          var allNum = "";
          for (i = 0;  i < checkStr.length;  i++)
          {
            ch = checkStr.charAt(i);
            for (j = 0;  j < checkOK.length;  j++)
              if (ch == checkOK.charAt(j))
                break;
            if (j == checkOK.length)
            {
                      allValid = false;
                      break;
            }
            allNum += ch;
          }
          if (!allValid)
          {
                   return (false);
          }
        return(true);
}

function trim(inputString) {
   // Removes leading and trailing spaces from the passed string. Also removes
   // consecutive spaces and replaces it with one space. If something besides
   // a string is passed in (null, custom object, etc.) then return the input.
   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
   while (ch == " ") { // Check for spaces at the beginning of the string
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
   while (ch == " ") { // Check for spaces at the end of the string
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
   while (retValue.indexOf("  ") != -1) { // Note that there are two spaces in the string - look for multiple spaces within the string
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings
   }
   return retValue; // Return the trimmed string back to the user
} // Ends the "trim" function

function isRealEntry(inputString) {
   var testValue = trim(inputString);
   if (testValue == "") {
   	return false;
   }
   if (testValue == "-") {
   	return false;
   }
   if (testValue == ".") {
   	return false;
   }
   if (testValue == ",") {
   	return false;
   }
   if (testValue.length < 4) {
   	return false;
   }
   return true;
}

