var formNumber=0;

var nameFilled = false;
var telephoneFilled = false;
var basicFormFilled = false;
var formErrorList;

  function checkSubmitFormBasic()
    {
      formErrorList = "";
      var nameText = document.getElementById("ms_Name").value;
      var telephoneText = document.getElementById("ms_Telefonnummer").value;
      
      if (nameText == "")
      {
        //Name not filled
        document.getElementById("val_ms_Name").style.color = "red";
        document.getElementById("ms_Name").className = "inputError";
        formErrorList += "<li>Name </li>";
        var nameFilled = false;
      }
      else
      {
        //Name is filled
        document.getElementById("val_ms_Name").style.color = "#333";
        document.getElementById("ms_Name").className = "textBoxDefault";
        var nameFilled = true;
      }
      
      if (telephoneText == "")
      {
        //alert("please fill in your name!");
        document.getElementById("val_ms_Telefonnummer").style.color = "red";
        document.getElementById("ms_Telefonnummer").className = "inputError";
        formErrorList += "<li>Telefonnummer</li>";
        var telephoneFilled = false;
      }
      else
      {
         document.getElementById("val_ms_Telefonnummer").style.color = "#333";
         document.getElementById("ms_Telefonnummer").className = "textBoxDefault";
         var telephoneFilled = true;
      
      }

       if(nameFilled && telephoneFilled)
       {
          document.getElementById("Identification").value = "_human";
          document.getElementById("IdentificationFull").value = "_human";
          document.forms[1].submit();
          // Submit the side form
       }
       else
       {
          document.getElementById("sideFormErrorMessage").style.display = "block";
          document.getElementById("sideFormErrorMessage").innerHTML = "Bei den farbig markierten Feldern ist ein Fehler aufgetreten:<br> <div class=\"errorMessageInner\"><ul>" + formErrorList + "</ul></div>";
          
          return false;
       }
     
    }

function checkSubmitForm(formNumber)
{

  var inputFields = document.getElementsByTagName("input");
  var textFields;
  var checkBoxFields;
  var radioFields;
  var formFilled = false;
  var formFilledOveride = false;
  var errorMessage = "";
  var stringRequired = "";
  var posRequired;
  var posEmailRequired;
  var eMailCorrect = false;

// Loop to find if required fields are filled

    for (var z=0;z<inputFields.length;z++)
      {
        textFields = String(inputFields[z].id);
        posRequired = textFields.indexOf("ms_");
        posEmailRequired = textFields.indexOf("mm_");
        posDotInName = textFields.indexOf(".");

        if(posRequired!=-1)
          {
            // Check to see if the field is filled
            stringRequired = document.getElementById("" + textFields + "").value;

              if (stringRequired == "")
                {
                  document.getElementById("" + textFields + "").className = "inputErrorWide";
                  document.getElementById("val_" + textFields + "").style.color = "red";
                  formFilledOveride = false;
                }
                else
                {
                  document.getElementById("" + textFields + "").className = "textBoxDefault";
                  document.getElementById("val_" + textFields + "").style.color = "#333";

                  if(!formFilledOveride)
                    {
                      formFilled = true;
                    }
                    else
                    {
                      formFilled = false;
                    }
  
                  formFilledOveride = true;
                }
                
               } 

              if(posEmailRequired!=-1)
              {
              
                if(echeck(document.getElementById("" + textFields + "").value))
                {
                  document.getElementById("" + textFields + "").style.border = "";
                  document.getElementById("" + textFields + "").className = "textBoxDefault";
                  eMailCorrect = true;
                }
                else
                {
                  document.getElementById("" + textFields + "").className = "inputErrorWide";
                  document.getElementById("val_" + textFields + "").style.color = "red";
                  
                  formFilledOveride = false;
                }
                 
              }
              
              if(posDotInName!=-1)
              {
                if((posRequired!=-1) && (stringRequired == ""))
                {
                  errorMessage += "<li>" + textFields.replace("ms_","") + " </li>";
                }
                
                 if(posEmailRequired!=-1 && !eMailCorrect)
                {
                  errorMessage += "<li>" + textFields.replace("mm_","") + " </li>";
                }
              }
             errorMessage = errorMessage.replace(".","");
            } // for
            
          
          errorMessage = errorMessage.replace("_"," ");
          
          if (formFilledOveride)
          {
            document.getElementById("IdentificationFull").value = "_human";
            document.forms["mainForm"].submit();
          }
          else
          {
            document.getElementById("fullFormErrorMessage").style.display = "block";
            document.getElementById("fullFormErrorMessage").innerHTML = "Bei den farbig markierten Feldern ist ein Fehler aufgetreten:<br> <div class=\"errorMessageInner\"><ul>" + errorMessage + "</ul></div>";
            return false;
          }
      }
       


