
function insert_gruppen_rows(anz) {
	var html = '';
	for(var i = 3; i < anz; i++) {
		html += '<div class="zv_select"><select name="anz_zimmer['+i+']" class="select_extrashort" id="buchen_select_anzzimmer'+i+'" onchange="infos();"><option value="0">--</option>';
		for(var j = 1; j <= 50; j++) {
			html += '<option value="'+j+'">'+j+'</option>';
		}
		html += '</select> &nbsp;&nbsp;X&nbsp;&nbsp; <select name="zimmer_id['+i+']" class="select_long" id="buchen_select_zimmer'+i+'" onchange="infos();"></select><div id="buchen_div_zimmer'+i+'"> </div></div>';
	}
	$('buchen_div_zvgruppen').update(html);
}

function select_anz_personen(anz) {
	$('buchen_select_personenzahl').selectedIndex = anz;
	update_jshelper('anz_personen');
}

function chg_termine_von() {
	var unterkunft_id = $('buchen_select_unterkunft').value;
	$('buchen_select_termin_hin').update('<option value="0">Bitte wählen</option>');
	$('buchen_select_termin_zurueck').update('<option value="0">----------</option>');
	for (var i = 0; i < termine_von[unterkunft_id].length; i++) {
		$('buchen_select_termin_hin').insert('<option value="'+termine_von[unterkunft_id][i][0]+'">'+termine_von[unterkunft_id][i][1]+'</option>');
	}		
}

function chg_termine_bis() {
	var index = $('buchen_select_termin_hin').value;
	var unterkunft_id = $('buchen_select_unterkunft').value;
	$('buchen_select_termin_zurueck').update();
	for (var i = 0; i < termine_bis[unterkunft_id][index].length; i++) {
		$('buchen_select_termin_zurueck').insert('<option value="'+termine_bis[unterkunft_id][index][i][0]+'">'+termine_bis[unterkunft_id][index][i][1]+'</option>');
	}
	$('buchen_select_termin_zurueck').selectedIndex = 0;
}

function chg_min_preis() {
	var termin_id_von = $('buchen_select_termin_hin').value;
	var termin_id_bis = $('buchen_select_termin_zurueck').value;
	var unterkunft_id = $('buchen_select_unterkunft').value;
	if(unterkunft_id != 0 && termin_id_von != 0 && termin_id_bis != 0) {
		$('buchen_div_minpreis').setStyle({ visibility: 'visible' });
		$('buchen_minpreis').update(preise_unterkunft[unterkunft_id][termin_id_von][termin_id_bis]);
	} else {
		$('buchen_div_minpreis').setStyle({ visibility: 'hidden' });
	}
}

function update_zimmerverteilung_form() {

	var termin_id_von = $('buchen_select_termin_hin').value;
	var termin_id_bis = $('buchen_select_termin_zurueck').value;
	var unterkunft_id = $('buchen_select_unterkunft').value;
	var anz_personen = $('buchen_select_personenzahl').value;
	if(anz_personen > 9) {
		anz_personen = $('buchen_text_personenzahl').value;
		$('buchen_span_anzpersonen').setStyle({ visibility: 'visible' });
		$('buchen_div_gruppenhinweis').show();
	} else {
		$('buchen_span_anzpersonen').setStyle({ visibility: 'hidden' });
		$('buchen_div_gruppenhinweis').hide();
	}
	
	if(unterkunft_id != 0 && termin_id_von != 0 && termin_id_bis != 0 && anz_personen != 0) {
		
		el = $('buchen_div_zvgruppen').update();
		
		insert_gruppen_rows(zimmer_zimmerart[unterkunft_id].length);
		
		for (var i = 0; i < zimmer_zimmerart[unterkunft_id].length; i++) {
			$('buchen_select_zimmer'+i).update('<option value="0">Bitte wählen</option>');
			for (var h = 0; h < zimmer_zimmerart[unterkunft_id].length; h++) {
				$('buchen_select_zimmer'+i).insert('<option value="'+zimmer_zimmerart[unterkunft_id][h][0]+'">'+zimmer_zimmerart[unterkunft_id][h][1]+'</option>');
			}
			$('buchen_select_zimmer'+i).selectedIndex = 0;
		}	
		
		$('buchen_span_zimmerverteilung').update('Verteile <strong>'+anz_personen+'</strong> Person auf die Zimmer');
		
		if(zimmerverteilung[unterkunft_id][anz_personen] != null) {
			$('buchen_select_anzzimmer0').value = zimmerverteilung[unterkunft_id][anz_personen][0];
			$('buchen_select_zimmer0').value = zimmerverteilung[unterkunft_id][anz_personen][1];
			$('buchen_select_anzzimmer1').value = zimmerverteilung[unterkunft_id][anz_personen][2];
			$('buchen_select_zimmer1').value = zimmerverteilung[unterkunft_id][anz_personen][3];
		}
		
		$('buchen_div_zv').show();
		// ab 6 Personen ist ein drittes Zimmer belegbar
		if(anz_personen >= 6) {
			$('buchen_div_zvextra').show();
			$('buchen_select_anzzimmer2').value = 0;
			$('buchen_select_zimmer2').value = 0;
		} else {
			$('buchen_div_zvextra').hide();
			$('buchen_select_anzzimmer2').value = 0;
			$('buchen_select_zimmer2').value = 0;
		}
		// ab 10 Personen sind noch mehr Zimmer belegbar
		if(anz_personen >= 10) {
			$('buchen_div_zvgruppen').show();
		} else {
			$('buchen_div_zvgruppen').hide();
		}
		
		infos();
		
	} else {
		$('buchen_div_zv').hide();
		$('buchen_div_zvextra').hide();
		$('buchen_div_zvgruppen').hide();
	}
}


