// Vullen arrays
var maZLW = new Array(37,12,12,12,13,15,20);
var maLW = new Array(45,15,15,15,17,20,25);
var maNW = new Array(55,20,20,20,22,25,30);
var maLM = new Array(63,25,25,25,26,30,35);
var maNM = new Array(70,30,30,30,31,35,45);
var maZM = new Array(80,35,35,35,36,40,55);

function SnedeZwaarteChange(SnedeNr) 
{
	if (SnedeNr > 0)
	{
		// Zet de juiste waarde in het opbrengstveld, afhankelijk van de SnedeZwaarteCode
		SetOpbrengst(SnedeNr);
		
		// Zet de juiste waarde in de datumvelden, afhankelijk van de SnedeZwaarteCode
		SetOogstData(SnedeNr);
	}
	for (var i=1;i<6;i++)
		{
			var oElement = getElementById('DropDownListGebruik' + i);
							
			var SNNR=i + 1;
			var oNextZwaarte = getElementById('DropDownListGebruik' + SNNR);
			var oNextBeweiding = getElementById('DropDownListBeweidingssysteem' + SNNR);
			var oNextOpbrengst = getElementById('TextBoxOpbrengst' + SNNR);
			var oNextGeoogst = getElementById('CheckBoxSnedeGeoogst' + SNNR);
			var oNextOogstDatum = getElementById('TextBoxOogstDatum' + SNNR);
			// var oNextImgOogstDatum = getElementById('imgSnede' + SNNR + 'OogstDatum');
			var oNextInzaai = getElementById('CheckBoxInzaaiHerinzaai' + SNNR);
			// if this combo is NVT, disable all next combo's
			if (oElement.value=="NVT")
			{
				oNextZwaarte.value="NVT";
				oNextZwaarte.disabled=true;
				oNextBeweiding.disabled=true;
				oNextOpbrengst.disabled=true;
				if (SNNR < 7)
				{
					oNextGeoogst.disabled=true;
					oNextGeoogst.checked=false;
					oNextOogstDatum.value = 'nvt';
					//oNextOogstDatum.innerHTML='nvt';
					//oNextImgOogstDatum.width=0;
					//oNextImgOogstDatum.height=0;
					oNextInzaai.disabled=true;
					oNextInzaai.checked=false;
				}
			}
			else
			{
				oNextZwaarte.disabled=false;
				oNextBeweiding.disabled=false;
				oNextOpbrengst.disabled=false;
				if (SNNR < 7)
				{
					//oNextImgOogstDatum.width=16;
					//oNextImgOogstDatum.height=16;
					oNextGeoogst.disabled=false;
					oNextInzaai.disabled=false;
				}
			}
		}
		
		for (var i=1;i<7;i++)
		{
			var oCombo = getElementById('DropDownListBeweidingssysteem' + i);
			var oOpbrengst = getElementById('TextBoxOpbrengst' + i);
			var oElement = getElementById('DropDownListGebruik' + i);  
			oCombo.disabled= oElement.value=="LM_" || oElement.value=="NM_" || oElement.value=="ZM_" || oElement.value=="NVT";
			oOpbrengst.disabled= oElement.value=="NVT";
			if (oElement.value=="NVT")
			{
				oOpbrengst.value=0;
			}					
			if (i < 7)
			{
				var oGeoogst = getElementById('CheckBoxSnedeGeoogst' + i);
				var oInzaai = getElementById('CheckBoxInzaaiHerinzaai' + i);
				var oOogstDatum = getElementById('TextBoxOogstDatum' + i);
				//var oImgOogstDatum = getElementById('imgSnede' + i + 'OogstDatum');
				oGeoogst.disabled= oElement.value=="NVT";
				oInzaai.disabled= oElement.value=="NVT";
				if (oElement.value=="NVT")
				{
					oOogstDatum.value = 'nvt';
					//oOogstDatum.innerHTML='nvt';
					//oImgOogstDatum.width=0;
					//oImgOogstDatum.height=0;
					oGeoogst.checked=false;
					oInzaai.checked=false;
				}
			}
		}
}