// ############ IB #################

function checkForm(frmContact, clsInputDefault, clsSelectDefault, clsTextAreaDefault, clsError)
{

	var ok = true;
	var frmForm = document.getElementById(frmContact);
	var inputElements = frmForm.getElementsByTagName("INPUT");
	var selectElements = frmForm.getElementsByTagName("SELECT");
	var textareaElements = frmForm.getElementsByTagName("TEXTAREA");

	for (var i = 0; i < inputElements.length; i++)
	{
		ok = ok && CheckElement(inputElements[i], clsInputDefault, clsError);
	}
	
	for (var i = 0; i < selectElements.length; i++)
	{
		ok = ok && CheckElement(selectElements[i], clsSelectDefault, clsError);
	}
	
	for (var i = 0; i < textareaElements.length; i++)
	{
		ok = ok && CheckElement(textareaElements[i], clsTextAreaDefault, clsError);
	}
	
	if (ok == true)
	{
		var elemIds = document.getElementsByName("gfm_hdn_Identifier");
	
		for (var i = 0; i < elemIds.length; i++)
		{
			elemIds[i].value = "_human";
		}

		document.forms[0].submit();
		return true;
	}
	else
	{
		return false;
	}
}

function CheckElement(elementControl, clsDefault, clsError)
{
	var ok = true;
	if (elementControl.name.substring(0, 3) == "ms_")
	{
		if (clsDefault.length > 0)
		{
			elementControl.className = clsDefault;
		}
		
		var elemInfo = document.getElementById("info_" + elementControl.name);
		var elemVal = document.getElementById("val_" + elementControl.name);
		
		if (elementControl.value.length == 0)
		{
			ok = false;
			if (clsError.length > 0)
			{
				elementControl.className = clsError;
			}
			if (elemInfo != null)
			{
				elemInfo.style.display = "inline";
			}
			if (elemVal != null)
			{
				elemVal.style.color = "red";
			}
		}
		else
		{
			if (elemInfo != null)
			{
				elemInfo.style.display = "none";
			}
			if (elemVal != null)
			{
				elemVal.style.color = "#333";
			}
		}
	}
	else if (elementControl.name.substring(0, 3) == "mm_")
	{
		if (clsDefault.length > 0)
		{
			elementControl.className = clsDefault;
		}
		
		var elemInfo = document.getElementById("info_" + elementControl.name);
		var elemInfoMail = document.getElementById("infoMail_" + elementControl.name);
		var elemVal = document.getElementById("val_" + elementControl.name);

		if (elemInfo != null)
		{
			elemInfo.style.display = "none";
		}
		if (elemInfoMail != null)
		{
			elemInfoMail.style.display = "none";
		}
		if (elemVal != null)
		{
			elemVal.style.color = "#333";
		}
		
		if (elementControl.value.length == 0)
		{
			ok = false;
			if (clsError.length > 0)
			{
				elementControl.className = clsError;
			}
			if (elemInfo != null)
			{
				elemInfo.style.display = "inline";
			}
			if (elemVal != null)
			{
				elemVal.style.color = "red";
			}
		}
		else if (!echeck(elementControl.value))
		{
			ok = false;
			if (clsError.length > 0)
			{
				elementControl.className = clsError;
			}
			if (elemInfoMail != null)
			{
				elemInfoMail.style.display = "inline";
			}
			if (elemVal != null)
			{
				elemVal.style.color = "red";
			}
		}
	}
	else if (elementControl.name.substring(0, 3) == "om_")
	{
		if (clsDefault.length > 0)
		{
			elementControl.className = clsDefault;
		}
		
		var elemInfoMail = document.getElementById("infoMail_" + elementControl.name);
		var elemVal = document.getElementById("val_" + elementControl.name);
		
		if (elementControl.value.length > 0)
		{
			if (!echeck(elementControl.value))
			{
				ok = false;
				if (clsError.length > 0)
				{
					elementControl.className = clsError;
				}
				if (elemInfoMail != null)
				{
					elemInfoMail.style.display = "inline";
				}
				if (elemVal != null)
				{
					elemVal.style.color = "red";
				}
			}
			else
			{
				if (elemInfoMail != null)
				{
					elemInfoMail.style.display = "none";
				}
				if (elemVal != null)
				{
					elemVal.style.color = "#333";
				}
			}
		}
	}
	
	return ok;
}

