// $ UI Datepicker
$(function($) {
	$.datepicker.regional['de'] = {
		prevText:        'zurück',
		nextText:        'weiter',
		monthNames:      ['Jänner','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'],
		dayNames:        ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
		dayNamesMin:     ['So','Mo','Di','Mi','Do','Fr','Sa'],
		firstDay:        1,
		buttonText:      'Kalender',
		isRTL:           false
	};
	$.datepicker.regional['en'] = {
		buttonText:      'Calendar'
	};
	$.datepicker.regional['fr'] = {
		prevText:        'préc',
		nextText:        'suiv',
		monthNames:      ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'], 
		dayNames:        ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'], 
		dayNamesMin:     ['Di','Lu','Ma','Me','Je','Ve','Sa'],
		firstDay:        0,
		buttonText:      'Calendrier',
		isRTL:           false
	};
	$.datepicker.regional['it'] = {
		prevText:        'prec',
		nextText:        'succ',
		monthNames:      ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'], 
		dayNames:        ['Domenica','Lunedì','Martedì','Mercoledì','Giovedì','Venerdì','Sabato'], 
		dayNamesMin:     ['Do','Lu','Ma','Me','Gi','Ve','Sa'], 
		firstDay:        1,
		buttonText:      'Calendario',
		isRTL:           false
	};
	$.datepicker.setDefaults($.datepicker.regional[$('html').attr('lang')]);
	$.datepicker.setDefaults({
		buttonImage:     '/fileadmin/template/img/16x16/calendar.png',
		buttonImageOnly: true,
		dateFormat:      'yy-mm-dd', // ISO 8601
		minDate:         '0y',
		showOn:          'both',
		showOtherMonths: true
	});
	
	function select_to_datepicker(prefix, min_date, bind_to) {
		if($('select[name="' + prefix + '_yyyy"], select[name="' + prefix + '_mm"], select[name="' + prefix + '_dd"]').length == 3) {
			$('select[name="' + prefix + '_yyyy"], select[name="' + prefix + '_mm"], select[name="' + prefix + '_dd"]').css({display: 'none'});
			$('select[name="' + prefix + '_yyyy"]').before('<input type="text" name="' + prefix + '" readonly="readonly" class="s25" />');
			$('input[name="' + prefix + '"]').val(
				$('select[name="' + prefix + '_yyyy"]').val() + '-' +
				$('select[name="' + prefix + '_mm"]'  ).val() + '-' +
				$('select[name="' + prefix + '_dd"]'  ).val()
			);
			
			// Wenn die select-Elemente keine Werte haben, wird das Textfeld wieder geleert.
			if ($('input[name="' + prefix + '"]').val() == '--') {
				$('input[name="' + prefix + '"]').val('');
			}
			$('input[name="' + prefix + '"]').datepicker({
				minDate: min_date,
				onSelect: function(dateText, inst) {
					var arr = dateText.split('-');
					$('select[name="' + prefix + '_yyyy"]').val(arr[0]);
					$('select[name="' + prefix + '_mm"]'  ).val(arr[1]);
					$('select[name="' + prefix + '_dd"]'  ).val(arr[2]);
					
					// Bei der Auswahl eines Anreisedatums wird der Picker des Abreisedatums auf eine Mindestauswahl von +1 Tag (86400000 Millisekunden) gesetzt.
					$('input[name="' + bind_to + '"]').datepicker(
						'option',
						$.extend({
							minDate: new Date(
								parseInt(
									Date.parse(
										$('input[name="' + prefix + '"]').datepicker('getDate')
									)
								)+86400000
							)
						})
					);
					
				}
			});
		}
	}
	
	select_to_datepicker('mf_datum_von', '+1d', 'mf_datum_bis');
	select_to_datepicker('mf_datum_bis', '+2d');
	select_to_datepicker('mf_datum', '+1d');
});

