function GetSubCat(sel) {
	var cat = $(sel).val();

	if (parseInt(cat) > 0)
		$.post(
			"aindex.php",
			{action: "GetSubCat", id: cat},
			function(data) {
				$("#podkat").html(data);
			}
		);
	else
		$("#podkat").html('');
}

function szukajProducenta(producent_skrot) {
	document.szukaj_producent.producent_skrot.value = producent_skrot;
	document.szukaj_producent.submit();
}

function ShowMessage(msg, timeout) {
	window.scrollTo(0, 0);
	if (typeof timeout == "undefined")
		timeout = 3000;

	$('#msg').hide().html(msg).fadeIn('slow');
	setTimeout(function() {$('#msg').fadeOut('slow');}, timeout);
}

//typ : 1 - koszyk, 0 -przechowalnia
function AddToBasket(id_produktu, typ) {
	$.post(
		"aindex.php",
		{action: "AddToBasket", id: id_produktu, typ: typ},
		function(data) {
			$("#koszyk_nfo").html(data);
		}
	);

	var $msg = '';
	if (typ == 1)
		$msg = 'Dodano produkt do koszyka';
	else
		$msg = 'Dodano produkt do poczekalni';

	ShowMessage($msg);
}

// usuwa produkt z koszyka
function RemoveFromBasket(id_produktu, typ) {
	$('#op_form input[name=action]').val('remove_product');
	$('#op_form input[name=id]').val(id_produktu);
	$('#op_form input[name=typ]').val(typ);
	$('#op_form').submit();
}

// przenosi produkt pomiedzy koszykiem a przechowalnia
function MoveItem(id_produktu, typ) {
	$('#op_form input[name=action]').val('move_product');
	$('#op_form input[name=id]').val(id_produktu);
	$('#op_form input[name=typ]').val(typ);
	$('#op_form').submit();
}

function UpdateBasket() {
	var inputs = $.makeArray($('#koszyk_form :text'));
	var val, i, ile = 0;

	for (i = 0; i < inputs.length; i++) {
		val = parseInt(inputs[i].value);
		if (val < 1 || isNaN(val) || inputs[i].value.length != String(val).length) {
			ile++;
			$(inputs[i]).css({'border': '1px solid red'});
		}
	}

	if (ile)
		alert('Zaznaczone pola mają złą wartość,\nilość musi byc liczbą większą od 0.');
	else {
		$('#koszyk_form input[name=action]').val('update_basket');
		$('#koszyk_form').submit();
	}
}

function MakeOrder() {
	var inputs = $.makeArray($('#koszyk_form :text'));
	var val, i, ile = 0;

	for (i = 0; i < inputs.length; i++) {
		val = parseInt(inputs[i].value);
		if (val < 1 || isNaN(val) || inputs[i].value.length != String(val).length) {
			ile++;
			$(inputs[i]).css({'border': '1px solid red'});
		}
	}

	if (ile)
		alert('Zaznaczone pola mają złą wartość,\nilość musi byc liczbą większą od 0.');
	else {
		$('#koszyk_form input[name=action]').val('make_order');
		$('#koszyk_form').submit();
	}
}

function checkNIP(nip) {
	var expr_nip = /^\d{3}\-\d{2}\-\d{2}\-\d{3}$|^\d{3}\-\d{3}\-\d{2}\-\d{2}$|^\d{10}$/;

	if (expr_nip.test(nip)) {
		var wagi = [6, 5, 7, 2, 3, 4, 5, 6, 7];
		var arr = (nip.replace(/-/g, '')).split('');
		var i, suma = 0;
		for (i=0; i<wagi.length; i++)
			suma += parseInt(arr[i]) * wagi[i];
		if (suma % 11 == parseInt(arr[9]))
			return true;
		else
			return false;
	} else
		return false;
};

var expr_email = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
var expr_tel = /^[\d\+\- \(\)]{7,}$/;
var expr_kod = /^\d{2}[- ]?\d{3}$/;

