// 
var tgmBookingFormClass = Class.create({
	
	className:'tgmBookingFormClass',
	url:'/ajax/dialog',

	initialize:function(mainObject)
	{
		mainObject.log('tgmBookingForm initialized');
		mainObject.observeEvent("onDocumentClick", this.handleClick.bindAsEventListener(this));	
		if ($('bk_bookingDialog') != null) $('bk_bookingDialog').observe('click', this.showBookingDialog.bindAsEventListener(this));
		if ($('productGroup') != null) {
			$('productGroup').observe("change", this.handleChange.bindAsEventListener(this));	//select für MEDIA Eintrag 
			/** patch: hide ProductBoxes (so the user will see all of the product-Boxes, if javascript is disabled... ) **/
			switch ($('productGroup').value) {
				case "pgKlassik": 
					$("komfortBox").hide();
					$("premiumBox").hide();
					break;
				case "pgKomfort": 
					$("klassikBox").hide();
					$("komfortBox").show();
					$("premiumBox").hide();
					break;
				case "pgPremium": 
					$("klassikBox").hide();
					$("komfortBox").hide();
					$("premiumBox").show();
					break;
				default:
					$("komfortBox").hide();
					$("premiumBox").hide();
			}
		}
		
		/** observer: show dialog when link is clicked **/ 
		if($('freeBookingLink') != null) {
			$('freeBookingLink').observe('click', function() {
				window.open("/firmeneintrag");
			});
		}
		
		/** show hidden divs, if checkboxes (or Radios) are checked **/
		if ($('invoiceAdressCheckBox') != null) {
			if ($('invoiceAdressCheckBox').checked == false) {
				$("invoiceAdress").hide();
			}
			else {
				$("invoiceAdress").show();
			}
		}
		if ($('debit') != null) {
			if ($('debit').checked == true) {
				$("debitData").show();
			}
		}
	},


	showBookingDialog:function(e)
	{
		Event.stop(e);
		if (tgmBookingInfoDialog == null) {
			tgmBookingInfoDialog = new tgmBookingInfoDialogClass();
		}
		tgmBookingInfoDialog.show();
		// hier opendialog...
	},
	
	showBookingMailSentDialog:function(e)
	{
		if (tgmBookingMailSentDialog == null) {
			tgmBookingMailSentDialog = new tgmBookingMailSentDialogClass();
		}
		
		tgmBookingMailSentDialog.show();
	},
	
	
	handleChange:function (e)
	{
		// selectBox: get productGroup
		var el = Event.element(e);
		if (el.id == "productGroup") {
			//$("gesamt").update(""); // on Change no radio-button will be checked, so don't show a price...
			$("gesamtHidden").value = "";
			 switch (el.value) {
				case "pgKlassik": 
					$("klassikBox").show();
					$("komfortBox").hide();
					$("premiumBox").hide();
					$("radioKlassik").checked = false;
					$("radioKlassikOnline").checked = false;
					$("radioKomfort").checked = false;
					$("radioKomfortOnline").checked = false;
					$("radioPremium").checked = false;
					$("radioPremiumOnline").checked = false;
					break;
				case "pgKomfort": 
					$("klassikBox").hide();
					$("komfortBox").show();
					$("premiumBox").hide();
					$("radioKlassik").checked = false;
					$("radioKlassikOnline").checked = false;
					$("radioKomfort").checked = false;
					$("radioKomfortOnline").checked = false;
					$("radioPremium").checked = false;
					$("radioPremiumOnline").checked = false;
					break;
				case "pgPremium": 
					$("klassikBox").hide();
					$("komfortBox").hide();
					$("premiumBox").show();
					$("radioKlassik").checked = false;
					$("radioKlassikOnline").checked = false;
					$("radioKomfort").checked = false;
					$("radioKomfortOnline").checked = false;
					$("radioPremium").checked = false;
					$("radioPremiumOnline").checked = false;
					break;
			}
		}	
	},
	
	handleClick: function (e)
	{
		var el = Event.element (e.memo);
		// abweichende Rechnungsadresse
		if (el.id == "invoiceAdressCheckBox") {
			if (el.checked) {
				$("invoiceAdress").show();
			} else {
				$("invoiceAdress").hide();
			}
		}
		// Zahlung per Lastschrift
		if (el.id == "debit" || el.id == "invoice") {
			if (el.checked && el.id == "debit") {
				$("debitData").show();
			} else if (el.checked && el.id == "invoice") {
				$("debitData").hide();
			}
		}
		// Preis in Feld "gesamt" aktualisieren
		/*if (el.name == "product") {
			 switch (el.value) {
				case "klassik": 
					$val = "598,80 €";
					break;
				case "klassikOnline": 
					$val = "298,80 €";
					break;
				case "komfort": 
					$val = "838,80 €";
					break;
				case "komfortOnline": 
					$val = "598,80 €";
					break;
				case "premium": 
					$val = "1198,80 €";
					break;
				case "premiumOnline": 
					$val = "958,80 €";
					break;
			}
				$("gesamt").update($val);
				$("gesamtHidden").value = $val;
		}*/
	}

	
	
});


var	tgmBookingForm;