$(document).ready(function() {
	// wrap span-Element into a.button
	$('a.button').wrapInner('<span />');
	
	var breite = 0;		
	$('.layout2 #col2 .scroller .section').each(function(i) {
		breite = breite + $(this).width()+10;
	});
	
	$('.layout2 #col2 .scroller').css('width', (breite));
	
	
	var breite = 0;		
	$('.layout3 #col2 .scroller .section').each(function(i) {
		breite = breite + $(this).width()+10;
	});
	
	$('.layout3 #col2 .scroller').css('width', (breite));

	$(".layout1 #col0 .section:first-child").addClass("first");
	$(".layout1 #col0 .section:nth-child(2)").addClass("second");
	$(".layout1 #col0 .section:nth-child(3)").addClass("third");
	
	$(".layout1 #col2 .section:first-child").addClass("first");
	$(".layout1 #col2 .section:nth-child(2)").addClass("second");
	$(".layout1 #col2 .section:nth-child(3)").addClass("third");
	
	$("#handler1").mouseover(function() {
    $(".layout1 #col0 .first").stop(true).animate({"left": "120px"}, "fast");
	$(".layout1 #col2 .first").css('visibility', 'visible');
	$(".layout1 #col2 .second").css('visibility', 'hidden');
	$(".layout1 #col2 .third").css('visibility', 'hidden');
	}).mouseout(function(){
    $(".layout1 #col0 .first").stop(true).animate({"left": "-182px"}, "fast");
	$(".layout1 #col2 .first").css('visibility', 'hidden');
	});
	
	$("#handler2").mouseover(function() {
    $(".layout1 #col0 .second").stop(true).animate({"left": "70px"}, "fast");
	$(".layout1 #col2 .first").css('visibility', 'hidden');
	$(".layout1 #col2 .second").css('visibility', 'visible');
	$(".layout1 #col2 .third").css('visibility', 'hidden');
	}).mouseout(function(){
    $(".layout1 #col0 .second").stop(true).animate({"left": "-232px"}, "fast");
	$(".layout1 #col2 .second").css('visibility', 'hidden');
	});
	
	$("#handler3").mouseover(function() {
    $(".layout1 #col0 .third").stop(true).animate({"left": "20px"}, "fast");
	$(".layout1 #col2 .first").css('visibility', 'hidden');
	$(".layout1 #col2 .second").css('visibility', 'hidden');
	$(".layout1 #col2 .third").css('visibility', 'visible');
	}).mouseout(function(){
    $(".layout1 #col0 .third").stop(true).animate({"left": "-282px"}, "fast");
	$(".layout1 #col2 .third").css('visibility', 'hidden');
	});
	
	
	
	/*
	$("#handler1").mouseover(function() {
		$(".layout1 #col2 .first").css('visibility', 'visible');
		$(".layout1 #col2 .second").css('visibility', 'hidden');
		$(".layout1 #col2 .third").css('visibility', 'hidden')}).mouseout (function(){
		$(".layout1 #col2 .first").css('visibility', 'hidden')});
	
	$("#handler2").mouseover(function() {
		$(".layout1 #col2 .first").css('visibility', 'hidden');
		$(".layout1 #col2 .second").css('visibility', 'visible');
		$(".layout1 #col2 .third").css('visibility', 'hidden')}).mouseout (function(){
		$(".layout1 #col2 .second").css('visibility', 'hidden')});
	
	$("#handler3").mouseover(function() {
		$(".layout1 #col2 .first").css('visibility', 'hidden');
		$(".layout1 #col2 .second").css('visibility', 'hidden');
		$(".layout1 #col2 .third").css('visibility', 'visible')}).mouseout (function(){
		$(".layout1 #col2 .third").css('visibility', 'hidden')});
	*/
	$('.layout0 #col0, .layout2 #col0, .layout3 #col0').jScrollPane();
	$('.layout0 #col2, .layout2 #col2, .layout3 #col2').jScrollPane({showArrows: true, arrowScrollOnHover: true});
	
	
	
	
	$('.layout2 a.ajax').click(function (e) {
		e.preventDefault();
		$('.layout2 #picDiv').css('background-image', 'url(' + $(this).attr('href') + ')');
		$('.layout2 #titleDiv').text($(this).attr('title'));
	});
	$('.layout2 #picDiv').css('background-image', 'url(' + $('.layout2 a.ajax:eq(0)').attr('href') + ')');
	$('.layout2 #titleDiv').text($('.layout2 a.ajax:eq(0)').attr('title'));
	
	
	$('.layout3 #col2 a').each(function() {
		$(this).click(function(e) {
			var curhref = $(this).attr('href');
			e.preventDefault();
			$('.layout3 #picDiv').load(curhref + ' #col0');
		});
	});
	$('.layout3 #picDiv').load( $('.layout3 #col2 a:eq(0)').attr('href') + ' #col0');
	
	
	
	
	/*
		var api = $('.layout0 #col2, .layout2 #col2, .layout3 #col2').data('jsp');
	if(e.pageX < 100){	
		$('#menu').bind(
			'mouseenter',
			function()
			{
				// Note, there is also scrollByX and scrollByY methods if you only
				// want to scroll in one dimension
				api.scrollBy(50, 0);
				return false;
			}
		);
	};
	

	var myInterval = false;
	var api = $('.layout0 #col2, .layout2 #col2, .layout3 #col2').data('jsp');
	
    $('#menu').bind(
		'mouseenter',
		(function()
		{
			myInterval = setInterval(function(){
			api.scrollBy(50, 0);
			return false;
		}, 100);
		});
	);
    
    $('.sampleA').bind(
		'mouseleave'
		(function()
		{
			clearInterval(myInterval);
			myInterval = false;
		});
	);*/
	
	var myInterval = false;
	var api = $('.layout0 #col2, .layout2 #col2, .layout3 #col2').data('jsp');
	
	$('#col2 .jspContainer').before('<div class="prev" /><div class="next" />');
	
	$('.next').mouseenter(function(){
       myInterval = setInterval(function(){
           api.scrollBy(5, 0);
       }, 10);
    });
    
    $('.next').mouseleave(function(){
       clearInterval(myInterval);
       myInterval = false;
    });
	
	$('.prev').mouseenter(function(){
       myInterval = setInterval(function(){
           api.scrollBy(-5, 0);
       }, 10);
    });
    
    $('.prev').mouseleave(function(){
       clearInterval(myInterval);
       myInterval = false;
    });
		
});
