var errorMsg = "";
var lastMsg = "";
var idList = 
{




	"b2_ship_name_furi"		: "配送先 お名前ふりがな",
	"b2_name_furi"			: "お名前 ふりがな",
	"s_rsv_name_furi"		: "ふりがな",
	"p_rsv_name_furi"		: "ふりがな",
	"b1_zip1"				: "郵便番号",
	"b2_ship_name"			: "配送先 お名前",
	"b2_ship_zip1"			: "配送先 郵便番号",
	"b2_ship_address_furi"	: "配送先 住所ふりがな",
	"b2_ship_address" 		: "配送先 住所",
	"b2_ship_street" 		: "配送先 番地",
	"b2_ship_phone" 		: "配送先 電話番号",
	"b2_ship_phone_p" 		: "配送先 昼間の連絡先",
	"b2_floor" 				: "配送先 設置する階",
	"b2_steps" 				: "配送先 階段数",
	"b2_name"				: "お名前",
	"b2_zip1"				: "郵便番号",
	"b2_address" 			: "住所",
	"b2_street" 			: "番地",
	"b2_phone" 				: "電話番号",
	"b2_phone_p" 			: "昼間の連絡先",
	"b2_email" 				: "電子メールアドレス",
	"p_rsv_name" 		: "お名前",
	"p_rsv_name_furi" 	: "ふりがな",
	"p_rsv_zip" 		: "郵便番号",
	"p_rsv_address" 	: "住所",
	"p_rsv_phone" 		: "電話番号",
	"p_rsv_phone_p" 	: "昼間の連絡先",
	"p_rsv_email" 		: "電子メールアドレス",
	"p_rsv_floor" 		: "設置する階",
	"p_rsv_steps" 		: "階段数",
	"p_rsv_payment_loan_num" : "ローン回数",
	"s_rsv_name" 		: "お名前",
	"s_rsv_name_furi" 	: "ふりがな",
	"s_rsv_zip" 		: "郵便番号",
	"s_rsv_address" 	: "住所",
	"s_rsv_phone" 		: "電話番号",
	"s_rsv_phone_p" 	: "昼間の連絡先",
	"s_rsv_email" 		: "電子メールアドレス",
	"p_cont_name" 		: "お名前",
	"p_cont_phone" 		: "電話番号",
	"p_cont_email" 		: "電子メールアドレス",
	"p_cont_message" 	: "メッセージ本文"

};

