// JavaScript Document

//DOB validation

var dtCh= "/";
//var minYear=1900;
//var maxYear=2100;
var minYear=1940;
var maxYear=1995;

function isInteger(s)
{
var i;
for (i = 0; i < s.length; i++)
{ 
// Check that current character is number.
var c = s.charAt(i);
if (((c < "0") || (c > "9")))
return false;
}
// All characters are numbers.
return true;
}

function stripCharsInBag(s, bag)
{
var i;
var returnString = "";
// Search through string's characters one by one.
// If character is not in bag, append to returnString.
for (i = 0; i < s.length; i++){ 
var c = s.charAt(i);
if (bag.indexOf(c) == -1) returnString += c;
}
return returnString;
}

function daysInFebruary (year){
// February has 29 days in any year evenly divisible by four,
// EXCEPT for centurial years which are not also divisible by 400.
return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
for (var i = 1; i <= n; i++) {
this[i] = 31
if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
if (i==2) {this[i] = 29}
} 
return this
}

function isDate(dtStr)
{
var daysInMonth = DaysArray(12)
var pos1=dtStr.indexOf(dtCh)
var pos2=dtStr.indexOf(dtCh,pos1+1)
var strMonth=dtStr.substring(0,pos1)
var strDay=dtStr.substring(pos1+1,pos2)
var strYear=dtStr.substring(pos2+1)
strYr=strYear
if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
for (var i = 1; i <= 3; i++) {
if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
}
month=parseInt(strMonth)
day=parseInt(strDay)
year=parseInt(strYr)
if (pos1==-1 || pos2==-1)
{
alert("The date format should be : mm/dd/yyyy")
return false
}
if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month])
{
alert("Bitte Geburtstag zwischen 1 und 31 angeben")
return false
}
if (strMonth.length<1 || month<1 || month>12)
{
alert("Bitte Geburtsmonat  zwischen 1 und 12 angeben")
return false
}
if (strYear.length != 4 || year==0 || year<minYear || year>maxYear)
{
alert("Bitte Geburtsjahr zwischen "+minYear+" und "+maxYear+" angeben")
return false
}
if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false)
{
alert("Bitte vollständiges Geburtsdatum angeben")
return false
}
//return true
}




var submitcount=0;

function reset() 
{
	document.ContactForm.name_vorname.value="";
    document.ContactForm.name_nachname.value="";
    document.ContactForm.geb_tag.value="";
    document.ContactForm.geb_monat.value="";
    document.ContactForm.geb_jahr.value="";
    document.ContactForm.email.value="";
    document.ContactForm.tel_vorwahl.value="";
    document.ContactForm.tel_rufnummer.value="";
    document.ContactForm.familienstand.value="";
    document.ContactForm.strasse.value="";
    document.ContactForm.hnummer.value="";
    document.ContactForm.plz.value="";
    document.ContactForm.ort.value="";
    document.ContactForm.beruf.value="";
    document.ContactForm.datenschutz.checked=false;
}

