/* 
 * Formcheck routines for the input forms
 * 
 */

function isDate( d ) {
    // we want dates only like this: '28.04.2006'
    // fussy I know :)
    if( d == '' ) return false;
    var re = new RegExp("^\\d\\d?\\.\\d\\d?\\.\\d\\d\\d\\d$", 'g');
    if( re.test(d) ) { return true; }
    return false;
}

function chkFldsFerienzeit() {
  //name="beschreibung" max length of 128 chars
  //name="name" - not empty
  flds = document.getElementsByName( 'name' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie einen Kontaktnamen in Ihrer Einrichtung an." );
    return false;
  }
  flds = document.getElementsByName( 'strasse' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie die Straße/Hausnr an." );
    return false;
  }
  flds = document.getElementsByName( 'plz' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie die Postleitzahl an." );
    return false;
  }
  flds = document.getElementsByName( 'ort' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie den Ort an." );
    return false;
  }
  flds = document.getElementsByName( 'fon' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie die Telefonnummer an." );
    return false;
  }
  flds = document.getElementsByName( 'start_date' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie das Startdatum Ihrer Veranstaltung an." );
    return false;
  } else if( !isDate( fldName.value ) ) {
    alert( "Bitte geben Sie das Startdatum in folgendem Format an: 21.02.2006" );
    return false;
  }
  flds = document.getElementsByName( 'short_desc' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie eine Beschreibung ein)." );
    return false;
  }
  flds = document.getElementsByName( 'short_desc' );
  fldName = flds.item(0);
  if( fldName.value.length > 150 ) {
    alert( "Bitte geben Sie eine kürzere Beschreibung ein (max 150 Z.)." );
    return false;
  }
  flds = document.getElementsByName( 'age_group' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie das Alter der Teilnehmer an." );
    return false;
  }
  flds = document.getElementsByName( 'age_band' );
  fldName = flds.item(0);
  if( fldName.value == 'dummy' ) {
    alert( "Bitte geben Sie die Altersgruppe an." );
    return false;
  }
  flds = document.getElementsByName( 'location' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie den Ort Ihrer Veranstaltung an." );
    return false;
  }
  return true;
}

function chkFldsInstitute() {
  //name="beschreibung" max length of 150 chars
  //name="name" - not empty
  flds = document.getElementsByName( 'name' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie den Namen Ihrer Einrichtung an." );
    return false;
  }
  if( fldName.value.search(/viagra/i) != -1 || fldName.value.search(/levitra/i) != -1 || fldName.value.search(/cialis/i) != -1 ) {
    alert( "Kein drogen!" );
    return false;
  }
  flds = document.getElementsByName( 'strasse' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie die Straße/Hausnr Ihrer Einrichtung an." );
    return false;
  }
  flds = document.getElementsByName( 'plz' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie die PLZ Ihrer Einrichtung an." );
    return false;
  }
  flds = document.getElementsByName( 'ort' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie den Ort Ihrer Einrichtung an." );
    return false;
  }
  flds = document.getElementsByName( 'fon' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie die Telefonnummer Ihrer Einrichtung an." );
    return false;
  }
  flds = document.getElementsByName( 'einrichtung' );
  if( !flds.item(0).checked && !flds.item(1).checked && !flds.item(2).checked && !flds.item(3).checked) {
    alert( "Bitte geben Sie eine Einrichtung ein." );
    return false;
  }
  flds = document.getElementsByName( 'beschreibung' );
  fldName = flds.item(0);
  if( fldName.value.length >= 200 ) {
    alert( "Bitte geben Sie eine kürzere Beschreibung ein (max 200 Z.)." );
    return false;
  }
  elem = document.getElementById( 'page_id' );
  if( elem.options[0].selected ) {
    alert( "Bitte geben Sie die Lebenslage Ihrer Einrichtung an." );
    return false;
  }
  return true;
}

function chkFldsVeranstaltung() {
  //name="beschreibung" max length of 128 chars
  //name="name" - not empty
  flds = document.getElementsByName( 'title' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie den Titel Ihrer Veranstaltung an." );
    return false;
  }
  if( fldName.value.search(/viagra/i) != -1 || fldName.value.search(/levitra/i) != -1 || fldName.value.search(/cialis/i) != -1 ) {
    alert( "Keine drogen!" );
    return false;
  }
  flds = document.getElementsByName( 'start_date' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie das Startdatum Ihrer Veranstaltung an." );
    return false;
  } else if( !isDate( fldName.value ) ) {
    alert( "Bitte geben Sie das Startdatum in folgendem Format an: 21.02.2006" );
    return false;
  }
  flds = document.getElementsByName( 'end_date' );
  fldName = flds.item(0);
  if( (fldName.value.length > 0) && !isDate( fldName.value ) ) {
    alert( "Bitte geben Sie das Enddatum in folgendem Format an: 21.02.2006");
    return false;
  }
  flds = document.getElementsByName( 'short_desc' );
  fldName = flds.item(0);
  if( fldName.value.length > 128 ) {
    alert( "Bitte geben Sie eine kürzere Beschreibung ein (max 100 Z.)." );
    return false;
  }
  flds = document.getElementsByName( 'location' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie den Ort Ihrer Veranstaltung an." );
    return false;
  }
  flds = document.getElementsByName( 'name' );
  fldName = flds.item(0);
  if( fldName.value.length <= 0 ) {
    alert( "Bitte geben Sie einen Kontaktnamen in Ihrer Einrichtung an." );
    return false;
  }
  return true;
}
