var df0e, AnTo, AnMo, AnJo, AbTo, AbMo, AbJo, i, z, vl, num;
var mnts =	["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"];
var DiM =	[31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
var SfCC =	[String.fromCharCode(160,160,160,160,160,160,160), String.fromCharCode(160,160,160), String.fromCharCode(160,160,160,160,160,160,160,160,160)];	

function opn_frm() {
	var win =	window.open('', 'soratwin_frm', 'menubar=yes,width=566,height=400,left=' + Math.max(parseInt((screen.availWidth - 566) / 3, 10), 0) + ',top=' + Math.max(parseInt((screen.availHeight - 400) / 4, 10), 0) + ',scrollbars=yes,status=yes,resizable=yes');
	win.focus();
}
function fill(fld, strt, end, cmp, m) {
	z =	0;
	fld.length =	0;
	for (i = strt; i <= end; i++) {
		vl =	(m == 1) ?	mnts[i] :	i;
		num =	(m == 1) ?	i + 1 :	i;
		fld[z] =	new Option(SfCC[m] + vl, num);
		z++;
	}
	fld.length =	z;
	for (i = 0; i < z; i++) {
		if (parseInt(fld[i].value, 10) == cmp) {
			fld[i].selected = true;
		}
	}
}
function arrange() {
	var StM =	0;
	var StD =	1;
	var year =	parseInt(AnJo[AnJo.selectedIndex].value);
	var month =	parseInt(AnMo[AnMo.selectedIndex].value);
	var day =	parseInt(AnTo[AnTo.selectedIndex].value);
	if (year == Dte.getFullYear()) {
		StM =	Dte.getMonth();
		if (Math.max(month - 1, StM) == Dte.getMonth()) {
			StD =	Dte.getDate();
		}
	}
	var cmp_mon =	Math.max(month - 1, StM);
	var NuD =	DiM[cmp_mon];
	if ((((year % 4 === 0) && (year % 100 !== 0)) || (year % 400 === 0)) && (cmp_mon == 1)) {
		NuD =	29;
	}
	if ((year == Dte.getFullYear() + 2) && (cmp_mon == 11)) {
		NuD =	30;
		day =	Math.min(day, NuD);
	}
	fill(AnJo, Dte.getFullYear(), Dte.getFullYear() + 2, year, 0);
	fill(AnMo, StM, 11, month, 1);
	fill(AnTo, StD, NuD, day, 2);
	var Anreise =	new Date(AnJo[AnJo.selectedIndex].value, AnMo[AnMo.selectedIndex].value - 1, AnTo[AnTo.selectedIndex].value);
	var StY =	Anreise.getFullYear();
	StM =	0;
	StD =	1;
	year =	parseInt(AbJo[AbJo.selectedIndex].value);
	month =	parseInt(AbMo[AbMo.selectedIndex].value);
	day =	parseInt(AbTo[AbTo.selectedIndex].value);
	if ((Anreise.getDate() == DiM[Anreise.getMonth()]) && (Anreise.getMonth() == 11)) {
		StY++;
	}
	if (Math.max(year, StY) == Anreise.getFullYear()) {
		if (Anreise.getDate() == DiM[Anreise.getMonth()]) {
			StM =	Anreise.getMonth() + 1;
			StD =	1;
		} else {
			StM =	Anreise.getMonth();
		}
		if (Math.max(month - 1, StM) == Anreise.getMonth()) {
			StD =	Anreise.getDate() + 1;
		}
	}
	cmp_mon =	Math.max(month - 1, StM);
	NuD =	DiM[cmp_mon];
	if ((((year % 4 === 0) && (year % 100 !== 0)) || (year % 400 === 0)) && (cmp_mon == 1)) {
		NuD =	29;
	}
	fill(AbJo, StY, Dte.getFullYear() + 2, year, 0);
	fill(AbMo, StM, 11, month, 1);
	fill(AbTo, StD, NuD, day, 2);
}
function pg_start2() {
	var df0 =	document.forms[0];
	df0e =	df0.elements;
	df0.target =	"soratwin_frm";
	df0e["aktion"].onclick =	opn_frm;
	for (i = 0; i < df0.length; i++) {
		if (df0e[i].name.indexOf("_") != -1) {
			df0e[i].onchange =	arrange;
		}
	}
	AnTo =	df0e["anreise_tag"].options;
	AnMo =	df0e["anreise_monat"].options;
	AnJo =	df0e["anreise_jahr"].options;
	AbTo =	df0e["abreise_tag"].options;
	AbMo =	df0e["abreise_monat"].options;
	AbJo =	df0e["abreise_jahr"].options;
	arrange();
	pg_start();
}
window.onload = pg_start2;
