function checkForm(allowedTypes) {
	var errors = new Array();
	var objName = document.getElementById('vorname');
	var objNachname = document.getElementById('nachname');	
	var objEmail = document.getElementById('email');	
	var objFile = document.getElementById('VIDEO_UPLOAD');		
	var objAccept = document.getElementById('accepted');		
	var objErrors = document.getElementById('FORM_ERRORS');
	objErrors.style.display = 'none';
	
	// Vorname
	if(trim(objName.value) == '') {
		errors.push('Der Vorname fehlt!');
	}
	
	// Nachname
	if(trim(objNachname.value) == '') {
		errors.push('Der Nachname fehlt!');
	}	
	
	// E-Mail
	if(trim(objEmail.value) == '') {
		errors.push('Die E-Mailadresse fehlt!');
	} else if(checkmail(objEmail.value) == false) {
		errors.push('Die eingegeben E-Mailadresse ist ung&uuml;ltig!');
	}
	
	// Datei
	if(trim(objFile.value) == '') {
		errors.push('Die Video-Datei fehlt!');
	} else {
		var types = allowedTypes.split('|');
		var extension = objFile.value.split('.').pop();
		var isAllowed = false;
		for(x = 0; x < types.length; x++) {
			if(extension.toLowerCase() == types[x].toLowerCase()) {
				isAllowed = true;
				break;
			}
		}
		if(!isAllowed) {
			errors.push('Der Upload einer Datei des Typs &quot;' + extension.toUpperCase() + '&quot; ist nicht erlaubt!');	
		}
	}
	
	// AGBs / Disclaimer
	if(!objAccept.checked) {
		errors.push('Die Best&auml;tigung der AGBs / Datenschutzerkl&auml;rung fehlt!');	
	}
	
	if(errors.length == 0) {
		return true;
	} else {
		var html = '<p class="error">Bei der Verarbeitung der Formulardaten sind folgende Fehler aufgetreten:</p>';
		html += '<ul class="error">';
		for(x = 0; x < errors.length; x++) {
			html += '<li>' + errors[x] + '</li>';	
		}
		html += '</ul>';
		
		objErrors.innerHTML = html;
		objErrors.style.display = 'block';		
		return false;
	}
}