function pref_data(name,sh) {
	this.name = name;
	this.sh = sh;
}

var pref_list = new Array();
var pref_num = 0;

var address_error = 'メールアドレスが正しくありません。メールアドレスはすべて半角で、aaa@bbb.cccの形式で入力してください。';

pref_list[pref_num++] = new pref_data("北海道",1000);
pref_list[pref_num++] = new pref_data("青森県",650);
pref_list[pref_num++] = new pref_data("岩手県",650);
pref_list[pref_num++] = new pref_data("宮城県",650);
pref_list[pref_num++] = new pref_data("秋田県",650);
pref_list[pref_num++] = new pref_data("山形県",650);
pref_list[pref_num++] = new pref_data("福島県",650);
pref_list[pref_num++] = new pref_data("茨城県",650);
pref_list[pref_num++] = new pref_data("栃木県",650);
pref_list[pref_num++] = new pref_data("群馬県",650);
pref_list[pref_num++] = new pref_data("埼玉県",650);
pref_list[pref_num++] = new pref_data("千葉県",650);
pref_list[pref_num++] = new pref_data("東京都",650);
pref_list[pref_num++] = new pref_data("神奈川県",650);
pref_list[pref_num++] = new pref_data("新潟県",650);
pref_list[pref_num++] = new pref_data("長野県",650);
pref_list[pref_num++] = new pref_data("山梨県",650);
pref_list[pref_num++] = new pref_data("静岡県",650);
pref_list[pref_num++] = new pref_data("愛知県",650);
pref_list[pref_num++] = new pref_data("岐阜県",650);
pref_list[pref_num++] = new pref_data("三重県",650);
pref_list[pref_num++] = new pref_data("富山県",650);
pref_list[pref_num++] = new pref_data("石川県",650);
pref_list[pref_num++] = new pref_data("福井県",650);
pref_list[pref_num++] = new pref_data("滋賀県",650);
pref_list[pref_num++] = new pref_data("京都府",650);
pref_list[pref_num++] = new pref_data("奈良県",650);
pref_list[pref_num++] = new pref_data("大阪府",650);
pref_list[pref_num++] = new pref_data("兵庫県",650);
pref_list[pref_num++] = new pref_data("和歌山県",650);
pref_list[pref_num++] = new pref_data("鳥取県",650);
pref_list[pref_num++] = new pref_data("島根県",650);
pref_list[pref_num++] = new pref_data("岡山県",650);
pref_list[pref_num++] = new pref_data("広島県",650);
pref_list[pref_num++] = new pref_data("山口県",650);
pref_list[pref_num++] = new pref_data("徳島県",800);
pref_list[pref_num++] = new pref_data("香川県",800);
pref_list[pref_num++] = new pref_data("愛媛県",800);
pref_list[pref_num++] = new pref_data("高知県",800);
pref_list[pref_num++] = new pref_data("福岡県",1000);
pref_list[pref_num++] = new pref_data("佐賀県",1000);
pref_list[pref_num++] = new pref_data("長崎県",1000);
pref_list[pref_num++] = new pref_data("熊本県",1000);
pref_list[pref_num++] = new pref_data("大分県",1000);
pref_list[pref_num++] = new pref_data("宮崎県",1000);
pref_list[pref_num++] = new pref_data("鹿児島県",1000);
pref_list[pref_num++] = new pref_data("沖縄県",1300);

function initialize() {
	if( parent.user_id == "" ) {
		parent.user_id = top.vein_id;
	}
	document.user_data.u_id.value = parent.user_id;
	document.user_data.u_cus_name.value = parent.user_name;
	document.user_data.u_zip.value = parent.user_zip;
	if( parent.user_pref != "" ) {
		for(i=0;i<pref_num;i++) {
			if( document.user_data.u_pref.options[i].value == parent.user_pref ) {
				document.user_data.u_pref.selectedIndex = i;
				break;
			}
		}
	}
	document.user_data.u_address.value = parent.user_address;
	document.user_data.u_tel.value = parent.user_tel;
	if( parent.user_mail == "" ) {
		parent.user_mail = top.vein_mail;
	}
	document.user_data.u_mailfrom.value = parent.user_mail;
}