function SetOpbrengst(SnedeNr,sElement,sOpbrengst)
{		
	var oElement = getElementById('DropDownListGebruik'+SnedeNr);
	var oOpbrengst = getElementById('TextBoxOpbrengst'+SnedeNr);
	var lOpbrengst = 0;
	
	switch(oElement.value.toUpperCase())
	{
	case 'ZLW':
		lOpbrengst = 1000;
		break;
	case 'LW_':
		lOpbrengst = 1250;
		break;
	case 'NW_':
		lOpbrengst = 1750;
		break;
	case 'LM_':
		lOpbrengst = 2250;
		break;
	case 'NM_':
		lOpbrengst = 2750;
		break;
	case 'ZM_':
		lOpbrengst = 3500;
		break;
	case 'NVT':
		lOpbrengst = 0;
		break;
	}
	oOpbrengst.value = lOpbrengst;
}

function SetOogstData(SnedeNr)
{	
	var vandaag = new Date();
	var jaar = vandaag.getFullYear();
	var maand = vandaag.getMonth();
	if (maand > 10) jaar++;

	var dStartDatum = new Date('03-01-'+jaar)
	var datum;
	var datumnew;

	for (var SnedeCounter=SnedeNr;SnedeCounter<7;SnedeCounter++)
	{			
		var oElement = getElementById('DropDownListGebruik'+SnedeCounter);
		var oOogstDatumNew = getElementById('TextBoxOogstDatum'+SnedeCounter);
		var lPeriode = 0;
	
		switch(oElement.value.toUpperCase())
		{
		case 'ZLW':
			lPeriode = maZLW[SnedeCounter-1];
			break;
		case 'LW_':
			lPeriode = maLW[SnedeCounter-1];
			break;
		case 'NW_':
			lPeriode = maNW[SnedeCounter-1];
			break;
		case 'LM_':
			lPeriode = maLM[SnedeCounter-1];
			break;
		case 'NM_':
			lPeriode = maNM[SnedeCounter-1];
			break;
		case 'ZM_':
			lPeriode = maZM[SnedeCounter-1];
			break;
		}
		
		if (oElement.value.toUpperCase() != 'NVT')
		{
			if (SnedeCounter==1)
				datum = dStartDatum;
			else
				{
				var oOogstDatumOld = getElementById('TextBoxOogstDatum'+(SnedeCounter-1));
				var datum = oOogstDatumOld.value;
				var a = datum.split('-');
				datum = new Date(a[2],(a[1]-1),a[0]);
				}
	
			datumnew = DateAdd(lPeriode,datum);
			oOogstDatumNew.value = datumnew+'-'+jaar;
		}
		else
			oOogstDatumNew.value = 'nvt';
	}
}

function DateAdd(periode,datum)
{
	// deze functie retouneert de maand en de dag (DD-MM)
	var newdatum;
	var newdag;
	var bEersteLoop = 'T';
	var maanddagen = new Array(31,28,31,30,31,30,31,31,30,31,30,31);

	var maand = datum.getMonth();
	var dag = datum.getDate();
	
	while(periode>=0)
	{	
		if (bEersteLoop == 'T')
			if (dag+periode<=maanddagen[maand])
				{
				newdag=dag+periode;
				break;
				}
			else
				{
				periode-=(maanddagen[maand]-dag);
				maand++;
				}
		else
			if (periode<=maanddagen[maand])
				{
				newdag=periode;
				break;
				}
			else
				{
				periode-=maanddagen[maand];
				maand++;
				}
			
		bEersteLoop = 'F';
	}
	
	// maand++ , omdat javascript begint bij 0
	maand++;
	
	if (maand < 10)
		maand = '0' + maand;
	if (newdag < 10)
		newdag = '0' + newdag;
	
	newdatum = newdag + '-' + maand;
	
	return newdatum		
}

function geoogstcheck(snedenr)
{
	for (var i=1;i<7;i++)
	{
		var oElement = getElementById('CheckBoxSnedeGeoogst' + i);
		if (i < snedenr)
		{
			oElement.checked=true;
		}
		else
		{
			if (i > snedenr)
			oElement.checked=false;
		}
	}	
}