function showFullForm(frmLight, frmFull)
{
	document.getElementById("formTableFloatRight").style.display="block";
	document.getElementById("formTableBasic").style.display="none";
	document.getElementById("contactNotShown").style.display="none";
	
	document.getElementById("ctl01_lbl_Info").innerHTML = "";
	
	var inputElements = document.getElementsByTagName("INPUT");
	var selectElements = document.getElementsByTagName("SELECT");
	var textareaElements = document.getElementsByTagName("TEXTAREA");
	
	for (var i = 0; i < inputElements.length; i++)
	{
		if ((inputElements[i].name.substring(0, 3) == "ms_") ||
			(inputElements[i].name.substring(0, 3) == "os_") ||
			(inputElements[i].name.substring(0, 3) == "mm_") ||
			(inputElements[i].name.substring(0, 3) == "om_"))
		{
			inputElements[i].name = "frm_" + inputElements[i].name;
		}
		else if (inputElements[i].name.substring(0, 4) == "frm_")
		{
			inputElements[i].name = inputElements[i].name.substring(4);
		}
	}
	
	for (var i = 0; i < selectElements.length; i++)
	{
		if ((inputElements[i].name.substring(0, 3) == "ms_") ||
			(inputElements[i].name.substring(0, 3) == "os_") ||
			(inputElements[i].name.substring(0, 3) == "mm_") ||
			(inputElements[i].name.substring(0, 3) == "om_"))
		{
			inputElements[i].name = "frm_" + inputElements[i].name;
		}
		else if (inputElements[i].name.substring(0, 4) == "frm_")
		{
			inputElements[i].name = inputElements[i].name.substring(4);
		}
	}
	
	for (var i = 0; i < textareaElements.length; i++)
	{
		if ((inputElements[i].name.substring(0, 3) == "ms_") ||
			(inputElements[i].name.substring(0, 3) == "os_") ||
			(inputElements[i].name.substring(0, 3) == "mm_") ||
			(inputElements[i].name.substring(0, 3) == "om_"))
		{
			inputElements[i].name = "frm_" + inputElements[i].name;
		}
		else if (inputElements[i].name.substring(0, 4) == "frm_")
		{
			inputElements[i].name = inputElements[i].name.substring(4);
		}
	}
}

// ############ IB #################
       
function echeck(str) { //Check for Correct Email

		var at="@";
		var dot=".";
		var lat=str.indexOf(at);
		var lstr=str.length;
		var ldot=str.indexOf(dot);
    
    
    if (lstr<1)
    {
      return false;
    }
    
    
		if (str.indexOf(at)==-1)
    {
		   //alert("Bitte geben Sie eine gueltige E-Mail-Adresse an!");
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr)
    {
		   //alert("Bitte geben Sie eine gueltige E-Mail-Adresse an!");
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr)
    {
		    //alert("Bitte geben Sie eine gueltige E-Mail-Adresse an!");
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1)
     {
		    //alert("Bitte geben Sie eine gueltige E-Mail-Adresse an!");
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot)
     {
		    //alert("Bitte geben Sie eine gueltige E-Mail-Adresse an!");
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1)
     {
		    //alert("Bitte geben Sie eine gueltige E-Mail-Adresse an!");
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1)
     {
		    //alert("Bitte geben Sie eine gueltige E-Mail-Adresse an!");
		    return false;
		 }

 		 return true					
	}
 
 
 function fullForm()
 {
 
  document.getElementById("formTableFloatRight").style.display="block";
  document.getElementById("formTableBasic").style.display="none";
  
  if (document.getElementById("pnl_thankYouMessage"))
  {
    document.getElementById("pnl_thankYouMessage").style.display="none";
  }
  
  if (document.getElementById("pnl_errorMessage"))
  {
    document.getElementById("pnl_errorMessage").style.display="none";
  }
  
  if (document.getElementById("ctl01_pnl_thankYouMessage"))
  {
    document.getElementById("ctl01_pnl_thankYouMessage").style.display="none";
  }
  
  
  if (document.getElementById("ctl01_pnl_spamMessage"))
  {
    document.getElementById("ctl01_pnl_spamMessage").style.display="none";
  }
  
 }
 
 
 
 function numeralsOnly(evt) 
 {
    evt = (evt) ? evt : event;
    var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : 
        ((evt.which) ? evt.which : 0));
    if (charCode != 32)
    {    
    	if (charCode > 31 && (charCode < 48 || charCode > 57)) {
        		//alert("Enter numerals only in this field.");
        	return false;
    	}
    }
    return true;
}
 
 
 
