var ua="";
if(/MSIE/.test(navigator.userAgent)){
	var ua="ie";
}else if(/Firefox/.test(navigator.userAgent)){
	var ua="firefox";
}else if(/Safari/.test(navigator.userAgent)){
	var ua="safari";
}


function getExpires(dd){
	var now = new Date();
	var expires = new Date(now.getTime()+24*60*60*1000*dd);
	return(expires.toGMTString());
}
	function setCookie2(key, value, limit){
	var cValue = key + "=" + escape(value) + "END;expires=" + getExpires(limit) + ";";
	document.cookie = cValue;
}
function getCookie2(key){
	var cValue = document.cookie;
	var sIndex= cValue.indexOf(key,0);
	if(sIndex > -1){
		sIndex = cValue.indexOf("=", sIndex) + 1;
		eIndex = cValue.indexOf("END", sIndex);
		return unescape(cValue.substring(sIndex, eIndex));
	}else{
		return "";
	}
}

// 全角ひらがな以外の文字があるかどうかをチェックする関数
function kanaonly(oj){
	str=oj.value;
	if(str!==""){
		var flg="";
		var val="";
		for (i=0;i<str.length;i++) {
			val=str.substr(i,1);
			if(val.match(/あ|い|う|え|お|か|き|く|け|こ|さ|し|す|せ|そ|た|ち|つ|て|と|な|に|ぬ|ね|の|は|ひ|ふ|へ|ほ|ま|み|む|め|も|や|ゆ|よ|ら|り|る|れ|ろ|わ|を|ん|ゐ|ゑ|が|ぎ|ぐ|げ|ご|ざ|じ|ず|ぜ|ぞ|だ|ぢ|づ|で|ど|ば|び|ぶ|べ|ぼ|ぱ|ぴ|ぷ|ぺ|ぽ|ぁ|ぃ|ぅ|ぇ|ぉ|っ|ゃ|ゅ|ょ|ゎ|・|ー/)){}else{ flg="nomatch"; }
		}
		if(flg=="nomatch"){
			alert('全角ひらがな以外の文字があります。');
			oj.focus();
			return false;
		}else{
			return true;
		}
	}
	return true;
}

// default値から変更がある場合にtrueを返す関数
function IsDirty(eForm)
{
//alert()
  var iNumElems = eForm.elements.length;
  for (var i=0; i<iNumElems; i++)
  {
    var eElem = eForm.elements[i];
    if ("hidden" == eElem.type || "text" == eElem.type || "TEXTAREA" == eElem.tagName)
    {
			if (eElem.value != eElem.defaultValue){
//				alert(eElem.name);
				return true;}
    }
    else if ("checkbox" == eElem.type || "radio" == eElem.type)
    {
			if (eElem.checked != eElem.defaultChecked){
//				alert(eElem.name);
				return true;}
    }
    else if ("SELECT" == eElem.tagName)
    {
      var cOpts = eElem.options;
      var iNumOpts = cOpts.length;
      for (var j=0; j<iNumOpts; j++)
      {
        var eOpt = cOpts[j];
				if (eOpt.selected != eOpt.defaultSelected){
//					alert(eElem.name+" "+eOpt.selected+" "+eOpt.defaultSelected);
					return true;}
      }
    }
  }
//	alert()
  return false;
}

// ラジオボタンやチェックボックスのデフォルトのチェック状態をクリックしても変更させない関数。
function chk_reset(oj){
	var ojname=oj.name;
	var formname=oj.form.name;
	eval("var Robj=document."+formname+"[\'"+ojname+"\']");
	var num=Robj.length;
    for(var i=0; i<num; i++) {
        Robj[i].checked=Robj[i].defaultChecked;
    }
}

// ラジオボタンのチェックを取り消す関数
var tmp_check_value;
function nocheck(oj){
	if(oj.value==tmp_check_value){
		oj.checked=false;
		tmp_check_value="";
	}else{
		tmp_check_value=oj.value;
	}
}

