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, atlas_fields)
	});
}

function checkForm(formname, required, errormsg_text, required_email, errormsg_email, atlas_fields) {
	var errors = 0;

	// START Sonderabfrage fuer Atlas
	
	// Abfrage von zusaetzlichen Feldern, falls ein bestimmtes Land ausgewaehlt ist
	for (var i=0; i<atlas_fields.length; i++) {
		var check = 1;
		if (add_fields) {
			check = (document[formname][atlas_fields[i]].value == "") ? -1 : 1;
		}

		// Fehlerbearbeitung der zusaetzlichen Pflichtfelder
		errors = error_handling(check, atlas_fields[i], errormsg_text, errors);
	}
	// ENDE Sonderabfrage fuer Atlas

	// 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 i=0; i<required_email.length; i++) {
		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[i]].value.search(email_regex);

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

	if(errors) {
		$("#errors").slideDown();
		$("#user_data").addClass("errors");
		location.href = "#content";
		return false;
	}
	$("#errors").slideUp();
	$("#user_data").removeClass("errors");
	// Google Analytics anstossen
	pageTracker._trackPageview("/inbound/inquiry");
	return true;
}

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;
}