var FormController = new Class({
		inputs:[],
		initialize: function(){
			var papir = $('papirove');
			var elektro = $('elektronicke');
			var adresa = $('adresa');
			var login = $('login');
			var send = $('submitButton');
			
			papir.addEvent('click', function(){
					this.toggleField(papir, adresa);
			}.bind(this));
			
			elektro.addEvent('click', function(){
					this.toggleField(elektro, login);
			}.bind(this));
			
			send.addEvent('click', function(e){
					e.stop();
					if (this.validate()) {
						$('registracniForm').submit();
					}
			}.bind(this));
			
			this.toggleField(papir, adresa);
			this.toggleField(elektro, login);
		},
		toggleField: function(check, field) {
			this.inputs = $A(field.getElementsByTagName('input'));
			if (check.checked) {
				field.removeClass('disabled');
				this.inputs.each (function(item){
						if (Browser.Engine.trident) {
							item.disabled = '';
						}
						else {
							item.removeProperty('disabled');
						}
				}.bind(this));
			}
			else {
				field.addClass('disabled');
				this.inputs.each (function(item){
						item.setAttribute('disabled', 'disabled');
				}.bind(this));
			}
		},
		validate: function() {
			wellfilled = true;
			var message = "Chybně vyplněný formulář:\n";
			if (!$('papirove').checked && !$('elektronicke').checked) {
				message += "- zaškrtněte jeden nebo oba typy předplatného.\n";
				wellfilled = false;
			}
			if ($('papirove').checked && 
					($('jmeno').value.trim()=="" ||
					$('ulice').value.trim()=="" ||
					$('mesto').value.trim()=="" ||
					$('psc').value.trim()=="")
				) {
				message += "- vyplňte všechna tato pole:\n\t- Jméno a Příjmení\n\t- Ulice a číslo domu\n\t- Město\n\t- PSČ\n";
				wellfilled = false;
			}
			if ($('elektronicke').checked && 
					($('username').value.trim()=="" ||
					$('email').value.trim()=="" ||
					$('pass1').value=="" ||
					$('pass2').value=="")
				) {
				message += "- vyplňte všechna tato pole:\n\t- Uživatelské jméno\n\t- E-mail\n\t- Heslo\n\t- Ověření hesla\n";
				wellfilled = false;
			}
			if ($('elektronicke').checked && ($('pass1').value!=$('pass2').value)) {
				message += "- ověření hesla selhalo, vyplňte jej prosím znovu\n";
				wellfilled = false;
			}
			if (!$('slozenka').checked && !$('prevod').checked) {
				message += " - zvolte prosím způsob platby\n"
				wellfilled = false;
			}
			if (!$('elektronicke').checked && ($('prevod').checked && $('emailA').value.trim()=="")) {
				message += " - vyplňte prosím e-mail pro zaslání údajů k platbě převodem\n";
				wellfilled = false;
			}
			if (!wellfilled)
				alert(message);
			return wellfilled;
		}
});

window.addEvent('domready', function(){
		if ($('registracniForm')) {
			var RegisterFormController = new FormController();
		}
}.bind(this));
