var lazySelect = {
	
	current: null,
	
	init: function () {
		
		if ( $.browser.msie && ( $.browser.version < 0 ) ) return true;
		
		$('body').append('<iframe id="lazyFrame"></iframe>');
		$('body').append('<div id="lazySelect"></div>');
		
		$('#flightfinder select.city').mousedown(function () {
			
			if ( lazySelect.current )
				lazySelect.select(0);
			
			var links = lazySelect.buildLinks(this);
			if ( !links ) return;
			
			//alert();
			
			$('#lazySelect').html(links).css($(this).offset()).show(); //.insertBefore(this);
			
			$('#lazyFrame').css($(this).offset()).css({
				height : $('#lazySelect').height() + 75 ,
				width : $('#lazySelect').width()
			}).show();
			
			
			$(this).hide();
			$('#lazySelect').append('<div><span onclick="lazySelect.close();">Close</span><br class="clearer" /></div>');
			lazySelect.current = this;
			
		});
		
		
		
	//	$('<input type="text" />').insertAfter('#flightfinder select.city');
		
	},
	
	buildLinks: function ( select ) {
		
		
		var opts = select.options;
		var anchor = '';
		var anchors = '';
		for ( var i = 1; i < opts.length; i++ ) {
			
			if (opts[i].value != '0')
				anchors += '<li><a href="#" onclick="lazySelect.select(\'' + opts[i].value + '\');">' + $(opts[i]).html() + '</a></li>';
			
			if ( !( (i) % 9 ) ) {
				
				anchor += '<ul>' + anchors + '</ul>';
				anchors = '';
				
			}		
		}
		
		if ( anchors )
			anchor += '<ul>' + anchors + '</ul>';
		
		return anchor;
		
	},
	
	close : function () {
		
		lazySelect.select('0');
		
	},
	
	select: function ( val ) {
		
		$('#lazySelect').hide();
		$('#lazyFrame').hide();
		$(lazySelect.current).val(val).change();
		$(lazySelect.current).show();
		
		lazySelect.current = null;
	},
	
	replace: function () {
		
		
	}
	
};




		window.alert = jAlert;
//		window.prompt = jPrompt;
	//window.confirm = jConfirm;
		
		

 $(document).ready(function(){
            $("#slider").easySlider({
                auto: true,
                continuous: true
            });
        });
		