function herinzaaicheck(snedenr,ischecked,isenabled)
{
	for (var i=1;i<7;i++)
	{
		var oElement = getElementById('CheckBoxInzaaiHerinzaai' + i);
		if(i==1&&snedenr==1&&!isenabled)
		{
			oElement.checked = ischecked;
			//oElement.disabled = true;
		}
		else
		{	
			oElement.disabled = false;
			if (oElement.checked==true && i!=snedenr && oElement.disabled==false)
			{
				oElement.checked=false;
			}
		}
	}
}

function CalculateTotalOM(laatstGebruikteSnede)
{
	var rowtotal=0;
	var columntotal=0;
	var textbox;
	var grandtotal=0;
	var sMSG='U dient een numeriek getal in te vullen.'
		
	// calculate horizontal
	for (var countrow=1;countrow<5;countrow++)
	{
		rowtotal=0;
		for (var countcolumn=1;countcolumn<=laatstGebruikteSnede;countcolumn++)
		{
			textbox=getElementById('TextBoxMestpartij'+countrow+countcolumn);
			rowtotal+=parseInt(textbox.value);
		}
		textbox=getElementById('LabelMestpartijTotaal'+countrow);
		textbox.innerHTML=rowtotal;
		grandtotal+=rowtotal;
	}
	
	// calculate vertical
	for (var countcolumn=1;countcolumn<=laatstGebruikteSnede;countcolumn++)
	{
		columntotal=0;
		for (var countrow=1;countrow<5;countrow++)
		{
			textbox=getElementById('TextBoxMestpartij'+countrow+countcolumn);
			// validate input
			if (!isNaN(parseInt(textbox.value)))
				{
				columntotal+=parseInt(textbox.value);
				}
		}
		textbox=getElementById('LabelMestgiftTotaal'+countcolumn);
		textbox.innerHTML=columntotal;
	}
	// display grand total
	textbox=getElementById('LabelMestgiftMeststofTotaal');
	textbox.innerHTML=grandtotal;
}

function CalculateTotalKM(laatstGebruikteSnede)
{
	var rowtotal=0;
	var columntotal=0;
	var textbox;
	var grandtotal=0;
	var sMsg='U dient een numeriek getal in te vullen.';
				
	// calculate horizontal
	for (var countrow=1;countrow<6;countrow++)
	{
		rowtotal=0;
		for (var countcolumn=1;countcolumn<=laatstGebruikteSnede;countcolumn++)
		{
			textbox=getElementById('TextBoxMeststof'+countrow+countcolumn);
			if (textbox)
			{
				if (!textbox.disabled)
					rowtotal+=parseInt(textbox.value);
			}
		}
		textbox=getElementById('LabelMeststofTotaal'+countrow);
		textbox.innerHTML=rowtotal;
	}
}

function CalculateTotalKMES(laatstGebruikteSnede)
{
	var rowtotal=0;
	var columntotal=0;
	var textbox;
	var grandtotal=0;
	var sMsg='U dient een numeriek getal in te vullen.';
		
	// calculate horizontal
	for (var countrow=1;countrow<4;countrow++)
	{
		rowtotal=0;
		
		for (var countcolumn=1;countcolumn<=laatstGebruikteSnede;countcolumn++)
		{
			textbox=getElementById('uclEigenKunstmest_TextBoxEigenMeststof'+countrow+countcolumn);
			rowtotal+=parseInt(textbox.value);
		}
		textbox=getElementById('uclEigenKunstmest_LabelEigenMeststofTotaal'+countrow);
		textbox.innerHTML=rowtotal;
	}
}

