/*

	Ferien-Datenbank

*/

var Ferien = new Array();
var FerienZeitraum = new Array();

/*

IDs der Bundesländer um Arrays zu füllen:

1: Baden-Württemberg
2: Bayern
3: Berlin
4: Brandenburg
5: Bremen
6: Hamburg
7: Hessen
8: Mecklenburg-Vorpommern
9: Niedersachsen
10: Nordrhein-Westfalen
11: Rheinland-Pfalz
12: Saarland
13: Sachsen
14: Sachsen-Anhalt
15: Schleswig-Holstein
16: Thüringen

*/


/*

	Ferientage
	Format: DD-MM-YYYY

*/

Ferien[1] = new Array();
Ferien[2] = new Array();
Ferien[3] = new Array('04-02-2008', '02-05-2008', '16-07-2008', '22-05-2009');
Ferien[4] = new Array('04-02-2008', '22-05-2009');
Ferien[5] = new Array('02-02-2009', '02-06-2009');
Ferien[6] = new Array('01-02-2008', '02-05-2008', '30-01-2009');
Ferien[7] = new Array();
Ferien[8] = new Array();
Ferien[9] = new Array('31-01-2008', '01-02-2008', '02-05-2008', '13-05-2008', '22-05-2009', '02-06-2009');
Ferien[10] = new Array('13-05-2008', '02-06-2009');
Ferien[11] = new Array();
Ferien[12] = new Array();
Ferien[13] = new Array('02-05-2008', '22.05.2009');
Ferien[14] = new Array();
Ferien[15] = new Array();
Ferien[16] = new Array();


/*

	Ferienzeiten
	Format: DD-MM-YYYY
	Array('VON', 'BIS')

*/

FerienZeitraum[1] = new Array(
	Array('26-07-2007', '08-09-2007'),
	Array('29-10-2007', '03-11-2007'),
	Array('24-12-2007', '05-01-2008'),
	Array('17-03-2008', '28-03-2008'),
	Array('13-05-2008', '23-05-2008'),
	
	Array('24-07-2008', '06-09-2008'),
	Array('27-10-2008', '30-10-2008'),
	Array('22-12-2008', '10-01-2009'),
	Array('14-04-2009', '17-04-2009'),
	Array('02-06-2009', '13-06-2009')
);

FerienZeitraum[2] = new Array(
	Array('30-07-2007', '10-09-2007'),
	Array('29-10-2007', '03-11-2007'),
	Array('24-12-2007', '05-01-2008'),
	Array('04-02-2008', '09-02-2008'),
	Array('17-03-2008', '29-03-2008'),
	Array('13-05-2008', '24-05-2008'),
	
	Array('04-08-2008', '15-09-2008'),
	Array('03-11-2008', '05-11-2008'),
	Array('22-12-2008', '05-01-2009'),
	Array('23-02-2009', '28-02-2009'),
	Array('06-04-2009', '18-04-2009'),
	Array('02-06-2009', '13-06-2009')
);

FerienZeitraum[3] = new Array(
	Array('12-07-2007', '25-08-2007'),
	Array('15-10-2007', '20-10-2007'),
	Array('24-12-2007', '12-01-2008'),
	Array('17-03-2008', '29-03-2008'),
	Array('13-05-2008', '16-05-2008'),

	Array('17-07-2008', '29-08-2008'),
	Array('20-10-2008', '31-10-2008'),
	Array('22-12-2008', '03-01-2009'),
	Array('02-02-2009', '07-02-2009'),
	Array('06-04-2009', '18-04-2009')
);

FerienZeitraum[4] = new Array(
	Array('12-07-2007', '25-08-2007'),
	Array('15-10-2007', '20-10-2007'),
	Array('24-12-2007', '12-01-2008'),
	Array('19-03-2008', '28-03-2008'),
	Array('13-05-2008', '16-05-2008'),

	Array('17-07-2008', '30-08-2008'),
	Array('20-10-2008', '30-10-2008'),
	Array('22-12-2008', '03-01-2009'),
	Array('02-02-2009', '07-02-2009'),
	Array('08-04-2009', '17-04-2009')
);

