//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}

// 通常チェックスクリプト

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);
		  }
		
		}
		
		
		//対象の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);
	
}






