function collapseElem(obj)
{
	var el = document.getElementById(obj);
	el.style.display = 'none';
}


function expandElem(obj)
{
	var el = document.getElementById(obj);
	el.style.display = '';
}

// collapse all elements, except the first one
function collapseAll()
{
	var numFormPages = 1;

	for(i=2; i <= numFormPages; i++)
	{
		currPageId = ('mainForm_' + i);
		collapseElem(currPageId);
	}
}


function validateField(fieldId, fieldBoxId, fieldType, required)
{
	fieldBox = document.getElementById(fieldBoxId);
	fieldObj = document.getElementById(fieldId);

	if(fieldType == 'text'  ||  fieldType == 'textarea'  ||  fieldType == 'password'  
	||  fieldType == 'file'  ||  fieldType == 'phone'  || fieldType == 'website' || fieldType=='email')
{	
	if(required == 1 && fieldObj.value == '')
{
	fieldObj.setAttribute("class","mainFormError");
fieldObj.setAttribute("className","mainFormError");
		fieldObj.focus();
		return false;					
	}

}


else if(fieldType == 'menu'  || fieldType == 'country'  || fieldType == 'state')
{	
	if(required == 1 && fieldObj.selectedIndex == 0)
	{				
		fieldObj.setAttribute("class","mainFormError");
fieldObj.setAttribute("className","mainFormError");
		fieldObj.focus();
		return false;					
	}

}

else if(fieldType == 'list')
{	
	if(required == 1 && fieldObj.selectedIndex == -1)
	{				
		fieldObj.setAttribute("class","mainFormError");
fieldObj.setAttribute("className","mainFormError");
		fieldObj.focus();
		return false;					
	}

}

}

function validate_email(emailStr)
{		
	apos=emailStr.indexOf("@");
    dotpos=emailStr.lastIndexOf(".");

	if (apos<1||dotpos-apos<2) 
	{
		return false;
	}
	else
	{
		return true;
	}
}


function validateDate(fieldId, fieldBoxId, fieldType, required,  minDateStr, maxDateStr)
{
	retValue = true;

	fieldBox = document.getElementById(fieldBoxId);
	fieldObj = document.getElementById(fieldId);	
	dateStr = fieldObj.value;


	if(required == 0  && dateStr == '')
{
	return true;
}


if(dateStr.charAt(2) != '/'  || dateStr.charAt(5) != '/' || dateStr.length != 10)
{
	retValue = false;
}	

else	// format's okay; check max, min
{
	currDays = parseInt(dateStr.substr(0,2),10) + parseInt(dateStr.substr(3,2),10)*30  + parseInt(dateStr.substr(6,4),10)*365;
	//alert(currDays);

if(maxDateStr != '')
{
	maxDays = parseInt(maxDateStr.substr(0,2),10) + parseInt(maxDateStr.substr(3,2),10)*30  + parseInt(maxDateStr.substr(6,4),10)*365;
	//alert(maxDays);
	if(currDays > maxDays)
		retValue = false;
}

if(minDateStr != '')
{
	minDays = parseInt(minDateStr.substr(0,2),10) + parseInt(minDateStr.substr(3,2),10)*30  + parseInt(minDateStr.substr(6,4),10)*365;
	//alert(minDays);
		if(currDays < minDays)
			retValue = false;
	}
}

if(retValue == false)
{
	fieldObj.setAttribute("class","mainFormError");
fieldObj.setAttribute("className","mainFormError");
		fieldObj.focus();
		return false;
	}
}

function validateEmail(fieldId1,fieldId2){
 email1=document.getElementById(fieldId1);
 email2=document.getElementById(fieldId2);
 
 retVal1=0;
 if(!validate_email(email1.value))
 {
 	email1.setAttribute("class","mainFormError");
    email1.setAttribute("className","mainFormError");
	email1.focus();
    return 1;
 }
 if(email1.value != email2.value)
 {
 	email1.setAttribute("class","mainFormError");
    email1.setAttribute("className","mainFormError");
    email2.setAttribute("class","mainFormError");
    email2.setAttribute("className","mainFormError");
	email1.focus();
    return 2;
 }
}

function validatePage1()
{
	retVal = true;
	if (validateField('field_1','fieldBox_1','menu',1) == false)
 retVal=false;
if (validateField('field_2','fieldBox_2','list',1) == false)
 retVal=false;
if (validateField('field_3','fieldBox_3','text',1) == false)
 retVal=false;
if (validateField('field_4','fieldBox_4','text',1) == false)
 retVal=false;
if (validateField('field_5','fieldBox_5','email',1) == false)
 retVal=false;
if (validateField('field_6','fieldBox_6','phone',1) == false)
 retVal=false;
if (validateField('field_7','fieldBox_7','country',1) == false)
 retVal=false;
if (validateField('field_8','fieldBox_8','textarea',1) == false)
 retVal=false;
 if (validateField('field_9','fieldBox_9','email',1) == false)
 retVal=false; 
 
	if(retVal == false)
	{
		alert('Bitte alle Felder mit (*) ausfüllen');
		return false;
	}
 
    if(validateEmail('field_5','field_9') == 1)
    {
    	alert('Ungültige E-Mail Adresse');
		return false;
    }
    
    if(validateEmail('field_5','field_9') == 2)
	{
		alert('E-Mail Adresse nicht gleich');
		return false;
	}
	
	return retVal;
}