function validateRegForm(form) {
	$(form.elements).removeClass('input_error');

	if (!expr_email.test($.trim(form.email.value))) {
		$(form.email).addClass('input_error');
		ShowMessage('Niepoprawny adres email.');
		form.email.focus();
		return false;
	} else if ($.trim(form.password.value).length < 6) {
		$(form.password).addClass('input_error');
		ShowMessage('Zbyt krótkie hasło, hasło musi zawierać conajmniej 6 znakow.');
		form.password.focus();
		return false;
	} else if ($.trim(form.password.value) != $.trim(form.password1.value)) {
		$(form.password).addClass('input_error');
		ShowMessage('Hasło i jego powtórzenie różnią się.');
		form.password.focus();
		return false;
	} else if ($.trim(form.nazwa.value).length == 0) {
		$(form.nazwa).addClass('input_error');
		ShowMessage('Musisz podać swoje imię i nazwisko.\nFormat: "Imie Nazwisko"');
		form.nazwa.focus();
		return false;
	} else if (!expr_tel.test($.trim(form.tel.value))) {
		$(form.tel).addClass('input_error');
		ShowMessage('Musisz podać numer telefonu.\nDostępne znaki to cyfry oraz znaki +, - oraz nawiasy okrągłe.');
		form.tel.focus();
		return false;
	}

	if ($.trim(form.firma.value).length || $.trim(form.nip.value).length) {
		if (!checkNIP($.trim(form.nip.value))) {
			$(form.nip).addClass('input_error');
			ShowMessage('Niepoprawny NIP.');
			form.nip.focus();
			return false;
		} else if ($.trim(form.firma.value).length == 0) {
			$(form.firma).addClass('input_error');
			ShowMessage('Musisz podać nazwę firmy.');
			form.firma.focus();
			return false;
		}
	}

	if ($.trim(form.adres.value).length || $.trim(form.kod.value).length || $.trim(form.miasto.value).length) {
		if ($.trim(form.adres.value) == "") {
			$(form.adres).addClass('input_error');
			ShowMessage("Podaj pełny adres.");
			form.adres.focus();
			return false;
		} else if (!expr_kod.test(form.kod.value)) {
			$(form.kod).addClass('input_error');
			ShowMessage("Wpisz poprawny Kod.\nDozwolone formaty to: 'XX-XXX', 'XX XXX', XXXXX.");
			form.kod.focus();
			return false;
		} else if ($.trim(form.miasto.value) == "") {
			$(form.miasto).addClass('input_error');
			ShowMessage("Podaj miasto.");
			form.miasto.focus();
			return false;
		}
	}

	if ($.trim(form.adres_k.value).length || $.trim(form.kod_k.value).length || $.trim(form.miasto_k.value).length) {
		if ($.trim(form.adres_k.value) == "") {
			$(form.adres_k).addClass('input_error');
			ShowMessage("Podaj pełny adres.");
			form.adres_k.focus();
			return false;
		} else if (!expr_kod.test(form.kod_k.value)) {
			$(form.kod_k).addClass('input_error');
			ShowMessage("Wpisz poprawny Kod.\nDozwolone formaty to: 'XX-XXX', 'XX XXX', XXXXX.");
			form.kod_k.focus();
			return false;
		} else if ($.trim(form.miasto_k.value) == "") {
			$(form.miasto_k).addClass('input_error');
			ShowMessage("Podaj miasto.");
			form.miasto_k.focus();
			return false;
		}
	}

	if (form.regulamin.checked != true) {
		ShowMessage('Musisz zaakceptować warunki regulaminu.');
		return false;
	} else if (form.przetwarzanie.checked != true) {
		ShowMessage('Musisz zaakceptować zgodę na przetwarzanie danych osobowych.');
		return false;
	}

	return true;
}

function validatePassForm(form) {
	$(form.elements).removeClass('input_error');

	if ($.trim(form.password.value).length < 6) {
		$(form.password).addClass('input_error');
		ShowMessage('Zbyt krótkie hasło, hasło musi zawierać conajmniej 6 znakow.');
		form.password.focus();
		return false;
	} else if ($.trim(form.password.value) != $.trim(form.password1.value)) {
		$(form.password).addClass('input_error');
		$(form.password1).addClass('input_error');
		ShowMessage('Hasło i jego powtórzenie różnią się.');
		form.password.focus();
		return false;
	}

	return true;
}

function validateAccForm(form) {
	$(form.elements).removeClass('input_error');

	if ($.trim(form.nazwa.value).length == 0) {
		$(form.nazwa).addClass('input_error');
		ShowMessage('Musisz podać swoje imię i nazwisko.\nFormat: "Imie Nazwisko"');
		form.nazwa.focus();
		return false;
	} else if (!expr_tel.test($.trim(form.tel.value))) {
		$(form.tel).addClass('input_error');
		ShowMessage('Musisz podać numer telefonu.\nDostępne znaki to cyfry oraz znaki +, - oraz nawiasy okrągłe.');
		form.tel.focus();
		return false;
	}

	if ($.trim(form.firma.value).length || $.trim(form.nip.value).length) {
		if (!checkNIP($.trim(form.nip.value))) {
			$(form.nip).addClass('input_error');
			ShowMessage('Niepoprawny NIP.');
			form.nip.focus();
			return false;
		} else if ($.trim(form.firma.value).length == 0) {
			$(form.firma).addClass('input_error');
			ShowMessage('Musisz podać nazwę firmy.');
			form.firma.focus();
			return false;
		}
	}

	if ($.trim(form.adres.value).length || $.trim(form.kod.value).length || $.trim(form.miasto.value).length) {
		if ($.trim(form.adres.value) == "") {
			$(form.adres).addClass('input_error');
			ShowMessage("Podaj pełny adres.");
			form.adres.focus();
			return false;
		} else if (!expr_kod.test(form.kod.value)) {
			$(form.kod).addClass('input_error');
			ShowMessage("Wpisz poprawny Kod.\nDozwolone formaty to: 'XX-XXX', 'XX XXX', XXXXX.");
			form.kod.focus();
			return false;
		} else if ($.trim(form.miasto.value) == "") {
			$(form.miasto).addClass('input_error');
			ShowMessage("Podaj miasto.");
			form.miasto.focus();
			return false;
		}
	}

	if ($.trim(form.adres_k.value).length || $.trim(form.kod_k.value).length || $.trim(form.miasto_k.value).length) {
		if ($.trim(form.adres_k.value) == "") {
			$(form.adres_k).addClass('input_error');
			ShowMessage("Podaj pełny adres.");
			form.adres_k.focus();
			return false;
		} else if (!expr_kod.test(form.kod_k.value)) {
			$(form.kod_k).addClass('input_error');
			ShowMessage("Wpisz poprawny Kod.\nDozwolone formaty to: 'XX-XXX', 'XX XXX', XXXXX.");
			form.kod_k.focus();
			return false;
		} else if ($.trim(form.miasto_k.value) == "") {
			$(form.miasto_k).addClass('input_error');
			ShowMessage("Podaj miasto.");
			form.miasto_k.focus();
			return false;
		}
	}

	return true;
}