function EnableDisable(laatstGebruikteSnede)
{
	//if (soortid=='KM')
		var aantalsoorten=5;
	//else
	//	var aantalsoorten=3;

	for (var soortnr=1;soortnr<=aantalsoorten;soortnr++)
	{
		var cboKMSoort = getElementById('DropDownListMeststof' + soortnr);
	
		if (getItemTextOfSelectedIndex('DropDownListMeststof' + soortnr) == 'Geen meststof')
		{
			hideElement('LinkbuttonKMSamenstelling' + soortnr);
			for (var snedenr=1;snedenr<=6;snedenr++)
			{
				var txtveld = getElementById('TextBoxMeststof'+soortnr+snedenr);
				changeElementCssClass('TextBoxMeststof'+soortnr+snedenr, 'NumericBox');
				txtveld.value='0';
				txtveld.disabled=true;
			}
		}
		else
		{
			showElement('LinkbuttonKMSamenstelling' + soortnr);
			for (var snedenr=1;snedenr<=6;snedenr++)
			{
				var txtveld = getElementById('TextBoxMeststof'+soortnr+snedenr);
				if (snedenr<= laatstGebruikteSnede)
				{
					txtveld.disabled=false;
					if (snedenr<laatstGebruikteSnede)
					{
						changeElementCssClass('TextBoxMeststof'+soortnr+snedenr, 'grasKMSnedes');
					}
					else
					{
						changeElementCssClass('TextBoxMeststof'+soortnr+snedenr, 'NumericBox');
					}
				}
				else
				{
					txtveld.value ='0';
					txtveld.disabled=true;
				}
			}
		}
		CalculateTotalKM(laatstGebruikteSnede);
	}
}

function EnableDisableKMES(laatstGebruikteSnede)
{
	var aantalsoorten=3;
	var txtNaam = '';
	
	for (var soortnr=1;soortnr<=aantalsoorten;soortnr++)
	{
		var cboNaam = 'uclEigenKunstmest_DropDownListEigenMeststof' + soortnr;		
		var cboKMSoort = getElementById(cboNaam);
	
		if (getItemTextOfSelectedIndex(cboNaam) == 'Geen meststof')
		{
			//hideElement('LinkbuttonKMSamenstelling' + soortnr);
			for (var snedenr=1;snedenr<=6;snedenr++)
			{
				txtNaam = 'uclEigenKunstmest_TextBoxEigenMeststof'+soortnr+snedenr;
				var txtveld = getElementById(txtNaam);
				changeElementCssClass(txtNaam, 'NumericBox');
				txtveld.value='0';
				txtveld.disabled=true;
			}
		}
		else
		{
			//showElement('LinkbuttonKMSamenstelling' + soortnr);
			for (var snedenr=1;snedenr<=6;snedenr++)
			{
				txtNaam = 'uclEigenKunstmest_TextBoxEigenMeststof'+soortnr+snedenr;
				var txtveld = getElementById(txtNaam);
				if (snedenr<= laatstGebruikteSnede)
				{
					txtveld.disabled=false;
					if (snedenr<laatstGebruikteSnede)
					{
						changeElementCssClass(txtNaam, 'grasKMSnedes');
					}
					else
					{
						changeElementCssClass(txtNaam, 'NumericBox');
					}
				}
				else
				{
					txtveld.value ='0';
					txtveld.disabled=true;
				}
			}
		}
		CalculateTotalKMES(laatstGebruikteSnede);
	}
}

function SetDefaultValueNJaargift()
{
	var dropDownListGrasTeelt = getElementById('DropDownListSoortGrasTeelt');
	var TextBoxNJaargift = getElementById('TextBoxNJaargift');
	if (dropDownListGrasTeelt.value == 1)
	{
		TextBoxNJaargift.value = '300';
	}
	if (dropDownListGrasTeelt.value == 2)
	{
		TextBoxNJaargift.value = '100';
	}
	if (dropDownListGrasTeelt.value == 3)
	{
		TextBoxNJaargift.value = '150';
	}
}

function ValidateNutrientenAdvies()
{
	var err = '';
	
	for (var snedecounter=1;snedecounter<=6;snedecounter++)
	{	
		var name = 'TextboxNGewenst'+ snedecounter;
		if (!isEmpty(name))
		{
			if (!isDouble(name))
				err+= 'De N-waarde voor snede ' + snedecounter + ' dient een numeriek getal te zijn.\n';
			else
				if (!isValidRange(name,'0','200'))
					err+= 'De N-waarde voor snede ' + snedecounter + ' dient tussen de 0 en 200 te zijn.\n';
		}
	}
	if (err != '')
	{
		alert (err);
		return false;
	}
	else
		return true;
}

