var theOthers = new Array('Wohnungstuer', 'Haustuer', 'Briefkasten', 'Milchkasten', 'Lift');

window.addEvent('domready', function() {
	MooTools.lang.setLanguage('de-DE');
	if($chk($('schilderbestellung'))) {
		var userInputs = $$('input, select, textarea');
		userInputs.each(function(el) {
			el.addEvent('keypress', function(e) {
				// if(e.code == 34 || e.code == 39)	// einfache und doppelte Anführungszeichen (' und ")

				if(e.code == 34)	// einfache und doppelte Anführungszeichen (' und ")
					e.stop();
				if(el.get('id') == 'Stock' && e.code == 46)	// Bei Stockwerk kein Punkt
					e.stop();
			});
		});
		$('schilderbestellung').addEvent('submit', function() {
			userInputs = userInputs.filter(function(el) { if(el.get('rel')) return el; });
			return checkUserInputs(userInputs);
		});

		if($chk($('Garnitur'))) {
			$('Garnitur').addEvent('change', function() {
				theOthers.each(function(id) { $(id).checked = false; });
			});
			theOthers.each(function(id) {
				$(id).addEvent('change', function() {
					$('Garnitur').checked = false;
					markGarnitur();
				});
			});
		}
		if($chk($('Garnitur')))
			markGarnitur();
		/*
		if($chk($('Versand'))) {
			$('Versand').addEvent('change', function() {
				checkIfNewAddress();
				checkTimeUntilMove(true);
			});
			$('Rechnung').addEvent('change', function() {
				checkIfNewAddress();
				checkTimeUntilMove(true);
			});
			$('Einzug').addEvent('keyup', function() { checkTimeUntilMove(true); });
			checkIfNewAddress();
			checkTimeUntilMove(false);
		}
		*/
	}
});


function checkTimeUntilMove(changed) {
	if($('Versand').get('value') == 'neue Adresse' || $('Versand').get('value') == 'alte Adresse' || $('Rechnung').get('value') == 'neue Adresse' || $('Rechnung').get('value') == 'alte Adresse') {
		$('Einzugsdatum').setStyle('display', 'block');
		$('hinweis').setStyle('display', 'inline');
		var einzug = new Date();
		einzug.parse($('Einzug').get('value'));
		var jetzt = new Date();
		var d = jetzt.diff(einzug, 'month');
		if(d >= 3) {
			$('alteAdresse').disabled = false;
			$('hinweis').erase('style');
		} else {
			$('alteAdresse').disabled = true;
			$('hinweis').setStyle('color', '#f00');
			if(changed) {
				if($('Rechnung').get('value') == 'alte Adresse')
					$('Rechnung').set('value', 'neue Adresse');
			}
		}
	} else {
		$('Einzug').set('value', '');
		$('Einzugsdatum').setStyle('display', 'none');
		$('alteAdresse').disabled = false;
		$('hinweis').setStyle('display', 'none');
	}

}


function checkIfNewAddress() {
	if($('Versand').get('value') == 'neue Adresse' || $('Versand').get('value') == 'alte Adresse' || $('Rechnung').get('value') == 'neue Adresse' || $('Rechnung').get('value') == 'alte Adresse') {
		$('Einzugslabel').set('text', 'Einzugsdatum*');
		// $('Einzug').set('rel', '^([0-3]{0,1})([0-9]{0,1})(\.)([0-1]{0,1})([0-9]{0,1})(\.)(20|)([0-9]{2})$');
		$('Einzug').set('rel', '^([0-3])([0-9])(\.)([0-1])([0-9])(\.)(20)([0-9]{2})$');
	}
	else
	{
		$('Einzugslabel').set('text', 'Einzugsdatum');
		$('Einzug').erase('rel');
		$('Einzug').removeClass('invalid');
		$('errorValue').empty();
	}
}

function checkUserInputs(inputs) {
	var ret = true;
	$('errorValue').empty();

	inputs.each(function(el) {
		el.removeClass('invalid');
		if(!el.get('value').test(el.get('rel'))) {
			el.addClass('invalid');
			ret = false;
		}
	});
	if(!ret)
		$('errorValue').set('html', 'Bitte füllen Sie die benötigten Felder korrekt aus.');
	return ret;
}

function markGarnitur() {
	var leer = true;
	theOthers.each(function(id) { if($(id).checked) leer = false; });
	if(leer) $('Garnitur').checked = true;
}
