function pricecalc_daterange(input) { 
   var currentdate = new Date();
   var arrivaldate = $("#pricecalc_fromdate").datepicker("getDate");
   var departuredate = $("#pricecalc_todate").datepicker("getDate");
   switch(input.id) {
		 case 'pricecalc_fromdate': 
		   var maxdate = null;
			 var mindate = currentdate; 
		 break;
	   case 'pricecalc_todate':
		   var maxdate = null;
		   var mindate = arrivaldate ? arrivaldate : currentdate;
		 break;
	 }  
	 return {minDate: mindate, maxDate: maxdate};
}

var kidcount, oldvalue, newvalue;

function pricecalc_numfield_onkeypress(e) {
	oldvalue = $(this).val();
	if( e.which!=8 && e.which!=0 && (e.which<48 || e.which>57)) {
		return false;
	}
}

function pricecalc_numfield_onkeyup(e) {
	newvalue = $(this).val().asInt();
	switch($(this).attr('id')) {
		case 'kids':
			if (newvalue > 15) {
				$(this).val(oldvalue);
				return false;
			}
			if (kidcount < newvalue) {
				for (var kid = kidcount+1; kid <= newvalue; kid++) {
					switch(language) {
					  case 'de':
							$('div#fields_kidsages').append(
									'<div id="kidage_'+kid+'">'+
									'<label for="kidsage_'+kid+'">Alter Kind '+kid+':</label> '+
									'<input type="text" class="kidage" id="kidsage_'+kid+'" name="kidsage[]" value="" maxlength="2" /> Jahre'+
									'</div>'
							 );
						break;
						case 'it':
							$('div#fields_kidsages').append(
									'<div id="kidage_'+kid+'">'+
									'<label for="kidsage_'+kid+'">Età bambino '+kid+':</label> '+
									'<input type="text" class="kidage" id="kidsage_'+kid+'" name="kidsage[]" value="" maxlength="2" /> anni'+
									'</div>'
							 );
						break;
						case 'en':
							$('div#fields_kidsages').append(
									'<div id="kidage_'+kid+'">'+
									'<label for="kidsage_'+kid+'">Age children '+kid+':</label> '+
									'<input type="text" class="kidage" id="kidsage_'+kid+'" name="kidsage[]" value="" maxlength="2" /> years'+
									'</div>'
							 );
						break;
					}
				}
			} else {
				for (var kid = kidcount; kid > newvalue; kid--) {
					$('div#kidage_'+kid).remove();
				}
			}
			kidcount = $('input#kids').val().asInt()
			if (!kidcount) {
				$('fieldset#kidsages').hide();
			} else {
				$('fieldset#kidsages').show();
			}
    	$('input.kidage').unbind('keypress,keyup').keypress(pricecalc_numfield_onkeypress).keyup(pricecalc_numfield_onkeyup);
    break;
	}
	if ($(this).hasClass('kidage')) {
		if (newvalue > 15) {
			$(this).val(oldvalue);
			return false;
		}
	}
}

$(document).ready(function() {
	kidcount = $('input#kids').val().asInt();
	if (!kidcount) {
	  $('fieldset#kidsages').hide();
	}
	if (!$('input#dog').is(':checked')) {
	  $('div#dogs').hide();
	}
	if (!$('input#familotelcard').is(':checked')) {
	  $('p#familotelcardinfo').hide();
	}
	$("#pricecalc_fromdate,#pricecalc_todate").datepicker($.extend({}, 
		 $.datepicker.regional[language], { 
			showStatus: false, 
			beforeShow: pricecalc_daterange, 
			showOn: "both", 
			buttonImage: "/img/sonnwies/pricecalc/calendar.gif", 
			buttonImageOnly: true 
		})
	);
	$('input#dog').click(function() {
	  $('div#dogs').toggle();
	});
	$('input#familotelcard').click(function() {						
    $('p#familotelcardinfo').toggle();
	});
	$('input#adults,input#kids,input.kidage').keypress(pricecalc_numfield_onkeypress).keyup(pricecalc_numfield_onkeyup);
	$('table#searchresults a.details').click(function() {
    $('tr#'+$(this).attr('rel')+'-detail').show();
	});
	$('table#searchresults a.request').click(function() {
    $('form#request_'+$(this).attr('rel').substr(5)).submit();
		return false;
	});
});


