// JavaScript Document
function dateformat(datechange) {
		month = datechange.getMonth()+1;
		month = (month < 10) ? "0" + month : month;
		
		day   = datechange.getDate();
		day = (day < 10) ? "0" + day : day;
		
		year  = datechange.getYear();
		if (year < 2000) year += 1900;
		
		return (month + "/" + day + "/" + year);
	}
	
	
	function duedateCalc() {
		missinginfo = "";
		menstrual = new Date(); 
		duedate = new Date();
		today = new Date();	
		var cycle = 0;
	
		if (document.duedateform.type[0].checked) {			
			toAdd = 280;  
			var mon = document.duedateform.getmon.options[document.duedateform.getmon.options.selectedIndex].value;
			var dt = document.duedateform.getdt.options[document.duedateform.getdt.options.selectedIndex].value;
			var yr = document.duedateform.getyr.options[document.duedateform.getyr.options.selectedIndex].value;
			var cycle = document.duedateform.cycle.value; 			
			
		} else if (document.duedateform.type[1].checked) {
			toAdd = 266;
			var mon = document.duedateform.getmon1.options[document.duedateform.getmon1.options.selectedIndex].value;
			var dt = document.duedateform.getdt1.options[document.duedateform.getdt1.options.selectedIndex].value;
			var yr = document.duedateform.getyr1.options[document.duedateform.getyr1.options.selectedIndex].value;
			var cycle = document.duedateform.cycle1.value; 
		}	
		
		if (!isInteger(cycle)) missinginfo += "Please enter a valid length for menstrual cycle";
		else if (cycle < 17) missinginfo += "Please enter a valid  number for the menstrual cycle";

		if (!isDate(yr,mon,dt)) {
			 missinginfo += "\nPlease enter a valid date";
		} else {
			mydate = new Date(yr,mon-1,dt);
			if (mydate > today) {
				 missinginfo += "Date entered cannot be later than today's date";
			} 
		}	
			
		if (missinginfo != "") {
			//missinginfo = "Please enter" + missinginfo;
			alert(missinginfo);
		} else {					
			var menstrualdate = (mon + "/" + dt + "/" + yr);
			var menstrualinput = new Date(menstrualdate);
			menstrual.setTime(menstrualinput.getTime())
		
			if (cycle != 28) toAdd = toAdd + (cycle - 28)
		
			duedate.setTime(menstrual.getTime() + (toAdd*24*60*60*1000));			
			document.duedateform.duedate.value = dateformat(duedate);
			var pregweeks = 280 - ((duedate - today) / (24*60*60*1000));
			weeks = parseInt(pregweeks / 7); 
			document.duedateform.pregweeks.value = weeks;
			//document.duedateform.submit(); 
			//alert('Due date is ' + weeks + ' weeks');
			var months = new Array('January','February','March','April','May','June','July','August','September','October','November','December');
			var month = duedate.getMonth() 
			var day = duedate.getDate()
			var year = duedate.getFullYear()
			var dueDateDiv = document.getElementById("DueDateDiv");
			// you can add any html you want to the line below
			dueDateDiv.innerHTML = '<p>' + "Your Due Date is:&nbsp;" + "<b>" + months[month] + ' ' + day + ', ' + year + ' </b></p>'
		}			
	}
	
	

	
