$(document).ready(function(){
	_calcPrice()
	
	$('input.Product', '#Products').change(function(){
		// 値の置換
		var figure = _convertHalf($(this).val());
		$(this).val(figure);

		// 値のチェック
		if (figure.match(/[^0-9]/g)) {
			alert('数量には数字を入力してください。');
			$(this).focus();
			return;
		}

		// 数量の計算
		_calcPrice();
	});
});

function _convertHalf(value) {
	if(typeof(value) == "string") {
		var half_num = new Array('1', '2', '3', '4', '5', '6', '7', '8', '9', '0');
		var full_num = new Array('１', '２', '３', '４', '５', '６', '７', '８', '９', '０');

		for (i = 0; i < full_num.length; i++) {
			var regex = new RegExp(full_num[i], "gm");
			value = value.replace(regex, half_num[i]);
		}
	}
	return value;
}

function _calcPrice() {
	var sum_price = 0;
	$('input.Product', '#Products').each(function(){
		var figure = $(this).val();
		if (figure != '' && !figure.match(/[^0-9]/g)) {
			var price = $(this).nextAll('input.Price').val();
			if (price != '' && !price.match(/[^0-9]/g)) {
				sum_price += parseInt(price) * parseInt(figure);
			}
		}
	});
	$('#CalcTotal').html(_figureFormat(sum_price) + '円');
}

function _figureFormat(str) {
　var num = new String(str).replace(/,/g, "");
　while(num != (num = num.replace(/^(-?\d+)(\d{3})/, "$1,$2")));
　return num;
}