var lang;
var incorrectMsg;
var incorrectMsgLength;

function getText(f) {
	if (true) {
		if (f == "name") {
			return "Pole \"Imię i nazwisko\" musi zostać wypełnione i składać się z co najmniej 5 znaków.\n";
		} else if (f == "mail") {
			return "Adres e-mail jest niepoprawny.\n";
		} else if (f == "phone") {
			return "Pole \"Telefon\" zawiera niedozwolone znaki.\n";
		} else if (f == "desc") {
			return "Pole \"Opis\" musi zostać wypełnione i składać się z co najmniej 5 znaków.\n";
		}
	}
}
function setLang(lng) {
	lang = lng;
}
function getLang() {
	return lang;
}
function validFormProductSendMail() {

	name = $("#productSendMail #name").val();
	mail = $("#productSendMail #mail").val();
	phone = $("#productSendMail #phone").val();
	desc = $("#productSendMail #desc").val();
	
	incorrectMsg = '';
	incorrectMsgLength = 0;
	cleanAllValid();
	var isCorrect = true;
	
	if ( name.length < 4 ) {
		setIncorrect( 'name' );
		isCorrect = false;
	}
	if ( !validMail( mail ) ) {
		setIncorrect( 'mail' );
		isCorrect = false;
	}
	if ( phone.length > 0 && !validPhone( phone ) ) {
		setIncorrect( 'phone' );
		isCorrect = false;
	}
	if ( desc.length < 4 ) {
		setIncorrect( 'desc' );
		isCorrect = false;
	}
	if (!isCorrect) {
		alert(incorrectMsg);
	}
	return isCorrect;
}
function setIncorrect( fieldName ) {
	var handler = $("#productSendMail #"  + fieldName + "");
	handler.addClass("error");
	incorrectMsg += (++incorrectMsgLength) +". "+ getText( fieldName );
	//handler.after("<p id=\"" + fieldName + "Error\" class=\"error\">" + getText( fieldName ) + "</p>");
}
function cleanAllValid() {

	var arr = new Array("name", "mail", "phone", "desc");
	
	for (var i=0; i < arr.length; i++) {
		var fieldName = arr[i];
		$("#productSendMail #"  + fieldName + "").removeClass("error");
		//$("#productSendMail #" + fieldName + "Error").remove();
	}
	
}
function validMail(str)
{
	if (str.indexOf("@")+1 < str.lastIndexOf(".") && str.length > 5)
		return true;
	else
		return false;
		
/*
	w = /^[0-9\-]+$/;
		
	if (str.match(w) && str.length > 1)	// nie moze miec 0-9 i musi miec co najmniej 2 znaki
		return true;
	else
		return false;
*/
}
	
function validPhone(str)
{
		// allowChars tablica z dozwolonymi znakami w numerze telefonu
	allowChars = new Array(
		'0',
		'1',
		'2',
		'3',
		'4',
		'5',
		'6',
		'7',
		'8',
		'9',
		' ',
		'+',
		'-',
		'(',
		')');
			
	for (i = 0; i < str.length; i++) {
		if (allowChars.indexOf( str.charAt( i ) ) == -1)
		return false;
	}
	
	return true;
}
