$.validator.addMethod("nip", function(value) {
		return value.match(/^[0-9]{10}$/);
	}, 'Proszę wpisać NIP w postaci: 1234567890');

$.validator.addMethod("kod", function(value) {
	if(value == '')
	{
		return true;
	}
	return value.match(/^[0-9]{2}-[0-9]{3}$/);
}, 'Proszę wpisać kod pocztowy w postaci: 12-345');

/*sprawdzamy czy wybrana opcja "Dofinansowanie z UE", jesli tak musi byc wypelniony Description*/
$.validator.addMethod("isEuFinanceNotEmpty", function(value) {
	if (document.getElementById('d1').checked === false) 
	// jeśli określono, że dofinansowania nie ma to wtedy nie określamy opisu dofinansowania
	{
		return true;
	}
	else if(document.getElementById("d1").value == 1 && document.getElementById("euFinanceDescription").value != "")
	{
		return true;
	}
	return false;
}, 'Pole nie może być puste');

/*sprawdzamy czy na pewno user wypełnił nam pole cena */
$.validator.addMethod("isRealPrice", function(value) {
	if (document.getElementById('input_price_0').value == 'wpisz cenę' || document.getElementById('input_price_0').value == '')
	{
		return false;
	}
	else
	{
		return true;
	}
}, 'Proszę podać cenę');

/*sprawdzamy czy na pewno user wypełnił nam pole opis ceny */
$.validator.addMethod("isRealDesc", function(value) {
	if (document.getElementById('input_price_desc_0').value == 'wpisz opis ceny' || document.getElementById('input_price_desc_0').value == '')
	{
		return false;
	}
	else
	{
		return true;
	}
}, 'Proszę podać opis ceny');

/*sprawdzamy czy user zaznaczyl jedno z pol dot. typu klienta firma/os. prywatna */
$.validator.addMethod("selectedType", function(value) {
	if (document.getElementById('status_1').checked === true || document.getElementById('status_2').checked === true)
	{
		return true;
	}
	return false;
}, 'Musisz zaznaczyć');