function ValidatePerceel()
{
	var err='';
	var element;
	
	//Perceelnaam
	if (isEmpty('TextBoxPerceel'))
		err += 'U dient een perceelnaam in te vullen.\n';
	else
		if(!isAlphanumeric('TextBoxPerceel'))
			err += 'De perceelnaam mag geen vreemde tekens bevatten.';

	//PerceelOppervlakte
	if (!isDouble('TextBoxOppervlakte'))
		err += 'De oppervlakte dient een numeriek getal te zijn.\n';
	else
		if (!isValidRange('TextBoxOppervlakte','0.3','99'))
			err += 'De oppervlakte dient tussen de 0.3 en 99 ha te zijn.\n';

	//NJaargift
	if (!isInt('TextBoxNJaargift'))
		err += 'De N-Jaargift dient een numeriek getal (zonder decimalen) te zijn.\n';
	else
		if (!isValidRange('TextBoxNJaargift','100','600'))
			err += 'De N-Jaargift dient tussen de 100 en 600 te zijn.\n';
	
	//Correctie n-advies Sn1
	if (!isInt('TextBoxCorrectie1'))
		err += 'De N-Correctie Sn1 dient een numeriek getal (zonder decimalen) te zijn.\n';
	else
		if (!isValidRange('TextBoxCorrectie1','-30','30'))
			err += 'De N-Correctie Sn1 dient tussen de -30 en 30 te zijn.\n';
			
	//Correctie n-advies Sn2
	if (!isInt('TextBoxCorrectie2'))
		err += 'De verhoging N-Advies Sn2 dient een numeriek getal (zonder decimalen) te zijn.\n';
	else
		if (!isValidRange('TextBoxCorrectie2','-30','30'))
			err += 'De verhoging N-Advies Sn2 dient tussen de -30 en 30 te zijn.\n';
	
	//Strooiminimun
	if (!isInt('TextBoxMinimumStrooiHoeveelheid'))
		err += 'Het strooiMinimum dient een numeriek getal (zonder decimalen) te zijn.\n';
	else
		if (!isValidRange('TextBoxMinimumStrooiHoeveelheid','70','200'))
			err += 'Het strooiMinimum dient tussen de 70 en 200 te zijn.\n';
	
	element = getElementById('RadioButtonListGrond')
	
	if (element[1].checked) //Blgg
	{
		//N-Leverend vermogen
		if (!isInt('TextBoxNLeverendVermogen'))
			err+= 'Het N-Leverend vermogen dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxNLeverendVermogen','50','300'))
				err+= 'Het N-Leverend vermogen dient tussen de 50 en 300 te zijn.\n';
		//P-AL
		if (!isInt('TextBoxPAL'))
			err+= 'Het P-AL gehalte dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxPAL','0','250'))
				err+= 'Het P-AL gehalte dient tussen de 0 en 250 te zijn.\n';
		//Kalium
		if (!isInt('TextBoxKalium'))
			err+= 'Het Kalium gehalte dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxKalium','0','250'))
				err+= 'Het Kalium gehalte dient tussen de 0 en 250 te zijn.\n';
		//K-getal
		if (!isInt('TextBoxKGetal'))
			err+= 'Het K-getal dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxKGetal','0','100'))
				err+= 'Het K-getal dient tussen de 0 en 100 te zijn.\n';
		//S-Leverend vermogen
		if (!isInt('TextBoxSLeverendVermogen'))
			err+= 'Het S-Leverend vermogen dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxSLeverendVermogen','0','100'))
				err+= 'Het S-Leverend vermogen dient tussen de 0 en 100 te zijn.\n';
		//Magnesium
		if (!isInt('TextBoxMagnesium'))
			err+= 'Het Magnesium gehalte dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxMagnesium','0','999'))
				err+= 'Het Magnesium gehalte dient tussen de 0 en 999 te zijn.\n';
		//Natrium
		if (!isInt('TextBoxNatrium'))
			err+= 'Het Natrium gehalte dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxNatrium','0','250'))
				err+= 'Het Natrium gehalte dient tussen de 0 en 250 te zijn.\n';
		//Koper
		if (!isInt('TextBoxKoper'))
			err+= 'Het Koper gehalte dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxKoper','1','250'))
				err+= 'Het Koper gehalte dient tussen de 1 en 250 te zijn.\n';
		//Kobalt
		if (!isDouble('TextBoxKobalt'))
			err+= 'Het Kobalt gehalte dient een numeriek getal te zijn.\n';
		else
			if (!isValidRange('TextBoxKobalt','1','250'))
				err+= 'Het Kobalt gehalte dient tussen de 1 en 250 te zijn.\n';
		//pH
		if (!isDouble('TextBoxZuurgraad'))
			err+= 'De pH waarde dient een numeriek getal te zijn.\n';
		else
			if (!isValidRange('TextBoxZuurgraad','1','13'))
				err+= 'De pH waarde gehalte dient tussen de 1 en 13 te zijn.\n';
		//Organische Stof
		if (!isDouble('TextBoxOrganischeStofBlgg'))
			err+= 'Het organische stofgehalte dient een numeriek getal te zijn.\n';
		else
			if (!isValidRange('TextBoxOrganischeStofBlgg','0.5','50'))
				err+= 'Het organische stofgehalte dient tussen de 0.5 en 50 te zijn.\n';
		//Lutum
		if (!isInt('TextBoxLutumBlgg'))
			err+= 'Het Lutum gehalte dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxLutumBlgg','0','67'))
				err+= 'Het Lutum gehalte dient tussen de 0 en 67 te zijn.\n';
	}
	else //Anders
	{
		// Lutum gehalte
		if (!isInt('TextBoxLutum'))
			err+= 'Het lutumgehalte dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxLutum','0','67'))
				err+= 'Het lutumgehalte dient tussen de 0 en 67 te zijn.\n';
		// OS Percentage bodem
		if (!isDouble('TextBoxOrganischeStof'))
			err+= 'Het organische stofgehalte dient een numeriek getal te zijn.\n';
		else
			if (!isValidRange('TextBoxOrganischeStof','0.5','50'))
				err+= 'Het organische stofgehalte dient tussen de 0.5 en 50 te zijn.\n';
		// NLV waarde
		if (!isInt('TextBoxNLVWaarde'))
			err+= 'De NLV-waarde dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			if (!isValidRange('TextBoxNLVWaarde','50','300'))
				err+= 'De NLV-waarde dient tussen de 50 en 300 te zijn.\n';
	}
	
	// Snede opbrengst
	for (var i=1;i<7;i++)
	{
		if (!isInt('TextBoxOpbrengst'+i))
			err+= 'De opbrengst van snede ' +i+ ' dient een numeriek getal (zonder decimalen) te zijn.\n';
		else
			{
			var oElement = getElementById('DropDownListGebruik'+i);
			if (oElement.value != 'NVT')
				{
				if (!isValidRange('TextBoxOpbrengst'+i,'250','7500'))
					err+= 'De opbrengst van snede ' +i+ ' dient tussen de 250 en 7500 te zijn.\n';
				}
			}
	}
		
	if (err != '')
	{
		alert (err);
		return false;
	}
	else
		return true;
}



