/***************************************************************************
 * filename : FFDateInput.js<br>
 * ³¯Â¥ÀÔ·Â ¹Þ±â ÀÚ¹Ù½ºÅ©¸³Æ®<br>
 *
 * ÃßÈÄ º¯°æ »çÇ×
 * ÇÔ¼ö¸íÀ» ´Ù½Ã Á¤ÇÑ´Ù FFmakeSelectOptionYear --> FFMakeSelectOptionYear
 *
 * @version	: 1.0
 * @author	: Copyright (c) 2001 by free270. All Rights Reserved.
****************************************************************************/
//browser°¡ IEÀÎÁö ¾Ë¾Æ¿Â´Ù.
function isExplorer(){
	var browser = navigator.appName;
	if(browser == "Netscape")
		return false;
	else 
		return true;
}
var isIE = isExplorer();
var MaxDay = new Array();

MaxDay[0] = 31;
MaxDay[1] = 28;
MaxDay[2] = 31;
MaxDay[3] = 30;
MaxDay[4] = 31;
MaxDay[5] = 30;
MaxDay[6] = 31;
MaxDay[7] = 31;
MaxDay[8] = 30;
MaxDay[9] = 31;
MaxDay[10]= 30;
MaxDay[11]= 31;		

var now  = new Date();
/** at Explore : getYear = '2002' but at Netscape getYear : '102' ***/
function getYear(){
	var year = now.getYear();
	if(!isIE)
		year = year + 1900; 
	return year;
}

function FFremoveAllSelectOptionDate(obj){
	 var size   = obj.length;
	 for(i=0; i < size; i++){
		obj.options[0] = null;
	}
}

function FFsetIndexByValueDate(obj,selvalue){
	var tempValue = "";
	var size = obj.length;

	for (var i=0; i<size; i++){
		tempValue = obj.options[i].value;
		if(tempValue == null) return;
		if (selvalue == tempValue){		
			obj.selectedIndex=i;	
			break;
		}		
	}
}


function FFmakeSelectOptionYear( obj , defaultValue , startyear, endyear){
	if(startyear==null) startyear	= 2001
	if(endyear == null) endyear		= 2010
	if(defaultValue==null || defaultValue == ""){
		defaultValue = getYear();
	}
	for(i=startyear;i<=endyear;i++){
		var new_option = new Option(i,i); //name,value
		obj.options[i-startyear] = new_option;
	}
	obj.selctedIndex=0;

	FFsetIndexByValueDate(obj,defaultValue);
}

function FFmakeSelectOptionYear_init( obj , defaultValue , startyear, endyear){
	if(startyear==null) startyear	= 2001
	if(endyear == null) endyear		= 2010
	if(defaultValue==null || defaultValue == ""){
		defaultValue = getYear();
	}
	for(i=startyear;i<=endyear;i++){
		var new_option = new Option(i,i); //name,value
		obj.options[i-startyear+1] = new_option;
	}
	obj.selctedIndex=0;

	FFsetIndexByValueDate(obj,defaultValue);
}

function FFmakeSelectOptionMonth( obj , defaultValue, fillZero){
	if(defaultValue==null || defaultValue == ""){
		defaultValue = now.getMonth()+1;
	}
	for(i=0;i<12;i++){
		var value = i+1 ;
		if(fillZero){
			if(value <10) value="0"+value;	
		}
		var new_option = new Option(value,value); //name,value
		obj.options[i] = new_option;
	}
	obj.selctedIndex=0;
	FFsetIndexByValueDate(obj,defaultValue);
}

function FFmakeSelectOptionMonth_init( obj , defaultValue, fillZero){
	if(defaultValue==null || defaultValue == ""){
		defaultValue = now.getMonth()+1;
	}
	for(i=0;i<12;i++){
		var value = i+1 ;
		if(fillZero){
			if(value <10) value="0"+value;	
		}
		var new_option = new Option(value,value); //name,value
		obj.options[i+1] = new_option;
	}
	obj.selctedIndex=0;
	FFsetIndexByValueDate(obj,defaultValue);
}

function FFredefineSelectOptionDay( yearobj , monthobj , obj,defaultValue,fillZero){
	if(fillZero==null) fillZero = true;
	var year  = yearobj.options[yearobj.selectedIndex].value;
	var month = monthobj.options[monthobj.selectedIndex].value;
	var curDay = obj.options[obj.selectedIndex].value;
	var curMaxDay = obj.options[obj.options.length-1].value;
	var tmpMaxDay = MaxDay[month-1];

	if((month==2 && year%4 == 0) || (month==02 && year%4==0)){
		tmpMaxDay ++;
	}
	if(tmpMaxDay != curMaxDay){		
		FFmakeSelectOptionDay( yearobj , monthobj , obj ,defaultValue,true);
	}	
	FFsetIndexByValueDate(obj,curDay);

}