function validateEventAdd(vev)
{
	var pole_wymagane = "Proszę uzupełnić to pole";
	$("#eventForm").validate({
		event: vev,
		rules: {
			typeId: { required: true },
			categories: { required: true },
			title: { required: true },
			placeInfo: { required: true },
			placeRegionId: { required: true },
			placeTown: { required: true },
			placeStreet: { required: true },
			placePostcode: { kod: true },
			dateStart: { required: true },
			dateEnd: { required: true },
			hours: { required: true },
			information: { required: true },
			forWho: { required: true },
			plan: { required: true },
			participants: { required: true },
			input_price_0: { isRealPrice: true },
			input_price_desc_0: { isRealDesc: true },
			inPrice: { required: true },
			euFinanceDescription: { isEuFinanceNotEmpty: true },
			terms: { required: true },
			questionTelephone: { required: true },
			questionEmail: { required: true, email: true }
		},
		messages: {
			typeId: { required: pole_wymagane },
			categories: { required: pole_wymagane },
			title: { required: pole_wymagane },
			placeInfo: { required: pole_wymagane },
			placeRegionId: { required: pole_wymagane },
			placeTown: { required: pole_wymagane },
			placeStreet: { required: pole_wymagane },
			dateStart: { required: pole_wymagane },
			dateEnd: { required: pole_wymagane },
			hours: { required: pole_wymagane },
			information: { required: pole_wymagane },
			forWho: { required: pole_wymagane },
			plan: { required: pole_wymagane },
			participants: { required: pole_wymagane },
			input_price_0: { required: pole_wymagane },
			input_price_desc_0: { required: pole_wymagane },
			inPrice: { required: pole_wymagane },
			terms: { required: pole_wymagane },
			questionTelephone: { required: pole_wymagane },
			questionEmail: { required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email"}
		}
	});
}

function validateCompanyAdd(vev)
{
	var pole_wymagane = "Proszę uzupełnić to pole";
	$("#formularz").validate({
		event: vev,
		rules: {
			username: { required: true, email: true },
			company_email: { required: true, email: true },
			haslo: { required: true, minLength: 6 },
			haslo2: { required: true, equalTo: "#haslo", minLength: 6 },
			nazwa_firmy: { required: true },
			nr_nip: { required: true, nip: true },
			ulica: { required: true },
			kod_pocztowy: { required: true, kod: true },
			miasto: { required: true },
			wojewodztwo: { required: true, minLength: 1 },
			telefon: { required: true },
			company_email: { required: true, email: true },
			contactName: { required: true },
			contactPosition: { required: true },
			contactEmail: { email: true },
			marketingEmail: { email: true },
			captcha: { required: true }
		},
		messages: {
			username: { required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email"},
			company_email: { required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email"},
			haslo: {
				required: pole_wymagane,
				minLength: "Hasło musi mieć minimalnie 6 znaków"
			},
			haslo2: {
				required: pole_wymagane,
				minLength: "Hasło musi mieć minimalnie 6 znaków",
				equalTo: "Proszę wpisać to samo hasło co powyżej"
			},
			nazwa_firmy: { required: pole_wymagane },
			nr_nip: { required: pole_wymagane },
			ulica: { required: pole_wymagane },
			kod_pocztowy: { required: pole_wymagane },
			miasto: { required: pole_wymagane },
			wojewodztwo: { required: pole_wymagane, minLength: pole_wymagane },
			telefon: { required: pole_wymagane },
			company_email: { required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email" },
			contactName: { required: pole_wymagane },
			contactPosition: { required: pole_wymagane },
			contactEmail: { email: "Proszę wpisać prawidłowy adres email" },
			marketingEmail: { email: "Proszę wpisać prawidłowy adres email" },
			captcha: { required: "Proszę wpisać tekst z obrazka" }
		}
	});
}

// walidacja dla poleć znajomemu
function validateRecommend(vev)
{
	var pole_wymagane = "Proszę uzupełnić to pole";
	$("#formularz2").validate({
		event: vev,
		rules: {
			recommend_sender: 				{ required: true },
			recommend_sender_email: 	{ required: true, email: true },
			recommend_email: 					{ required: true, email: true },
			recommend_text: 					{ required: true },
			captcha: 									{ required: true }
		},
		messages: {
			recommend_sender: 				{ required: pole_wymagane },
			recommend_sender_email: 	{ required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email"},
			recommend_email: 					{ required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email"},
			recommend_text: 					{ required: pole_wymagane },
			captcha: 									{ required: "Proszę wpisać tekst z obrazka" }
		}
	});
}

// walidacja osób
function validatePerson(typeName)
{
	var pole_wymagane = "Proszę uzupełnić to pole";
	var vev = ($.browser.msie ? 'change' : 'blur');

	if(typeName == 'contact')
	{
		$("#formularz").validate({
			event: vev,
			rules: {
				name: 			{ required: true },
				position: 	{ required: true },
				email: 			{ email: true }
			},
			messages: {
				name: 			{ required: pole_wymagane },
				position: 	{ required: pole_wymagane },
				email: 			{ email: "Proszę wpisać prawidłowy adres email"}
			}
		});
	}
	else
	{
		$("#formularz").validate({
			event: vev,
			rules: {
				name:  { required: true },
				email: { email: true }
			},
			messages: {
				name:  { required: pole_wymagane },
				email: { email: "Proszę wpisać prawidłowy adres email"}
			}
		});
	}
}


/* walidacja /kontakt */
function validateKontakt(vev)
{
  var pole_wymagane = "Proszę uzupełnić to pole";
	$("#formularzKontakt").validate({
		event: vev,
		rules: {
			email: 		{ required: true, email: true },
			name:  		{ required: true },
			message:  { required: true },
			captcha: 	{ required: true }
		},
		messages: {
			email: 		{ required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email"},
			name: 		{ required: pole_wymagane },
			message: 	{ required: pole_wymagane },
			captcha: 	{ required: "Proszę wpisać tekst z obrazka" }
		}
	});
}

/* walidacja /newsletter */
function validateNewsletter(vev)
{
  var pole_wymagane = "Proszę uzupełnić to pole";
	$("#formularzNewsletter").validate({
		event: vev,
		rules: {
			newsletter_email: { required: true, email: true },
			newsletter_lastname:  { required: true },
			captcha: { required: true }
		},
		messages: {
			newsletter_email: { required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email"},
			newsletter_lastname: { required: "Proszę wprowadzić imię i nazwisko lub nick" },
			captcha: { required: "Proszę wpisać tekst z obrazka" }
		}
	});
}

// walidacja zgloszenia online/email
function validateLogContact(vev)
{
	$("#eventSignForm").bind("submit", function(event){
		if (document.getElementById('isAcceptTerms').checked == false)
		{
			alert("Prosimy o zaakceptowanie warunków uczestnictwa w wydarzeniu");
			event.preventDefault();
		}
		
	});
	
	var pole_wymagane = "Proszę uzupełnić to pole";
	$("#eventSignForm").validate({
		event: vev,
		rules: {
			status_1: { selectedType: true },
			name: { required: true },
			nip: { required: function(){return document.getElementById('status_1').checked}, nip: true },
			postcode: { required: true, kod: true },
			town: { required: true },
			street: { required: true },
			contactName: { required: true },
			contactEmail: { required: true, email: true },
			contactTelephone: { required: true },
			persons_name_0: { required: true },
			persons_price_0: { required: true },
			captcha: { required: true }
		},
		messages: {
			status_1: { required: pole_wymagane },
			name: { required: pole_wymagane },
			nip: { required: pole_wymagane, nip: "Proszę wpisać NIP w postaci: 1234567890" },
			postcode: { required: pole_wymagane, kod: "Proszę wpisać kod pocztowy w postaci: 12-345" },
			town: { required: pole_wymagane },
			street: { required: pole_wymagane },
			contactName: { required: pole_wymagane },
			contactEmail: { required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email"},
			contactTelephone: { required: pole_wymagane },
			persons_name_0: { required: pole_wymagane },
			persons_price_0: { required: pole_wymagane },
			captcha: { required: "Proszę wpisać tekst z obrazka" }
		}
	});
}

// walidacja Zadaj pytanie E-mailem
function validateContactEmail(vev)
{
	var pole_wymagane = "Proszę uzupełnić to pole";
	$("#contactEmail").validate({
		event: vev,
		rules: {
			name: { required: true },
			email: { required: true, email: true },
			postcode: { kod: true },
			question: { required: true },
			captcha: { required: true }
		},
		messages: {
			name: { required: pole_wymagane },
			email: { required: pole_wymagane, email: "Proszę wpisać prawidłowy adres email"},
			postcode: { kod: "Proszę wpisać kod pocztowy w postaci: 12-345" },
			question: { required: pole_wymagane },
			captcha: { required: "Proszę wpisać tekst z obrazka" }
		}
	});
}


// przeniesione z main.js
function checkSearch() {
	var pole_wymagane = "Proszę uzupełnić to pole";
	$("#searchForm").validate({
		rules: {
			regionId: { required: true }
		},
		messages: {
			regionId: { required: pole_wymagane }
		}
	});
}

