// JavaScript Document

condate = new Date(); // conception date
daymsecs = 60*60*24*1000;
c=28; // Default cycle

function due_date() 
{
// Get input values	
	var d = parseInt(document.getElementById('day').value);
	var m = parseInt(document.getElementById('month').value);
	var y = parseInt(document.getElementById('year').value);
	c = parseInt(document.getElementById('cycle').value);

// Get the start of the ovulation    
    var starto = new Date();
		
	starto.setFullYear(y);	
	starto.setMonth(m-1);
	starto.setDate(d);
	starto.setTime(starto.getTime() + ((c * daymsecs) - daymsecs*14));
	condate.setTime(starto.getTime());
	
// Report the results
	document.getElementById('conception').value = formatted_date(starto);
	var duedate = new Date(); 
	duedate.setTime(starto.getTime() + daymsecs*266);
	document.getElementById('due').value = formatted_date(duedate);
	var timenow = new Date();	
	var elapsed = Math.round((timenow.getTime()-starto.getTime())/daymsecs);
	
	document.getElementById('pregnantfor').value = "" + Math.floor(elapsed/7) + " weeks, " + Math.floor(elapsed%7) + " days";
	document.getElementById('pregnant4').value = "" + (Math.floor(elapsed/7)+2) + " weeks, " + Math.floor(elapsed%7) + " days";
	starto.setTime(starto.getTime() + daymsecs*70);
	document.getElementById('tri1').value = formatted_date(starto);
	starto.setTime(starto.getTime() + daymsecs*105);
	document.getElementById('tri2').value = formatted_date(starto);
}

function num_weeks()
{
	due_date();
	var d = parseInt(document.getElementById('day1').value);
	var m = parseInt(document.getElementById('month1').value);
	var y = parseInt(document.getElementById('year1').value);
	var date = new Date();
	
	date.setFullYear(y);
	date.setMonth(m-1);	
	date.setDate(d);

	var elapsed = Math.round((date.getTime()-condate.getTime())/daymsecs);
	document.getElementById('weeks1').value = "" + (Math.floor(elapsed/7)+2) + " weeks, " + Math.floor(elapsed%7) + " days";
}

function calc_date()
{	
	due_date();
	var w = parseInt(document.getElementById('weeks2').value)-2;
	var date = new Date();
	date.setTime(condate.getTime() + daymsecs*7*w);
	document.getElementById('date2').value = formatted_date(date);
}

function con_date()
{
	due_date();
	var d = parseInt(document.getElementById('day3').value);
	var m = parseInt(document.getElementById('month3').value);
	var y = parseInt(document.getElementById('year3').value);
	var date = new Date();
		
	date.setFullYear(y);
	date.setMonth(m-1);
	date.setDate(d);
	
	date.setTime(date.getTime() - ((c * daymsecs) - daymsecs*14) - daymsecs*267);
	document.getElementById('date3').value = formatted_date(date);
}

function formatted_date(date) 
{
var month = new Array("Jan.", "Feb.", "March", "April", "May", "June", "July", "Aug.", "Sept.", "Oct.",
	"Nov.", "Dec.");
return("" + month[date.getMonth()] + " " + date.getDate() + ", " + date.getFullYear());	
}

