//analog php's trim:
String.prototype.trim = function() {
 return this.replace(/^\s*|\s*$/g,'');
};

//übernimmt rechnungsadresse als lieferadresse, wenn nicht leer
function abgleichAddy() {
 var reAddy = document.getElementsByName('rechnungsAddy')[0];
 var liAddy = document.getElementsByName('lieferAddy')[0];
 liAddy.value = reAddy.value;
}

//check formdata:
function checkForm() {
 var f = document.getElementById('onlinebestellung');
 //values:
 var kundenNr = f.kundenNr.value.trim();
 var ansprechpartner = f.ansprechpartner.value.trim(); 
 var kundenMail = f.kundenMail.value.trim();
 var rechnungsAddy = f.rechnungsAddy.value.trim();
 var lieferAddy = f.lieferAddy.value.trim();
 var liefertermin = f.liefertermin.value.trim();
 var lieferzeit = f.lieferzeit.value.trim();
 var agb = f.agb.checked;
 //regexps:
 var expMail = /^[0-9a-z~!#$%&_äüöß\-]([.]?[0-9a-z~!#$%&_äöüß\-])*@[0-9a-z~!#$%&_äöüß\-]([.]?[0-9a-z~!#$%&_äöüß\-])*$/i;
 var expArt = /^[0-9]{5}$/;
 var expAnzahl = /^[1-9]{1}[0-9]{0,2}$/;
 //fehler?
 var txt = '';
 if(kundenNr == '') {
  txt += "Bitte Kundennummer angeben\n";
 }
 if(ansprechpartner == '') {
  txt += "Bitte einen Ansprechpartner angeben\n";
 }
 if(!kundenMail.match(expMail)) {
  txt += "Bitte Email-Adresse (korrekt) angeben\n";
 } 
 if(rechnungsAddy == '') {
  txt += "Bitte Rechnungsadresse angeben\n";
 }
 if(lieferAddy == '') {
  txt += "Bitte Lieferadresse angeben\n";
 } 
 if(liefertermin == '') {
  txt += "Bitte Liefertermin angeben\n";
 } 
 if(lieferzeit == '') {
  txt += "Bitte Lieferzeit angeben\n";
 }
 var bestellung = false;
 var zeilen = 15; // anzahl zeilen fest im dok. codiert
 //bestellung ist ok wenn mindestens eine zeile richtig ausgefüllt:
 for(var i=1; i<=zeilen,typeof f['zeile'+ i +'[]'] != 'undefined'; i++) {
  var artNr = f['zeile'+ i +'[]'][0].value.trim();
  var artName = f['zeile'+ i +'[]'][1].value.trim();
  var anzahl = f['zeile'+ i +'[]'][2].value.trim();
  if(artNr.match(expArt) && artName != '' && anzahl.match(expAnzahl)) {
   bestellung = true;
   break;
  }
 }
 if(!bestellung) {
  txt += "Bitte mindestens eine Artikelzeile korrekt ausfüllen\n";
 }
 //weitere zeilen richtig ausgefüllt?
 for(var i=1; i<=zeilen,typeof f['zeile'+ i +'[]'] != 'undefined'; i++) {
  var artNr = f['zeile'+ i +'[]'][0].value.trim();
  var artName = f['zeile'+ i +'[]'][1].value.trim();
  var anzahl = f['zeile'+ i +'[]'][2].value.trim();
  if (  !((artNr == '' && artName == '' && anzahl == '') || (artNr.match(expArt) && artName != '' && anzahl.match(expAnzahl)))     ) {
   txt += "Fehler in Zeile "+ i +": bitte Zeile korrekt und vollständig ausfüllen\n";
  }
 }
 if(!agb) {
  txt += "Sie müssen unsere AGB akzeptieren\n";
 }
 
 //wenn fehler, alert: 
 if(txt != '') {
  alert(txt);
  return false;
 }
 
 return true;
}
