
// 数量情報保持バッファ（編集する項目の編集前の値を保持する）
var gVolume;

/////////////////////////////////////////////////
// 価格計算
function funSubtotal(){
	var price = 0					// 商品価格
	var volume = "";				// 数量情報
	var subprice = 0;				// 小計
	var subpricePipe = "";			// 小計情報(パイプ区切り)
	var sum  = 0;					// 計金額
	var tax = 0;					// 税
	var toltal = 0;					// 合計金額

	// 商品数文ループ
	for( i=0; i < document.online.itemcnt.value; i++ ){
		// 商品価格取得(計算用にカンマ編集削除)
		price = funRmComma(document.all('k' + i).innerHTML);

		// 小計値の設定
		subprice = eval(price) * eval(document.all('n' + i).value);
		sum += subprice;

		// hedden属性の小計リスト作成 区切り文字："|"
		if( subpricePipe != "" ) subpricePipe += "|";
		subpricePipe += subprice;

		// 小計値の設定 表示用
		document.all('sub' + i).innerHTML = funComma(String(subprice));

		// 価格値の設定 表示用
		document.all('k' + i).innerHTML = funComma(document.all('k' + i).innerHTML);

		// hedden属性の数量リスト作成 区切り文字："|"
		if( volume != "" ) volume += "|";
		volume += eval(document.all('n' + i).value);
	}

	// hidden属性の数量に設定
	document.online.volume.value = volume;

	// hidden属性の小計に設定
	document.online.subprice.value = subpricePipe;


	// 計 値の設定 表示用
	document.all('SUM').innerHTML = funComma(String(sum));
	// hidden属性の計に設定
	document.online.sumprice.value = sum;

	// 消費税の設定 表示用
	tax = parseInt(eval(sum) * 0.05);
	document.all('TAX').innerHTML = funComma(String(tax));
	// hidden属性の消費税に設定
	document.online.taxprice.value = tax;

	// 合計値の設定 表示用
	toltal = eval(sum) + eval(tax);
	document.all('TOTAL').innerHTML = funComma(String(toltal));
	// hidden属性の合計に設定
	document.online.totalprice.value = toltal;

	return;
}

/////////////////////////////////////////////////
// 価格計算
function funSubtotal2(){
	var sum  = 0;					// 合計金額
	var item = "";					// 数量情報
	var wkprice = 0;				// 価格
	var subprice = 0;				// 小計
	var subpricePipe = "";			// 小計情報(パイプ区切り)
	var sum  = 0;					// 計金額
	var tax = 0;					// 税
	var toltal = 0;					// 合計金額

	// 商品数文ループ
	for( i=0; i < document.online.itemcnt.value; i++ ){
		// 価格値からカンマを削除
		wkprice = funRmComma(String(document.all('k' + i).innerHTML));

		// 小計値の設定
		subprice = eval(wkprice) * eval(document.all('n' + i).innerHTML);
		sum += subprice;

		// hedden属性の小計リスト作成 区切り文字："|"
		if( subpricePipe != "" ) subpricePipe += "|";
		subpricePipe += subprice;
		// 小計値の設定 表示用
		document.all('sub' + i).innerHTML = funComma(String(subprice));

		// 価格値の設定 表示用
		document.all('k' + i).innerHTML = funComma(document.all('k' + i).innerHTML);

		// hedden属性の数量リスト作成 区切り文字："|"
		if( item != "" ) item += "|";
		item += eval(document.all('n' + i).innerHTML);

	}

	// hidden属性の数量に設定
	document.online.volume.value = item;

	// hidden属性の小計に設定
	document.online.subprice.value = subpricePipe;


	// 計 値の設定 表示用
	document.all('SUM').innerHTML = funComma(String(sum));
	// hidden属性の合計に設定
	document.online.sumprice.value = sum;

	// 消費税の設定 表示用
	tax = parseInt(eval(sum) * 0.05);
	document.all('TAX').innerHTML = funComma(String(tax));
	// hidden属性の消費税に設定
	document.online.taxprice.value = tax;

	// 合計値の設定 表示用
	toltal = eval(sum) + eval(tax);
	document.all('TOTAL').innerHTML = funComma(String(toltal));
	// hidden属性の合計に設定
	document.online.totalprice.value = toltal;


	return;
}

/////////////////////////////////////////////////
// カンマ編集関数
function funComma( value ){
	var i;
	for(i = 0; i < value.length/3; i++){
		value = value.replace(/^([+-]?\d+)(\d\d\d)/,"$1,$2");
	}
	return value;
}

/////////////////////////////////////////////////
// カンマ削除関数
function funRmComma( value ){
	return value.split(",").join("")
	return;
}

/////////////////////////////////////////////////
// 数量 入力値チェック(数値のみ許可)
function funChkInput(obj) {

	// 数値でない場合は0
	if( isNaN(obj.value) || (eval(obj.value) < 0) || (obj.value == "") ){
		alert("数量に入力できるのは、半角数字のみです。\n最大は999個迄です。");
		obj.value = gVolume;
		obj.focus();
	}

	// 値を整数に変換
	obj.value = parseInt(obj.value, 10);
	return;
}