function FFredefineSelectOptionDay_init( yearobj , monthobj , obj,defaultValue,fillZero){
	if(fillZero==null) fillZero = true;
	var year  = yearobj.options[yearobj.selectedIndex+1].value;
	var month = monthobj.options[monthobj.selectedIndex+1].value;
	var curDay = obj.options[obj.selectedIndex].value;
	var curMaxDay = obj.options[obj.options.length-1].value;
	var tmpMaxDay = MaxDay[month-1];

	if((month==2 && year%4 == 0) || (month==02 && year%4==0)){
		tmpMaxDay ++;
	}
	if(tmpMaxDay != curMaxDay){		
		FFmakeSelectOptionDay_init( yearobj , monthobj , obj ,defaultValue,true);
	}	
	FFsetIndexByValueDate(obj,curDay);

}

function FFmakeSelectOptionDay( yearobj, monthobj , obj ,defaultValue, fillZero){	
	var year  = yearobj.options[yearobj.selectedIndex].value;
	var month = monthobj.options[monthobj.selectedIndex].value;
	var tmpMaxDay = MaxDay[month-1];
	if(defaultValue==null || defaultValue == ""){
		defaultValue = now.getDate();
	}
	if((month==2 && year%4 == 0) || (month==02 && year%4==0)){
		tmpMaxDay ++;
	}
	var curDay = 1;
	if(obj.options.length>0){
		curDay = obj.options[obj.selectedIndex].value;
	}
	FFremoveAllSelectOptionDate(obj);
	for(i=0;i<tmpMaxDay;i++){
		var value = i+1 ;
	//	if(fillZero ){
			if(value <10) value="0"+value;			
	//	}

		var new_option = new Option(value,value); //name,value
		obj.options[i] = new_option;
	}
	FFsetIndexByValueDate(obj,defaultValue);
}

function FFmakeSelectOptionDay_init( yearobj, monthobj , obj ,defaultValue, fillZero){	
	var year  = yearobj.options[yearobj.selectedIndex+1].value;
	var month = monthobj.options[monthobj.selectedIndex+1].value;
	var tmpMaxDay = MaxDay[month-1];

	if(defaultValue==null || defaultValue == ""){
		defaultValue = now.getDate();
	}
	if((month==2 && year%4 == 0) || (month==02 && year%4==0)){
		tmpMaxDay ++;
	}
	var curDay = 1;
	if(obj.options.length>1){
		curDay = obj.options[obj.selectedIndex].value;
    	FFremoveAllSelectOptionDate(obj);
	}
	for(i=0;i<tmpMaxDay;i++){
		var value = i+1 ;
		if(fillZero ){
			if(value <10) value="0"+value;			
		}

		var new_option = new Option(value,value); //name,value
		obj.options[i+1] = new_option;
	}
	FFsetIndexByValueDate(obj,defaultValue);
}

/**[ »ç ¿ë ¿¹ ]**********************************************************
<SCRIPT src="../js/FFDateInput.js"></SCRIPT>
<script>
	function init(){
		var now = new Date();
		FFmakeSelectOptionYear( document.frm_date.year1,now.getYear(),2000,2005);
		FFmakeSelectOptionMonth( document.frm_date.month1 ,now.getMonth()+1);
		FFmakeSelectOptionDay( document.frm_date.year1 , document.frm_date.month1,document.frm_date.day1 , now.getDate());
	}

</script>
<body onload="init();">
<form name=frm_date>
<SELECT name=year1 onChange="FFredefineSelectOptionDay(this,month1,day1);" ></SELECT>		
<SELECT name=month1 style="text-align:center" onChange="FFmakeSelectOptionDay(year1,this,day1)"></SELECT>		
<SELECT name=day1></SELECT><br>
</form>
*/

function FFmakeSelectOptionHour( obj , defaultValue, fillZero){
	if(defaultValue==null || defaultValue == ""){
		defaultValue = now.getHours();
	}
	for(i=0;i<24;i++){
		var value = i ;
		if(fillZero ){
			if(value <10) value="0"+value;			
		}
		var new_option = new Option(value,value); //name,value
		obj.options[i] = new_option;
	}
	obj.selctedIndex=0;
	FFsetIndexByValueDate(obj,defaultValue);
}
function FFmakeSelectOptionMinute( obj , defaultValue, fillZero){
	if(defaultValue==null || defaultValue == ""){
		defaultValue = now.getMinutes();
	}
	for(i=0;i<60;i++){
		var value = i;
		if(fillZero ){
			if(value <10) value="0"+value;			
		}
		var new_option = new Option(value,value); //name,value
		obj.options[i] = new_option;
	}
	obj.selctedIndex=0;
	FFsetIndexByValueDate(obj,defaultValue);
}
