var warunek1 = 'podaj swoje imię i nazwisko';
var warunek2 = 'treść wiadomości';
var warunek3 = 'np. example@adres.pl';
var warunek4 = 'telefon stacjonarny lub komórkowy';
	
$(document).ready(function() {
	
	var requiredFlag = ' * ';
	var conditionalFlag = ' ** ';
	var requiredKey = $('input.required:first').next('span').text();
	var conditionalKey = $('input.conditional:first').next('span').text();
	requiredKey = requiredFlag + requiredKey.replace(/^\((.+)\)$/,'$1');
	conditionalKey = conditionalFlag + conditionalKey.replace(/^\((.+)\)$/,'$1');
	$('<p style="text-indent: 0;"></p>')
		.addClass('field-keys')
		.append(requiredKey + '<br />')
		.append(conditionalKey)
		.insertAfter('#uwagi');
	$('form :input')
		.filter('.required')
		.next('span').text(requiredFlag).end()
		.prev('label').addClass('req-label').end()
		.end()
		.filter('.conditional')
		.next('span').text(conditionalFlag);
	$('input.conditional').next('span').andSelf().hide()
		.end().end()
		.each(function() {
			var $thisInput = $(this);
			var $thisFlag = $thisInput.next('span');
			$thisInput.prev('label').find(':checkbox')
			.attr('checked', false)
			.click(function() {
				if (this.checked) {
					$thisInput.show().addClass('required');
					$thisFlag.show();
					$(this).parent('label').addClass('req-label');
				} else {
					$thisInput.hide().removeClass('required').blur();
					$thisFlag.hide();
					$(this).parent('label').removeClass('req-label');
				}
			})
		});
		
		
	$('form :input').blur(function() {
		$(this).parent('li:first').removeClass('warning')
			.find('span.error-message').remove();
			if ($(this).hasClass('required')) {
				var $listItem = $(this).parents('li:first');
				var $listItem2 = $(this).parents('li:first').children('#label');
				if (this.value == '' || this.value == warunek1 || this.value == warunek2 || this.value == warunek3 || this.value == warunek4) {
					var errorMessage = 'To pole jest wymagane';
					if ($(this).hasClass('conditional')) {
						errorMessage += ', jeśli zaznaczono ' + 'odpowiadające mu pole wyboru';
					}
					$('<span></span>')
						.addClass('error-message')
						.text(errorMessage)
						.appendTo($listItem2);
					$listItem.addClass('warning');
				}
			}
			
			
			if (this.id == 'nazwisko') {
				var $listItem = $(this).parents('li:first');
				if ($(this).is(':hidden')) {
					this.value = warunek1;
				}
				if (this.value != '' && !/[a-zA-Z]{3,}[ ][a-zA-Z]{3,}/.test(this.value)) {
					var errorMessage = 'Użyj poprawnego imienia i nazwiska';
					$('<span></span>')
						.addClass('error-message')
						.text(errorMessage)
						.appendTo($listItem2);
					$listItem.addClass('warning');
				}
			}
			
			if (this.id == 'email') {
				var $listItem = $(this).parents('li:first');
				if ($(this).is(':hidden')) {
					this.value = warunek3;
				}
				if (this.value != '' && !/.+@.+\.[a-zA-Z]{2,4}$/.test(this.value)) {
					var errorMessage = 'Użyj poprawnego adresu e-mail' + ' (np. nazwa@adres.com)';
					$('<span></span>')
						.addClass('error-message')
						.text(errorMessage)
						.appendTo($listItem2);
					$listItem.addClass('warning');
				}
			}
			
			if (this.id == 'phone') {
				var $listItem = $(this).parents('li:first');
				if ($(this).is(':hidden')) {
					this.value = warunek4;
				}
				if (this.value != '' && !/[0-9]{9,14}/.test(this.value)) {
					var errorMessage = 'Użyj poprawnego numeru telefonu';
					$('<span></span>')
						.addClass('error-message')
						.text(errorMessage)
						.appendTo($listItem2);
					$listItem.addClass('warning');
				}
			}
	});
	
	$('form').submit(function() {
		$('#submit-message').remove();
		$(':input.required').trigger('blur');
		var numWarnings = $('.warning', this).length;
		
		var zmienna = $('input:checkbox:checked').val();
		if (zmienna != "E-mail" && zmienna != "Phone") {
			$('#kontakt_warunek').addClass('warning');
			if (numWarnings > 0) {
				umWarnings = numWarnings+1;
			}
		} else {
			$('#kontakt_warunek').removeClass('warning');
			if (numWarnings > 0) {
				numWarnings = numWarnings-1;
			}
		}
		
		if (numWarnings) {
			var fieldList = [];
			$('.warning label:first-child').each(function() {
				fieldList.push($(this).text());
			});
			$('<div></div>')
				.attr({'id': 'submit-message', 'class': 'warning'})
				.append('Znaleziono błedy w następujących polach:<br />')
				.append('&bull; ' + fieldList.join('<br />&bull; '))
				.insertBefore('#send_form');
			return false;
		}
	});

});
$(document).ready(function() {
	$('form :input').bind('focus', function() {
		if (this.id == 'nazwisko') {
			if(this.value == warunek1) {
				$(this).val("");
			}
		}
		if (this.id == 'email') {
			if(this.value == warunek3) {
				$(this).val("");
			}
		}
		if (this.id == 'phone') {
			if(this.value == warunek4) {
				$(this).val("");
			}
		}
		if (this.id == 'tresc') {
			if(this.value == warunek2) {
				$(this).val("");
			}
		}
	});
	$('form :input').blur(function() {
		if (this.id == 'nazwisko') {
			if(this.value == '') {
				$(this).val(warunek1);
			}
		}
		if (this.id == 'email') {
			if(this.value == '') {
				$(this).val(warunek3);
			}
		}
		if (this.id == 'phone') {
			if(this.value == '') {
				$(this).val(warunek4);
			}
		}
		if (this.id == 'tresc') {
			if(this.value == '') {
				$(this).val(warunek2);
			}
		}
	});
});
$(document).ready(function() {
	$('form :input[type!=submit]').animate({'opacity': 0.9}, 0);
	$('form :input[type!=submit]').bind('mouseover', function() {
		$(this).animate({'opacity': 1}, 500)
	});
	$('form :input[type!=submit]').bind('mouseout', function() {
		$(this).animate({'opacity': 0.9}, 500)
	});
});