/////////////////////////////////////////////////
// 数量 入力前の値保持
function funBkVolume(obj){
	gVolume = obj.value;
}

/////////////////////////////////////////////////
// 数量 キー入力制限(数値のみ許可)
function funChkNum() {
	// 数値以外の値は入力付加
	if( event.keyCode < 48 || event.keyCode > 57 ){
		event.keyCode = null;
		return false;
	}
	return true;
}

/////////////////////////////////////////////////
// 認証処理
function funLogin(){

	// 認証処理へ
	document.online.action="./online.cgi";
	document.online.proflg.value = "1";
	document.online.submit();

	return;
}

/////////////////////////////////////////////////
// 住所検索
function funGetZipCode(){
	var wkdata1 = document.online.yubin1.value;
	var wkdata2 = document.online.yubin2.value;

	if((wkdata1.match(/[^0-9]/)) !=null)
	{
		alert("郵便番号は半角数字で入力してください");
		document.online.yubin1.focus();
		document.online.yubin1.select();
		return;
	}

	if((wkdata2.match(/[^0-9]/)) !=null)
	{
		alert("郵便番号は半角数字で入力してください");
		document.online.yubin2.focus();
		document.online.yubin2.select();
		return;
	}

	// 郵便番号長
	if( document.online.yubin1.value.length == 0 )
	{
		alert( "郵便番号を入力して下さい。" );
		document.online.yubin1.focus();
		document.online.yubin1.select();
		return;
	}

	if( document.online.yubin2.value.length == 0 )
	{
		alert( "郵便番号を入力して下さい。" );
		document.online.yubin2.focus();
		document.online.yubin2.select();
		return;
	}

	// 住所検索処理へ
	document.online.action="./online.cgi";
	document.online.proflg.value = "";
	document.online.zipflg.value = "1";
	document.online.submit();


	return;
}

// 登録情報初期化
function funResetItem(){
	document.online.kaisha.value  = "";	// 貴社名
	document.online.busyo.value   = "";	// ご所属
	document.online.tantou.value  = "";	// ご担当者名
	document.online.mail.value    = "";	// ご連絡先：E-mail
	document.online.yubin1.value  = "";	// 郵便番号１
	document.online.yubin2.value = "";	// 郵便番号２
	document.online.jyuusyo.value = "";	// 住所
	document.online.tel.value    = "";	// 電話番号
	document.online.fax.value     = "";	// FAX
	document.online.tushin.value  = "";	// 通信欄

	return;
}

