
MooTools.lang.set('de-DE', 'Date', {
    months: ['Jänner', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'],
    days: ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'],
    dateOrder: ['date', 'month', 'year', '.']
});
 
MooTools.lang.setLanguage('de-DE');

window.addEvent('domready', function(){
	setFormFunctions();
});

function setFormFunctions(){
	if(document.id('accept_petition')){
		document.id('accept_petition').addEvent('submit', function(e){
			if(e){ e.stop(); }
			if(checkFormular('accept_petition','error_acceptpetition')){
				this.submit();
			}else{
				return false;
			}			
		});
	}

	if(document.id('form_betreit')){
		document.id('form_betreit').addEvent('submit', function(e){
			if(e){ e.stop(); }
			if(checkFormular('form_betreit','error_betreit')){
				this.submit();
			}else{
				return false;
			}			
		});
	}
	
	if(document.id('form_kontakt')){
		document.id('form_kontakt').addEvent('submit', function(e){
			if(e){ e.stop(); }
			if(checkFormular('form_kontakt','error_kontakt')){
				this.submit();
			}else{
				return false;
			}			
		});
	}	

	if(document.id('form_petition')){
		document.id('form_petition').addEvent('submit', function(e){
			if(e){ e.stop(); }
			if(checkFormular('form_petition','error_petition')){
				this.submit();
			}else{
				return false;
			}			
		});
	}	
	
	if(document.id('form_job')){
		document.id('form_job').addEvent('submit', function(e){
			if(e){ e.stop(); }
			if(checkFormular('form_job','error_job')){
				this.submit();
			}else{
				return false;
			}			
		});
	}	
	
	if(document.id('form_gesuch')){
		document.id('form_gesuch').addEvent('submit', function(e){
			if(e){ e.stop(); }
			if(checkFormular('form_gesuch','error_gesuch')){
				this.submit();
			}else{
				return false;
			}			
		});
	}	
	
	if(document.id('form_email')){
		document.id('form_email').addEvent('submit', function(e){
			if(e){ e.stop(); }
			if(checkFormular('form_email','error_email')){
				this.submit();
			}else{
				return false;
			}			
		});
	}	
	
	if(document.id('form_forum')){
		document.id('form_forum').addEvent('submit', function(e){
			if(e){ e.stop(); }
			if(checkFormular('form_forum','error_forum')){
				this.submit();
			}else{
				return false;
			}			
		});
	}
	
	if(document.id('form_forum2')){
		document.id('form_forum2').addEvent('submit', function(e){
			if(e){ e.stop(); }
			if(checkFormular('form_forum2','error_forum2')){
				this.submit();
			}else{
				return false;
			}			
		});
	}	
}

function checkFormular(formId,errorId){
	document.id(errorId).set('html','');
	var myValidator = new FormValidator(document.id(formId),{useTitles: true
							, onElementFail: function(element,errTests){
			if(!document.id('errmsg_' + element.name)){
				var fieldName='';
				if(element.title){				
					fieldName=element.title;
				}else if(element.name){
					fieldName=element.name.capitalize();
				}else if(element.id){
					fieldName=element.id.capitalize();
				}
				var errStr='<span id="errmsg_' + element.name +'">' + fieldName + '</span>: ';
				var errSpace='';
				errTests.each(function(item){
					if(item=='required'){				
						errStr+=errSpace + 'Pflichtfeld';
					}else if(item=='validate-email'){
						errStr+=element.value + ' ' + 'Keine gueltige E-Mail' + '.';
					}else if(item=='validate-url'){
						errStr+=element.value + ' ' + 'Keine gueltige Internet Adresse format http://www.test.at' + '.';
					}else if(item=='validate-date'){
						errStr+=element.value + ' ' + 'Keine gueltiges Datum Format:dd.mm.yyyy' + '.';						
					}else if(item=='validate-reqchk-byname'){
						errStr+=errSpace + ' ' + 'Keine Auswahl' + '.';
					}else{
						errStr+=errSpace + item;
					}
					errSpace=', ';
				});
				var errHtml=document.id(errorId).get('html');
				if(errHtml==''){
					errHtml='<b>' + 'Eingaben Ueberpruefen!' + '</b><br/>';
				}else{
					errHtml+='<br/>';
				}
				document.id(errorId).set('html',errHtml+errStr);
			}
		}});
	if (myValidator.validate()) {
		return true;
	}else{
		return false;
	}
}
	
