/* BABY DUE DATE SCRIPT */

function getCookie(c_name){
	if (document.cookie.length>0)
	{
		c_start=document.cookie.indexOf(c_name + "=");
		if (c_start!=-1)
		{ 
			c_start=c_start + c_name.length+1; 
			c_end=document.cookie.indexOf(";",c_start);
			if (c_end==-1) c_end=document.cookie.length;
			return unescape(document.cookie.substring(c_start,c_end));
		} 
	}
	return "";
}

function setCookie(c_name,value,expiredays){
	var exdate=new Date();exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+ "=" +escape(value)+
	((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}

function days_between(date1, date2) {
	// The number of milliseconds in one day
	var ONE_DAY = 1000 * 60 * 60 * 24

	// Convert both dates to milliseconds
	var date1_ms = date1.getTime()
	var date2_ms = date2.getTime()

	// Calculate the difference in milliseconds
	var difference_ms = Math.abs(date1_ms - date2_ms)
	
	// Convert back to days and return
	return Math.round(difference_ms/ONE_DAY)
}

function changeBabyDueDate() {
	
	var babyDueDate = document.getElementById('baby_due_date').value;


	year = babyDueDate.substring(0,4);
	month = babyDueDate.substring(4,6);
	day = babyDueDate.substring(6,8);
	
	var currDate = new Date();
	var dueDate = new Date();
	var leftDays = 0;

	dueDate.setFullYear(year, month-1, day);
	
	if(dueDate > currDate)
		leftDays = days_between(currDate, dueDate);
	else
		leftDays = 0;					

	setCookie('babyduedate',leftDays,365);

	if(leftDays==1)
		document.getElementById('babyDueCaption').innerHTML = 'Day!';
	else
		document.getElementById('babyDueCaption').innerHTML = 'Days!';

	document.getElementById('babyDueLeftDays').innerHTML = leftDays;
}

function babyDueDateForm(date)
{
	var babyDueDate = date;
	
	year = babyDueDate.substring(0,4);
	month = babyDueDate.substring(4,6);
	day = babyDueDate.substring(6,8);
	
	var currDate = new Date();
	var dueDate = new Date();
	var leftDays = 0;
	
	dueDate.setFullYear(year, month-1, day);
	
	if(dueDate > currDate)
		leftDays = days_between(currDate, dueDate);
	else
		leftDays = 0;					

	setCookie('babyduedate',leftDays,365);
}

function isUnsignedInteger(s) {
	return (s.toString().search(/^[0-9]+$/) == 0);
}


function babyDueDateGet() {
	leftDays = getCookie('babyduedate');
	
	if(!isUnsignedInteger(leftDays))
	{
		document.getElementById('babyDueLeftDays').innerHTML = '0';
		document.getElementById('babyDueCaption').innerHTML = 'Days!';
	}
	else {
		if(leftDays!=null && leftDays!="")
			document.getElementById('babyDueLeftDays').innerHTML = leftDays;
		else
			document.getElementById('babyDueLeftDays').innerHTML = '0';
			
		if(leftDays==1)
			document.getElementById('babyDueCaption').innerHTML = 'Day!';
		else
			document.getElementById('babyDueCaption').innerHTML = 'Days!';

		document.getElementById('babyDueLeftDays').innerHTML = leftDays;
	}
}
