var ddNow = "";
var mmNow = "";
var yyNow = "";
var ddExpiry = "";
var mmExpiry = "";
var yyExpiry = "";

function todayDate( rtnDateFormat ) {
	var dateNow = new Date();
	var strReturn = "";

	ddNow = dateNow.getDate();
	if(parseInt(ddNow,10) < 10){
		ddNow = "0" + parseInt(ddNow,10);
	}
	mmNow = dateNow.getMonth()+1;
	if(parseInt(mmNow,10) < 10){
		mmNow = "0" + parseInt(mmNow,10);
	}			
	yyNow = parseInt(dateNow.getYear());
	if(yyNow < 100){
		yyNow = dateNow.getYear()+1900+"";
	}else{
		yyNow = dateNow.getYear()+"";
	}
	if (rtnDateFormat == "D") 
		strReturn = ddNow; 
	else if (rtnDateFormat == "M") 
		strReturn = ""+mmNow; 
	else if (rtnDateFormat == "Y") 
		strReturn = ""+yyNow;
	else if (rtnDateFormat == "F") 
		strReturn = ddNow + "/" + mmNow + "/" + yyNow; 
	else if (rtnDateFormat == "C") 
		strReturn = yyNow+""+ mmNow +""+ddNow; 

	return strReturn;
	
}

function isValidDate(inValue) {
	
	var datePat = /^(\d{2})(\/)(\d{2})\2(\d{4})$/;
	var dateStr = inValue;

	var matchArray = dateStr.match(datePat); 
	if (matchArray == null) {
		alert("Date must in 'DD/MM/YYYY' format.")
		return false;
	}

	day = matchArray[1];
	month = matchArray[3]; 
	year = matchArray[4];

	if(month=="08"||month=="09"){
		month = month.substr(1);
	}	

	if(day=="08"||day=="09"){
		day = day.substr(1);
	}

	if (parseInt(month) < 1 || parseInt(month) > 12) { 
		alert("Month must be between 1 and 12.");
		return false;
	}

	if (parseInt(day) < 1 || day > parseInt(31)) {
		alert("Day must be between 1 and 31.");
		return false;
	}

	if ((parseInt(month)==4 || parseInt(month)==6 || parseInt(month)==9 || parseInt(month)==11) && parseInt(day)==31) {
		alert("Month "+month+" doesn't have 31 days!");
		return false;
	}

	if (parseInt(month) == 2) { 
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if (day>29 || (day==29 && !isleap)) {
			alert("February " + year + " doesn't have " + day + " days!");
			return false;
		}
	}
	
	return true;

}

function getDeliveryDate( fromDate, dateType ){
	var ddFromDate = fromDate.substring(0,2);
	var mmFromDate = fromDate.substring(3,5);
	var yyFromDate = fromDate.substring(6,10);
	var strReturn = "";

	isleap = (parseInt(yyFromDate) % 4 == 0 && (parseInt(yyFromDate) % 100 != 0 || parseInt(yyFromDate) % 400 == 0));
	nextYear = parseInt(yyFromDate) + 1;
	nextYearisleap = (nextYear % 4 == 0 && (nextYear % 100 != 0 || nextYear % 400 == 0));

	if(mmFromDate=="08"||mmFromDate=="09"){
		mmFromDate = mmFromDate.substr(1);
	}
	if(ddFromDate=="08"||ddFromDate=="09"){
		ddFromDate = ddNow.substr(1);
	}

//	if(parseInt(mmFromDate)<2 || (parseInt(mmFromDate)==2 && parseInt(ddFromDate)<=28)){
//		if(!isleap)
//			addDay = 364;
//		else
//			addDay = 365;
//	}
//	else if(parseInt(mmFromDate)==2 && parseInt(ddFromDate)==29){
//		addDay = 365;
//	}
//	else {
//		if(isleap)
//			addDay = 364;
//		else if(!isleap && !nextYearisleap)
//			addDay = 364;
//		else if(!isleap && nextYearisleap)
//			addDay = 365;
//	}
	
	SetMilliSecond = (3 * 24 * 60 * 60 * 1000);

	var d = new Date(mmFromDate+"/"+ddFromDate+"/"+yyFromDate);
	d.setMilliseconds(SetMilliSecond); 
	
	if (dateType == "D") { 
		ddExpiry = d.getDate();
		if(ddExpiry < 10){
			ddExpiry = "0" + ddExpiry;
		}
		strReturn = ddExpiry; 
	} else if (dateType == "M") { 
		mmExpiry = d.getMonth()+1;
		if(parseInt(mmExpiry,10) < 10){
			mmExpiry = "0" + parseInt(mmExpiry,10);
		}
		strReturn = ""+mmExpiry; 
	} else if (dateType == "Y") { 
		yyExpiry = d.getYear();
		strReturn = ""+yyExpiry; 
	} else if (dateType == "F") { 
		ddExpiry = d.getDate();
		if(ddExpiry < 10){
			ddExpiry = "0" + ddExpiry;
		}
		mmExpiry = d.getMonth()+1;
		if(parseInt(mmExpiry,10) < 10){
			mmExpiry = "0" + parseInt(mmExpiry,10);
		}
		yyExpiry = d.getYear();
		strReturn = ddExpiry + "/" + mmExpiry + "/" + yyExpiry; 
	}

	return strReturn;
}