/* 
JavaScript-Funktionen für das Suchformular
benötigt jQuery, ui.datepicker (/inc_system/jquery/jquery.datepicker.min.js) 
*/ 

$(document).ready(function() {

	$(':input[name="suche[neu]"]').hover(
		function(){$(this).css({backgroundPosition:'left bottom', color:'#FFFFFF'});},
		function(){$(this).css({backgroundPosition:'left top', color:'#000066'});}
	)

	$(':input.datum').datepicker({ 
		numberOfMonths:1,
		showButtonPanel: true ,
		showOn: 'both',
		buttonImage: '/inc_system/jquery/themes/travel/images/datepicker.gif', 
		buttonImageOnly: true,
		buttonText: 'Datum per Kalender auswählen',
		closeText: 'Schliessen',
		currentText: 'Heute',
		dateFormat: 'dd.mm.yy',
		constrainInput: true,
		firstDay: 1,
		minDate: new Date(),
		navigationAsDateFormat: true,
		monthNames: ['Januar','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'],
		prevText: 'MM yy',
		nextText: 'MM yy',
		duration: 'fast',
		onClose: function(dateText, instance) {
					if(dateText==''){return false;}
					var anreise 	= $(':input.datum.anreise').datepicker( "getDate" );
					var anreiseStamp= Date.parse(anreise); if(isNaN(anreiseStamp)){anreiseStamp = 0;}
					var anreiseText	= $(':input.datum.anreise').val();
					
					var abreise 	= $(':input.datum.abreise').datepicker( "getDate" );
					var abreiseStamp= Date.parse(abreise); if(isNaN(abreiseStamp)){abreiseStamp = 0;}
					var abreiseText	= $(':input.datum.abreise').val();
					
					// Anreise ? 
					if($(this).hasClass('anreise')){
						// Abreise vor Anreise ? -> Auf Anreisetag setzen
						if(abreiseStamp < anreiseStamp){
							abreiseStamp = anreiseStamp;
							$(':input.datum.abreise').val(dateText);
						}
						$(':input.datum.abreise').datepicker( "show" );
					}
					// ... Abreise
					else{
						// Anreisetag leer ? -> Auf heute setzen
						if(anreiseStamp==0){
							$(':input.datum.anreise').datepicker( "setDate" , 'today' );
							anreiseStamp=Date.parse( $(':input.datum.anreise').datepicker( "getDate" ));
							anreiseText	= $(':input.datum.anreise').val();
						}
						// Abreise vor Anreise ? -> umdrehen
						if(abreiseStamp < anreiseStamp){
							var tmp 	 = anreiseStamp;
							anreiseStamp = abreiseStamp;
							abreiseStamp = tmp;
							$(':input.datum.anreise').val(abreiseText);
							$(':input.datum.abreise').val(anreiseText);
						}
					}
					// Nächte-Optionen neu schreiben
					var naechte = parseInt((abreiseStamp - anreiseStamp)/86400000);
					var naechteForm;
					
					if(anreiseStamp > 0 && abreiseStamp > 0){
						for(ct=naechte; ct >=1 ; ct--){
							var selected = (ct==naechte)
										 ? 'selected="selected"'
										 : '';
							var selTxt 	= (ct==naechte) ? 'Alle' : 'mindestens ' + ct;			 
								selTxt += (ct==1) ? ' Nacht' : ' Nächte';
							naechteForm += '<option value="' + ct +'" '+ selected +'>'+ selTxt +'</option>';
						}
					}
					$(':input.naechte').html(naechteForm);
					
				}
	});
});

function resetSuche(){
	$('#suchForm select').each(function(index){$(this).children('option:eq(0)').attr('selected','selected');});	
	$('#suchForm :text').val('');
	$('#suchForm :checkbox').removeAttr('checked');
	$('#suchForm select.naechte').html('');
}
