function nitrogenCalculation(){
	var expectedYield = document.getElementById('expectedYield').value;
	var soilMineralNitrogen = document.getElementById('soilMineralNitrogen').value;
	var cropCanopyNitrogen = document.getElementById('cropCanopyNitrogen').value;

	if (expectedYield > 3.5) {
		//greater than 3.5
		var math1 = parseFloat(soilMineralNitrogen) + parseFloat(cropCanopyNitrogen);
		math1 = 175 - math1;
		var math2 = expectedYield - 3.5;
		math2 = math2 / 0.5;
		math2 = math2 * 18;
		var result = math1 + math2;
		if (document.getElementById('manufacturedFertiliser').checked == true) {
			var result = result * 1.6666;
		}
	} else {
		//less than 3.5
		var math1 = expectedYield * 50;
		var math2 = parseFloat(soilMineralNitrogen) + parseFloat(cropCanopyNitrogen);
		var result = math1 - math2;
		if (document.getElementById('manufacturedFertiliser').checked == true) {
			var result = result * 1.6666;
		}
	}

	var totalNitrogen = Math.round(result*100)/100;

	if (document.getElementById('manufacturedFertiliser').checked == true) {
		var daysPrior = Math.round(totalNitrogen/5);
	} else {
		var daysPrior = Math.round(totalNitrogen/3);
	}

	//retrieving date from dateInput
	var sDateInput = document.getElementById('dateInput').value;
	var aDateInput = new Array();
	aDateInput = sDateInput.split('-');
	
	//set flowering date using data from dateInput
	var startFlowering = new Date();
	startFlowering.setMonth(aDateInput[1]-1);
	startFlowering.setDate(aDateInput[0]);
	startFlowering.setFullYear(aDateInput[2]);
	
	//if the user wants to split the applications
	if (document.getElementById('numberApplications').value > 1) {

		//calculates the number of days between applications and amount of nitrogen used
		var numberOfApplications = document.getElementById('numberApplications').value;
		var numberOfDays =  Math.round(daysPrior/numberOfApplications);
		var splitTotalNitrogen = Math.round((totalNitrogen/numberOfApplications)*100)/100;

		//calculates the dates and amount of nitrogen applied
		aNumberOfDays = new Array();

		for (var i=0; i < numberOfApplications; i++) {
			var floweringGetDate = startFlowering.getDate();
			var startApplication = startFlowering.setDate(floweringGetDate - numberOfDays);
			var startDate = new Date(startApplication);
			if (splitTotalNitrogen > 0) {
				if (document.getElementById('manufacturedFertiliser').checked == true) {
					aNumberOfDays[i] = "Apply <strong>" + splitTotalNitrogen + "kg</strong> Fertiliser N/ha by <strong>" + startDate.toLocaleDateString() + "</strong><br /><br />";
				} else {
					aNumberOfDays[i] = "Apply <strong>" + splitTotalNitrogen + "kg</strong> N/ha by <strong>" + startDate.toLocaleDateString() + "</strong><br />";
				}
			}else {
				aNumberOfDays[0] = "Based on the information you have provided, your OSR crop does not require any additional nitrogen applications.";
			}
		}

		//prints calculations
		var applicationAndDays = aNumberOfDays.reverse().join("");
		document.getElementById('startDate').innerHTML = applicationAndDays;
		document.getElementById('startDate').innerHTML += "<input type='button' value='' id='print' onclick='print();' />";

	//one application
	} else {
		//calculates the date the nitrogen applied
		var floweringGetDate = startFlowering.getDate();
		var startApplication = startFlowering.setDate(floweringGetDate - daysPrior);
		var startDate = new Date(startApplication);

		//prints calculation
		if (totalNitrogen > 0) {
			if (document.getElementById('manufacturedFertiliser').checked == true) {
				document.getElementById('startDate').innerHTML = "Apply <strong>" + totalNitrogen + "kg</strong> Fertiliser N/ha by <strong>" + startDate.toLocaleDateString() + "</strong>";
				document.getElementById('startDate').innerHTML += "<br /><input type='button' value='' id='print' onclick='print();' />";
			} else {
				document.getElementById('startDate').innerHTML = "Apply <strong>" + totalNitrogen + "kg</strong> N/ha by <strong>" + startDate.toLocaleDateString() + "</strong>";
			}
		} else { 
			document.getElementById('startDate').innerHTML = "Based on the information you have provided, your OSR crop does not require any additional nitrogen applications.";
		}
	}
}

function formValidation() {
	if (document.getElementById('cropCanopyNitrogen').value == '' || document.getElementById('soilMineralNitrogen').value == '' || document.getElementById('expectedYield').value == '' || document.getElementById('dateInput').value == '' || document.getElementById('numberApplications').value == '') {
		alert('Please fill in all of the required fields')		
	} else {
		if (document.getElementById('expectedYield').value > 5.5) {
		alert('Your target yield is unusually high, under these circumstances a special N regime will be required, consult your agronomist for further advice.')
		} else {
		nitrogenCalculation();
		}
	}
	
	
	
}