var defaultValues = new Array();
var cf_forms = new Array();

function cf_init() {
	$$('.textinput').each(function(item) {
		defaultValues.push(new Array(
			item.readAttribute('name'),
			$F(item)
		));
		Event.observe(item, 'click', cf_onclick.bindAsEventListener(item));
		Event.observe(item, 'blur', cf_onblur.bindAsEventListener(item));
	});
	
	$$('.contactform').each(function(item) {
		Event.observe(item, 'submit', cf_onsubmit.bindAsEventListener(item));
	});
	
	$$('.contactform_en').each(function(item) {
		Event.observe(item, 'submit', cf_onsubmit_en.bindAsEventListener(item));
	});
}

function cf_onsubmit(e) {
	var ok = true;
	var emailok = true;
	$$('#' + this.id + ' .compulsory').each(function(item) {
		if(item.hasClassName('email-validation')) {
			if(!checkEmail($F(item))) {
				item.addClassName('err');
				alert('Kérjük, hogy helyesen adja meg az e-mail címét');
				emailok = false;
				e.stop();
			}
		}
	});
	if(emailok) {
		$$('#' + this.id + ' .compulsory').each(function(item) {
			if($F(item).blank() || $F(item) == cf_getDefaultValue(item.readAttribute('name'))) {
				item.addClassName('err');
				ok = false;
			}
		});
		if(!ok) {
			alert('Kérjük töltse ki a pirossal jelölt mezőket');
			e.stop();
		}
	}
}

function cf_onsubmit_en(e) {
	var ok = true;
	$$('#' + this.id + ' .compulsory').each(function(item) {
		if($F(item).blank() || $F(item) == cf_getDefaultValue(item.readAttribute('name'))) {
			item.addClassName('err');
			ok = false;
		}
	});
	if(!ok) {
		alert('Please fill in the red labeled fields');
		e.stop();
	}
}

function cf_getDefaultValue(name) {
	for(var i = 0; i < defaultValues.length; i++) {
		if(defaultValues[i][0] == name) {
			return defaultValues[i][1];
		}
	}
	return '';
}

function cf_onclick(e) {
	if($F(this) == cf_getDefaultValue(this.readAttribute('name'))) {
		this.value = '';
	}
}

function cf_onblur(e) {
	if($F(this).blank()) {
		this.value = cf_getDefaultValue(this.readAttribute('name'));
	} else {
		this.removeClassName('err');
	}
}

Event.observe(window, 'load', cf_init);