function HandleNextPage()
{
	var perceelIsValidated = ValidatePerceel();
	
	if (perceelIsValidated)
		enableElements();
		
	return perceelIsValidated;
}

function CalculateTotalNutrienten()
{
	var toAddP205=0;
	var toAddK2O=0;
	var toAddS=0;
	var P205Tot=0;
	var K2OTot=0;
	var STot=0;

	// calculate vertical
	for (var SnedeNr=1;SnedeNr<=6;SnedeNr++)
	{
		LabelP205Advies = getElementById('LabelP205Advies'+SnedeNr);
		LabelK2OAdvies = getElementById('LabelK2OAdvies'+SnedeNr);
				
		toAddP205 = LabelP205Advies.innerHTML;
		toAddK2O = LabelK2OAdvies.innerHTML;
		//if (SnedeNr < 4)
		//{
		//	LabelSAdvies = getElementById('LabelSAdvies'+SnedeNr);
		//	toAddS = LabelSAdvies.innerHTML;
			// validate input
		//	if (!isNaN(parseFloat(toAddS)))
		//		STot+=parseFloat(toAddS);
		//}
		
		// validate input
		if (!isNaN(parseFloat(toAddP205)))
			P205Tot+=parseFloat(toAddP205);
			
		if (!isNaN(parseFloat(toAddK2O)))
			K2OTot+=parseFloat(toAddK2O);
	}
	// display grand total
	labelTotaal3=getElementById('LabelTotaal3');
	labelTotaal3.innerHTML=P205Tot;
	
	labelTotaal4=getElementById('LabelTotaal4');
	labelTotaal4.innerHTML=K2OTot;
	
	//labelTotaal6=getElementById('LabelTotaal6');
	//labelTotaal6.innerHTML=STot;
		
	labelMgOTotaal=getElementById('LabelTotaal5');
	labelMgOTotaal.innerHTML=getElementById('LabelMgOAdvies1').innerHTML;
	
	labelNa2OTotaal=getElementById('LabelTotaal7');
	labelNa2OTotaal.innerHTML=getElementById('LabelNa2OAdvies1').innerHTML;
	
	labelCuTotaal=getElementById('LabelTotaal8');
	labelCuTotaal.innerHTML=getElementById('LabelCuAdvies1').innerHTML;
	
	labelCoTotaal=getElementById('LabelTotaal9');
	labelCoTotaal.innerHTML=getElementById('LabelCoAdvies1').innerHTML;
}		

