// JavaScript Document
window.addEvent('domready', function() {

	function sendRequest(status, form, e) {
		if(status) {
			var cnt = $('formContainer').setStyle('display','none');
			var resCnt = $('formResponse').empty().setStyle('display','block').addClass('ajax-loading');
			
			form.set('send', {onComplete: function(response) { 
				var res = JSON.decode(response);				
				resCnt.set('html', res.msg).removeClass('ajax-loading');
				if(res.error) {
					resCnt.set('html', res.msg);
					cnt.setStyle('display','block');
				} else {
					//resCnt.addClass('response-success');
					$('formNotice').setStyle('display','none');
				}
			}});
			//Send the form.
			form.send();		
		}
	}
	
	function checkField(field) {
		/* if field is empty AND NOT required, DONT highlight */
		if( !( field.hasClass('required') ) && ( null === field.get("value") || "" === field.get("value") ) )
		{
			field.removeClass('validation-passed');//.getParent().removeClass('form-error').removeClass('form-success');
			if(field.hasClass('alert-last'))
			{
				/*field.getParent().getParent().getLast().setStyle('background-color','#fc6578');*/
				field.getParent().getParent().getLast().removeClass('form-error').removeClass('form-success');
			} else {
				field.getParent().getNext().removeClass('form-error').removeClass('form-success');
			}
		} else {
			//field.getParent().addClass('form-success').removeClass('form-error');		
			if(field.hasClass('alert-last'))
			{
				/*field.getParent().getParent().getLast().setStyle('background-color','#fc6578');*/
				field.getParent().getParent().getLast().removeClass('form-error').addClass('form-success');
			} else {
				field.getParent().getNext().removeClass('form-error').addClass('form-success');
			}
		}
		
		
	}
	function errField(field) {
		/* field.getParent().addClass('form-error').removeClass('form-success');*/
		if(field.hasClass('alert-last'))
		{
			/*field.getParent().getParent().getLast().setStyle('background-color','#fc6578');*/
			field.getParent().getParent().getLast().removeClass('form-success').addClass('form-error');
		} else {
			field.getParent().getNext().removeClass('form-success').addClass('form-error');
		}
	}

	//simple validator
	var myFormValidator = new FormValidator($('broschuerenForm'), {
		onElementPass: checkField,
		onElementFail: errField,
		onFormValidate: sendRequest,
		useTitles:true,
		errorPrefix: 'Fehler: '
	});

	$('formSubmit').addEvent('click', function(e) {
		myFormValidator.validate();
	});
});