FerienZeitraum[5] = new Array(
	Array('19-07-2007', '29-08-2007'),
	Array('22-10-2007', '03-11-2007'),
	Array('24-12-2007', '05-01-2008'),
	Array('31-01-2008', '01-02-2008'),
	Array('10-03-2008', '25-03-2008'),
	Array('13-05-2008', '16-05-2008'),

	Array('10-07-2008', '20-08-2008'),
	Array('13-10-2008', '25-10-2008'),
	Array('22-12-2008', '06-01-2009'),
	Array('30-03-2009', '15-04-2009')
);

FerienZeitraum[6] = new Array(
	Array('12-07-2007', '22-08-2007'),
	Array('15-10-2007', '27-10-2007'),
	Array('21-12-2007', '05-01-2008'),
	Array('10-03-2008', '20-03-2008'),
	Array('13-05-2008', '17-05-2008'),

	Array('17-07-2008', '27-08-2008'),
	Array('13-10-2008', '25-10-2008'),
	Array('22-12-2008', '02-01-2009'),
	Array('09-03-2009', '21-03-2009'),
	Array('18-05-2009', '23-05-2009')
);

FerienZeitraum[7] = new Array(
	Array('09-07-2007', '17-08-2007'),
	Array('08-10-2007', '20-10-2007'),
	Array('23-12-2007', '11-01-2008'),
	Array('25-03-2008', '04-04-2008'),

	Array('23-06-2008', '01-08-2008'),
	Array('06-10-2008', '18-10-2008'),
	Array('22-12-2008', '10-01-2009'),
	Array('06-04-2009', '18-04-2009')
);

FerienZeitraum[8] = new Array(
	Array('16-07-2007', '25-08-2007'),
	Array('22-10-2007', '27-10-2007'),
	Array('24-12-2007', '04-01-2008'),
	Array('04-02-2008', '16-02-2008'),
	Array('17-03-2008', '26-03-2008'),
	Array('09-05-2008', '13-05-2008'),

	Array('21-07-2008', '30-08-2008'),
	Array('27-10-2008', '01-11-2008'),
	Array('22-12-2008', '03-01-2009'),
	Array('09-02-2009', '20-02-2009'),
	Array('06-04-2009', '14-04-2009'),
	Array('02-06-2009', '06-06-2009')
);

FerienZeitraum[9] = new Array(
	Array('19-07-2007', '29-08-2007'),
	Array('22-10-2007', '03-11-2007'),
	Array('24-12-2007', '05-01-2008'),
	Array('10-03-2008', '26-03-2008'),

	Array('10-07-2008', '20-08-2008'),
	Array('13-10-2008', '25-10-2008'),
	Array('22-12-2008', '06-01-2009'),
	Array('02-02-2009', '03-02-2009'),
	Array('30-03-2009', '15-04-2009')
);

FerienZeitraum[10] = new Array(
	Array('21-06-2007', '03-08-2007'),
	Array('24-09-2007', '06-10-2007'),
	Array('20-12-2007', '04-01-2008'),
	Array('17-03-2008', '29-03-2008'),

	Array('26-06-2008', '08-08-2008'),
	Array('29-09-2008', '11-10-2008'),
	Array('22-12-2008', '06-01-2009'),
	Array('06-04-2009', '18-04-2009')
);

FerienZeitraum[11] = new Array(
	Array('09-07-2007', '17-08-2007'),
	Array('08-10-2007', '19-10-2007'),
	Array('24-12-2007', '08-01-2008'),
	Array('12-03-2008', '28-03-2008'),

	Array('23-06-2008', '01-08-2008'),
	Array('06-10-2008', '17-10-2008'),
	Array('22-12-2008', '07-01-2009'),
	Array('01-04-2009', '17-04-2009')
);

FerienZeitraum[12] = new Array(
	Array('09-07-2007', '18-08-2007'),
	Array('08-10-2007', '20-10-2007'),
	Array('19-12-2007', '05-01-2008'),
	Array('31-01-2008', '06-02-2008'),
	Array('17-03-2008', '29-03-2008'),

	Array('30-06-2008', '09-08-2008'),
	Array('04-10-2008', '18-10-2008'),
	Array('19-12-2008', '03-01-2009'),
	Array('19-02-2009', '25-02-2009'),
	Array('06-04-2009', '18-04-2009')
);