function ProcessRadioButtonListClick()
{
	var object = window.event.srcElement

	if (object.tagName != 'INPUT' || object.type != 'radio')
	return
	
	ShowHideBlgg(object.value);
}

function ShowHideBlgg(show)
{
	if(show=='1')
	{
		hideRows('9,10,11,12,13,14,15');
		showRows('16,17,18,19,20,21,22,23,24,25,26,27,28,29');
	}
	else
	{
		hideRows('16,17,18,19,20,21,22,23,24,25,26,27,28,29');
		showRows('9,10,11,12,13,14,15');
	}
}

function ShowHidePerceelGegevens()
{
	hideRows('1,2,3,4,5,6,7');
	showRows('8');
}

function ShowHideSBemesting()
{
	hideRows('1,2,3,4,5');
}

function CalculateTotalN()
{
	var NTot=0;
	var toAdd=0;

	// calculate vertical
	for (var SnedeNr=1;SnedeNr<=6;SnedeNr++)
	{
		textboxMan=getElementById('TextboxNGewenst'+SnedeNr);
		textboxCalc=getElementById('LabelNBerekend'+SnedeNr);
		if ((textboxMan.value == '') || (textboxMan.value == '0'))
			toAdd=textboxCalc.innerHTML;	
		else
			toAdd=textboxMan.value;
		// validate input
		if (!isNaN(parseInt(toAdd)))
			NTot+=parseInt(toAdd);
	}
	// display grand total
	textbox=getElementById('LabelTotaal1');
	textbox.innerHTML=NTot;
}		


function ValidateOMBemesting(laatstGebruikteSnede)
{
	var err='';
	var oElement;
	for (var snedecounter=1;snedecounter<=laatstGebruikteSnede;snedecounter++)
	{
		for (var soortnr=1;soortnr<5;soortnr++)
		{
			oElement = getElementById('DropDownListMestpartij' + soortnr);
			var mestnaam = oElement[oElement.selectedIndex].text.split('     ');
			
			var oElement2 = 'TextBoxMestpartij' + soortnr + snedecounter;
			if (!isInt(oElement2))
				err += 'De mestgift van ' + mestnaam[0] + ' op snede ' + snedecounter + ' dient een numeriek getal (zonder decimalen) te zijn.\n';
			else
				if (!isValidRange('TextBoxMestpartij' + soortnr + snedecounter,'0','100'))
					err+= 'De mestgift van ' + mestnaam[0] + ' op snede ' + snedecounter + ' dient tussen de 0 en 100 te zijn.\n';
		}
	}
	
	if (!err=='')
	{
		alert(err);
		return false;
	}
	else
		return true;
}