var BabooDatePicker = {
	
	lang: '',
	months: {
		fr: ["jan", "fev", "mar", "avr", "mai", "juin", "juil", "aout", "sep", "oct", "nov", "dec"],
		de:["jan", "feb", "mar", "apr", "mai", "jun", "jul", "aug", "sep", "okt", "nov", "dez"],
		it: ["gen", "feb", "mar", "apr", "mag", "giu", "lug", "ago", "set", "ott", "nov", "dic"],
		en: ["jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec"]
	},
	days: {
		fr: ['di', 'lu', 'ma', 'me', 'je', 've', 'sa'],
		de: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
		it: ['dom','lun', 'mar', 'merc', 'gio', 'ven', 'sab'],
		en: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']
	},
	fday: {
		fr:1,
		de:1,
		it:1,
		en:1
	},
	format: {
		fr: 'dd/mm/yy',
		de: 'dd/mm/yy',
		it: 'dd/mm/yy',
		en: 'dd/mm/yy'
	},
	
	
	/*
	format: {
		fr: ,
		de: ,
		it: ,
		en: 
	},
	format: {
		fr:
		de:
		it:
		en:
	},
	*/
	
	init: function (start, end) {
		
		if ( document.location.pathname.match(/^\/fr\//) )
			this.lang = 'fr';
		
		else if ( document.location.pathname.match(/^\/de\//) )
			this.lang = 'de';
		
		else if ( document.location.pathname.match(/^\/it\//) )
			this.lang = 'it';
		
		else this.lang = 'en';
		
		$("#flightfinder input[name='departure_date']").datepicker({
			
			dayNamesMin: BabooDatePicker.days[BabooDatePicker.lang],
			dayNamesShort: BabooDatePicker.days[BabooDatePicker.lang],
			monthNames: BabooDatePicker.months[BabooDatePicker.lang],
			numberOfMonths: 2,
			defaultDate: 0,
			firstDay: BabooDatePicker.fday[BabooDatePicker.lang],
			dateFormat: BabooDatePicker.format[BabooDatePicker.lang],
			minDate: ( start && ( start > new Date() ) ) ? start : new Date(),
			maxDate: end,
			onSelect: function (a, b) {
				
				$('#flightfinder input[name="departureDate"]').val(b.selectedYear + '-' + ( b.selectedMonth + 1 ) + '-' + b.selectedDay);
				
				$('#flightfinder input[name="depDay"]').val(b.selectedDay);
				$('#flightfinder input[name="depMonth"]').val(BabooDatePicker.months['en'][b.selectedMonth].toUpperCase());
				
				$("#flightfinder input[name='return_date']").datepicker('option', 'minDate', new Date(b.selectedYear, b.selectedMonth, b.selectedDay));
				
				
				var d = parseInt($('#flightfinder input[name="retDay"]').val());
				var m = parseInt(BabooDatePicker.months.en.indexOf($('#flightfinder input[name="retMonth"]').val().toLowerCase()));
				
				if (  m < parseInt(b.selectedMonth) || ( m == parseInt(b.selectedMonth) && d <= parseInt(b.selectedDay) ) ) {
					
					$('#flightfinder input[name="retDay"]').val(b.selectedDay);
					$('#flightfinder input[name="retMonth"]').val(BabooDatePicker.months['en'][b.selectedMonth].toUpperCase());
					$('#flightfinder input[name="returnDate"]').val(b.selectedYear + '-' + ( b.selectedMonth + 1 ) + '-' + b.selectedDay);
					
				}
				
				
			}
			
		}).datepicker('setDate', new Date);
		
		
		
		$("#flightfinder input[name='return_date']").datepicker({
			
			dayNamesMin: BabooDatePicker.days[BabooDatePicker.lang],
			dayNamesShort: BabooDatePicker.days[BabooDatePicker.lang],
			monthNames: BabooDatePicker.months[BabooDatePicker.lang],
			numberOfMonths: 2,
			defaultDate: 0,
			firstDay: BabooDatePicker.fday[BabooDatePicker.lang],
			dateFormat: BabooDatePicker.format[BabooDatePicker.lang],
			minDate: ( start && ( start > new Date() ) ) ? start : new Date(),
			maxDate: end,
			onSelect: function (a, b) {
				
				$('#flightfinder input[name="returnDate"]').val(b.selectedYear + '-' + ( b.selectedMonth + 1 ) + '-' + b.selectedDay);
				
				$('#flightfinder input[name="retDay"]').val(b.selectedDay);
				$('#flightfinder input[name="retMonth"]').val(BabooDatePicker.months['en'][b.selectedMonth].toUpperCase());
				
			}
			
		}).datepicker('setDate', new Date);
		
		
		$('.flightfinder .datestart').datepicker({
			
			dayNamesMin: BabooDatePicker.days[BabooDatePicker.lang],
			dayNamesShort: BabooDatePicker.days[BabooDatePicker.lang],
			monthNames: BabooDatePicker.months[BabooDatePicker.lang],
			numberOfMonths: 2,
			firstDay: BabooDatePicker.fday[BabooDatePicker.lang],
			dateFormat: BabooDatePicker.format[BabooDatePicker.lang],
			minDate: new Date(),
			onSelect: function (a, b) {
				
				$(".flightfinder .datestop").datepicker('option', 'minDate', new Date(b.selectedYear, b.selectedMonth, b.selectedDay));
				
			}
			
		});
		
		
		$('.flightfinder .datestop').datepicker({
			
			dayNamesMin: BabooDatePicker.days[BabooDatePicker.lang],
			dayNamesShort: BabooDatePicker.days[BabooDatePicker.lang],
			monthNames: BabooDatePicker.months[BabooDatePicker.lang],
			numberOfMonths: 2,
			firstDay: BabooDatePicker.fday[BabooDatePicker.lang],
			dateFormat: BabooDatePicker.format[BabooDatePicker.lang],
			minDate: new Date(),
			maxDate: end
		});
		
	}
	
};


$(document).ready(function() {
	
	/* Cufon */
	Cufon.replace('h1', { fontFamily: 'Frutiger' });
	Cufon.replace('h2', { fontFamily: 'Frutiger', fontStyle: 'italic'});
	Cufon.replace('#main .col-2 h2', { fontFamily: 'FrutigerBold', fontStyle: 'italic'});
	Cufon.replace('.Frutiger', { fontFamily: 'Frutiger' });
	Cufon.replace('.cufon', { fontFamily: 'Frutiger' });
	Cufon.replace('h3', { fontFamily: 'Frutiger' });
	Cufon.replace('#header .menu li > .title', { fontFamily: 'Frutiger' });
	
	
	/* FlightFinder */
	chekin.init(); 
	flightFinder.init();
	/**/
	
	$('#header li').hover(function () {
		
		$(this).addClass('hover');
		
	}, function () {
		
		$(this).removeClass('hover');
		
	});
	/**/
	
	lazySelect.init();
	
});