// 購入申込フォームチェック
function IN_CheckONL() {
	mail=document.online.mail.value;

	wkdata = document.online.kaisha.value;
	if ( wkdata == "") {
		window.alert("会社名を入力してください");
		document.online.kaisha.focus();
		return false;
	}
	wkdata = document.online.kaisha.value;
	if((wkdata.match(/[",]/)) !=null){
		alert("会社名に「”」、「,」は入力できません");
		document.online.kaisha.focus();
		document.online.kaisha.select();
		return false;
	}

	wkdata = document.online.busyo.value;
	if ( wkdata == "") {
		window.alert("ご所属を入力してください");
		document.online.busyo.focus();
		return false;
	}
	wkdata = document.online.busyo.value;
	if((wkdata.match(/[",]/)) !=null){
		alert("ご所属に「”」、「,」は入力できません");
		document.online.busyo.focus();
		document.online.busyo.select();
		return false;
	}

	wkdata = document.online.tantou.value;
	if ( wkdata == "") {
		window.alert("ご担当者名を入力してください");
		document.online.tantou.focus();
		return false;
	}
	wkdata = document.online.tantou.value;
	if((wkdata.match(/[",]/)) !=null){
		alert("ご担当者名に「”」、「,」は入力できません");
		document.touroku.online.focus();
		document.touroku.online.select();
		return false;
	}

	wkdata = document.online.mail.value;
	if ( wkdata == "") {
		window.alert("ご連絡先：E-mailを入力してください");
		document.online.mail.focus();
		return false;
	}
	if((wkdata.match(/"/)) !=null){
		alert("ご連絡先：E-mailに「”」は入力できません");
		document.online.mail.focus();
		document.online.mail.select();
		return false;
	}
	if (mailchk(wkdata) != 0) {
		window.alert("ご連絡先：E-mail正確に入力してください");
		document.online.mail.focus();
		document.online.mail.select();
		return false;
	}
	if(mail.indexOf("@",0)<0){
		alert("ご連絡先：E-mailを正確に入力してください")
		document.online.mail.focus();
		document.online.mail.select();
		return false;
	}
	if(mail.indexOf(".",0)<0){
		alert("ご連絡先：E-mailを正確に入力してください")
		document.online.mail.focus();
		document.online.mail.select();
		return false;
	}

	wkdata = document.online.yubin1.value;
	if ( wkdata == "") {
		window.alert("郵便番号を入力してください");
	document.online.yubin1.focus();
		return false;
	}
	if (suujichk(wkdata) != 0) {
		window.alert("郵便番号は半角数字で入力してください");
		document.online.yubin1.focus();
		document.online.yubin1.select();
		return false;
	}
	wkdata = document.online.yubin1.value;
	if((wkdata.match(/[",]/)) !=null){
		alert("郵便番号に「”」、「,」は入力できません");
		document.online.yubin1.focus();
		document.online.yubin1.select();
		return false;
	}

	wkdata = document.online.yubin2.value;
	if ( wkdata == "") {
		window.alert("郵便番号を入力してください");
	document.online.yubin2.focus();
		return false;
	}
	if (suujichk(wkdata) != 0) {
		window.alert("郵便番号は半角数字で入力してください");
		document.online.yubin2.focus();
		document.online.yubin2.select();
		return false;
	}
	wkdata = document.online.yubin2.value;
	if((wkdata.match(/[",]/)) !=null){
		alert("郵便番号に「”」、「,」は入力できません");
		document.online.yubin2.focus();
		document.online.yubin2.select();
		return false;
	}

	wkdata = document.online.jyuusyo.value;
	if ( wkdata == "") {
		window.alert("住所を入力してください");
		document.online.jyuusyo.focus();
		return false;
	}
	wkdata = document.online.jyuusyo.value;
	if((wkdata.match(/[",]/)) !=null){
		alert("住所に「”」、「,」は入力できません");
		document.online.jyuusyo.focus();
		document.online.jyuusyo.select();
		return false;
	}

	wkdata = document.online.tel.value;
	if ( wkdata == "") {
		window.alert("電話番号を入力してください");
		document.online.tel.focus();
		return false;
	}
	if (suujichk(wkdata) != 0) {
		window.alert("電話番号は半角数字で入力してください");
		document.online.tel.focus();
		document.online.tel.select();
		return false;
	}

	wkdata = document.online.fax.value;
	if ( wkdata == "") {
		window.alert("FAXを入力してください");
		document.online.fax.focus();
		return false;
	}
	if (suujichk(wkdata) != 0) {
		window.alert("FAXは半角数字で入力してください");
		document.online.fax.focus();
		document.online.fax.select();
		return false;
	}

	wkdata = document.online.tushin.value;
	if((wkdata.match(/[",]/)) !=null){
		alert("通信欄に「”」、「,」は入力できません");
		document.online.tushin.focus();
		document.online.tushin.select();
		return false;
	}


	return true;
}

// 購入情報チェック
function funSendShohin( ) {
	var i = 0;			// 数量selectオブジェクト：カウンタ
	var sum = 0;		// 数量の合計
	var shohin = "";	// 商品情報
	var price  = "";	// 価格情報
	var volume = "";	// 数量情報
	var url    = './terms_yn.html';	// 利用規約画面

	// 数量のチェックと、商品情報の設定
	while(1){
		if(document.all('vol' + i)){
			// 数量の合計を取得
			sum += eval(document.all('vol' + i).options[document.all('vol' + i).options.selectedIndex].value);

			// 商品をパイプ区切りに編集
			if( shohin != "" ) shohin += "\t|\t";
			shohin += document.all('name' + i).innerHTML;

			// 価格をパイプ区切りに編集
			if( price != "" ) price += "|";
			price += document.all('pri' + i).innerHTML;

			// 数量をパイプ区切りに編集
			if( volume != "" ) volume += "|";
			volume += eval(document.all('vol' + i).options[document.all('vol' + i).options.selectedIndex].value);

		} else {
			break;
		}
		i++;
	}

	// 数量未選択エラー
	if( sum == "0" ){
		alert( "購入数を指定してください。");
		return;
	}

	// 商品名設定
	document.all('shohin').value = shohin;

	// 価格設定
	document.all('price').value = price;

	// 数量設定
	document.all('volume').value = volume;

	// TITLE設定
	document.all('shohin_title').value = document.all('title').innerHTML;

	subwin=window.open(url,"terms_yn","width=612,height=550,location=1,scrollbars=1,resizable=1,menubar=0,status=1");
	subwin.focus();

	return;
}

// 購入情報チェック
function funSetItem() {

	// オブジェクトの存在チェック
	if( window.opener.info ){
		// 商品名設定
		document.terms.shohin.value = window.opener.info["shohin"].value;

		// 価格設定
		document.terms.price.value = window.opener.info["price"].value;

		// 数量設定
		document.terms.volume.value = window.opener.info["volume"].value;

		// TITLE設定
		document.terms.shohin_title.value = window.opener.info["shohin_title"].value;
	}

	return;
}

// 利用規約チェック
function funTerms(){

	// 同意していない場合、画面を閉じる
	if(!document.terms.rad_terms[0].checked){
		window.close();
		return false
	}

	return true;
}

