
var requestClass=new Object();

requestClass=function(){
	this.formArea=ID("form");
	this.inputName=CLASS(this.formArea, "inputName")[0];
	this.inputResidentNumber=CLASS(this.formArea, "inputResidentNumber")[0];
	this.inputTel=CLASS(this.formArea, "inputTel")[0];
	this.inputPhone=CLASS(this.formArea, "inputPhone")[0];
	this.buttonZipcode=CLASS(this.formArea, "buttonZipcode")[0];
	this.inputZipcode=CLASS(this.formArea, "inputZipcode")[0];
	this.inputAddress01=CLASS(this.formArea, "inputAddress01")[0];
	this.inputAddress02=CLASS(this.formArea, "inputAddress02")[0];
	this.inputContract=CLASS(this.formArea, "inputContract");
	this.inputPayment=CLASS(this.formArea, "inputPayment");
	this.bank=CLASS(this.formArea, "bank");
	this.card=CLASS(this.formArea, "card");
	this.telephone=CLASS(this.formArea, "telephone");
	this.inputBankName=CLASS(this.formArea, "inputBankName")[0];
	this.inputBankNumber=CLASS(this.formArea, "inputBankNumber")[0];
	this.inputBankUser=CLASS(this.formArea, "inputBankUser")[0];
	this.inputBankUserNumber=CLASS(this.formArea, "inputBankUserNumber")[0];
	this.inputCardName=CLASS(this.formArea, "inputCardName")[0];
	this.inputCardNumber=CLASS(this.formArea, "inputCardNumber")[0];
	this.inputCardUser=CLASS(this.formArea, "inputCardUser")[0];
	this.inputCardDate=CLASS(this.formArea, "inputCardDate")[0];
	this.inputCardUserNumber=CLASS(this.formArea, "inputCardUserNumber")[0];
	this.inputTelephone=CLASS(this.formArea, "inputTelephone")[0];
	this.inputTelephoneUser=CLASS(this.formArea, "inputTelephoneUser")[0];
	this.inputTelephoneUserNumber=CLASS(this.formArea, "inputTelephoneUserNumber")[0];
	this.inputGoods=CLASS(this.formArea, "inputGoods");
	this.inputActiveTime=CLASS(this.formArea, "inputActiveTime")[0];
	this.inputCallTime=CLASS(this.formArea, "inputCallTime")[0];
	this.inputEtc=CLASS(this.formArea, "inputEtc")[0];

	this.inputQookNet=CLASS(this.formArea, "inputQookNet");
	this.inputQookTv=CLASS(this.formArea, "inputQookTv");
	this.inputQooktel=CLASS(this.formArea, "inputQooktel");
	this.inputQooktel_Num=CLASS(this.formArea, "inputQooktel_Num")[0];
	this.inputQooktel_op2_com=CLASS(this.formArea, "inputQooktel_op2_com")[0];
	this.inputQooktel_op2_Num=CLASS(this.formArea, "inputQooktel_op2_Num")[0];
	this.inputQookNettel=CLASS(this.formArea, "inputQookNettel");
	this.inputQookNettel_Num=CLASS(this.formArea, "inputQookNettel_Num")[0];
	this.inputQookNettel_op2_com=CLASS(this.formArea, "inputQookNettel_op2_com")[0];
	this.inputQookNettel_op2_Num=CLASS(this.formArea, "inputQookNettel_op2_Num")[0];
	this.inputQookOption1=CLASS(this.formArea, "inputQookOption1");

	this.buttonSubmit=CLASS(this.formArea, "buttonSubmit")[0];

	for(var i in this.inputPayment){
		this.inputPayment[i]._target=this;
		var paymentSelectFunction=bindAsListener(this.paymentSelect, this.inputPayment[i]);
		addListener(this.inputPayment[i], "click", paymentSelectFunction);
	}

	this.zipcodeWindowFunction=bindAsListener(this.zipcodeWindow, this);
	this.formSubmitFunction=bindAsListener(this.formSubmit, this);
	this.formSubmitResultFunction=bindAsListener(this.formSubmitResult, this);

	addListener(this.formArea, "submit", this.formSubmitFunction);
	addListener(this.buttonZipcode, "click", this.zipcodeWindowFunction);
	addListener(this.buttonSubmit, "click", this.formSubmitFunction);
}

