document.observe('dom:loaded', function() {
	
	if ($('date') != undefined)
	{
		// Kalender einbinden
		Calendar.setup({
			dateField: 'date',
			triggerElement: 'openCalendar',
			dateFormat: '%d.%m.%Y'
		});
		
		// Kalender für Deutsche Sprache konfigurieren
		Calendar.MONTH_NAMES = new Array('Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember');
		Calendar.DAY_NAMES = new Array('Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag');
		Calendar.SHORT_DAY_NAMES = new Array('S', 'M', 'D', 'M', 'D', 'F', 'S', 'S');
		Calendar.SHORT_MONTH_NAMES = new Array('Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez');
	}
	
	if ($('type1') != undefined && $('type2') != undefined)
	{
		// Selectboxen ändern bei nue laden der seite
		updateTypes($('type1'), $('type2'), 2);
		updateTypes($('type2'), $('type1'), 1);
		
		$('type1').observe('change', function() {
			updateTypes($('type1'), $('type2'), 2);
		});
		
		$('type2').observe('change', function() {
			updateTypes($('type2'), $('type1'), 1);
		});
	}
	
	function updateTypes(select_field, update_field, update_all_type)
	{
		var width = $(update_field).getWidth();
		var type_id = $F(select_field);
		var base_url = document.URL.split('?')[0];
		
		var url = base_url+'?tx_easytourist_pi1[ajax]=getRelatedTypes';
		
		if (type_id == '')
		{
			type_id = 'all';
		}
		
		new Ajax.Request(url, {
			method: 'post',
			parameters: {
				type_id: type_id,
				related_type: update_all_type
			},
			onSuccess: function(r) {
				var response = r.responseText.evalJSON();
				
				if (response != false)
				{
					var options = '<option value="">Alle</option>';
					
					response.each(function(item) {
						var selected = '';
						
						if ($F(update_field) == item.id)
						{
							selected = 'selected="selected"';
						}
						
						options += '<option value="' + item.id + '" ' + selected + '>' + item.title + '</option>';
					});
					
					$(update_field).update(options);
					$(update_field).setStyle({width: width});
				}
				else
				{
					var options = '<option value="">Alle</option>';
					
					$(update_field).update(options);
					$(update_field).setStyle({width: width});
				}
			}
		});
	}
});