
$(document).ready(function()
{

  if( check_filled()
        && check_formats()
      ) enable_button();
  else
    disable_button();
  
  $('.pflicht').change(function(){
    if( check_filled()
       && check_formats()
    ) enable_button();
    else
      disable_button();
  });


  
  
});


  function  check_filled()
  {    
    var $aLeer = $('.pflicht');
    for($i=0;$i<$aLeer.length;$i++)
      if( $($aLeer[$i]).val() == '')
        return false;
    return true;
  }
  
  function check_formats()
  {
    var $return = true;
 
    $aDates = $('.checkdatum');
    var validformat=/^[0-3]?[0-9]-[0-1][0-9]-20\d{2}$/;
    for($i=0;$i<$aDates.length;$i++)
      if(!validformat.test($($aDates[$i]).val()))
      {
        $($aDates[$i]).addClass('borderred');
        $return = false;
      }
      else
      {
        $($aDates[$i]).removeClass('borderred');
      }
      
    $aMails = $('.checkmail');
    validformat = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,6})$/;
    for($i=0;$i<$aMails.length;$i++)
      if(!validformat.test($($aMails[$i]).val()))
      {
        $($aMails[$i]).addClass('borderred');
        $return = false;
      }
      else
      {
        $($aMails[$i]).removeClass('borderred');
      }
    
      
      
    return $return;
  }
  
  function disable_button()
  {
    $('#weiterbutton').attr('disabled', 'disabled');
    $('#weiterbutton').attr('src', $('#weiterbutton').attr('src').replace('_on','_off'));
    $('#weiterbutton').attr('title','Bitte Formular ausfüllen');
  }
  function enable_button()
  {
    if($('#weiterbutton').length)
    {
      $('#weiterbutton').removeAttr('disabled');
      $('#weiterbutton').attr('src', $('#weiterbutton').attr('src').replace('_off','_on'));
      $('#weiterbutton').removeAttr('title', '');
    }
  }





function is_valid_date($fieldId)
{
	$oElement = document.getElementById($fieldId);
	$sValue = $oElement.value; 
	
	
	var validformat=/^\d{2}.\d{2}.\d{4}$/ //Basic check for format validity
	var returnval=false
	
	if (!validformat.test($sValue))
	alert("Invalid Date Format. Please correct and submit again: 'dd.mm.yyyy'")
	else
	{ //Detailed check for valid date ranges
	var monthfield=input.value.split(".")[1]
	var dayfield=input.value.split(".")[0]
	var yearfield=input.value.split(".")[2]
	var dayobj = new Date(yearfield, monthfield-1, dayfield)
	if ((dayobj.getMonth()+1!=monthfield)||(dayobj.getDate()!=dayfield)||(dayobj.getFullYear()!=yearfield))
		alert("Invalid Day, Month, or Year range detected. Please correct and submit again.")
	else if (dayobj.getDay() == 0)
		alert('Datumfehler: Sonntag ist nicht erlaubt als Lieferdatum.');
	else
		returnval=true
	} 
	
	
	return returnval	
}



