$(document).ready(function()
{
	KE.setActiveMenu();
	KE.initGallery();
	KE.initForm();
	
	if($('ul#slideshow').length != 0){
		$('ul#slideshow').innerfade({
							speed: 1000,
							timeout: 5000,
							type: 'sequence',
							containerheight: '410px'
						});
	}

});

var KE = {
	initForm:function()
	{
		var parts = window.location.pathname.split("/"),
			language = parts.length > 1 ? parts[parts.length - 2].toLowerCase() : "es";

		var monthNames = 
			{ 
				'en' : [ 'January','Febuary','March','April','May','June','July','August','September','October','November','December'],
				'es' : [ 'Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
				'ca' : [ 'Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
				'fr' : [ 'Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
				'de' : [ 'Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember']
			 },
			dayNames = 
			{ 
				'en' : ['Mon','Tue','Wed','Thu','Fri','Sat','Sun'],
				'es' : ['Lun','Mar','Mie','Jue','Vie','Sab','Dom'],
				'es' : ['Lun','Mar','Mie','Jue','Vie','Sab','Dom'],
				'fr' : ['Lun','Mar','Mec','Jeu','Ven','Sam','Dim'],
				'de' : ['Mon','Die','Mit','Don','Fre','Sam','Son']
			};

		if(window.DP_jQuery){
			$('#date').datepicker(
				{
					showOn:'focus',
					dateFormat: 'dd-mm-yy',
					dayNamesMin : dayNames[language],
					monthNames : monthNames[language],
					minDate: 0,
					onSelect : function(){ $(this).addClass('cleared'); }
				});
			
			$('#bookingForm input[type="text"], #bookingForm textarea').focus(function(){
				var el = $(this);
				if(!el.hasClass('cleared')){
					el.val('');
					el.addClass('cleared');
				}
			});
			$('#bookingForm input[type="text"], #bookingForm textarea').blur(function(){
				var el = $(this),
					text = this.tagName.toLowerCase() == 'textarea' ? el.val() : el.val();
				if(text.length == 0) {
					text = el.attr('alt') == undefined  || el.attr('alt') == '' ? el.attr('title') : el.attr('alt');
					el.val(text);
					el.removeClass("cleared");
				}
			});
			
			$('#bookingForm').validate({ submitHandler: KE.formSubmitHandler });
		}
		
	},
	
	formSubmitHandler: function(form){
		$('#bookingForm input[type="text"], #bookingForm textarea').each(function(){
			var el = $(this);
			if(!el.hasClass('cleared')){
				el.val('');
				el.text('');
			}
		});
		form.submit();
	},
	menuShown: [],
	setActiveMenu : function(){
		
		var parts = window.location.pathname.split("/"),
			page = parts[parts.length -1].toLowerCase(),
			language = parts.length > 1 ? parts[parts.length - 2].toLowerCase() : "es",
			pageName = parts[parts.length - 1];
			
		if(pageName.indexOf("_") != -1) pageName = pageName.substring(0, pageName.indexOf("_"));
		if(pageName.indexOf(".") != -1) pageName = pageName.substring(0, pageName.indexOf("."));
		// set current page link active
		if(pageName == '') pageName = 'index';
		
		$("a[href^='" + pageName +"']").addClass("current");


		// remove current language link
		$(".langNav li a[href='/" + language +"']").parent().remove();
		$(".langNav li a").each(function(){
			var a = $(this);
			a.attr("href", ".." + a.attr("href") + "/" + page);
		});
		
		
		// set current menu
		if(page != "home.html"){
			var current = $("#mainNav a[href='" + page +"']");
			current.parents("li").addClass("current");
		}
	},
	
	maxPage : 1,
	currentPage:0,
	initGallery : function(){
		var container = $("#galleryContainer"),
			galleryImages = $("#galleryContainer a"),
			nav = $("#galleryNav");
		
		if(container.length != 0) {
			galleryImages.slimbox();
			
			/* add image navigation */
			KE.maxPage = Math.ceil(galleryImages.length / 6);
			
			nav.append($('<a onclick="KE.gotoPage(this,0)" class="first">&lt;&lt;</a>' + 
							  '<a onclick="KE.gotoPage(this,\'previous\')" class="prev">&lt;</a>'));
			for(var index = 0; index < KE.maxPage ; index++){
				nav.append($('<a onclick="KE.gotoPage(this,' + index +')" class="page">' + (index + 1) + '</a>'));
			}
	
			nav.append($('<a onclick="KE.gotoPage(this,\'next\')" class="next">&gt;</a>' + 
							  '<a onclick="KE.gotoPage(this,' + (KE.maxPage-1) + ')" class="last">&gt;&gt;</a>'));
	
			$($("a", nav)[2]).addClass("current");
			
		}
	},
	
	gotoPage: function(e, index){
		
		if(isNaN(parseInt(index))){
			if(index == "previous" && KE.currentPage > 0 ) {KE.currentPage--;}
			else if(index == "next" && KE.currentPage < KE.maxPage -1 ) {KE.currentPage++;}
		}
		else {KE.currentPage = index;}
		
		$("#galleryNav a").removeClass("current");
		$($("#galleryNav a")[KE.currentPage + 2]).addClass("current");

		$("#galleryContainer").animate(
			{"top": -KE.currentPage * $("#galleryFrame").height() + "px"},
			"slow",
			"swing");
	}
};

