//--- Wenn Anzahl von Personen geändert wurde, soll manchmal auch die Anzahl einiger Leistungen geändert werden
//--- Dies kann entweder fest über die Anforderung (z.B. "F") passieren oder dynmaisch durch den Kunden im PHP geählt -> Leistungsabhängig
function cSetAnzahl(KinderActive,BabyActive)
{
	this.__constuct = function(KinderActive,BabyActive)
	{
		this.objEltern 		= document.getElementById('ANZAHL_ERWACHSENE');	//--- Selectbox Eltern
		this.objKinder 		= document.getElementById('ANZAHL_KINDER');		//--- Selectbox Kinder
		this.objBaby 		= document.getElementById('ANZAHL_BABY');		//--- Selectbox Babys
		this.KinderActive   = (KinderActive) ? KinderActive : false;		//--- Sollen Kinder mitgezählt werden
		this.BabyActive   	= (BabyActive) ? BabyActive : false;			//--- Sollen Kinder mitgezählt werden
		this.arAnforderung 	= new Array();									//--- Anforderung bei der Anzahl berücksichtig werden
		this.arLeistung 	= new Array();									//--- Leistungen bei der Anzahl berücksichtig werden
		this.anzPersonen = 0;

		//--- Onchange Event hinzufügen
		addEvent(this.objEltern,"change",this.setAnzahl.scope(this));
		if(this.KinderActive && this.objKinder)
		{
			addEvent(this.objKinder,"change",this.setAnzahl.scope(this));
		}
		if(this.BabyActive && this.objBaby)
		{
			addEvent(this.objBaby,"change",this.setAnzahl.scope(this));
		}
	}

	//--- Anzahl neu berechnen und alle Anforderungen und Leistungen neu setzen
	this.setAnzahl = function()
	{
		this._calcAnzahl();
		this._setAnforderung();
		this._setLeistung();
	}

	//--- Anzahl Personen berechnen
	this._calcAnzahl = function()
	{										
		this.anzPersonen = parseFloat(this.objEltern.value);
		if(this.KinderActive && this.objKinder && this.objKinder.selectedIndex > 0 )
		{
			this.anzPersonen += parseFloat(this.objKinder.value);
		}
		if(this.BabyActive && this.BabyActive && this.objBaby.selectedIndex > 0 )
		{
			this.anzPersonen += parseFloat(this.objBaby.value);
		}
	}

	//--- Anforderung hizufügen
	this.addAnfoderung = function(anfoderung)
	{					
		this.arAnforderung.push(anfoderung);					
	}

	//--- Leistung hizufügen
	this.addLeistung = function(leistung,status)
	{					
		if(status == "K")
		{
			this.arLeistung.push(leistung);
		}
	}
	
	//--- Anzahl der angegebenen Anforderungen setzen
	this._setAnforderung = function()
	{					
		for(var wert in this.arAnforderung)
		{
			objAnforderung = document.getElementsByName("ANFORDERUNG_" + this.arAnforderung[wert]);
			for( i = 0; i < objAnforderung.length; i++)	
			{
				document.getElementsByName("LEIST_" + objAnforderung[i].value + "_ANZAHL")[0].selectedIndex = this.anzPersonen - 1;
			}				
		}
	}
	
	//--- Anzahl der angegebenen Leistung setzen
	this._setLeistung = function()
	{
		for(var wert in this.arLeistung)
		{						
			document.getElementById("LEIST_" + this.arLeistung[wert] + "_ANZAHL").selectedIndex = this.anzPersonen - 1;
		}				
	}

	//--- Anzahl Personen zurückgeben
	this.getAnzahl = function()
	{
		return this.anzPersonen;
	}
	
	this.__constuct(KinderActive,BabyActive);
}
