function setError(id, noError) {
	if (! noError) {
		$("error_for_" + id).addClassName('error_visible');
	} else {
		$("error_for_" + id).removeClassName('error_visible');
	}
}

function checkIsset(field) {
	return (field.value.length > 0);
}	
	
function checkEmail(field) {
		filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		return filter.test(field.value);
}	

function checkPhonenumber(field) {
		filter = /^[\s0-9()\/\-]{6,30}$/;
		return filter.test(field.value);
}	

function checkPhonenumberOptional(field) {
		if (field.value == "") return true;
		filter = /^[\s0-9()\/\-]{6,30}$/;
		return filter.test(field.value);
}	

function checkfields(form) {
	ok = true;
		
	fields = $(form).getElementsByClassName('check_isset');
	for(i=0; i<fields.length; i++) {
		field = fields[i];
		field_ok = checkIsset(field);
		if (!field_ok) ok = false;
		setError(field.id, field_ok);
	}
		
	fields = $(form).getElementsByClassName('check_email');
	for(i=0; i<fields.length; i++) {
		field = fields[i];
		field_ok = checkEmail(field);
		if (!field_ok) ok = false;
		setError(field.id, field_ok);
	}

	fields = $(form).getElementsByClassName('check_phonenumber');
	for(i=0; i<fields.length; i++) {
		field = fields[i];
		field_ok = checkPhonenumber(field);
		if (!field_ok) ok = false;
		setError(field.id, field_ok);
	}

	fields = $(form).getElementsByClassName('check_phonenumber_optional');
	for(i=0; i<fields.length; i++) {
		field = fields[i];
		field_ok = checkPhonenumberOptional(field);
		if (!field_ok) ok = false;
		setError(field.id, field_ok);
	}


	if (! ok) window.scrollTo(0,0);
	return ok;
}
