// 共通JavaScript
// idoc.co.jp

//
// 入力値のリセット
// 関数名：IdocReset
//
function IdocReset() {
	document.form1.reset();
}
function IdocReset1() {
	document.form2.reset();
}

//
// 送信
// 関数名：IdocSubmit
//
function IdocSubmit() {
	
	if (IdocChkForm(document.form1)) {
		document.form1.submit();
	}
}
function IdocSubmit1() {
	if (IdocChkForm(document.form2)) {
		document.form2.submit();
	}
}
function IdocSubmit2() {
	if (IdocChkForm(document.form9)) {
		document.form9.submit();
	}
}


//
// フォーム全体のチェック
// 関数名：IdocChkForm
//
function IdocChkForm(Val) {
	var rtn = false;
	for(var i=0; i<Val.validate.length; i++) {
		if (Val.validate[i].value != null) {
			// 郵便番号
			if (Val.validate[i].value == 'zip') {
				if (!IdocChkNull(Val.zip.value)) {
					Val.zip.focus();
					rtn = false;
					break;
					} else {
						if (!IdocChkZip(Val.zip.value)) {
							Val.zip.focus();
							rtn = false;
							break;
						}
					rtn = true;	
				}
			// 住所
			} 
			if (Val.validate[i].value == 'address') {
				if (!IdocChkNull(Val.address.value)) {
					Val.address.focus();
					rtn = false;
					break;
				}
				rtn = true;
			// 会社名
			}
			if (Val.validate[i].value == 'company') {
				if (!IdocChkNull(Val.company.value)) {
					Val.company.focus();
					rtn = false;
					break;
				}
				rtn = true;
			// 部署
			}
			if (Val.validate[i].value == 'department') {
				if (!IdocChkNull(Val.department.value)) {
					Val.department.focus();
					rtn = false;
					break;
				}
				rtn = true;
			// 名前
			}
			if (Val.validate[i].value == 'name') {
				if (!IdocChkNull(Val.name.value)) {
					Val.name.focus();
					rtn = false;
					break;
				}
				rtn = true;
			// チェックボックス
//			}
//			if (Val.validate[i].value == 'cb_trial_prod') {
//				if (!IdocChkChkB(Val.cb_trial_prod.value)) {
//				Val.cb_trial_prod.focus();
//					rtn = false;
//					break;
//				}
//			rtn = true;
			// メール
			}
			if (Val.validate[i].value == 'mail') {
				if (!IdocChkNull(Val.mail.value)) {
					Val.mail.focus();
					rtn = false;
					break;
				} else {
					if (!IdocChkAlphaNumHU(Val.mail.value)) {
						Val.mail.focus();
						rtn = false;
						break;
					} else {
						if (!IdocChkMail(Val.mail.value)) {
							Val.mail.focus();
							rtn = false;
							break;
						}
					}
					rtn = true;
				}
			// メール1
			}
			if (Val.validate[i].value == 'mail1') {
				if (!IdocChkNull(Val.mail1.value)) {
					Val.mail1.focus();
					rtn = false;
					break;
				} else {
					if (!IdocChkAlphaNumHU(Val.mail1.value)) {
						Val.mail1.focus();
						rtn = false;
						break;
					} else {
						if (!IdocChkMail(Val.mail1.value)) {
							Val.mail1.focus();
							rtn = false;
							break;
						}
					}
					rtn = true;
				}
			// メール2
			}
			if (Val.validate[i].value == 'mail2') {
				if (!IdocChkNull(Val.mail2.value)) {
					Val.mail2.focus();
					rtn = false;
					break;
				} else {
					if (!IdocChkSame(Val.mail1.value,Val.mail2.value)) {
						Val.mail2.focus();
						rtn = false;
						break;
					}
					rtn = true;
				}
			// 電話番号
			}
			if (Val.validate[i].value == 'tel') {
				if (!IdocChkNull(Val.tel.value)) {
					Val.tel.focus();
					rtn = false;
					break;
				}
				rtn = true;
			}
			// ユーザーID
			}
			if (Val.validate[i].value == 'userID') {
				if (!IdocChkNull(Val.userID.value)) {
					Val.userID.focus();
					rtn = false;
					break;
				}else {
					if (!IdocChkUserID(Val.userID.value)) {
						Val.userID.focus();
						rtn = false;
						break;
					}
				rtn = true;
			}

			// テキストエリア1
			if (Val.validate[i].value == 'freetext1') {
				if (!IdocChkNull(Val.freetext1.value)) {
					Val.freetext1.focus();
					rtn = false;
					break;
				}
				rtn = true;
			// テキストエリア2
			}
			if (Val.validate[i].value == 'freetext2') {
				if (!IdocChkNull(Val.freetext2.value)) {
					Val.freetext2.focus();
					rtn = false;
					break;
				}
				rtn = true;
			// テキストエリア3
			}
			if (Val.validate[i].value == 'freetext3') {
				if (!IdocChkNull(Val.freetext3.value)) {
					Val.freetext3.focus();
					rtn = false;
					break;
				}
				rtn = true;
			}
		}
	}
	if (Val.validate.value == 'mail') {
		if (!IdocChkNull(Val.mail.value)) {
			Val.mail.focus();
			rtn = false;
		} else {
			if (!IdocChkAlphaNumHU(Val.mail.value)) {
				Val.mail.focus();
				rtn = false;
			} else {
				if (!IdocChkMail(Val.mail.value)) {
					Val.mail.focus();
					rtn = false;
				} else {
					rtn = true;
				}
			}
		}
	}
	return rtn;
}


