$(document).ready(function() {

	var middleHeight = $('#s-middle').height();
	if (middleHeight % 2 > 0) {
		var newHeight = middleHeight + 1;
		$('#s-middle').height(newHeight);
	}

	$('#logo img.logo-bw').hover(
		function() {
			$(this).stop().animate({"opacity": "0"}, "slow");
		},
		function() {
			$(this).stop().animate({"opacity": "1"}, "slow");
		}
	);

	$('#main-menu-bar li.level-0').mouseover(function() {

		$(this).addClass('level-0-hover');
		$('.submenu').hide();
		$(this).find('.submenu').show();

	});

	$('#main-menu-bar li.level-0').mouseleave(function() {
		$(this).removeClass('level-0-hover');
		$(this).find('.submenu').hide();
	});

	$('#main-menu-bar li.level-1').mouseenter(function() {
		$(this).addClass('level-1-hover');
	});
	$('#main-menu-bar li.level-1').mouseleave(function() {
		$(this).removeClass('level-1-hover');
	});

	setGallery();

	$('.datefield').datepicker({
		dateFormat: 'dd.mm.yy',
		showOn: 'both',
		minDate: new Date,
		buttonImage: '/img/calendar-icon.png',
		buttonImageOnly: true
	});
	$('#arrival_date').datepicker('option', {
		onSelect: function(dateText, inst) {
			var startDate = new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay);
			var newDate = new Date(startDate);
			newDate.setDate(startDate.getDate() + 1);
			$('#departure_date').datepicker('setDate', newDate);
		}
	});
	$('#o_arrival_date').datepicker('option', {
		onSelect: function(dateText, inst) {
			var startDate = new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay);
			var newDate = new Date(startDate);
			newDate.setDate(startDate.getDate() + 1);
			$('#o_departure_date').datepicker('setDate', newDate);
		}
	});
	$('#departure_date, #o_departure_date').datepicker('option', {
		minDate: '+1d'
	});

	$('#send-request-form form').submit(function() {

		var form = $(this);
		form.find('.field-error').removeClass('field-error');

		$.ajax({
			type: 'POST',
			cache: false,
			dataType: 'json',
			data: form.serializeArray(),
			url: '/scripts/booking.php?action=submitRequest',
			success: function(data) {

				if (data.success == true) {

					if (data.response_text) {
						form.parent().html(data.response_text);
					}

				}
				else {

					if (data.errors) {
						for (var i in data.errors) {
							form.find('input[name="f[' + i + ']"]').addClass('field-error');
							form.find('label[for="' + i + '"]').addClass('field-error');
						}
					}
				}
				

			}
		});

		return false;

	});

	$('#send-request-conference-form form').submit(function() {

		var form = $(this);
		form.find('.field-error').removeClass('field-error');

		$.ajax({
			type: 'POST',
			cache: false,
			dataType: 'json',
			data: form.serializeArray(),
			url: '/scripts/booking.php?action=submitRequestConference',
			success: function(data) {

				if (data.success == true) {

					if (data.response_text) {
						form.parent().html(data.response_text);
					}

				}
				else {

					if (data.errors) {
						for (var i in data.errors) {
							form.find('input[name="f[' + i + ']"]').addClass('field-error');
							form.find('label[for="' + i + '"]').addClass('field-error');
						}
					}
				}
				

			}
		});

		return false;

	});

	$('#online-booking-form form').submit(function() {

		var form = $(this);
		form.find('.field-error').removeClass('field-error');

		$.ajax({
			type: 'POST',
			cache: false,
			dataType: 'json',
			data: form.serializeArray(),
			url: '/scripts/booking.php?action=getOnlinebookingUrl',
			success: function(data) {

				if (data.success == true) {
					
					if (data.url) {
						openPopup(data.url);
					}

				}
				else {

					if (data.errors) {
						for (var i in data.errors) {
							form.find('input[name="f[' + i + ']"]').addClass('field-error');
							form.find('label[for="' + i + '"]').addClass('field-error');
						}
					}

				}
				

			}
		});
		

		return false;
	});

	$('#o_number_of_rooms').change(function() {
		var num_rooms = parseInt($(this).val());
		$('#online-booking-form form .room-row').css('display', 'none');
		
		if (!isNaN(num_rooms)) {
			for (var i = 1; i <= num_rooms; i++) {
				$('#online-booking-form form .room-nr-' + i).css('display', '');
			}
		}
	});


	$('#advert a').click(function() {

		if ($('#advert').css('z-index') == 0) {
			toggleAdvert();
			return false;
		}
	
	});
	$('#advert').click(function() {
		toggleAdvert();
	});

	$(document).click(function() {
		$('#advert').css('z-index', 0);
	});

	$('.join-newsletter').click(function() {
		$.fancybox({
			type: 'iframe',
			href: '/scripts/cmscontent.php?page_id=74',
			hideOnOverlayClick: false,
			width: 500,
			padding: 5,
			height: 200
		});
		return false;
	});

});

function toggleAdvert() {
	var advert = $('#advert');

	if (advert.css('z-index') == 0) {
		advert.css('z-index', 2);
	}
	else {
		advert.css('z-index', 0);
	}
}

function openPopup(link) {
	$.fancybox({
		type: 'iframe',
		hideOnOverlayClick: false,
		width: 800,
		height: 580,
		href: link
	});
}

function setGallery() {
	$('.gallery .gallery-image a').fancybox({
		padding: 1
	});
}

function getImages(gallery_id, page, link) {
		
	if (link.hasClass('active')) {
		return;
	}

	link.parent().find('a.active').removeClass('active');
	link.addClass('active');

	var gallery = link.parent().parent();

	$.ajax({
		type: 'GET',
		cache: false,
		dataType: 'html',
		url: '/scripts/gallery.php?action=getImages&gallery_id=' + gallery_id + '&page=' + page,
		success: function(data) {
			
			if (data) {
				gallery.find('.gallery-images').html(data);
			}

			setGallery();

		}
	});

	return false;


}
