var language = new Array();
language["firstName"] = "First Name";
language["lastName"] = "Last Name";
language["email"] = "E-mail";
language["subject"] = "Subject";
language["comments"] = "Comments";
language["country"] = "Country";
language["projectBudget"] = "Project budget estimation";
language["url"] = "Your web site URL";

function checkMandatory(mandatoryFields) {
	var	message = "";
	for (var i = 0; i < mandatoryFields.length; i++) {
		if ("" == document.forms[0].elements[mandatoryFields[i]].value) {
			if (message)
				message += ", " + language[mandatoryFields[i]];
			else
				message = language[mandatoryFields[i]];
		}
	}
	if (message) {
		message = "Please fill in: " + message + "!";
	}
	return message;
}

function checkEmail(emailField) {
	var email = document.forms[0].elements[emailField].value;
	if (email.indexOf("@") < 0)
		return "Please write a valid E-mail address!";
	return "";
}

function writeError(message) {
	document.getElementById("validationMessage").innerHTML = message;
}

function checkInteger(fieldName) {
	var message = "";
	if (!(parseInt(document.forms[0].elements[fieldName].value, 10))) {
		message = "Please write a numerical value for " + language[fieldName] + "!";
	}
	return message;
}

function isValidContact() {
	var message = checkMandatory(new Array("firstName", "lastName", "email", "subject", "comments"));
	if (message) {
		writeError(message);
		return false;
	}
	message = checkEmail("email");
	if (message) {
		writeError(message);
		return false;
	}
	return true;
}

function isValidPrice() {
	var message = checkMandatory(new Array("firstName", "lastName", "email", "country"));
	if (message) {
		writeError(message);
		return false;
	}
	message = checkEmail("email");
	if (message) {
		writeError(message);
		return false;
	}
	return true;
}

function isValidFunc() {
	var message = checkMandatory(new Array("firstName", "lastName", "email", "url"));
	if (message) {
		writeError(message);
		return false;
	}
	message = checkEmail("email");
	if (message) {
		writeError(message);
		return false;
	}
	return true;
}
