// dependency: jquery-1.4.4.min.js
var CurtainMessages = {
	"MESG_CALCULATE_BEFORE_CART": "\u307E\u305A\u4ED5\u69D8\u3092\u5165\u529B\u3057\u3066\u4FA1\u683C\u8A08\u7B97\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
	"MESG_INVALID_SPEC": "\u5165\u529B\u3055\u308C\u305F\u4ED5\u69D8\u3067\u306F\u6CE8\u6587\u3067\u304D\u307E\u305B\u3093\u3002\u4ED5\u69D8\u3092\u5909\u66F4\u3057\u3066\u4FA1\u683C\u8A08\u7B97\u3092\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
	"MESG_ERROR": "<font color='#ff0000'>\u4E0B\u8A18\u7406\u7531\u306B\u3088\u308A\u4FA1\u683C\u304C\u8A08\u7B97\u3067\u304D\u307E\u305B\u3093\u3002</font>",
	"MESG_ITEM_ID_NULL": "\u5546\u54C1\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",
	"MESG_STYLE_NULL": "\u30B9\u30BF\u30A4\u30EB\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",
	"MESG_WIDTH_NULL": "\u5E45\u304C\u5165\u529B\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",
	"MESG_WIDTH_NAN": "\u5E45\u306B\u306F\u6574\u6570\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
	"MESG_LENGTH_NULL": "\u9577\u3055\u304C\u5165\u529B\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",
	"MESG_LENGTH_NAN": "\u9577\u3055\u306B\u306F\u6574\u6570\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
	"MESG_RAIL_NULL": "\u4ED8\u3051\u65B9\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",
	"MESG_SWING_NULL": "\u958B\u304D\u65B9\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",
	"MESG_LIFTING_MECHANISM_NULL": "\u30E1\u30AB\u30BF\u30A4\u30D7\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",
	"MESG_CORD_POSITION_NULL": "\u30B3\u30FC\u30C9\u4F4D\u7F6E\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"
};
function calculateCurtainPriceClicked(formId) {
	var $ = jQuery;
	var inputs = $();
	var errors = new Array();
	var form = $("#" + formId);

	var itemId = form.find("input[type=hidden][name=curtainItemId]");
	if (itemId.val() != "") { inputs = inputs.add(itemId); } else { errors.push("MESG_ITEM_ID_NULL"); }

	var styles = form.find("input[type=radio][name=curtainParam_STYLE]");
	if (styles.length != 0) {
		var style = styles.filter(":checked");
		if (style.length != 0) { inputs = inputs.add(style); } else { errors.push("MESG_STYLE_NULL"); }
	} else {
		var style = form.find("select[name=curtainParam_STYLE]");
		if (style.length != 0) {
			if (style.val() != "") { inputs = inputs.add(style); } else { errors.push("MESG_STYLE_NULL"); }
		}
	}

	var width = form.find("input[type=text][name=curtainParam_WIDTH]");
	if (width.val() == "") { errors.push("MESG_WIDTH_NULL"); }
	else if (isNaN(width.val())) { errors.push("MESG_WIDTH_NAN"); }
	else if (Number(width.val()) != Math.round(width.val())) { errors.push("MESG_WIDTH_NAN"); }
	else { inputs = inputs.add(width); }

	var length = form.find("input[type=text][name=curtainParam_LENGTH]");
	if (length.val() == "") { errors.push("MESG_LENGTH_NULL"); }
	else if (isNaN(length.val())) { errors.push("MESG_LENGTH_NAN"); }
	else if (Number(length.val()) != Math.round(length.val())) { errors.push("MESG_LENGTH_NAN"); }
	else { inputs = inputs.add(length); }

	var rails = form.find("input[type=radio][name=curtainParam_RAIL]");
	if (rails.length != 0) {
		var rail = rails.filter(":checked");
		if (rail.length != 0) { inputs = inputs.add(rail); } else { errors.push("MESG_RAIL_NULL"); }
	} else {
		var rail = form.find("select[name=curtainParam_RAIL]");
		if (rail.length != 0) {
			if (rail.val() != "") { inputs = inputs.add(rail); } else { errors.push("MESG_RAIL_NULL"); }
		}
	}

	var swings = form.find("input[type=radio][name=curtainParam_SWING]");
	if (swings.length != 0) {
		var swing = swings.filter(":checked");
		if (swing.length != 0) { inputs = inputs.add(swing); } else { errors.push("MESG_SWING_NULL"); }
	} else {
		var swing = form.find("select[name=curtainParam_SWING]");
		if (swing.length != 0) {
			if (swing.val() != "") { inputs = inputs.add(swing); } else { errors.push("MESG_SWING_NULL"); }
		}
	}

	var liftingMechanisms = form.find("input[type=radio][name=curtainParam_LIFTING_MECHANISM]");
	if (liftingMechanisms.length != 0) {
		var liftingMechanism = liftingMechanisms.filter(":checked");
		if (liftingMechanism.length != 0) { inputs = inputs.add(liftingMechanism); } else { errors.push("MESG_LIFTING_MECHANISM_NULL"); }
	} else {
		var liftingMechanism = form.find("select[name=curtainParam_LIFTING_MECHANISM]");
		if (liftingMechanism.length != 0) {
			if (liftingMechanism.val() != "") { inputs = inputs.add(liftingMechanism); } else { errors.push("MESG_LIFTING_MECHANISM_NULL"); }
		}
	}

	var cordPositions = form.find("input[type=radio][name=curtainParam_CORD_POSITION]");
	if (cordPositions.length != 0) {
		var cordPosition = cordPositions.filter(":checked");
		if (cordPosition.length != 0) { inputs = inputs.add(cordPosition); } else { errors.push("MESG_CORD_POSITION_NULL"); }
	} else {
		var cordPosition = form.find("select[name=curtainParam_CORD_POSITION]");
		if (cordPosition.length != 0) {
			if (cordPosition.val() != "") { inputs = inputs.add(cordPosition); } else { errors.push("MESG_CORD_POSITION_NULL"); }
		}
	}

	if (errors.length != 0) {
		var mesgs = CurtainMessages["MESG_ERROR"];
		$.each(errors, function(index, value){
			mesgs = mesgs + "<br>" + CurtainMessages[value];
		});
		$("#curtainPriceArea").html(mesgs);
		return;
	}

	$.ajax({
		type: "POST",
		url: "/WebService/curtain/getPrice/",
		data: inputs.serialize(),
		cache: false,
		dataType: "json",
		beforeSend: function(xhr){
			$("#curtainPriceArea").text("......");
			$("#curtainPriceCalculated").val("N");
		},
		success: function(priceResponse, code){
			if (priceResponse.statusSuccess) {
				$("#curtainPriceArea").html(priceResponse.html);
				$("#curtainPriceCalculated").val("Y");
			} else {
				$("#curtainPriceArea").html(priceResponse.html);
				$("#curtainPriceCalculated").val("I");
			}
		},
		error: function(xhr, errorType, exception){
			$("#curtainPriceArea").text(xhr.responseText);
		}
	});
}