requestClass.prototype={
	zipcodeWindow:function(){
		zipcodeSystem.zipcodeTargetInput=this.inputZipcode;
		zipcodeSystem.addressTargetInput=this.inputAddress01;
		zipcodeSystem.zipcodeDefault();
		zipcodeCover.on();
		return false;
	},

	paymentSelect:function(){
		if(this.value=="paper"){
			for(var i in this._target.bank){
				this._target.bank[i].style.display="none";
			}
			for(var i in this._target.card){
				this._target.card[i].style.display="none";
			}
			for(var i in this._target.telephone){
				this._target.telephone[i].style.display="none";
			}
		}else if(this.value=="bank"){
			for(var i in this._target.bank){
				this._target.bank[i].style.display="block";
			}
			for(var i in this._target.card){
				this._target.card[i].style.display="none";
			}
			for(var i in this._target.telephone){
				this._target.telephone[i].style.display="none";
			}
		}else if(this.value=="card"){
			for(var i in this._target.bank){
				this._target.bank[i].style.display="none";
			}
			for(var i in this._target.card){
				this._target.card[i].style.display="block";
			}
			for(var i in this._target.telephone){
				this._target.telephone[i].style.display="none";
			}
		}else if(this.value=="telephone"){
			for(var i in this._target.bank){
				this._target.bank[i].style.display="none";
			}
			for(var i in this._target.card){
				this._target.card[i].style.display="none";
			}
			for(var i in this._target.telephone){
				this._target.telephone[i].style.display="block";
			}
		}
	},

	formSubmit:function(){
		var contract=(radioValue(this.inputContract)) ? radioValue(this.inputContract) : "";
		var payment=(radioValue(this.inputPayment)) ? radioValue(this.inputPayment) : "";
		var goods=(radioValue(this.inputGoods)) ? radioValue(this.inputGoods) : "";

		var QookNet=(radioValue(this.inputQookNet)) ? radioValue(this.inputQookNet) : "";
		var QookTv=(radioValue(this.inputQookTv)) ? radioValue(this.inputQookTv) : "";
		var Qooktel=(radioValue(this.inputQooktel)) ? radioValue(this.inputQooktel) : "";
		var QookNettel=(radioValue(this.inputQookNettel)) ? radioValue(this.inputQookNettel) : "";
		var QookOption1=(radioValue(this.inputQookOption1)) ? radioValue(this.inputQookOption1) : "";

		var params="indexkey="+encodeURIComponent(this.indexkey)
				+"&name="+encodeURIComponent(this.inputName.value)
				+"&residentNumber="+encodeURIComponent(this.inputResidentNumber.value)
				+"&tel="+encodeURIComponent(this.inputTel.value)
				+"&phone="+encodeURIComponent(this.inputPhone.value)
				+"&zipcode="+encodeURIComponent(this.inputZipcode.value)
				+"&address01="+encodeURIComponent(this.inputAddress01.value)
				+"&address02="+encodeURIComponent(this.inputAddress02.value)
				+"&contract="+encodeURIComponent(contract)
				+"&payment="+encodeURIComponent(payment)
				+"&bankName="+encodeURIComponent(this.inputBankName.value)
				+"&bankNumber="+encodeURIComponent(this.inputBankNumber.value)
				+"&bankUser="+encodeURIComponent(this.inputBankUser.value)
				+"&bankUserNumber="+encodeURIComponent(this.inputBankUserNumber.value)
				+"&cardName="+encodeURIComponent(this.inputCardName.value)
				+"&cardNumber="+encodeURIComponent(this.inputCardNumber.value)
				+"&cardUser="+encodeURIComponent(this.inputCardUser.value)
				+"&cardDate="+encodeURIComponent(this.inputCardDate.value)
				+"&cardUserNumber="+encodeURIComponent(this.inputCardUserNumber.value)
				+"&telephone="+encodeURIComponent(this.inputTelephone.value)
				+"&telephoneUser="+encodeURIComponent(this.inputTelephoneUser.value)
				+"&telephoneUserNumber="+encodeURIComponent(this.inputTelephoneUserNumber.value)
				+"&goods="+encodeURIComponent(goods)
				+"&activeTime="+encodeURIComponent(this.inputActiveTime.value)
				+"&callTime="+encodeURIComponent(this.inputCallTime.value)
				+"&etc="+encodeURIComponent(this.inputEtc.value)

				+"&QookNet="+encodeURIComponent(QookNet)
				+"&QookTv="+encodeURIComponent(QookTv)
				+"&Qooktel="+encodeURIComponent(Qooktel)
				+"&Qooktel_Num="+encodeURIComponent(this.inputQooktel_Num.value)
				+"&Qooktel_op2_com="+encodeURIComponent(this.inputQooktel_op2_com.value)
				+"&Qooktel_op2_Num="+encodeURIComponent(this.inputQooktel_op2_Num.value)
				+"&QookNettel="+encodeURIComponent(QookNettel)
				+"&QookNettel_Num="+encodeURIComponent(this.inputQookNettel_Num.value)
				+"&QookNettel_op2_com="+encodeURIComponent(this.inputQookNettel_op2_com.value)
				+"&QookNettel_op2_Num="+encodeURIComponent(this.inputQookNettel_op2_Num.value)
				+"&QookOption1="+encodeURIComponent(QookOption1)
				;

		new ajax.Request("/request/formEdit.php", params, this.formSubmitResultFunction, "POST");
		return false;
	},

	formSubmitResult:function(req){
		if(req.readyState==4){
			if(req.status==200){
				var result=req.responseXML;
				result=TAG(result, "result")[0];

				var whether=TAG(result, "whether")[0].firstChild.nodeValue;
				whether=eval(whether);

				if(whether){
					alert("가입신청이 완료되었습니다.");
					window.location.href="/";
				}else{
					var error=TAG(result, "error")[0].firstChild.nodeValue;
					var message=TAG(result, "message")[0].firstChild.nodeValue;
					alert(message);

					if(error=="name"){
						this.inputName.focus();
					}else if(error=="residentNumber"){
						this.inputResidentNumber.focus();
					}else if(error=="tel"){
						this.inputTel.focus();
					}else if(error=="phone"){
						this.inputPhone.focus();
					}else if(error=="zipcode"){
						this.inputZipcode.focus();
					}else if(error=="address01"){
						this.inputAddress01.focus();
					}else if(error=="address02"){
						this.inputAddress02.focus();
					}else if(error=="contract"){
						this.inputContract[0].focus();
					}else if(error=="payment"){
						this.inputPayment[0].focus();
					}else if(error=="bankName"){
						this.inputBankName.focus();
					}else if(error=="bankNumber"){
						this.inputBankNumber.focus();
					}else if(error=="bankUser"){
						this.inputBankUser.focus();
					}else if(error=="bankUserNumber"){
						this.inputBankUserNumber.focus();
					}else if(error=="cardName"){
						this.inputCardName.focus();
					}else if(error=="cardNumber"){
						this.inputCardNumber.focus();
					}else if(error=="cardUser"){
						this.inputCardUser.focus();
					}else if(error=="cardDate"){
						this.inputCardDate.focus();
					}else if(error=="cardUserNumber"){
						this.inputCardUserNumber.focus();
					}else if(error=="telephone"){
						this.inputTelephone.focus();
					}else if(error=="telephoneUser"){
						this.inputTelephoneUser.focus();
					}else if(error=="telephoneUserNumber"){
						this.inputTelephoneUserNumber.focus();
					}else if(error=="goods"){
						this.inputGoods[0].focus();
					}else if(error=="QookNet"){
						this.inputQookNet[0].focus();
					}else if(error=="QookTv"){
						this.inputQookTv[0].focus();
					}else if(error=="Qooktel"){
						this.inputQooktel[0].focus();
					}else if(error=="QookNettel"){
						this.inputQookNettel[0].focus();
					}else if(error=="QookOption1"){
						this.inputQookOption1[0].focus();
					}
				}
			}else{
				var error=req.status;
				switch(error){
					case 403 :	var msg="접근이 거부되었습니다.";		break;
					case 404 :	var msg="페이지가 없습니다.";			break;
					case 404 :	var msg="서버 오류가 발생하였습니다.";	break;
				}
				alert(msg);
			}
		}
	}
}


var requestSystem;

function contentsLoad(){
	requestSystem=new requestClass();
}

addListener(window, "load", contentsLoad);