// 1桁だったら先頭に ０を追加する関数。
function zero_add(str){
	if( str < 10 ){ 
		str = "0" + str;
		str = str.replace(/00/,"0");
	}
	return str;
}
function zero_del(str){
	str = str.replace(/^0/,"");
	return str;
}
// 年、月、日のselectボックスがあった場合、年と月によって、日のselectボックスのlastdayを変更する関数
function setDayKeiyaku(oj){
	oj = oj.form;
	var years = parseInt(oj.yearKeiyaku.options[oj.yearKeiyaku.selectedIndex].value);
	var months = parseInt(oj.monthKeiyaku.options[oj.monthKeiyaku.selectedIndex].value);
	var lastday = monthday(years,months);
//	var itemnum = oj.day.length;
	var itemnum = 0;
	if (lastday - 1 < oj.dayKeiyaku.selectedIndex) {
		oj.dayKeiyaku.selectedIndex = lastday - 1;
	}
	if(months>0){
		oj.dayKeiyaku.length = lastday+1;
		oj.dayKeiyaku.options[0].text = "";
		oj.dayKeiyaku.options[0].value = "";
	}
	for (cnt = itemnum + 1;cnt <= lastday;cnt++) {
		oj.dayKeiyaku.options[cnt].text = cnt;
		cnt2 = zero_add(cnt);
		oj.dayKeiyaku.options[cnt].value = cnt2;
	}
}
// 年、月、日のselectボックスがあった場合、年と月によって、日のselectボックスのlastdayを変更する関数
function setDayKeiyakuEnd(oj){
	oj = oj.form;
	var years = parseInt(oj.yearKeiyakuEnd.options[oj.yearKeiyakuEnd.selectedIndex].value);
	var months = parseInt(oj.monthKeiyakuEnd.options[oj.monthKeiyakuEnd.selectedIndex].value);
	var lastday = monthday(years,months);
//	var itemnum = oj.day.length;
	var itemnum = 0;
	if (lastday - 1 < oj.dayKeiyakuEnd.selectedIndex) {
		oj.dayKeiyakuEnd.selectedIndex = lastday - 1;
	}
	if(months>0){
		oj.dayKeiyakuEnd.length = lastday+1;
		oj.dayKeiyakuEnd.options[0].text = "";
		oj.dayKeiyakuEnd.options[0].value = "";
	}
	for (cnt = itemnum + 1;cnt <= lastday;cnt++) {
		oj.dayKeiyakuEnd.options[cnt].text = cnt;
		cnt2 = zero_add(cnt);
		oj.dayKeiyakuEnd.options[cnt].value = cnt2;
	}
}
// 年、月、日のselectボックスがあった場合、年と月によって、日のselectボックスのlastdayを変更する関数
function setDay(oj){
	oj = oj.form;
	var years = parseInt(oj.year.options[oj.year.selectedIndex].value);
	var months = parseInt(oj.month.options[oj.month.selectedIndex].value);
	var lastday = monthday(years,months);
//	var itemnum = oj.day.length;
	var itemnum = 0;
	if (lastday - 1 < oj.day.selectedIndex) {
		oj.day.selectedIndex = lastday - 1;
	}
	if(months>0){
		oj.day.length = lastday+1;
		oj.day.options[0].text = "";
		oj.day.options[0].value = "";
	}
	for (cnt = itemnum + 1;cnt <= lastday;cnt++) {
		oj.day.options[cnt].text = cnt;
		cnt2 = zero_add(cnt);
		oj.day.options[cnt].value = cnt2;
	}
}
// 年、月、日のselectボックスがあった場合、年と月によって、日のselectボックスのlastdayを変更する関数
function setDay2(oj){
	oj = oj.form;
	var years = parseInt(oj.year.options[oj.year.selectedIndex].value);
	var months = parseInt(oj.month.options[oj.month.selectedIndex].value);
	var lastday = monthday(years,months);
	var itemnum = 0;
	if (lastday < oj.day.selectedIndex) {
		oj.day.selectedIndex = lastday;
	}
	if(months>0){
		oj.day.length = lastday;
	}
	for (cnt=0;cnt<lastday;cnt++) {
		oj.day.options[cnt].text = cnt+1;
		cnt2 = zero_add(cnt+1);
		oj.day.options[cnt].value = cnt2;
	}
}
function monthday(years,months){
	if(years>1900){
		var lastday = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
		if (((years % 4 == 0) && (years % 100 != 0)) || (years % 400 == 0)){
			lastday[1] = 29;
		}
		return lastday[months - 1];
	}else{
		return 31;
	}
}


