//APP ESKY
$(document).ready(function(){

	/* prevent from loading page in IFRAME */
	var isInIFrame = (window.location != window.top.location) ? true : false;
	if (isInIFrame) {
		window.top.location = window.location;
	}
    
	/* Main menu tabs */
	$('li.menu_tab').hover(
		function(){$(this).addClass('hover')},
		function(){$(this).removeClass('hover')}
	);

	/* CONTACTFORM VALIDATION */
	if ($('#contactform').size()>0) {
		$('#contactform').validate({
			event: "keyup",
			rules: {
				title: {
					required: true
				},
				message: {
					required: true
				},
				name: {
					required: true
				},
				phone: {
					required: true
				},
				email: {
					required: true,
					email: true
				}
			},
			messages: {
				title: {
					required: 'Proszę uzupełnić tytuł wiadomości'
				},
				message: {
					required: 'Proszę uzupełnić treść'
				},
				name: {
					required: 'Proszę uzupełnić imię i nazwisko'
				},
				phone: {
					required: 'Proszę uzupełnić numer telefonu'
				},
				email: 'Proszę podać prawidłowy adres e-mail'
			},
			success: function(label) {
				label.remove();
			},
			submitHandler: function() {
				var inputs = new Array();
				$('#contactform :input').each(function() {
					inputs.push(escape($(this).val()));
				});
				$('#contactform button.send').parent().addClass('buttonwait');
				$('div.contact p#success').remove();
				$.post(ibeConfig.contactTarget, { ajaxed: true, title: unescape(inputs[0]), message: unescape(inputs[1]), name: unescape(inputs[2]), phone: unescape(inputs[3]), email: unescape(inputs[4]) }, function(data) {
					$('div.contact h2:first').after('<p>' + data.response + '</p>').next().attr('id', 'success');
					$('div.contact :input').val('');
					$('#contactform button.send').parent().removeClass('buttonwait');
				}, 'json');
				return false;
			}
		});
	
	}

	/* RECOMMENDFORM VALIDATION */
	if ($('#recommendform').size()>0) {
		$target = $('#recommendform').attr('action');

		$('#recommendform').validate({
			event: "keyup",
			rules: {
				email: {
					required: true,
					email: true
				},
				name: {
					required: true
				}
			},
			messages: {
				email: 'Proszę podać prawidłowy adres e-mail',
				name: {
					required: 'Proszę uzupełnić imię'
				}
			},
			success: function(label) {
				label.remove();
			},
			submitHandler: function() {
				var inputs = new Array();
				$('#recommendform :input').each(function() {
					inputs.push(escape($(this).val()));
				});
				$('#recommendform button.send').parent().addClass('buttonwait');
				$('div#recommend p#success').remove();
				$.post($target, { ajaxed: true, email: unescape(inputs[0]), name: unescape(inputs[1]) }, function(data) {
					$('<p>' + data.response + '</p>').attr('id', 'success').insertBefore('#recommendform');
					$('#recommendform :input').val('');
					$('#recommendform button.send').parent().removeClass('buttonwait');
				}, 'json');
				return false;
			}
		});
	
	}

	/* BUDAPEST CONTEST VALIDATION */
	if ($('.contest-budapest').size() > 0) {
   	
   	$('a.more').click(function(){
			more = $(this).parents().filter('li').find('p.more-desc');
			if (!more.is(':visible')) {
			 	more.slideToggle("slow");
			 	$(this).attr('class', 'less').text('Zwiń artykuł');
		 	} else {
			 	more.slideToggle("slow");
			 	$(this).attr('class', 'more').text('Rozwiń artykuł');
			}
			return false;
		});
   	$('a.more-light').click(function(){
			more = $(this).parents().filter('li').find('p.more-desc');
			if (!more.is(':visible')) {
			 	more.slideToggle("slow");
			 	$(this).attr('class', 'less-light').text('Zwiń artykuł');
		 	} else {
			 	more.slideToggle("slow");
			 	$(this).attr('class', 'more-light').text('Rozwiń artykuł');
			}
			return false;
		});
		
   	
		// aktualna strona ze zdjeciami
		var photo_page = 1;
		// ilosc stron ze zdjeciami
		var photo_pages = 2;
		
   	$('#photos-nav li.next').click(function(){
		  	if (photo_page < photo_pages) {
		  		$('#photos').animate({
		  			backgroundPosition: "-" + 920 * photo_page + "px 0"
		  		}, 2000, 'swing');
		  		
		  		photo_page++;

				// ustalenie linkow dla fotek na poszczegolnych stronach
		  		var c = 1;
		  		$photos = $('#photos li a').each(function(){
		  			$(this).attr('href', '/images/bud-photo-' + ((4*(photo_page - 1)) + (c++)) +'.jpg');
		  		});

				// ustalenie czy mozna przejsc na sasiednie strony - jesli nie zablokuj przyciski
				if (photo_page == photo_pages) $(this).addClass('n-off');
				if (photo_page>1)	$('#photos-nav li.previous').removeClass('p-off');
		  	};
			return false;
	  });

   	$('#photos-nav li.previous').click(function(){
			if (photo_page > 1) {
		  		photo_page--;
			 	$('#photos').animate({
			 		backgroundPosition: "-" + 920 * (photo_page-1) + "px 0"
			 	}, 2000, 'swing');
			 
				// ustalenie linkow dla fotek na poszczegolnych stronach
		  		var c = 1;
		  		$photos = $('#photos li a').each(function(){
		  			$(this).attr('href', '/images/bud-photo-' + ((4*(photo_page - 1)) + (c++)) +'.jpg');
		  		});

				// ustalenie czy mozna przejsc na sasiednie strony - jesli nie zablokuj przyciski
				if (photo_page == 1)	$(this).addClass('p-off');
				if (photo_page<photo_pages) $('#photos-nav li.next').removeClass('n-off');

			 };
 			return false;
   	});
   	
   	$('#photos-nav li.previous').hover(function(){
			if ($(this).hasClass('p-off') == false)
	   		$(this).css({"top": "9px",	"left": "751px"});
   	}, function(){
   		$(this).css({"top": "8px", "left": "750px"});
   	});

   	$('#photos-nav li.next').hover(function(){
			if ($(this).hasClass('n-off') == false )
	   		$(this).css({"top": "9px", "left": "898px"});
   	}, function(){
   		$(this).css({"top": "8px",	"left": "897px"});
   	});
		
   };

	/* WIDGETS TABS */
	$('.widget ul.tabs a').click(function(){
		var index = $(this).parent().parent().find('a').index(this);
		var selected = $(this).parent().hasClass('active');
		var widget = $(this).parents().filter('div.widget');
		
		if (!selected) {
			// wylaczamy zakladki
			$(this).parents().filter('ul.tabs').find('li').removeClass('active');
			// właczamy kliknietą
			$(this).parent().addClass('active');
			// ukrywamy wszystkie tresci tabow
			widget.find('p').not('hidden').addClass('hidden');
			// pokazujemy tresc taba związanego z indeksem kliknietej zakładki
			widget.find('p:eq(' + index + ')').removeClass('hidden');
		}
		return false;
	});


	/* CALLCENTER TOGGLER (subnav) */
	$('a#cctoggler').click(function(){
		if ($(this).hasClass('unwrap')) {
			$(this).css('background-position', '50% 0px').attr('title', 'Pokaż więcej informacji nt. infolinii').removeClass('unwrap').parent().find('div.content').animate({marginLeft: "0px"}, 600);
		}
		else {
			$(this).css('background-position', '50% -40px').attr('title', 'Ukryj informacje nt. infolinii').addClass('unwrap').parent().find('div.content').animate({marginLeft: "-650px"}, 600);
		}
	});

	/* NEWSLETTER SUBSCRIPTION */
	function newsletterSubscription() {
		var email = $('#newsletterEmail').attr('value');
		if (email === undefined || email == TXT_InputEmail) {
			$('#newsletter-response').attr('class', 'error').text('Proszę podać adres e-mail').fadeIn('normal');
		}
		else {
			$('#newsletter-response').attr('class', 'wait').text('Proszę czekać...').fadeIn('normal');
			$.post(ibeConfig.newsletterTarget, { email: $('#newsletterEmail').attr('value'), go: $(this).attr('value') }, function(data) {
				if (data.code > 0) {
					$('#newsletter-response').attr('class', 'error');
				}
				else {
					$('#newsletter-response').removeAttr('class');
				}
				$('#newsletter-response').text(data.msg);
			}, 'json');
		}
		return false;
	}

	$('form.newsletter')
		.submit(function() { return false; }).end()
		.find('#newsletter-subscribe').click(newsletterSubscription).end()
		.find('#newsletter-unsubscribe').click(newsletterSubscription);
	
	/* NEWS SWITCHER */
	$('ul#news-switch')
		.find('a').click(function() {
			$(this).parent().parent().find('a').removeClass('selected');
			$(this).addClass('selected');
			var page = $(this).attr('rel');
			$(this).parent().parent().addClass('waiter');
			$.post(ibeConfig.newsTarget, { page: page }, function(news) {
				if (!news.length)
					return false;
				var newslist = '';
				for (var n in news) {
					newslist += '<li><span class="date">' + news[n].date + '</span><a href="' + news[n].url + '">' + news[n].title + '</a></li>';
				}
				$('ul.news-archive').empty().append(newslist);
				$('ul#news-switch').removeClass('waiter');
			}, 'json');
			return false;
		}).end();


	/* TRAVEL GUIDE */
	
	$('ul.travelguide #selecteditem').parent().parent().show().siblings('a').addClass('open');
	$('ul.travelguide a.subcategory').click(function() {
		if (!$(this).next('ul').is(':visible')) {
			$('ul.travelguide')
				.find('a.open').removeClass('open').end()
				.find('ul.articles:visible').slideUp("normal");
			$(this).addClass('open').next('ul').slideDown("normal");
		}
		return false;
	});

	/* REFERENCES */
	$('#references-switch')
		.find('a').click(function(){
			var o = $(this);
			var tgt = o.attr('href');
			o.parent().parent().find('a').removeClass('selected').end();
			o.addClass('selected');
			$('#content').empty().append($('<img />').attr('src', tgt).attr('width', 580).attr('height', 800).attr('alt', ''));
			return false;
		}).end();
	$('#references-list')
		.find('a').click(function(){
			var o = $(this);
			var tgt = o.attr('href');
			$('#content').empty().append($('<img />').attr('src', tgt).attr('width', 580).attr('height', 800).attr('alt', ''));
			return false;
		}).end();


	$('.btn-close').click(function() {
		$(this).parent().hide();
		return false;
	});
	
	$('.btn-payment-euro').click(function() {
		var offset = $(this).offset();
		$('#payment-euro').css('top', offset.top - 15).css('left', offset.left - 225).show();
		return false;
	});
	

	/* AIRPORTS */
	$('select#airportFilter').change(function(){
		var t = $(this);
		if (!t.val())
			return false;
		$.post(ibeConfig.airportguideTarget, {countrycode:t.val()}, function(airports){
			var airportList = '';
			for (var a in airports) {
				airportList += '<li><a href="informacje-o-lotniskach/' + airports[a].slug + '-(' + airports[a].airportcode + ').html">' + airports[a].title + ' (' + airports[a].airportcode + ')' + '</a></li>';
			}
			$('ul#airportList').empty().append(airportList).show();
		}, 'json');
		return false;
	});
	
	/* AGENTS */
	$('.opac35').hover(function() {
		  $(this).animate({opacity: '1'}, 'fast');
		}, function() {
		  $(this).animate({opacity: '0.35'}, 'fast');
	});
	
	$('#partnership-www-btn').hover(function() {
		$('#partnership-www-hint').animate({opacity: '1'}, 'fast');
	}, function() {
		$('#partnership-www-hint').animate({opacity: '0.35'}, 'fast');
	});

	$('#partnership-travel-btn').hover(function() {
		$('#partnership-travel-hint').animate({opacity: '1'}, 'fast');
	}, function() {
		$('#partnership-travel-hint').animate({opacity: '0.35'}, 'fast');
	});
	
	/*  PARTNERS VALIDATION */
	if ($('#partnerswwwform').size()>0) {
		$('#partnerswwwform').validate({
			event: "keyup",
			rules: {
				company_name: {
					required: true
				},
				city_zip: {
					required: true
				},
				address: {
					required: true
				},
				representative: {
					required: true
				},
				phone: {
					required: true
				},
				url: {
					required: true
				},
				email: {
					required: true,
					email: true
				}
			},
			messages: {
				company_name: {
					required: 'Proszę uzupełnić nazwę firmy'
				},
				city_zip: {
					required: 'Proszę uzupełnić kod pocztowy i miasto'
				}, 
				address: {
					required: 'Proszę uzupełnić ulicę i numer'
				},
				representative: {
					required: 'Proszę uzupełnić imię i nazwisko'
				},
				phone: {
					required: 'Proszę uzupełnić numer telefonu'
				},
				url: {
					required: 'Proszę uzupełnić adres strony www'
				},
				email: 'Proszę podać prawidłowy adres e-mail'
			},
			success: function(label) {
				label.remove();
			}
		});
	}
	
	
	/* WorldSpan TravelPort Login form */
	if ($('#frm_logon').size()>0) {
		$('#frm_logon').validate({
			event: "keyup",
			rules: {
				txtLocator: {
					required: true
				},
				txtLName: {
					required: true
				},
				ddlLanguage: {
					required: true
				},
				optClock: {
					required: true
				}
			},
			messages: {
				txtLName: {
					required: 'Proszę uzupełnić nazwisko pasażera'
				},
				txtLocator: {
					required: 'Proszę uzupełnić numer rezerwacji'
				},
				ddlLanguage: {
					required: 'Proszę wybrać język'
				},
				optClock: {
					required: 'Proszę wybrać format czasu'
				}
			},
			success: function(label) {
				label.remove();
			}
		});
	}

	/*  GROUP TRIP */
	if ($('#group-form').size()>0) {
		$('#group-form').validate({
			event: "keyup",
			rules: {
				name: {
					required: true
				},
				phone: {
					required: true
				},
				fly_from: {
					required: true
				},
				fly_to: {
					required: true
				},
				fly_from_date: {
					required: true
				},
				person_no: {
					required: true
				},
				e_mail: {
					required: true,
					email: true
				}
			},
			messages: {
				name: {
					required: 'Proszę uzupełnić imię i nazwisko'
				},
				phone: {
					required: 'Proszę uzupełnić numer telefonu'
				}, 
				fly_from: {
					required: 'Proszę uzupełnić miejsce wylotu'
				},
				fly_to: {
					required: 'Proszę uzupełnić miejsce przylotu'
				},
				fly_from_date: {
					required: 'Proszę uzupełnić datę wylotu'
				},
				person_no: {
					required: 'Proszę uzupełnić ilość pasażerów'
				},
				e_mail: 'Proszę podać prawidłowy adres e-mail'
			},
			success: function(label) {
				label.remove();
			}
		});
	}
	
	/*  PROPOSITIONS / TURYSTYKA FORM VALIDATION */
	if ($('#proposals-form').size()>0) {
		$('#proposals-form').validate({
			event: "keyup",
			rules: {
				directions: {
					required: true
				},
				phone: {
					required: true
				},
				fly_from_date_0: {
					required: true,
					dateISO: true
				},
				fly_to_date_0: {
					required: true,
					dateISO: true
				},
				name: {
					required: true
				},
				e_mail: {
					required: true,
					email: true
				}
				
			},
			messages: {
				name: {
					required: 'Pole wymagane'
				},
				phone: {
					required: 'Pole wymagane'
				},
				e_mail: {
					required: 'Pole wymagane',
					email: 'Błędny adres e-mail'
				},
				fly_from_date_0: {
					required: 'Pole wymagane',
					dateISO: 'Błedny format daty (RRRR-MM-DD)'
				},
				fly_to_date_0: {
					required: 'Pole wymagane',
					dateISO: 'Błedny format daty (RRRR-MM-DD)'
				},
				directions: {
					required: 'Pole wymagane'
				}
			},
			success: function(label) {
				label.remove();
			}
		});
	}

	$().eskyfeedback({action: ibeConfig.feedbackTarget});
	
});