function b2_check()
{
	errorMsg = "";
	var valid = true;

	if(!validateEmpty(document.getElementById("b2_ship_name"))) valid=false;
	if(!validateFurigana(document.getElementById("b2_ship_name_furi"))) valid=false;
	if(!validateZip2(document.getElementById("b2_ship_zip1"), document.getElementById("b2_ship_zip2"))) valid=false;
	if(!validateEmpty(document.getElementById("b2_ship_address"))) valid=false;
	if(!validateEmpty(document.getElementById("b2_ship_street"))) valid=false;
	if(!validateNum(document.getElementById("b2_ship_phone"))) valid=false;
	if(!validateNum(document.getElementById("b2_ship_phone_p"))) valid=false;
	if(!validateNum(document.getElementById("b2_floor"))) valid=false;
	if(document.getElementById("b2_step_type_yes").checked)
	{
		if(!validateNum(document.getElementById("b2_steps"))) valid=false;
	}
	else
	{
		document.getElementById("b2_steps").style.backgroundColor="#ffffff";
	}

	if(!document.getElementById("aresame").checked)
	{
		enableB2(true);
		if(!validateEmpty(document.getElementById("b2_name"))) valid=false;
		if(!validateFurigana(document.getElementById("b2_name_furi"))) valid=false;
		if(!validateZip2(document.getElementById("b2_zip1"), document.getElementById("b2_zip2"))) valid=false;
		if(!validateEmpty(document.getElementById("b2_address"))) valid=false;
		if(!validateEmpty(document.getElementById("b2_street"))) valid=false;
		if(!validateNum(document.getElementById("b2_phone"))) valid=false;
		if(!validateNum(document.getElementById("b2_phone_p"))) valid=false;
	}
	else
	{
		enableB2(false);
	}
	validateEmail(document.getElementById("b2_email"));

	if(	!document.getElementById("b2_paymethod_c").checked && 
		!document.getElementById("b2_paymethod_b").checked && 
		//!document.getElementById("b2_paymethod_d").checked
		!document.getElementById("b2_paymethod_l").checked)
	{
		document.getElementById("b2_payment").style.backgroundColor = "#ffdddd";
		valid = false;
	}
	else
	{
		document.getElementById("b2_payment").style.backgroundColor = "#eeeeee";
	}
	
	if(errorMsg != lastMsg)
	{
		document.getElementById("error").innerHTML = errorMsg;
	}
	
	lastMsg = errorMsg;
	
	document.getElementById("b2_submit").disabled = !valid;
		
	return (valid);
}
function enableB2(b)
{
		document.getElementById("b2_name").style.backgroundColor="#dddddd";
		document.getElementById("b2_name_furi").style.backgroundColor="#dddddd";
		document.getElementById("b2_zip1").style.backgroundColor="#dddddd";
		document.getElementById("b2_zip2").style.backgroundColor="#dddddd";
		document.getElementById("b2_address").style.backgroundColor="#dddddd";
		document.getElementById("b2_street").style.backgroundColor="#dddddd";
		document.getElementById("b2_phone").style.backgroundColor="#dddddd";
		document.getElementById("b2_phone_p").style.backgroundColor="#dddddd";
		document.getElementById("b2_name").disabled = !b;
		document.getElementById("b2_name_furi").disabled = !b;
		document.getElementById("b2_zip1").disabled = !b;
		document.getElementById("b2_zip2").disabled = !b;
		document.getElementById("b2_address").disabled = !b;
		document.getElementById("b2_street").disabled = !b;
		document.getElementById("b2_phone").disabled = !b;
		document.getElementById("b2_phone_p").disabled = !b;
		document.getElementById("b2_apt").disabled = !b;
		if(b)
		{
			document.getElementById("b2_apt").style.backgroundColor="#ffffff";
		}
		else
		{
			document.getElementById("b2_apt").style.backgroundColor="#dddddd";
		}
}

function b1c_check()
{
	var conf = document.getElementById("b1c_confirm");
	
	if(conf.checked)
	{
		document.getElementById("b1c_submit").disabled = false;
		return true;
	}
	else
	{
		document.getElementById("b1c_submit").disabled = true;
		return false;
	}
}

function b1_check()
{
	errorMsg = "";
	var valid = true;
	
	if(!validateZip2(document.getElementById("b1_zip1"), document.getElementById("b1_zip2"))) valid=false;

	if(errorMsg != lastMsg)
	{
		document.getElementById("error").innerHTML = errorMsg;
	}
	
	lastMsg = errorMsg;
	document.getElementById("b1_submit").disabled = !valid;
		
	return (valid);
}

function p_cont_check()
{
	errorMsg = "";
	var valid = true;
	
	if(!validateEmpty(document.getElementById("p_cont_name"))) valid=false;
	if(!validateNum(document.getElementById("p_cont_phone"))) valid=false;
	if(!validateEmail(document.getElementById("p_cont_email"))) valid=false;
	if(!validateEmpty(document.getElementById("p_cont_message"))) valid=false;
	
	if(errorMsg != lastMsg)
	{
		document.getElementById("error").innerHTML = errorMsg;
	}
	
	lastMsg = errorMsg;
	document.getElementById("p_cont_submit").disabled = !valid;
		
	return (valid);
}