function ccheckbox(oj){

	eval("var DN=document."+oj.form.name);
	var DNS=DN.elements['s_bunrui[]'];

	// まず障害有無radioを調べ、どちらかにチェックがあったら、その場合の違反を調べる
	if(DN.syougai[0].checked==true){
		if((DNS[9].checked==true)||(DNS[10].checked==true)){ 
			alert("「障害有無」が有りの場合は、「家, 一」はチェックできません。");
			oj.checked=false;
			return false; 
		}
	}else if(DN.syougai[1].checked==true){
		if(
		   (DNS[0].checked==true)||
		   (DNS[1].checked==true)||
		   (DNS[2].checked==true)||
		   (DNS[3].checked==true)||
		   (DNS[4].checked==true)||
		   (DNS[5].checked==true)||
		   (DNS[6].checked==true)||
		   (DNS[7].checked==true)||
		   (DNS[8].checked==true)
		){
			alert("「障害有無」が無しの場合は、「肢, 聴, 視, 言, 内, 知, 発, 精, 児」はチェックできません。")
			oj.checked=false;
			return false; 
		}
	}
	
	// 次に障害有無radioのチェック状態に関係なく違反を調べる
	var ccount=0;
	if(DNS[9].checked==true){ccount++;}
	if(DNS[10].checked==true){ccount++;}

	if(ccount>1){ 
		alert("「家, 一」は同時にチェックできません。\nいずれかのみのチェックとしてください。");
		oj.checked=false;
		return false; 
	}else if((DNS[9].checked==true)||(DNS[10].checked==true)){
		if(
		   (DNS[0].checked==true)||
		   (DNS[1].checked==true)||
		   (DNS[2].checked==true)||
		   (DNS[3].checked==true)||
		   (DNS[4].checked==true)||
		   (DNS[5].checked==true)||
		   (DNS[6].checked==true)||
		   (DNS[7].checked==true)||
		   (DNS[8].checked==true)
		){
			alert("「家, 一」のいずれかと、それ以外の項目（「肢, 聴, 視, 言, 内, 知, 発, 精, 児」）は同時にチェックできません。")
			oj.checked=false;
			return false; 
		}
	}else if((DNS[0].checked==true)&&
		   (DNS[1].checked==true)&&
		   (DNS[2].checked==true)&&
		   (DNS[3].checked==true)&&
		   (DNS[4].checked==true)&&
		   (DNS[5].checked==true)&&
		   (DNS[6].checked==true)&&
		   (DNS[7].checked==true)&&
		   (DNS[8].checked==true)){
		   	alert("そんな障害者見たことありませんが？本当によろしいですか？");
			return true;
	}else{
		return true;
	}
	
}


function unfocus(){
	try {
		if(typeof(new_win)=="undefined"){
		}else{
			if(new_win){
				new_win.focus();
			}
		}
		if(typeof(new_windel)=="undefined"){
		}else{
			if(new_windel){
				new_windel.focus();
			}
		}
	} 
	catch(myerr) {}

}

function showTips(nm){
  var style=document.getElementById?
              document.getElementById(nm).style:(
                document.all?document.all(nm).style:(
                  document.layers?document.layers[nm]:null
                  )
              );
  if(style) style.visibility='inherit';
}
function hideTips(nm){
  var style=document.getElementById?
              document.getElementById(nm).style:(
                document.all?document.all(nm).style:(
                  document.layers?document.layers[nm]:null
                  )
              );
  if(style) style.visibility='hidden';
}

/**************************************************************** 
* 機　能： 入力された値が日付でYYYY/MM/DD形式になっているか調べる 
* 引　数： datestr　入力された値 
* 戻り値： 正：true　不正：false 
****************************************************************/ 
function ckDate(datestr) { 
    // 正規表現による書式チェック 
    if(!datestr.match(/^\d{4}-\d{2}-\d{2}$/)){ 
        return false; 
    } 
    var vYear = datestr.substr(0, 4) - 0; 
    var vMonth = datestr.substr(5, 2) - 1; // Javascriptは、0-11で表現 
    var vDay = datestr.substr(8, 2) - 0; 
    // 月,日の妥当性チェック 
    if(vMonth >= 0 && vMonth <= 11 && vDay >= 1 && vDay <= 31){ 
        var vDt = new Date(vYear, vMonth, vDay); 
        if(isNaN(vDt)){ 
            return false; 
        }else if(vDt.getFullYear() == vYear && vDt.getMonth() == vMonth && vDt.getDate() == vDay){ 
            return true; 
        }else{ 
            return false; 
        } 
    }else{ 
        return false; 
    } 
} 