function ValidateKMBemesting(laatstGebruikteSnede)
{
	var err='';
	
	for (var snedecounter=1;snedecounter<=laatstGebruikteSnede;snedecounter++)
	{
		// Kunstmesten
		for (var soortnr=1;soortnr<6;soortnr++)
		{
			var oElement = getElementById('DropDownListMeststof' + soortnr);
			var mestnaam = oElement[oElement.selectedIndex].text;
			if (!isInt('TextBoxMeststof' + soortnr + snedecounter))
				err += 'De mestgift van ' + mestnaam + ' op snede ' + snedecounter + ' dient een numeriek getal (zonder decimalen) te zijn.\n';
			else
				if (!isValidRange('TextBoxMeststof' + soortnr + snedecounter,'0','10000'))
					err+= 'De mestgift van ' + mestnaam + ' op snede ' + snedecounter + ' dient tussen de 0 en 10000 te zijn.\n';
		}
	}
	
	if (!err=='')
	{
		alert(err);
		return false;
	}
	else
		return true;
}

function ValidateBemesting(laatstGebruikteSnede)
{
	if (laatstGebruikteSnede == 7)
		laatstGebruikteSnede = 6;
		
	var omIsValidated = ValidateOMBemesting(laatstGebruikteSnede);
	var kmIsValidated = ValidateKMBemesting(laatstGebruikteSnede);
	
	if (omIsValidated && kmIsValidated)
		return true;
	else
		return false;
}

function ChangeOMGebruikAll()
{
	var aantalPartijen=4;
	for (var partijNr=1;partijNr<=aantalPartijen;partijNr++)
		ChangeOMGebruik(partijNr);
		
}
function ChangeOMGebruik(partijNummer)
{	
	var aantalsnedes=6;
	var cboOMSoort = getElementById('DropDownListMestpartij' + partijNummer);
	
	if (cboOMSoort)
	{		
		var resetvalue = false;
		if (getItemTextOfSelectedIndex('DropDownListMestpartij' + partijNummer) == 'Geen mest')
		{
			resetvalue = true;
			hideElement('LinkbuttonOMSamenstelling' + partijNummer);
		}
		else
			showElement('LinkbuttonOMSamenstelling' + partijNummer);
			
		for (var snede=1;snede<=aantalsnedes;snede++)
		{
			var textBox = getElementById('TextBoxMestpartij' + partijNummer + snede);
			if ((textBox) && (resetvalue))
				textBox.value = '0';					
		}
		CalculateTotalOM(partijNummer);
	}
}

function ColorOM(huidigeSnede)
{
	for (var soortnr=1;soortnr<=4;soortnr++)
	{
		for (var snedenr=1;snedenr<=6;snedenr++)
		{
			var txtveld = getElementById('TextBoxMestpartij'+soortnr+snedenr);
			if (snedenr < huidigeSnede)
			{
				changeElementCssClass('TextBoxMestpartij'+soortnr+snedenr, 'grasKMSnedes');
			}
			else
			{
				changeElementCssClass('TextBoxMestpartij'+soortnr+snedenr, 'NumericBox');
			}			
		}
	}
}

function ReadyToSaveFromPerceel()
{
		var msg = 'Gegevens opslaan?\nWacht op de melding: Perceel is opgeslagen.';
		if (confirm(msg))
				return ValidatePerceel();
		else
				return false;
}

function ReadyToSaveFromBemesting(laatstGebruikteSnede)
{
		var msg = 'Gegevens opslaan?\nWacht op de melding: Perceel is opgeslagen.';
		if (confirm(msg))
				return ValidateBemesting(laatstGebruikteSnede);
		else
				return false;
}

function ReadyToSaveFromAdvies()
{
		var msg = 'Gegevens opslaan?\nWacht op de melding: Perceel is opgeslagen.';
		if (confirm(msg))
				return ValidateNutrientenAdvies();
		else
				return false;
}
