document.observe("dom:loaded", function(){
	
	if(document.inputForm){
		initInputForm();
	}
	if(document.confirmForm){
		initConfirmForm();
	}
});

function initInputForm(){
	$("zip1").observe("keyup", searchZip);
	$("zip2").observe("keyup", searchZip);
	
	$("address").observe("focus", function(){
		activateAddress($("address"));
	});
	$("address").observe("blur", function(){
		resetAddress($("address"));
	});
	$("address2").observe("focus", function(){
		activateAddress($("address2"));
	});
	$("address2").observe("blur", function(){
		resetAddress($("address2"));
	});
	
	var inputForm = $('inputForm');
	inputForm.onsubmit = function(){
		return checkInputForm(inputForm);
	};
	
}
function activateAddress(address){
	if(address.hasClassName("not-default")){
		if($F(address) == address.defaultValue){
			address.value = "";
		}
		address.style.color = "#000";
	}
}
function resetAddress(address){
	if(address.hasClassName("not-default")){
		if(address.value == ""){
			address.style.color = "#666";
			address.value = address.defaultValue;
		}
	}
}
function checkInputForm(inputForm){
	var fields = inputForm.getElements();
	var valid = true;
	
	if($('address2').hasClassName("not-default")){
		if($('address2').value == $('address2').defaultValue){
			$('address2').value = "";
		}
	}
	
	fields.each(function(f){
		if(f.hasClassName('required')){
			if($F(f) == ''){
				f.style.borderColor = "red";
				valid = false;
			}else{
				f.style.borderColor = "gray";
			}
		}
		if(f.hasClassName('not-default')){
			if($F(f) == f.defaultValue){
				f.style.borderColor = "red";
				valid = false;
			}else{
				f.style.borderColor = "gray";
			}
		}
	});
	if(parseInt($F('ticket_ordinary_qty'))+parseInt($F('ticket_student_qty')) < 1){
		$('ticket_ordinary_qty').style.borderColor = "#F00";
		$('ticket_student_qty').style.borderColor = "#F00";
		valid = false;
	}else{
		$('ticket_ordinary_qty').style.borderColor = "gray";
		$('ticket_student_qty').style.borderColor = "gray";
	}
	if(! is_rfc2822_compliant($F("mail"))){
		$("mail").style.borderColor = "#F00";
		valid = false;
	}else{
		$("mail").style.borderColor = "gray";
	}
	return valid;
}
function initConfirmForm(){
	$('back').observe("click", function(){
		$('actionName').value = 'input';
		document.confirmForm.submit();
	}.bindAsEventListener($('back')));
}

function searchZip(){
	AjaxZip2.zip2addr('zip1','pref','address','zip2');
}

function mailaddress(){
	
	var result="";
	for(var i=0;i<arguments.length;i++){
		result += String.fromCharCode(arguments[i]+1);
	}
	return result;
}