function s_rsv_check()
{
	errorMsg = "";
	var valid = true;
	
	if(!validateEmpty(document.getElementById("s_rsv_name"))) valid=false;
	if(!validateFurigana(document.getElementById("s_rsv_name_furi"))) valid=false;
	if(!validateZip(document.getElementById("s_rsv_zip"))) valid=false;
	if(!validateEmpty(document.getElementById("s_rsv_address"))) valid=false;
	if(!validateNum(document.getElementById("s_rsv_phone"))) valid=false;
	if(!validateNum(document.getElementById("s_rsv_phone_p"))) valid=false;
	if(!validateEmail(document.getElementById("s_rsv_email"))) valid=false;
	
	if(errorMsg != lastMsg)
	{
		document.getElementById("error").innerHTML = errorMsg;
	}
	
	lastMsg = errorMsg;
	
	document.getElementById("s_rsv_submit").disabled = !valid;
		
	return (valid);
}

function p_rsv_check()
{
	errorMsg = "";
	
	var valid = true;
	
	if(!validateEmpty(document.getElementById("p_rsv_name"))) valid=false;
	if(!validateFurigana(document.getElementById("p_rsv_name_furi"))) valid=false;
	if(!validateZip(document.getElementById("p_rsv_zip"))) valid=false;
	if(!validateEmpty(document.getElementById("p_rsv_address"))) valid=false;
	if(!validateNum(document.getElementById("p_rsv_phone"))) valid=false;
	if(!validateNum(document.getElementById("p_rsv_phone_p"))) valid=false;
	if(!validateEmail(document.getElementById("p_rsv_email"))) valid=false;
	if(!validateNum(document.getElementById("p_rsv_floor"))) valid=false;
	if(document.getElementById("p_rsv_step_type_yes").checked)
		if(!validateNum(document.getElementById("p_rsv_steps"))) valid=false;
	else
		document.getElementById("p_rsv_steps").style.backgroundColor = "#ffffff";
	if(document.getElementById("p_rsv_payment_loan").checked)
		if(!validateNum(document.getElementById("p_rsv_payment_loan_num"))) valid=false;
	else
		document.getElementById("p_rsv_payment_loan_num").style.backgroundColor = "#ffffff";
	if(
		!document.getElementById("p_rsv_payment_credit").checked &&
	//	!document.getElementById("p_rsv_payment_cod").checked &&
		!document.getElementById("p_rsv_payment_trans").checked &&
		!document.getElementById("p_rsv_payment_loan").checked
	)
	{
		document.getElementById("p_rsv_payment").style.backgroundColor = "#ffdddd";
		valid = false;
	}
	else
	{
		document.getElementById("p_rsv_payment").style.backgroundColor = "#eeeeee";
	}
	
	if(errorMsg != lastMsg)
	{
		document.getElementById("error").innerHTML = errorMsg;
	}
	
	lastMsg = errorMsg;
	document.getElementById("p_rsv_submit").disabled = !valid;

	return (valid);
}

function selectRadio(idStr)
{
	document.getElementById(idStr).checked = true;
}
function getFieldName(obj)
{
	return idList[obj.id];
}

function validateEmpty(field) {
	var ok = "yes";
	field.style.backgroundColor = "#ffffff";
	if (field.value == "")
	{
		ok = "empty";
	}
	if (ok == "empty")
	{
		field.style.backgroundColor = "#ffdddd";
	}
	return (ok == "yes");
}

function validateFurigana(field)
{
	var valid = " ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん　、。・゛゜"
	var ok = "yes";
	field.style.backgroundColor = "#ffffff";
	var temp;
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (field.value == "")
	{
		ok = "empty";
	}
	if (ok == "no") {
		errorMsg += getFieldName(field)+": この項目には全角ひらがなのみが使用できます。<br>";
		field.style.backgroundColor = "#ffdddd";
	}
	else if (ok == "empty")
	{
		field.style.backgroundColor = "#ffdddd";
	}
	return (ok == "yes");
}

