function prepareForm(form_id, required_fields, errormsg_text, required_email_fields, errormsg_email, atlas_fields) {	
	for (i=0; i<required_fields.length; i++) {
		$('#' + required_fields[i] + '_error').css({ height: "0px", display: "none" });
	}
	for (i=0; i<required_email_fields.length; i++) {
		$('#' + required_email_fields[i] + '_error').css({ height: "0px", display: "none" });
	}
	$('#' + form_id).submit(function() {
		return checkForm(this.name, required_fields, errormsg_text, required_email_fields, errormsg_email);
	});
}

function checkForm(formname, required, errormsg_text, required_email, errormsg_email) {
	
	if ($('#newsletter2 input[name=checkMailSent]').val() == 'true') {
		return true;
	}
	
	var errors = 0;

	if (!$('#userfield_44:checked').length) {
		required = new Array();
	} 

	// normale Pflichtfelder pruefen
	for (var i=0; i<required.length; i++) {
		var check = (document[formname][required[i]].value == "") ? -1 : 1;

		// Fehlerbearbeitung der normalen Pflichtfelder
		errors = error_handling(check, required[i], errormsg_text, errors);
	}

	// E-Mail-Pflichtfelder pruefen
	for (var j=0; j<required_email.length; j++) {
		var email_regex = /^[a-zA-Z0-9\-\.\_]+\@[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,6}|[0-9]{1,3})$/;
		var check_email = -1;
		check_email = document[formname][required_email[j]].value.search(email_regex);

		// Fehlerbearbeitung der E-Mail-Pflichtfelder
		errors = error_handling(check_email, required_email[j], errormsg_email, errors);
	}

	if(errors) {
		$("#errors").slideDown();
		location.href = "#content";
		return false;
	}
	$("#errors").slideUp();
	// Google Analytics anstossen
	pageTracker._trackPageview("/inbound/inquiry");
	
	if ($('#userfield_44:checked').length) {
		$.ajax({
			url: "/cgi/subscribe.cgi",
			type: "GET",
			data: "MERGE0=" + $('#MERGE0').val() + "&MERGE3=" + $('#MERGE3').val() + "&MERGE1=" + $('#MERGE1').val() + "&MERGE2=" + $('#MERGE2').val() + "&MERGE10=" + $('#MERGE10').val() + "&MERGE12=" + $('#MERGE12').val() + "&MERGE11=" + $('#MERGE11').val() + "&MERGE8=" + $('#MERGE8').val() + "&MERGE7=" + $('#MERGE7').val() + "&MERGE13=" + $('#MERGE13').val() + "&MERGE14=" + $('#MERGE14').val() + "&MERGE6=" + $('#MERGE6').val() + "&MERGE4=" + $('#MERGE4').val() + "&MERGE5=" + $('#MERGE5').val() + "&userfield_44=" + $('#userfield_44').val(),
			complete: function() {
        // E-Mail an Atlas mit Adressedaten verschickt. Jetzt das Formular nochmal abschicken, um MailChimp-Anmeldung durchzufuehren.
				jQuery("#newsletter2").append('<input type="hidden" name="checkMailSent" value="true" />').submit();
			}
		 });
	} else {
		return true;
	}
	
	return false;
}

function error_handling(check, field, text, errors) {
	if (check == -1) {
		errors++;
		// Fehlermeldungen der Pflichtfelder setzen
		$('#' + field).addClass("error");
		$('#' + field + "_label").addClass("error");
		$('#' + field + '_error').text(text);
		$('#' + field + '_error').animate({
			height: "20px"
		}, 1000);
	} else if ($('#' + field).hasClass("error")) {
		// falls class="error" vorhanden ist, diese entfernen
		$('#' + field).removeClass("error");
		$('#' + field + "_label").removeClass("error");
		$('#' + field + '_error').text("");
		$('#' + field + '_error').animate({
			height: "0px"
		}, 1000, function () {
			$(this).css({ display: "none" });
		});
	}
	return errors;
}
