/* parts of the script below were taken from:
fragmenty poni�szego kodu zosta�y zaczerpni�te z:
http://www.dynamicdrive.com/dynamicindex16/disableenter.htm
http://karmak.org/archive/2003/02/validemail.html
*/

var nn6wrknd = false;
var chck = false;
function chckemail() {
	if (isAnEmailAddress("email")) {
		if ((!(document.forms[0].fcc.checked)) && (chck) && (document.forms[0].fcc.disabled)) {
			document.forms[0].fcc.checked = true;
			chck = true;
		} else {
			if ((!(document.forms[0].fcc.checked)) && (chck)) {
				chck = false;
			}
		}
		document.forms[0].fcc.disabled = false;
	} else {
		if (document.forms[0].fcc.checked) {
			chck = true;
			document.forms[0].fcc.checked = false;
		} else {
			if  (!(document.forms[0].fcc.disabled)) {
				chck = false;
			}
		}
		document.forms[0].fcc.disabled = true;
	}
}

function handleEnter (field, event) {
	var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
	if (keyCode == 13) {
		var i;
		nn6wrknd = true;
		for (i = 0; i < field.form.elements.length; i++) {
			if (field == field.form.elements[i]) {
				break;
			}
		}
		i = (i + 1) % field.form.elements.length;
		if (field.form.elements[i].disabled) {
			i++;
		}
		field.form.elements[i].focus();
		return false;
	} else {
		return true;
	}
}  

function setFocus(aField) {
	document.forms[0][aField].focus();
}

function isAnEmailAddress(emailAddress) {
    var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
    return re.test(document.forms[0][emailAddress].value);
}

function isEmpty(aTextField) {
	if ((document.forms[0][aTextField].value.length==0) || (document.forms[0][aTextField].value==null)) {
		return true;
	} else {
		return false;
	}
}

function validate(e) {
	if (nn6wrknd) {
		nn6wrknd = false;
		return false
	}
	var lang;
	lang = (document.forms[0]["subbut"].value == "submit") ? "en" : "pl";
	var valid = true;
	if (isEmpty("name")) {
		if (lang == "pl") {
			alert("Uzupe"+String.fromCharCode(322)+"nij pole: imi"+String.fromCharCode(281)+", nick..");
		} else {
			alert("Please fill \"name\" field..");
		}
		setFocus("name");
		valid = false;
	}
	var isemail = true;
	if (isEmpty("email")) {
		isemail = false
	}
	if ((isemail) && (!isAnEmailAddress("email"))) {
		if (lang == "pl") {
			alert("..podany email jest nieprawid"+String.fromCharCode(322)+"owy..")
		} else {
			alert("..the entered email address is invalid..");
		}
		if (valid) {
			setFocus("email");
			valid = false
		}
	}
	if ((isEmpty("subject")) && (isEmpty("message"))) {
		if (lang == "pl") {
			alert("..chocia"+String.fromCharCode(380)+" temat napisz");
		} else {
			alert("..at least subject needs to be filled");
		}
		if (valid) {
			setFocus("subject");
			valid = false
		}
	}
	if (valid) {
		return true;
	} else {
		return false;
	}
}