var Zip2Address = Class.create();

function onLoadZip() {
	zip2Address = new Zip2Address();
	ajaxEngine.registerRequest('getZip2Address', 'entry');
	ajaxEngine.registerAjaxObject('zip2Address',zip2Address);
}

Zip2Address.prototype = {

	initialize: function() {
	},

	get: function(fzip,pname,fname){
		var nowdate =  new Date();
		var zipCode=getValue(fzip);
		if (zipCode == null || zipCode == "") {
			document.getElementById(fzip).focus();
			alert("郵便番号を入力してください。");
		} else if (zipCode.length == 8 && !zipCode.match(/[^-^0123456789]/)) {
			ajaxEngine.sendRequest( 'getZip2Address',
			'command=ajax_zip',
			'zip_code='+zipCode,
			'pname='+pname,
			'fname='+fname,
			'dummy='+nowdate.getTime());
		} else {
			alert("郵便番号を正しく入力してください。(例:110-0001)");
		}
	},

	ajaxUpdate: function(ajaxResponse) {
		try {
			var result = ajaxResponse.childNodes[0].getAttribute("result");
			if (result == "true") {
				this.set(ajaxResponse.childNodes[0]);
			} else {
				alert("郵便番号("+ajaxResponse.childNodes[0].getAttribute("zip_code")+")は登録されていません。");
			}
		} catch (e) {
			alert("Zip2Address:"+e);
		}
	},

	set: function(childNode) {
		var pname = getMessage(childNode,"pname");
		setValue(pname,getMessage(childNode,"prefnum"));
		var fname = getMessage(childNode,"fname");
		setValue(fname,getMessage(childNode,"address"));
		document.getElementById(fname).focus();
	}
};