FerienZeitraum[13] = new Array(
	Array('23-07-2007', '31-08-2007'),
	Array('08-10-2007', '19-10-2007'),
	Array('22-12-2007', '02-01-2008'),
	Array('04-02-2008', '15-02-2008'),
	Array('20-03-2008', '28-03-2008'),
	Array('10-05-2008', '13-05-2008'),

	Array('14-07-2008', '22-08-2008'),
	Array('20-10-2008', '30-10-2008'),
	Array('22-12-2008', '02-01-2009'),
	Array('09-02-2009', '21-02-2009'),
	Array('09-04-2009', '18-04-2009')
);

FerienZeitraum[14] = new Array(
	Array('19-07-2007', '29-08-2007'),
	Array('15-10-2007', '20-10-2007'),
	Array('21-12-2007', '04-01-2008'),
	Array('02-02-2008', '09-02-2008'),
	Array('17-03-2008', '20-03-2008'),
	Array('13-05-2008', '23-05-2008'),

	Array('10-07-2008', '22-08-2008'),
	Array('13-10-2008', '17-10-2008'),
	Array('22-12-2008', '05-01-2009'),
	Array('02-02-2009', '10-02-2009'),
	Array('06-04-2009', '18-04-2009'),
	Array('22-05-2009', '29-05-2009')
);

FerienZeitraum[15] = new Array(
	Array('16-07-2007', '25-08-2007'),
	Array('15-10-2007', '27-10-2007'),
	Array('24-12-2007', '08-01-2008'),
	Array('20-03-2008', '05-04-2008'),

	Array('21-07-2008', '30-08-2008'),
	Array('13-10-2008', '25-10-2008'),
	Array('22-12-2008', '07-01-2009'),
	Array('06-04-2009', '21-04-2009')
);

FerienZeitraum[16] = new Array(
	Array('19-07-2007', '29-08-2007'),
	Array('15-10-2007', '26-10-2007'),
	Array('22-12-2007', '05-01-2008'),
	Array('04-02-2008', '09-02-2008'),
	Array('22-03-2008', '28-03-2008'),
	Array('13-05-2008', '16-05-2008'),

	Array('10-07-2008', '20-08-2008'),
	Array('13-10-2008', '24-10-2008'),
	Array('20-12-2008', '03-01-2009'),
	Array('02-02-2009', '07-02-2009'),
	Array('06-04-2009', '17-04-2009')
);


/*

	Ferienzeiträume umformatieren in einzelne Tage und dem Ferien-Array anhängen

*/

function left_zero( str, padToLength ) {
	var result	= '';
	for ( var i = 0; i < (padToLength - String(str).length); i++ ) result += '0';
	return	result + str;
}

for(i=1; i<=FerienZeitraum.length; i++) {
	var Zeitraum = FerienZeitraum[i];
	var Tag = 24 * 60 * 60 * 1000;
	if(Zeitraum) {
		for(j=0; j<Zeitraum.length; j++) {
			var VonDatum = Zeitraum[j][0];
			var VonArray = VonDatum.match(/^(\d{1,2})(?:\/|\.|\-)(\d{1,2})(?:\/|\.|\-)(\d{4})$/);
			var v_d = VonArray[1];
			var v_m = VonArray[2] - 1;
			var v_y = VonArray[3];
			var VonDate =new Date(v_y, v_m, v_d);
			var Von = VonDate.getTime();

			var BisDatum = Zeitraum[j][1];
			var BisArray = BisDatum.match(/^(\d{1,2})(?:\/|\.|\-)(\d{1,2})(?:\/|\.|\-)(\d{4})$/);
			var b_d = BisArray[1];
			var b_m = BisArray[2] - 1;
			var b_y = BisArray[3];
			var BisDate =new Date(b_y, b_m, b_d);
			var Bis = BisDate.getTime();

			for(k=Von; k<=Bis; k=k+Tag) {
				var Datum = new Date(k);
				var d = Datum.getDate();
				var m = Datum.getMonth() + 1;
				var y = Datum.getFullYear();
				var neuesDatum = left_zero(d, 2) + '-' + left_zero(m, 2) + '-' + left_zero(y, 4);
				Ferien[i].push(neuesDatum);
			}
		}
	}
}
//alert(Ferien);