function validateCompleteForm(form) {
	$(form.elements).removeClass('input_error');

	if ($.trim(form.nazwa.value).length == 0) {
		$(form.nazwa).addClass('input_error');
		ShowMessage('Musisz podać swoje imię i nazwisko.\nFormat: "Imie Nazwisko"');
		form.nazwa.focus();
		return false;
	} else if (!expr_tel.test($.trim(form.tel.value))) {
		$(form.tel).addClass('input_error');
		ShowMessage('Musisz podać numer telefonu.\nDostępne znaki to cyfry oraz znaki +, - oraz nawiasy okrągłe.');
		form.tel.focus();
		return false;
	}

	if ($.trim(form.firma.value).length || $.trim(form.nip.value).length) {
		if (!checkNIP($.trim(form.nip.value))) {
			$(form.nip).addClass('input_error');
			ShowMessage('Niepoprawny NIP.');
			form.nip.focus();
			return false;
		} else if ($.trim(form.firma.value).length == 0) {
			$(form.firma).addClass('input_error');
			ShowMessage('Musisz podać nazwę firmy.');
			form.firma.focus();
			return false;
		}
	}

	if ($.trim(form.adres.value) == "") {
		$(form.adres).addClass('input_error');
		ShowMessage("Podaj pełny adres.");
		form.adres.focus();
		return false;
	} else if (!expr_kod.test(form.kod.value)) {
		$(form.kod).addClass('input_error');
		ShowMessage("Wpisz poprawny Kod.\nDozwolone formaty to: 'XX-XXX', 'XX XXX', XXXXX.");
		form.kod.focus();
		return false;
	} else if ($.trim(form.miasto.value) == "") {
		$(form.miasto).addClass('input_error');
		ShowMessage("Podaj miasto.");
		form.miasto.focus();
		return false;
	}

	if ($.trim(form.adres_k.value).length || $.trim(form.kod_k.value).length || $.trim(form.miasto_k.value).length) {
		if ($.trim(form.adres_k.value) == "") {
			$(form.adres_k).addClass('input_error');
			ShowMessage("Podaj pełny adres.");
			form.adres_k.focus();
			return false;
		} else if (!expr_kod.test(form.kod_k.value)) {
			$(form.kod_k).addClass('input_error');
			ShowMessage("Wpisz poprawny Kod.\nDozwolone formaty to: 'XX-XXX', 'XX XXX', XXXXX.");
			form.kod_k.focus();
			return false;
		} else if ($.trim(form.miasto_k.value) == "") {
			$(form.miasto_k).addClass('input_error');
			ShowMessage("Podaj miasto.");
			form.miasto_k.focus();
			return false;
		}
	}

	return true;
}

function PasswordRecovery() {
	$('input[name=email]').removeClass('input_error');
	var email = $.trim($('input[name=email]').val());

	if (email.length == 0) {
		$('input[name=email]').addClass('input_error');

		ShowMessage("W celu odzyskania hasła podaj mail w polu do logowania.");

		$('input[name=email]').focus();
	} else {
		$.post(
			"aindex.php",
			{action: "PassRecovery", email: email},
			function(data) {
				ShowMessage(data);
			}
		);
	}
}

function SwitchImg(rel) {
	$('#zdjecie > a').attr('class', 'hidden_foto');
	$('#zdjecie > a[rel=' + rel + ']').removeClass();
};


/* 24542811 */
function PoliczRate(koszyk, wariantSklepu) {
	window.open('https://www.eraty.pl/symulator/oblicz.php?numerSklepu=24542811&wariantSklepu='+wariantSklepu+'&typProduktu=0&wartoscTowarow='+koszyk, 'Policz_rate','width=630,height=500,directories=no,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no');
}

function akcja() {
	document.koszyk_form.uwagi.value = document.koszyk_form.uwagi.value + 'RATY';
	document.koszyk_form.topic.value = 'RATY';
	document.koszyk_form.submit();
	document.formularz_eRaty.submit();
}
