$(document).ready(function() {
	
	$.fn.extend({
		addCalculationTrigger: function() {
			var bookingCalculator = $("#bookingcalculation-box").find("#bookingcalculation-content").bookingCalculator();
		
			$(this).each(function() {
				var tagName = this.tagName.toLowerCase();
				
				var triggerType = 'click';
				// triggerType in Abhaengigkeit zum tagName setzen
				if (tagName == 'select') {
					triggerType = 'change';
				} else if (tagName == 'input') {
					if ($(this).attr("type") == 'checkbox' || $(this).attr("type") == 'radio') {
						triggerType = 'change';
					}
				}
				// trigger an das Element binden
				$(this).bind(triggerType, function() {
					bookingCalculator.calculate($("form.ajaxCalculation:first"));
				});
				
				return this;
			});
		}
	});
	
	// Calculation Trigger
	$("#bookingcalculation-box").map(function() {
		$.include('jquery/jquery.bookingcalculator.js', function() {
			$("#bookingcalculation-box").autoScroll();
			// trigger fuer den Calculation-Container setzen
			$(".do-calculation").addCalculationTrigger();
			// Tooltip anwenden
			try {$("#bookingcalculation-box .infoi2").tooltip({
				delay: 0, track: false, showURL: false, fixPNG: true});
			} catch (e) {}
		});
	});

});