function animateSlider(pos) {
	$("#slider").animate(
		{"left" : pos},
		1250,
		"easeOutBack"
	);
	$("#slider").dequeue();
}

function photogallerySlideshowInit() {
	// prepare
	var box = $("#randomImageSlideshow");
	var srcImage = box.find("img:first");
	box.css("width", srcImage.outerWidth());
	box.css("height", srcImage.outerHeight());

	$.each(images, function(i, val) {
		if (i == 0) {return;}
		var newImg = srcImage.clone();
		newImg.attr("src", val);
		newImg.css("display", "none");
		box.append(newImg);
	});
	
	// init the slideshow
	$('#randomImageSlideshow').cycle({fx: 'fade', timeout: 10000});
}

function setPackageSlideContents(slide, i) {
	i = i % packages.items.length;

	slide.find("a.link").attr("href", packages.items[i].link);
	slide.find(".title").text(packages.items[i].title);
	slide.find(".text").text(packages.items[i].text);
}

function packagesSlideshowInit() {
	// prepare
	var box = $("#quickPackagesSlideshow");
	var srcSlide = box.find("div:first");
	box.css("height", srcSlide.outerHeight());

	for (i = 0; i < packages.items.length; ++i) {
		if (i == 0) {continue;}
		var newSlide = srcSlide.clone();

		//newSlide.css("display", "none");
		newSlide.find("p.package").each(function(j, el) {
			setPackageSlideContents($(el), i + j);
		});

		box.append(newSlide);
	}

	// init the slideshow
	$('#quickPackagesSlideshow').cycle({
		fx: 'fade',
		timeout: 10000,
		before: function() {
			$(this).parent().animate({"height": $(this).height()});
		}
	});
}

$("#slider").ready(function() {
	$("#mainmenu a").hover(function() {
		var el = $(this);
		var correction = (el.width() - $("#slider").width()) / 2;
		animateSlider(el.position().left + correction);
	});

	$("#mainmenu li").mouseout(function() {
		animateSlider($("#logo").position().left);
	});
});


$("document").ready(function() {
	// fanybox init
	$("a.thickbox").fancybox({hideOnContentClick: true});

	// slideshow feature
	photogallerySlideshowInit();

	// packages slideshow feature
	packagesSlideshowInit();

	// setup datepickers
	$('input.datepicker').datepicker({duration: 'fast'});

	var mapEls = $('img[usemap]');
	mapEls.maphilight();
	if (mapEls.length > 0) {
		$('#left,#right').css("padding-bottom", "3px")
		$('#left,#right').css("margin-bottom", "0");
	}

	$('area[href*=#]').click(function() {
		if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'')
			&& location.hostname == this.hostname) {
			var $target = $(this.hash);
			$target = $target.length && $target
			|| $('[name=' + this.hash.slice(1) +']');
			if ($target.length) {
				var targetOffset = $target.offset().top;
				$('html,body')
				.animate({
					scrollTop: targetOffset
				}, 1000);
				return false;
			}
		}
	});
});
