// INITIALIZE ------------------------------------------------------------------
var txcolor = "#000000"; // テキストの色
var bgcolor = "#ffffff"; // 入力時のバックの色
var ercolor = "#C4ECB4"; // 未入力時のバックの色

// 入力チェックエラーのコメント
var errCom = new Array();
errCom['text']		= 'が入力されておりません。';
errCom['textarea']	= 'が入力されておりません。';
errCom['radio']		= 'がチェックされておりません。';
errCom['checkbox']	= 'がチェックされておりません。';
errCom['select-one']= 'が選択されておりません。';
errCom['select-multiple']= 'が選択されておりません。';
errCom['file']		= 'が選択されておりません。';
errCom['email']		= 'E-mailのアドレスが正しくありません。';
errCom['email2']	= '再入力したE-mailのアドレスが正しくありません。';

var errObj, errorflg, caution, hold;
var must = '_need';
onload = btn_off;


function btn_off(){
	try{
		var btnObj = document.getElementById("btn");
		var policyObj = document.getElementById("policy");
		(policyObj['checked'])? checked = false : checked = true;
		btnObj['disabled'] = checked;
	}catch(e){
	}
}

function sendMail(obj){
	
	errObj = new Array();
	errorflg = 0;
	caution = new Array();
	cautionAlert = '';
	
	for(i=0;i<obj['length'];i++){
		
		var elmObj = obj['elements'][i];
		var elmName = elmObj['name'].replace(must,'');
		var needFlg = elmObj['name'].match(must);
		
		if(needFlg == must){
			elmObj['style']['backgroundColor'] = bgcolor;
			if(valueChk(elmObj,elmName)){
				if(elmName == 'E-mail')mailAddrChk(elmObj);
				if(elmName == 'E-mail2')mailRemindChk(elmObj);
			}
		}
		
	}
	if(errObj.length > 0){
		for(i in errObj)errObj[i]['style']['backgroundColor'] = ercolor;
		for(e in caution)cautionAlert += caution[e].replace(/\[\]/,'') + '\n';
		alert(cautionAlert);
		return false;
	}else{
		return true;
	}
}

// 未入力チェック
function valueChk(elmObj,elmName){
	var inputMatch = /text|textarea/;
	var checkedAry = new Array();
	
	if(elmObj['type'].match(/text|textarea|file/)){
		if(elmObj['value'] == ''){
			caution[elmName] = elmName + errCom[elmObj['type']];
			errObj.push(elmObj);
			return false;
		}else return true;
		
	}else if(elmObj['type'].match(/select-multiple|select-one/)){
		if(elmObj.selectedIndex == 0 || elmObj['value'] == ''){
			caution[elmName] = elmName + errCom[elmObj['type']];
			errObj.push(elmObj);
			return false;
		}else return true;
		
	}else{
		var obj = document.getElementsByName(elmObj['name']);
		for(n=0;n<obj['length'];n++)if(obj[n]['checked'])checkedAry.push(obj[n]['value']);
		if(checkedAry.length){
			return true;
		}else{
			for(n=0;n<obj['length'];n++){
				caution[elmName] = elmName + errCom[obj[n]['type']];
				errObj.push(obj[n]);
			}
		}
	}
}

// メールアドレスの整合性チェック
function mailAddrChk(elmObj){
	check = /.+@.+\..+/;
	if(!elmObj['value'].match(check)){
		caution[elmObj['name']] = errCom['email'];
		errObj.push(elmObj);
		return false;
	}else return true;
}

// 再入力されたメールアドレス１、２の整合性チェック
function mailRemindChk(elmObj){
	var email = document.getElementsByName('E-mail'+must).item(0);
	if(email['value'] == elmObj['value']){
		return true;
	}else{
		caution[elmObj['name']] = errCom['email2'];
		errObj.push(elmObj);
		return false;
	}
}

// 個別クリアできないfile属性のinput部品をクリアする
function fileObjClr(id,name){
	var fileObj = document.getElementById(id);
	fileObj['innerHTML'] = '';
	fileObj['innerHTML'] = '<input name="'+name+'" type="file" />';
}