function ValidateContactForm()
{
    var vname = document.ContactForm.name_vorname;
    var nname = document.ContactForm.name_nachname;
    var tag = document.ContactForm.geb_tag;
    var monat = document.ContactForm.geb_monat;
    var jahr = document.ContactForm.geb_jahr;
    var email = document.ContactForm.email;
    var vwahl = document.ContactForm.tel_vorwahl;
    var ruf = document.ContactForm.tel_rufnummer;
    var fam = document.ContactForm.familienstand;
    var str = document.ContactForm.strasse;
    var hnr = document.ContactForm.hnummer;
    var plz = document.ContactForm.plz;
    var ort = document.ContactForm.ort;
    var beruf = document.ContactForm.beruf;
    var datenschutz = document.ContactForm.datenschutz;

  if (vname.value == "")
    {
        window.alert("Bitte Vorname angeben.");
        vname.focus();
        return false;
    }
  if (vname.value == "test")
    {
        window.alert("Bitte Vorname angeben.");
        vname.focus();
        return false;
    }
  if (vname.value.length < 2) 
  	{
        window.alert("Bitte Vorname angeben.");
        vname.focus();
        return false;
    }    
  if (nname.value == "")
    {
        window.alert("Bitte Nachname angeben.");
        nname.focus();
        return false;
    }
  if (nname.value == "test")
    {
        window.alert("Bitte Nachname angeben.");
        nname.focus();
        return false;
    }
  if (nname.value.length < 2) 
  	{
        window.alert("Bitte Nachname angeben.");
        nname.focus();
        return false;
    } 
 if (str.value == "")
    {
        window.alert("Bitte Strasse angeben.");
        str.focus();
        return false;
    }
 if (str.value.length < 2) 
  	{
        window.alert("Bitte Strasse angeben.");
        str.focus();
        return false;
    } 
 if (hnr.value == "")
    {
        window.alert("Bitte Hausnummer angeben.");
        hnr.focus();
        return false;
    }
 if (plz.value == "")
    {
        window.alert("Bitte Postleitzahl angeben.");
        plz.focus();
        return false;
    }
 if (plz.value.length < 4) 
  	{
        window.alert("Bitte Postleitzahl angeben.");
        plz.focus();
        return false;
    } 
 if (plz.value == "0000")
    {
        window.alert("Bitte eine gültige Postleitzahl angeben.");
        plz.focus();
        return false;
    }
 if (plz.value == "00000")
    {
        window.alert("Bitte eine gültige Postleitzahl angeben.");
        plz.focus();
        return false;
    }
 if (plz.value == "12345")
    {
        window.alert("Bitte eine gültige Postleitzahl angeben.");
        plz.focus();
        return false;
    }
 if (plz.value == "1234")
    {
        window.alert("Bitte eine gültige Postleitzahl angeben.");
        plz.focus();
        return false;
    }
 if (ort.value == "")
    {
        window.alert("Bitte Ort angeben.");
        ort.focus();
        return false;
    }
 if (ort.value.length < 2) 
  	{
        window.alert("Bitte Ort angeben.");
        ort.focus();
        return false;
    } 
 if (ort.value == "test")
    {
        window.alert("Bitte Ort angeben.");
        ort.focus();
        return false;
    }

  if (email.value == "")
    {
        window.alert("Bitte E-mail angeben.");
        email.focus();
        return false;
    }
  if (email.value.indexOf("@", 0) < 0)
    {
        window.alert("Bitte eine gültige Email Adresse angeben.");
        email.focus();
        return false;
    }
  if (email.value.indexOf(".", 0) < 0)
    {
        window.alert("Bitte eine gültige Email Adresse angeben.");
        email.focus();
        return false;
    }
  if (vwahl.value == "")
    {
        window.alert("Bitte Vorwahl angeben.");
        vwahl.focus();
        return false;
    }
  if (vwahl.value.length < 3) 
  	{
        window.alert("Bitte Vorwahl angeben.");
        vwahl.focus();
        return false;
    } 

  if (vwahl.value == "1234")
    {
        window.alert("Bitte eine gültige Vorwahl angeben.");
        vwahl.focus();
        return false;
    }
  if (vwahl.value == "12345")
    {
        window.alert("Bitte eine gültige Vorwahl angeben.");
        vwahl.focus();
        return false;
    }
  if (vwahl.value == "0000")
    {
        window.alert("Bitte eine gültige Vorwahl angeben.");
        vwahl.focus();
        return false;
    }
  if (vwahl.value == "00000")
    {
        window.alert("Bitte eine gültige Vorwahl angeben.");
        vwahl.focus();
        return false;
    }
 if (ruf.value == "")
    {
        window.alert("Bitte Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value.length < 3) 
  	{
        window.alert("Bitte Rufnummer angeben.");
        ruf.focus();
        return false;
    } 

 if (ruf.value == "123456789")
    {
        window.alert("Bitte eine gültige Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "00000000")
    {
        window.alert("Bitte eine gültige Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "per email")
    {
        window.alert("Bitte eine gültige Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "123456789")
    {
        window.alert("Bitte eine gültige Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "12345678")
    {
        window.alert("Bitte eine gültige Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "1234567")
    {
        window.alert("Bitte eine gültige Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "123456")
    {
        window.alert("Bitte eine gültige Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "00000000")
    {
        window.alert("Bitte eine gültige  Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "0000000")
    {
        window.alert("Bitte eine gültige  Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "000000")
    {
        window.alert("Bitte eine gültige  Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "00000")
    {
        window.alert("Bitte eine gültige  Rufnummer angeben.");
        ruf.focus();
        return false;
    }
 if (ruf.value == "email")
    {
        window.alert("Bitte eine gültige  Rufnummer angeben.");
        ruf.focus();
        return false;
    }
if (tag.value == "")
    {
        window.alert("Bitte Geburtstag angeben.");
        tag.focus();
        return false;
    }
 if (monat.value == "")
    {
        window.alert("Bitte Geburtsmonat angeben.");
        monat.focus();
        return false;
    }
 if (jahr.value == "")
    {
        window.alert("Bitte Geburtsjahr angeben.");
        jahr.focus();
        return false;
    }
 if (fam.value == "")
    {
        window.alert("Bitte Familienstand wählen.");
        fam.focus();
        return false;
    }
if (beruf.value == "")
    {
        window.alert("Bitte Berufsstatus wählen.");
        beruf.focus();
        return false;
    }
 if (beruf.value == "Arbeitslos")
    {
        window.alert("Arbeitslose können leider nicht berücksichtigt werden.");
        beruf.focus();
        return false;
    }
 if (datenschutz.checked == false)
    {
        window.alert("Bitte den Datenschutz akzeptieren.");
        datenschutz.focus();
        return false;
    }
    
else 
   {
   if (submitcount == 0)
      {
      submitcount++;
      return true;
      }
   else 
      {
      alert("Ihr Kontaktformular wird gerade gesendet. Bitte kurz warten, bis der Vorgang beendet ist.");
      return false;
      }
   }
}


function popUp(URL) 
{
	day = new Date();
	id = day.getTime();
	eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=450,height=310');");
}