function infos() {
	
	var termin_id_von = $('buchen_select_termin_hin').value;
	var termin_id_bis = $('buchen_select_termin_zurueck').value;
	var unterkunft_id = $('buchen_select_unterkunft').value;
	var anz_personen = $('buchen_select_personenzahl').value;
	if(anz_personen > 9) {
		anz_personen = $('buchen_text_personenzahl').value;
	}
	
	var personen = anz_personen;
	var out = '';
	if(zimmer_zimmerart[unterkunft_id] == null) {
		temp = 3;
	} else {
		temp = zimmer_zimmerart[unterkunft_id].length;
	}
	for(var i = 0; i < temp; i++) {
		if($('buchen_select_anzzimmer'+i).value != 0 && $('buchen_select_zimmer'+i).value != 0) {
			personen -= $('buchen_select_anzzimmer'+i).value * personen_zimmer[unterkunft_id][$('buchen_select_zimmer'+i).value];
		}
	}
	if(personen < 0) out = '<span class="fehler"><strong>Fehler!</strong> Du kannst nur '+anz_personen+' Personen verteilen.</span>';
	else out = 'Noch <strong>'+personen+'</strong> Personen zu verteilen:';
	$('buchen_span_zimmerverteilung').update(out);

	for(var i = 0; i < temp; i++) {
		if($('buchen_select_zimmer'+i) != null) {
			if($('buchen_select_zimmer'+i).value != 0) {
				out = personen_zimmer[unterkunft_id][$('buchen_select_zimmer'+i).value] + ' Personen / ' + preise_zimmer[$('buchen_select_zimmer'+i).value][termin_id_von][termin_id_bis] + ' pro Person';
			} else {
				out = '&nbsp;';
			}
			$('buchen_div_zimmer'+i).update(out);
		}
	}
}

function update_jshelper(geaendert) {

	var url;
	
	var anz_personen = $('buchen_select_personenzahl').value;
	if(anz_personen > 9) {
		if($('buchen_text_personenzahl').value == '') {
			$('buchen_text_personenzahl').value = 10;
		}
		anz_personen = $('buchen_text_personenzahl').value;
	}
	
	url = '/reise-buchen-jshelper.php?';
	url += 'reise_id=' + $('buchen_hidden_reiseid').value;
	url += '&unterkunft_id=' + $('buchen_select_unterkunft').value;
	url += '&termin_id_von=' + $('buchen_select_termin_hin').value;
	url += '&termin_id_bis=' + $('buchen_select_termin_zurueck').value;
	url += '&anz_personen=' + anz_personen;
	url += '&geaendert=' + geaendert;

	var jshelper_old = $('buchen_jshelper');
	var jshelper_new = new Element('script', {
		src: url,
		type: 'text/javascript',
		id: 'buchen_jshelper'
	});
	
	if(jshelper_old) {
		jshelper_old.replace(jshelper_new);
	} else {
		$$('head')[0].insert(jshelper_new);
	}

}

var anz_personen = 1;

function select_all_anreise(index) {
	$('tr_teilnehmer_sofort').select('select.slr_anreise').each(function(item) {
		item.selectedIndex = index;
	});
}

function select_all_zusatzverpflegung(index) {
	$('tr_teilnehmer_sofort').select('select.slr_zusatzverpflegung').each(function(item) {
		item.selectedIndex = index;
	});
}

function select_all_zusatzleistung(key, checked) {
	$('tr_teilnehmer_sofort').select('input.slr_zusatzleistung'+key).each(function(item) {
		item.checked = checked;
	});
}

function select_teilnehmer_email() {
	if($("buchen_radio_teilnehmer1").checked == true) {
		$("tr_teilnehmer_email").show();
		$("tr_teilnehmer_sofort").hide();
	} else {
		if($("buchen_radio_teilnehmer2").checked == true) {
			$("tr_teilnehmer_email").hide();
			$("tr_teilnehmer_sofort").show();
		} else {
			$("tr_teilnehmer_email").hide();
			$("tr_teilnehmer_sofort").hide();
		}
	}
}