//
// 空文字のチェック
// 関数名：IdocChkNull
// 引数：str 文字列
// 
function IdocChkNull(str) {
    if (str == null || str.length == 0 ) {
		document.charset='UTF-8';
		alert("必須入力項目に入力されていません");
        return false;
    } else {
		return true;
	}
}

//
// 半角英数,ハイフン(-),アンダースコア(_),ピリオド(.),アットマーク(@)のチェック
// 関数名：IdocChkAlphaNumHU
// 引数：str 文字列
//
function IdocChkAlphaNumHU(str) {
	var data = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_.@';
	var chr="";
	var rtn = false;
	for( var i=0; i<str.length; i++ ) {
		chr=str.substring( i , i+1 );
		for( var x=0 ; x<data.length; x++ ) {
			if( chr==data.substring( x , x+1 ) ) {
				rtn = true;
				break;
			}
			rtn = false;
		}
	}
	if (rtn == false) {
		document.charset='UTF-8';
		alert("メールの入力文字が不正です");
	}
	return rtn;
}

//
// メールアドレスのチェック
// 関数名：IdocChkMail
// 引数：str メールアドレス
//
function IdocChkMail(str) {
	var m = /.+@.+\..+/;
	if(!str.match(m)) {
		document.charset='UTF-8';
		alert("メールアドレスが不正です");
		return false;
	}
	return true;
}

//
// 文字列の比較
// 関数名：IdocChkSame
// 引数：Val1,Val2 (メールアドレス1,メールアドレス2)
//
function IdocChkSame(Val1,Val2) {
	if(Val1 != Val2) {
		document.charset='UTF-8';
		alert("メールアドレスが一致しません");
		return false;
	}
	return true;
}


//
// 郵便番号のチェック
// 関数名：IdocChkZip
// 引数：str 郵便番号
//

function IdocChkZip(str) {
	var z = /^\d{3}-\d{4}$/;
	if(!str.match(z)) {
		document.charset='UTF-8';
		alert("郵便番号が不正です");
		return false;
		} 
	return true;
}




//
// ユーザーIDのチェック
// 関数名：IdocUserID
// 引数：str ユーザーID
//

function IdocChkUserID(str) {
	var i = /^[0-9a-z]+$/;
	if(!str.match(i)) {
		document.charset='UTF-8';
		alert("ユーザーIDは半角英数です");
		return false;
		} 
	return true;
}





//
// チェックボックスのチェック
// 関数名：IdocChkChkB
// 引数：obj
//
//function IdocChkChkB(msg,obj) {
//	if(!obj) return true;
//		if((obj.type || obj[0].type) == 'checkbox'){
// 			var flag = 0;
//			if(obj.length){
//		for(var i=0; i<obj.length; i++) { if(obj[i].checked) flag = 1; }
//			} else {
//		if(obj.checked) flag = 1;
//		}
//	if(flag == 0) {
//	alert(msg + 'を選択してください。');
//	 return false;
//		}
//	}
//	 return true;
//	}

