var Mac = navigator.appVersion.indexOf('Mac',0) != -1;
var Win = navigator.appVersion.indexOf('Win',0) != -1;
var IE  = navigator.appName.indexOf("Microsoft Internet Explorer",0) != -1;
var NN  = navigator.appName.indexOf("Netscape",0) != -1;
var Moz = navigator.userAgent.indexOf("Gecko") != -1;
var Opera = window.opera;
var Opera6 = navigator.userAgent.indexOf("Opera 6") != -1;
var Opera7 = navigator.userAgent.indexOf("Opera 7") != -1;
var Vmajor = parseInt(navigator.appVersion); // ex. 3
var Vminor = parseFloat(navigator.appVersion); // ex. 3.01
var WinIE55 = ((Win && navigator.appVersion.indexOf('MSIE 5.5',0) != -1));
var MacIE5 = ((Mac && navigator.appVersion.indexOf('MSIE 5.',0) != -1));
var MacIE4 = ((Mac && navigator.appVersion.indexOf('MSIE 4.',0) != -1));
var MacIE3 = ((Mac && navigator.appVersion.indexOf('MSIE 3.',0) != -1));
var iCab = (navigator.userAgent.indexOf("iCab",0) != -1);

/*============================
# 日付プルダウンメニュー
#===========================*/
var last_day_of_month = new Array();
last_day_of_month["1"] = 31;
last_day_of_month["2"] = 28;
last_day_of_month["3"] = 31;
last_day_of_month["4"] = 30;
last_day_of_month["5"] = 31;
last_day_of_month["6"] = 30;
last_day_of_month["7"] = 31;
last_day_of_month["8"] = 31;
last_day_of_month["9"] = 30;
last_day_of_month["10"] = 31;
last_day_of_month["11"] = 30;
last_day_of_month["12"] = 31;

var days_g = new Array();

function setDay(prefix) {
  var year  = document.getElementById(prefix+'_year').value;
  var month = document.getElementById(prefix+'_month').value;
  var day   = document.getElementById(prefix+'_day').value;
  var oDay  = document.getElementById(prefix+'_day');
  
  eval("if(!days_g[\""+prefix+"\"]) days_g[\""+prefix+"\"]= new Array();");
  eval("var days = days_g[\""+prefix+"\"];");
  
  if ( month < 1 ) {
		return;
	}
	if (year < 1) {
		dd = new Date();
		year = dd.getYear();
		if (year < 2000) { year += 1900; }
		if ( ( dd.getMonth() + 1 ) > 2 ) {
			year = year + 1;
		}
	}
	last_day_of_month["2"] = ( year % 400 == 0 ) || ( ( year % 100 != 0 ) && ( year % 4 == 0 ) ) ? 29 : 28;
  var last_day = last_day_of_month[ month ] + 1;
  var last_index = last_day - 1;
  var selectedIndex = oDay.selectedIndex;
	
  // Mac IE 対応版
  if ( Mac && IE ) {
    if ( ( last_day < day ) ) {
      alert('存在しない日付です。');
	  oDay.selectedIndex = last_index;
	  return false;
    } else {
      return true;
    }
  }
  
  if ( last_day < oDay.length ) {
    for ( i = oDay.length; i > last_day; i-- ) {
      days.push( oDay.removeChild( oDay.options[ i-1 ] ) );
    }
  } else if ( last_day > oDay.length ) {
	for ( i = oDay.length; i < last_day; i++ ) {
      var day = days.pop();
	  if ( IE ) {
	  	oDay.appendChild(day);
	  } else {
	  	oDay.options[ i ] = day;
	  }
    }
  }
  oDay.selectedIndex = last_index < selectedIndex ? last_index: selectedIndex;
  eval("days_g[\""+prefix+"\"] = days;");
}