// zbiór dodatkowych funkcji, lub hacków dla walidatora :]
// checkbox	
$.validator.addMethod("isChecked", function(value,element,param) {
	return $('#' + param).is(':checked');
	});
// alfanumeryczne 
$.validator.addMethod("alphanumeric", function(value) {
	return /^[\w.]+$/.test(value);
	});
// selekty - wartość wybrana ma mieć indeks >= parametr
$.validator.addMethod("selected", function(value,element,param) {
	return element.value >= param;
	});
// format kodu pocztowego
$.validator.addMethod("postcode", function(value) {
	return /^[0-9]{2}-[0-9]{3}$/.test(value);
	});
//alfanumeryczne 
$.validator.addMethod("alphanumeric_PL", function(value) {
	return /^[\wąęółśżźćńĄĘÓŁŚŻŹĆŃ]+$/.test(value);
	});
//alfanumeryczne 
$.validator.addMethod("text_PL", function(value) {
	return /^[\wąęółśżźćńĄĘÓŁŚŻŹĆŃ\s\?\n,.!]+$/.test(value);
	});
//alfanumeryczne i spacja
$.validator.addMethod("alphanumeric_PL_space", function(value) {
	return /^[\wąęółśżźćńĄĘÓŁŚŻŹĆŃ\s\n,.!]+$/.test(value);
	});
//nip
$.validator.addMethod("nip", function(value) {
	return /^[0-9\-]+$/.test(value);
	});
//dlugosc nipu
$.validator.addMethod("nip_length", function(value) {
	return IsNumeric(value).length == 10;
	});
//numeryczne nie zera
$.validator.addMethod("notZeros", function(value) {
	return ! /^0*$/.test(IsNumeric(value));
	});
//wartosc pesela
$.validator.addMethod("pesel_test", function(value) {
	return test_pesel(value);
	});
// "wypełniacz"
$.validator.addMethod("holdfinger", function(value) {
	if(value.length < 2) 
		return false;
	var tmpChar=value.charAt(0);
	for(var i=1; i<value.length; i++) {
		if(tmpChar != value.charAt(i)) return true;
	}
	return false;
	});
//numeryczne nie zera
$.validator.addMethod("gt", function(value,element,param) {
	return parseInt(value,10) > param;
	});
//nie data
$.validator.addMethod("notDate", function(value) {
	return ! (/^[0-9]{2}-[0-9]{2}-[0-9]{4}$/.test(value) || /^[0-9]{4}-[0-9]{2}-[0-9]{2}$/.test(value));
	});