var c_date_format = "MMDDYY"; // "MMDDYY"
var c_date_delimiter = "/";
// month in javascript : 0 -- 11
function make_date(str_date){
	var arr_date = str_date.split(c_date_delimiter)
	var ret = null;
	var dd,mm,yyyy;
	dd = 0;
	mm = 0;
	yyyy = 0;
	if(arr_date.length ==3){
		if(c_date_format == "DDMMYY"){
			mm = arr_date[1];
			dd = arr_date[0];
			yyyy = arr_date[2];
		}else if(c_date_format == "MMDDYY"){
			mm = arr_date[0];
			dd = arr_date[1];
			yyyy = arr_date[2];
		}
		if(check_date(yyyy,mm,dd) == true){
			mm --;
			ret = new Date(yyyy,mm,dd);
		}
	}
	return ret;
}
function MyDate(mm,dd,yyyy){
	this.mm = mm;
	this.dd = dd;
	this.yyyy = yyyy;
	this.Compare2Days = Compare2Days
} 
/*function Compare2Days(mm,dd,yyyy){
	if(this.yyyy > yyyy){
		return 1;
	}else if(this.yyyy == yyyy){
		if(this.mm > mm){
			return 1;
		}else if(this.mm==mm){
			if(this.dd > dd){
				return 1;
			}else if(this.dd==dd){
				return 0;
			}else{
				return -1;
			}
		}else{
			return -1;
		}
	}else{
		return -1;
	}
}*/

function Compare2Days(mydate){
	if(this.yyyy > mydate.yyyy){
		return 1;
	}else if(this.yyyy == mydate.yyyy){
		if(this.mm > mydate.mm){
			return 1;
		}else if(this.mm==mydate.mm){
			if(this.dd > mydate.dd){
				return 1;
			}else if(this.dd==mydate.dd){
				return 0;
			}else{
				return -1;
			}
		}else{
			return -1;
		}
	}else{
		return -1;
	}
}

function check_date(yyyy,mm,dd){
	mm = parseFloat(mm);
	dd = parseFloat(dd);
	yyyy = parseFloat(yyyy);
	if(isNaN(mm)){
		return false;
	}else if(mm<1||mm>12){
		return false;
	}
	if(isNaN(dd)){
		return false;
	}else if(dd < 1 || dd > 31){
		return false;
	}
	if(isNaN(yyyy)){
		return false;
	}else if(yyyy < 1900||yyyy > 9999){
		return false;
	}
	switch (mm){
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
			if(dd < 1 || dd > 31){
				return false;
			}else{
				return true;
			}
		break;
		case 4:
		case 6:
		case 9:
		case 11:
			if(dd < 1 || dd > 30){
				return false;
			}else{
				return true;
			}
		break;
		case 2:
			if((yyyy % 400 == 0)||(yyyy % 100 !=0 && yyyy % 4 ==0)){
				if(dd > 29 || dd <1){
					return false;
				}else{
					return true;
				}
			}else{
				if(dd > 28 || dd < 1 ){
					return false;
				}else{
					return true;
				}
			}
		break;
	}
}
