
// 通常チェックスクリプト2

function form_check(formname , input){
	array_first = new Array ;
	array_first = input.split(',');
	
	array_input = new Array ;
	array_fieldname = new Array ;
	
	for( j = 0 ; j < array_first.length ; j++ ){
	
		//alert(array_first[j]);
		

		tmp_array = new Array ;
		tmp_array = array_first[j].split('=') ;
		
		array_input[j] = tmp_array[0] ;
		array_fieldname[j] = tmp_array[1] ;
		
		//alert("array_input="+array_input[j]);
		//alert("array_fieldname="+array_fieldname[j]);
	}
	
	for( k = 0 ; k < array_input.length ; k++ ){

		tmp_input = array_input[k];
		tmp_fieldname = array_fieldname[k];
		
		if (formname.elements[array_input[k]].value == "" ){
		
			alert(tmp_fieldname+"が入力されていません");
			formname.elements[array_input[k]].focus();
			return (false);
		}
		
		
		if( formname.elements[array_input[k]].name == 'email' ){
		
		var theEmail = formname.elements[array_input[k]].value ;
		
		if (theEmail == "")
		  {
		    alert("メールアドレスを入力してください。");
		    formname.email.focus();
		    return (false);
		  }

			var newstr = "";
			var at = false;
			var dot = false;


		 if (theEmail.indexOf("@") != -1)
		  {
				at = true;
		  } 
		 else if (theEmail.indexOf(".") != -1) 
		  {
				dot = true;
		  }

		 for (var i = 0; i < theEmail.length; i++) 
		  {
				ch = theEmail.substring(i, i + 1)
				if ((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z")
					|| (ch == "@") || (ch == ".") || (ch == "_")
					|| (ch == "-") || (ch >= "0" && ch <= "9")) {
					newstr += ch;
					if (ch == "@") {
						at=true;
					}
					if (ch == ".") {
						dot=true;
					}
				}
		  }
		 if ((at != true) || (dot != true)) 
		  {
		    alert ("入力されたメールアドレスは\n不正なアドレスのようです。\n再度入力し直してください。");
		    formname.email.focus();
		   
		    return (false);
		  }
		
		}
		
		
		
	
			
	}

	
	return(true);
	
}


function double_check( target )
{

  var theEmail  = target.email.value;
  var theEmail2 = target.comment5.value;

 

 if (theEmail == "")
  {
    alert("メールアドレスを入力してください。");
    target.email.focus();
    target.email.style.backgroundColor = "RGB(248,242,143)";
	target.comment5.style.backgroundColor = "RGB(255,255,255)";
    return (false);
  }

	var newstr = "";
	var at = false;
	var dot = false;


 if (theEmail.indexOf("@") != -1)
  {
		at = true;
  } 
 else if (theEmail.indexOf(".") != -1) 
  {
		dot = true;
  }

 for (var i = 0; i < theEmail.length; i++) 
  {
		ch = theEmail.substring(i, i + 1)
		if ((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z")
			|| (ch == "@") || (ch == ".") || (ch == "_")
			|| (ch == "-") || (ch >= "0" && ch <= "9")) {
			newstr += ch;
			if (ch == "@") {
				at=true;
			}
			if (ch == ".") {
				dot=true;
			}
		}
  }
 if ((at != true) || (dot != true)) 
  {
    alert ("入力されたメールアドレスは\n不正なアドレスのようです。\n再度入力し直してください。");
    target.email.focus();
    target.email.style.backgroundColor = "RGB(248,242,143)";
	target.comment5.style.backgroundColor = "RGB(255,255,255)";
    return (false);
  }

 if (theEmail2 == "")
  {
    alert("メールアドレス（確認用）を入力してください。");
    target.comment5.focus();
    target.comment5.style.backgroundColor = "RGB(248,242,143)";
	target.email.style.backgroundColor = "RGB(255,255,255)";
    return (false);
  }

  if (theEmail2 != theEmail)
  {
    alert("二つのメールアドレスが一致しません。確認の上正しいメールアドレスを入力してください。");
    target.comment5.focus();
    target.comment5.style.backgroundColor = "RGB(248,242,143)";
    target.email.style.backgroundColor = "RGB(248,242,143)";
    return (false);
  }
  else
  {
    return (true);
  }

}




function form_check_complex(formname , input){
	array_first = new Array ;
	array_first = input.split(',');
	
	array_input = new Array ;
	array_fieldname = new Array ;
	
	
	
	for( j = 0 ; j < array_first.length ; j++ ){
	
		//alert(array_first[j]);
		
		tmp_array = new Array ;
		tmp_array = array_first[j].split('=') ;
		
		array_input[j] = tmp_array[0] ;
		array_fieldname[j] = tmp_array[1] ;
		
		//alert("array_input="+array_input[j]);
		//alert("array_fieldname="+array_fieldname[j]);
	}
	
	
	
	for( k = 0 ; k < array_input.length ; k++ ){

		tmp_input = array_input[k];
		tmp_fieldname = array_fieldname[k];
		//alert(tmp_fieldname+"入力チェック開始");
		
		//alert(formname.elements[array_input[k]].length);
		
		
		//対象のinputObjectが、複数の要素の配列であるかどうか調べる。
		
		if( formname.elements[array_input[k]].length !== undefined ){
		
		//もし配列だったら（配列へのReferenceが返るなら）
	
		//さらに、対象のinputObjectが、複数選択可能なcheckboxだったら、論理和で判断
		
			if ( formname.elements[array_input[k]][0].type === "checkbox" ){
			
				//alert("これはチェックボックスな予感")
			
				
				//全てのチェックボックスのvalueを取得
				var tmp_checkbox_value = "" ;
				for ( var m = 0 ; m < formname.elements[array_input[k]].length ; m++ ){
					tmp_checkbox_value += formname.elements[array_input[k]][m].checked ;						
				};
				
				
				//alert(tmp_checkbox_value);
				//alert(tmp_checkbox_value.indexOf('true'));
				
				//もしこれが全てfalseだったら
				if ( tmp_checkbox_value.indexOf("true") == -1 ){
					alert(tmp_fieldname+"が入力されていません");
					formname.elements[array_input[k]][0].focus();
					return false ;
				}
				
		//さらに、対象のinputObjectが、複数選択可能なselectboxだったら、selectedIndexで判断
			
			}else if ( formname.elements[array_input[k]].type === "select-one" ) {
			
				//alert("セレクトボックスかも");
				
				if ( formname.elements[array_input[k]].selectedIndex == 0 ){
						alert(tmp_fieldname+"が入力されていません");
						formname.elements[array_input[k]].focus();
						return false ;
				}
				
		//さらに、対象のinputObjectが、複数選択可能なradiobuttonだったら、論理和で判断
			
			}else if ( formname.elements[array_input[k]][0].type === "radio" ){
				//alert("ラジオボタンかも");
				
				var tmp_radio_value = "" ;
				
				//全てのラジオボタンのvalueを取得
				for ( var p = 0 ; p < formname.elements[array_input[k]].length ; p++ ){
					tmp_radio_value += formname.elements[array_input[k]][p].checked ;	
				}
				
				//もしこれが全てfalseだったら
				if ( tmp_radio_value.indexOf("true") == -1 ){
					alert(tmp_fieldname+"が入力されていません");
					formname.elements[array_input[k]][0].focus();
					return false ;
				}
			
			}else{
			
			
		//また、通常のinputObjectなら、2次元配列としてそれぞれをチェック
		
		
				for ( var n = 0 ; n < formname.elements[array_input[k]].length ; n++ ){
					if (formname.elements[array_input[k]][n].value === "" ){
							alert(tmp_fieldname+"が入力されていません");
							formname.elements[array_input[k]][n].focus();
							return (false);
					}					
				}
		
		
			}

		}else{

	//普通の単一オブジェクトだったら
	
	
		if (formname.elements[array_input[k]].value === '' ){
		
			//alert(formname.elements[array_input[k]].value)
			alert(tmp_fieldname+"が入力されていません");
			formname.elements[array_input[k]].focus();
			return (false);
		}
		
	//メルアド二十チェック用[email2]だったら
		
		if (formname.elements[array_input[k]].name === 'email2' ){
			
			if(formname.elements.email2.value !== formname.elements.email.value ){
		
			//alert(formname.elements[array_input[k]].value)
			alert("メールアドレスが一致しません");
			formname.elements.email.focus();
			return (false);
			}
		}
	


		}
		

			
	}

	
	return(true);
	
}




//Ver2 Emailのダブルチェック対応など済み




function form_check_v2(formname , input){
	array_first = new Array ;
	array_first = input.split(',');
	
	array_input = new Array ;
	array_fieldname = new Array ;
	
	
	
	for( j = 0 ; j < array_first.length ; j++ ){
	
		//alert(array_first[j]);
		
		tmp_array = new Array ;
		tmp_array = array_first[j].split('=') ;
		
		array_input[j] = tmp_array[0] ;
		array_fieldname[j] = tmp_array[1] ;
		
		//alert("array_input="+array_input[j]);
		//alert("array_fieldname="+array_fieldname[j]);
	}
	
	
	
	for( k = 0 ; k < array_input.length ; k++ ){

		tmp_input = array_input[k];
		tmp_fieldname = array_fieldname[k];
		//alert(tmp_fieldname+"入力チェック開始");
		
		//alert(formname.elements[array_input[k]].length);
		
		if( formname.elements[array_input[k]].name == 'email' ){
		
		var theEmail = formname.elements[array_input[k]].value ;
		
		if (theEmail == "")
		  {
		    alert("メールアドレスを入力してください。");
		    formname.email.focus();
		    return (false);
		  }

			var newstr = "";
			var at = false;
			var dot = false;


		 if (theEmail.indexOf("@") != -1)
		  {
				at = true;
		  } 
		 else if (theEmail.indexOf(".") != -1) 
		  {
				dot = true;
		  }

		 for (var i = 0; i < theEmail.length; i++) 
		  {
				ch = theEmail.substring(i, i + 1)
				if ((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z")
					|| (ch == "@") || (ch == ".") || (ch == "_")
					|| (ch == "-") || (ch >= "0" && ch <= "9")) {
					newstr += ch;
					if (ch == "@") {
						at=true;
					}
					if (ch == ".") {
						dot=true;
					}
				}
		  }
		 if ((at != true) || (dot != true)) 
		  {
		    alert ("入力されたメールアドレスは\n不正なアドレスのようです。\n再度入力し直してください。");
		    formname.email.focus();
		   
		    return (false);
		  }
		
		}

	if( formname.elements[array_input[k]].name == 'e_mail' ){
		
		var theEmail = formname.elements[array_input[k]].value ;
		
		if (theEmail == "")
		  {
		    alert("メールアドレスを入力してください。");
		    formname.e_mail.focus();
		    return (false);
		  }

			var newstr = "";
			var at = false;
			var dot = false;


		 if (theEmail.indexOf("@") != -1)
		  {
				at = true;
		  } 
		 else if (theEmail.indexOf(".") != -1) 
		  {
				dot = true;
		  }

		 for (var i = 0; i < theEmail.length; i++) 
		  {
				ch = theEmail.substring(i, i + 1)
				if ((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z")
					|| (ch == "@") || (ch == ".") || (ch == "_")
					|| (ch == "-") || (ch >= "0" && ch <= "9")) {
					newstr += ch;
					if (ch == "@") {
						at=true;
					}
					if (ch == ".") {
						dot=true;
					}
				}
		  }
		 if ((at != true) || (dot != true)) 
		  {
		    alert ("入力されたメールアドレスは\n不正なアドレスのようです。\n再度入力し直してください。");
		    formname.e_mail.focus();
		   
		    return (false);
		  }
		
		}
		
		
		
		//対象のinputObjectが、複数の要素の配列であるかどうか調べる。
		
		if( formname.elements[array_input[k]].length !== undefined ){
		
		//もし配列だったら（配列へのReferenceが返るなら）
	
		//さらに、対象のinputObjectが、複数選択可能なcheckboxだったら、論理和で判断
		
			if ( formname.elements[array_input[k]][0].type === "checkbox" ){
			
				//alert("これはチェックボックスな予感")
			
				
				//全てのチェックボックスのvalueを取得
				var tmp_checkbox_value = "" ;
				for ( var m = 0 ; m < formname.elements[array_input[k]].length ; m++ ){
					tmp_checkbox_value += formname.elements[array_input[k]][m].checked ;						
				};
				
				
				//alert(tmp_checkbox_value);
				//alert(tmp_checkbox_value.indexOf('true'));
				
				//もしこれが全てfalseだったら
				if ( tmp_checkbox_value.indexOf("true") == -1 ){
					alert(tmp_fieldname+"が入力されていません");
					formname.elements[array_input[k]][0].focus();
					return false ;
				}
				
		//さらに、対象のinputObjectが、複数選択可能なselectboxだったら、selectedIndexで判断
			
			}else if ( formname.elements[array_input[k]].type === "select-one" ) {
			
				//alert("セレクトボックスかも");
				
				if ( formname.elements[array_input[k]].selectedIndex == 0 ){
						alert(tmp_fieldname+"が入力されていません");
						formname.elements[array_input[k]].focus();
						return false ;
				}
				
		//さらに、対象のinputObjectが、複数選択可能なradiobuttonだったら、論理和で判断
			
			}else if ( formname.elements[array_input[k]][0].type === "radio" ){
				//alert("ラジオボタンかも");
				
				var tmp_radio_value = "" ;
				
				//全てのラジオボタンのvalueを取得
				for ( var p = 0 ; p < formname.elements[array_input[k]].length ; p++ ){
					tmp_radio_value += formname.elements[array_input[k]][p].checked ;	
				}
				
				//もしこれが全てfalseだったら
				if ( tmp_radio_value.indexOf("true") == -1 ){
					alert(tmp_fieldname+"が入力されていません");
					formname.elements[array_input[k]][0].focus();
					return false ;
				}
			
			}else{
			
			
		//また、通常のinputObjectなら、2次元配列としてそれぞれをチェック
		
		
				for ( var n = 0 ; n < formname.elements[array_input[k]].length ; n++ ){
					if (formname.elements[array_input[k]][n].value === "" ){
							alert(tmp_fieldname+"が入力されていません");
							formname.elements[array_input[k]][n].focus();
							return (false);
					}					
				}
		
		
			}

		}else{

	//普通の単一オブジェクトだったら
	
	
		if (formname.elements[array_input[k]].value === '' ){
		
			//alert(formname.elements[array_input[k]].value)
			alert(tmp_fieldname+"が入力されていません");
			formname.elements[array_input[k]].focus();
			return (false);
		}
		
	//メルアド二十チェック用[email2]だったら
		
		if (formname.elements[array_input[k]].name === 'email2' ){
			
			if(formname.elements.email2.value !== formname.elements.email.value ){
		
			//alert(formname.elements[array_input[k]].value)
			alert("メールアドレスが一致しません");
			formname.elements.email.focus();
			return (false);
			}
		}

		if (formname.elements[array_input[k]].name === 'e_mail_kn' ){
			
			if(formname.elements.e_mail_kn.value !== formname.elements.e_mail.value ){
		
			//alert(formname.elements[array_input[k]].value)
			alert("メールアドレスが一致しません");
			formname.elements.e_mail.focus();
			return (false);
			}
		}
	
	


		}
		

			
	}

	
	return(true);
	
}