function regist() {
	i_id = document.user_data.u_id.value;
	if( !parent.authentication(i_id) ) {
		alert("IDが異なります。IDは半角の英数字で入力ください。");
		return false;
	}
	i_name = document.user_data.u_cus_name.value;
	if( i_name == "" ) {
		alert("氏名を入力してください。");
		return false;
	}
	i_zip = document.user_data.u_zip.value;
	if( i_zip == "" ) {
		alert("郵便番号を入力してください。");
		return false;
	}
	selectnum = document.user_data.u_pref.selectedIndex;
	i_pref = document.user_data.u_pref.options[selectnum].value;
	if( i_pref == "未入力" ) {
		alert("都道府県を選択してください。");
		return false;
	} else {
		for(i=0;i<pref_num;i++) {
			if( pref_list[i].name == i_pref ) {
				i_sh = pref_list[i].sh;
				break;
			}
		}
	}
	i_address = document.user_data.u_address.value;
	if( i_address == "" ) {
		alert("住所を入力してください。");
		return false;
	}
	i_tel = document.user_data.u_tel.value;
	if( i_tel == "" ) {
		alert("電話番号を入力してください。");
		return false;
	}
	i_mailfrom = document.user_data.u_mailfrom.value;
	if( !check_mail(i_mailfrom) ) {
		return false;
	}
	parent.user_regist(i_id,i_name,i_zip,i_pref,i_address,i_tel,i_mailfrom,i_sh);
	setCookie();
	location = "registered.htm";
	return true;
}

function check_mail(mail_addr) {
	if( mail_addr == "" ) {
		alert("メールアドレスを入力してください");
		return false;
	} else {
		if( mail_addr.indexOf("@",0) <0 ) {
			alert(address_error);
			return false;
		}
		if( mail_addr.indexOf(".",0) <0 ) {
			alert(address_error);
			return false;
		}
		address_part = mail_addr.split("@");
		if( address_part.length !=2 ) {
			alert(address_error);
			return false;
		}
		if( address_part[0] == "" || address_part[1] == "" ) {
			alert(address_error);
			return false;
		}
		encoded_address = escape(address_part[0]) + escape(address_part[1]);
		if( 0 <= encoded_address.indexOf("%",0) ) {
			alert(address_error);
			return false;
		}
		return true;
	}
}

function revive() {
	if( document.cookie != "" ) {
		tmp = document.cookie + ";";
		st = tmp.indexOf("=",0) + 1;
		ed = tmp.indexOf(";",st);
		tmp = tmp.substring(st,ed);
		data = tmp.split("#");
		for(i=0;i<data.length;i++) {
			keyval = data[i].split("&");
			keyval[0] = unescape(keyval[0]);
			keyval[1] = unescape(keyval[1]);
			for(j=0;j<document.user_data.length;j++) {
				if( document.user_data.elements[j].name == keyval[0] ) {
					break;
				}
			}
			if( j < document.user_data.length ) {
				eletype = document.user_data.elements[j].type;
				if( eletype == "text" || eletype == "password" ) {
					document.user_data.elements[j].value = keyval[1];
				} else if( eletype == "select-one" ) {
					optionlen = document.user_data.elements[j].length;
					for(k=0;k<optionlen;k++) {
						optiontext = document.user_data.elements[j].options[k].text;
						if(optiontext == keyval[1] ) {
							break;
						}
					}
					if( k < optionlen ) {
						document.user_data.elements[j].selectedIndex = k;
					}
				}
			}
		}
		i_id = document.user_data.u_id.value;
		i_name = document.user_data.u_cus_name.value;
		i_zip = document.user_data.u_zip.value;
		selectnum = document.user_data.u_pref.selectedIndex;
		i_pref = document.user_data.u_pref.options[selectnum].value;
		for(i=0;i<pref_num;i++) {
			if( pref_list[i].name == i_pref ) {
				i_sh = pref_list[i].sh;
				break;
			}
		}
		i_address = document.user_data.u_address.value;
		i_tel = document.user_data.u_tel.value;
		i_mailfrom = document.user_data.u_mailfrom.value;
		if( !parent.authentication(i_id) ) {
			alert("IDが異なります。IDは半角の英数字で入力ください。");
		}
		parent.user_regist(i_id,i_name,i_zip,i_pref,i_address,i_tel,i_mailfrom,i_sh);
	}
}

function setCookie() {
	var val = "";
	for(i=0;i<document.user_data.length;i++) {
		elename = document.user_data.elements[i].name;
		head2 = elename.substr(0,2);
		if( head2 == "u_" ) {
			eletype = document.user_data.elements[i].type;
			if( eletype == "text" || eletype == "password" ) {
				val += escape(elename) + "&" + escape(document.user_data.elements[i].value) + "#";
			} else if( eletype == "select-one" ) {
				selectnum = document.user_data.elements[elename].selectedIndex;
				i_pref = document.user_data.elements[elename].options[selectnum].value;
				val += escape(elename) + "&" + escape(i_pref) + "#";
			}
		}
	}
	document.cookie = "user_data=" + val + "; expires=fri, 31-Dec-2030 23:59:59 GMT; ";
}

