//--------------------------------------
//Function	chk_num1
//Param			val
//Return		true or false
//Note
//--------------------------------------
function chk_num1(val) {
	var str = "" + val;
	var i;
	var c;

	for (i = 0; i < str.length; i++ ) {
		var c = str.charAt(i);
		if (c >= "0" && c <= "9" ) {
			continue;
		}else{
			return false;
		}
	}
	return true;
}

//--------------------------------------
//Function	chk_num2
//Param			val
//Return		true or false
//Note
//--------------------------------------
function chk_num2(val) {
	var str = "" + val;
	var i;
	var c;

	for (i = 0; i < str.length; i++ ) {
		c = str.charAt(i);
		if (c >= "0" && c <= "9" ) {
			continue;
		}else{
			if (c != '-') {
				return false;
			}
		}
	}
	return true;
}

//--------------------------------------
//Function	chk_err_word
//Param			val
//Return		true or false
//Note			'""<>& is error words
//					39,34,60,62,38
//--------------------------------------
function chk_err_word(val) {
	var ch1;
	var ch2;
	var wkstr = val;
	var i;

	for (i = 0; i < wkstr.length; i++) {
		ch1 = wkstr.charCodeAt(i);
		ch2 = wkstr.substring(i, i+1);
		if (ch1 == 39 || ch1 == 34 || ch1 == 60 || 
				ch1 == 62 || ch1 == 38)	{
			return false;
		}
	}
	return true;
}

//--------------------------------------
//Function	chk_kana
//Param			val
//Return		true or false
//Note
//--------------------------------------
function chk_kana(val) {
	var len = val.length;
	var n = "";
	var i;

	for(i = 0; i < len; i++) {
		n = val.substring(i, i+1);
		if (n < "ァ" || n > "ヶ") {
			return false;
		}
	}
	return true;
}

//--------------------------------------
//Function	chk_len
//Param			val
//Return		byte
//Note
//--------------------------------------
function chk_len(val) {
	var i;
	var len = 0;
	var val = escape(val);

	for (i = 0; i < val.length; i++, len++) {
		if (val.charAt(i) == "%") {
			if (val.charAt(++i) == "u") {
				i += 3;
				len++;
			}
			i++;
		}
	}
	return len;
}

//--------------------------------------
//Function	del_crlf
//Param			val
//Return		newVal
//Note
//--------------------------------------
function del_crlf(val) { 
	var i;
	var newVal = ''; 

	for(i = 0; i < val.length; i++){ 
		text = escape(val.substring(i, i+1)); 
		if(text != "%0D" && text != "%0A"){ 
			newVal += val.substring(i, i+1); 
		} 
	}
	return(newVal);
} 
//--------------------------------------
//Function	chk_char
//Param			val
//					0:hankaku 1:zenkaku
//Return		true or false
//Note
//--------------------------------------
function chk_char(val,mode) {
	var i;
	var c;

	for (i = 0; i < val.length; i++) { 
		c = val.charCodeAt(i); 

		if ( (c >= 0x0 && c < 0x81) || (c == 0xf8f0) || (c >= 0xff61 && c < 0xffa0) || (c >= 0xf8f1 && c < 0xf8f4)) { 
			if(!mode) return true; 
		} else {
			if(mode) return true;
		} 
	} 
	return false; 
} 

//--------------------------------------
//Function	chk_mail
//Param			val
//Return		true or false
//Note
//--------------------------------------
function chk_mail(val){ 
	if (val.match(/[!#-9A-~]+@+[a-z0-9]+.+[!#-9A-~]/i) == false) {
		return false;
	}
	return true;
}

//--------------------------------------
//Function	chk_sel
//Param			formname,elmname
//Return		true or false
//Note
//--------------------------------------
function chk_sel(formname,elmname){ 
	var selopt;

	selopt = document.forms[formname].elements[elmname].selectedIndex;

	if (selopt == 0) {
		return false;
	}

	if (document.forms[formname].elements[elmname].options[selopt].text == "") {
		return false;
	}

	return true;
}

//--------------------------------------
//Function	chk_radio
//Param			formname,elmname
//Return		true or false
//Note
//--------------------------------------
function chk_radio(formname,elmname) {
	var i;

	for (i = 0; i < document.forms[formname].elements[elmname].length; i++) {
		if (document.forms[formname].elements[elmname][i].checked == true) {
			return true;
		}
	}

	return false;
}

//--------------------------------------
//Function	chk_date
//Param			yyyy,mm,dd
//Return		true or false
//Note
//--------------------------------------
function chk_date(p_y,p_m,p_d) {

  var ymd;

  //数値チェック
//  if (!jiki_numcheck(ymd)){
//    return false;
//  }

	ymd = p_y;
	ymd += p_m;
	ymd += p_d;

	if (ymd.length != 8) {
		return false;
	}

	var yyyy =  parseInt(ymd.substring(0,4),10);
	var mm =  parseInt(ymd.substring(4,6),10);
	var dd =  parseInt(ymd.substring(6,8),10);

	if ( yyyy < 1868 ) {
		return false;
	}

	if ( yyyy == 1868 ){
		if( mm == 9 && d < 8 ){
			return false;
		}else if( mm < 9 ){
			return false;
		}
	}

	if ( mm < 1 || mm > 12 ) {
		return false;
	}

	if ( dd < 1 || dd > 31 ) {
		return false;
	}

	if ( mm == 4 || mm == 6 || mm == 9 || mm == 11) {
		if ( dd > 30 ) {
			return false;
		}
	}

	if ( mm == 2 ) {
		var day = 28;
		if ((yyyy % 4) == 0 && (yyyy % 100) != 0 || (yyyy % 400) == 0) {
			day = 29;
		}
		if ( dd > day ) {
			return false;
		}
	}

	return true;
}