var myFamily = new Object();

	myFamily.members=new Array();  // tablica członków rodziny

// definicja typu przechowującego dane o osobie
	myFamily.person = function (_personType, _personName, _weight, _age) {

	// definicja funkcji obliczającej wartość dawki leku - dane do modyfikacji
		this.getDose = function (_personType, _weight, _age) {
			this.age = _age;
			if (_personType=='woman') return _weight<70?3:4;
			else if (_personType=='man') return _weight<90?4:5;
			else if (_personType=='girl'||_personType=='boy') {
				if (_age<1) return 0.5;
				else if (_age<3) return 1;
				else if (_age<12) return 2;
				else return _personType=='girl'?this.getDose('woman', _weight, _age):this.getDose('man', _weight, _age);
			} //if else if
		} //f. getDose
	

		this.personType = _personType;
		this.personName = _personName;
		this.weight = _weight;
		this.age = _age;   //użyj domyslnie 50, jeśli nie ma wieku
		this.dose=this.getDose(this.personType, this.weight, this.age);
	} //f. person



// definicja funkcji dodającej nową osobę do rodziny
	myFamily.add = function (_personType, fieldId) {
		if (weightField=document.getElementById(fieldId+'weight')) 
			if (!(weight=parseInt(weightField.value))) {
				alert("Proszę podać wagę!");
				weightField.focus();
				return;
			}

		if (ageField=document.getElementById(fieldId+'age')) {
			if (isNaN(age=parseInt(ageField.value))) {
				alert("Proszę podać wiek!");
				ageField.focus();
				return;
			};
		}
		
		b=document.getElementById(fieldId);
		strongs=b.getElementsByTagName('strong');
		for (i=0; i<strongs.length; i++)
			if (strongs[i].className='name') { 
				personName=strongs[i].innerHTML;
				break;
			};
		//alert('Weight='+weight+"\n\nAge:"+age);
		
		this.members[this.members.length]=new this.person(_personType, personName, weight, age);

		this.print();		
		
	} //f. add


// definicja funkcji usuwającej osobę z rodziny
	myFamily.remove = function (indx) {
		div=document.getElementById('familydiv');
		
		p=document.getElementById('member'+indx);
		if (div.removeChild(p) &&	this.members.splice(indx,1)) null;	//alert("Member "+indx+" removed!");
		else alert("Błąd?!");
	
		this.print();
	} //f. remove


//definicja funkcji drukującej skład rodziny na ekranie
	myFamily.print = function () {
		var div=document.getElementById('familydiv');
		var newdiv=document.createElement('div');
		var totalBottles=0;
		while (div.firstChild) {
		  div.removeChild(div.firstChild);
		}		
		if (this.members.length) div.innerHTML='<h2>Twoja rodzina:</h2>';
		for (memberIndex=0; memberIndex<this.members.length; memberIndex++) {
			p=document.createElement('div');
			p.className='member';
			p.id='member'+memberIndex;
			m=this.members[memberIndex];
			p.innerHTML="<p><strong>"+m.personName+"</strong>, "+m.age+" lat, "+m.weight+"kg";
			p.innerHTML+='<a href="javascript:myFamily.remove('+memberIndex+');" class="removeperson">[x] usuń z listy</a>';
			p.innerHTML+='<span class="memberpackage">'+m.dose+' kaps. x 30 dni = '+(bottles=Math.ceil(m.dose*30/90))+'op. <span class="bm">BioMarine570<sup>&reg;</sup></span></span></p>';
			p.innerHTML+='<div class="spacer">&nbsp;</div>';
			div.appendChild(p);
			totalBottles+=bottles;
		};
		if (totalBottles) {
			div.innerHTML+='<div class="totalbottles">Twój pakiet rodzinny na cały miesiąc to '+totalBottles+' op. <span class="bm">BioMarine570<sup>&reg;</sup></span></div>';
			div.innerHTML+='<div class="totalbottles"><a href="automat-zamow.php?item=BM570&x='+totalBottles+'">Zamów już teraz, pakiet dla całej rodziny!</a></div>';
		}
	} //f. print