function validateEmail(field) {
	var valid = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@.-_"
	var ok = "yes";
	field.style.backgroundColor = "#ffffff";
	var temp;
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (field.value == "")
	{
		ok = "empty";
	}
	if (ok == "no") {
		errorMsg += getFieldName(field)+": この項目には英数字のみが使用できます。<br>";
		field.style.backgroundColor = "#ffdddd";
	}
	else if (ok == "empty")
	{
		field.style.backgroundColor = "#ffdddd";
	}
	return (ok == "yes");
}

function validateNum(field) {
	var valid = "0123456789-"
	var ok = "yes";
	field.style.backgroundColor = "#ffffff";
	var temp;
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (field.value == "")
	{
		ok = "empty";
	}
	if (ok == "no") {
		errorMsg += getFieldName(field)+": この項目には数字のみが使用できます。<br>";
		field.style.backgroundColor = "#ffdddd";
	}
	else if (ok == "empty")
	{
		field.style.backgroundColor = "#ffdddd";
	}
	return (ok == "yes");
} 

function validateZip(field) {
	var valid = "0123456789-"
	var ok = "yes";
	field.style.backgroundColor = "#ffffff";
	var temp;
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (field.value == "")
	{
		ok = "empty";
	}
	
	if (ok == "empty")
	{
		field.style.backgroundColor = "#ffdddd";
	}
	else if (field.value.length != 8) 
	{
		ok = "no";
		errorMsg += getFieldName(field)+": 入力形式はXXX-XXXXでお願いします。<br>";
		field.style.backgroundColor = "#ffdddd";
	} 
	else if (ok == "no") 
	{
		errorMsg += getFieldName(field)+": この項目には数字と-のみが使用できます。<br>";
		field.style.backgroundColor = "#ffdddd";
	}
	return (ok == "yes");
}

function validateZip2(field1, field2)
{
	var valid = "0123456789"
	var ok = "yes";
	
	field1.style.backgroundColor = "#ffffff";
	field2.style.backgroundColor = "#ffffff";

	var num = field1.value+""+field2.value;
	
	var temp;
	for (var i=0; i<num.length; i++) {
		temp = "" + num.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (num == "")
	{
		ok = "empty";
	}
	if (ok == "no") {
		errorMsg += idList[field1.id]+": この項目には数字のみが使用できます。<br>";
		field1.style.backgroundColor = "#ffdddd";
		field2.style.backgroundColor = "#ffdddd";
	}
	else if (ok == "empty")
	{
		field1.style.backgroundColor = "#ffdddd";
		field2.style.backgroundColor = "#ffdddd";
	}
	else if (num.length != 7)
	{
		ok = "no";
		errorMsg += idList[field1.id]+": 桁数が足りません<br>";
		field1.style.backgroundColor = "#ffdddd";
		field2.style.backgroundColor = "#ffdddd";
	}
	return (ok == "yes")
}

function goPrev()
{
	var thisform = document.getElementById("listForm");
	var from = document.getElementById("from");
	var num = document.getElementById("num");
	var total = document.getElementById("total");
	
	var fromVal = parseInt(from.value, 10);
	var numVal = parseInt(num.value, 10);
	var totalVal = parseInt(total.value, 10);
	
	if(fromVal - numVal <= 0)
	{
		// do nothing
	}
	else
	{
		from.value = fromVal - numVal;
		thisform.submit();
	}
}

function goNext()
{
	var thisform = document.getElementById("listForm");
	var from = document.getElementById("from");
	var num = document.getElementById("num");
	var total = document.getElementById("total");
	
	var fromVal = parseInt(from.value, 10);
	var numVal = parseInt(num.value, 10);
	var totalVal = parseInt(total.value, 10);
	
	if(fromVal + numVal > totalVal)
	{
		// do nothing
	}
	else
	{
		from.value = fromVal + numVal;
		thisform.submit();
	}
}
function goBack(){
	history.back()
}

