function prepareUri(uri) {
	return uri.indexOf("?") >= 0 ? uri + "&" : uri + "?";
}
function prepareShopUri(uri, shopNo) {
	return prepareUri(uri) + "___SHOP_NO=" + shopNo;
}

//------------------------------------------------------------------------------

function forwardMall(form) {
	location.href = "top.do";
}

function forwardCart(form) {
	location.href = "cart.do";
}

function forwardMember(form) {
	location.href = "member.do";
}

//------------------------------------------------------------------------------

function forwardShop(form, shopNo) {
	location.href = prepareShopUri("shop.do", shopNo);
}

//------------------------------------------------------------------------------

function forwardNews(form, uri) {
	location.href = uri;
}

function forwardCategory(form, shopNo, category) {
	location.href= prepareShopUri("searchShop.do", shopNo) + "&category=" + category;
}

//------------------------------------------------------------------------------

function deleteCart(form, cartNo, seqNo) {
	if (confirm("選択された商品をカートから削除します。\nよろしいですか？")) {
		form.action = prepareUri(form.action) + "__delete=&cart_no=" + cartNo + "&seqno=" + seqNo;
		form.submit();
	}
}
function calculateCart(form) {
	form.action = prepareUri(form.action) + "__calculate=";
	form.submit();
}
function settlementCart(form, shopNo, cartNo) {
	location.href = prepareShopUri("settlementInput.do", shopNo) + "&cart_no=" + cartNo;
}
function admissionCart(form, shopNo) {
	location.href = prepareShopUri("memberAdmission.do", shopNo) + "&__settlement=";
}
function logout(form, goodsNum) {
	if(goodsNum>0){
		if (confirm("カートに商品が入っていますが、ログアウトしますか？")) {
			location.href = prepareUri("logout.do");
		}
	} else {
		location.href = prepareUri("logout.do");
	}
}

//------------------------------------------------------------------------------

function forwardGoods(form, shopNo, goodsCode, goodsSkuCode, displayCode, category) {
	location.href = prepareShopUri("searchDetail.do", shopNo) + "&goods_code=" + goodsCode
		+ "&goods_sku_code=" + goodsSkuCode + "&display_code=" + displayCode + "&category=" + category;
}
function forwardGoodsCart(form) {
	//if (confirm("選択された商品をカートに追加します。\nよろしいですか？")) {
		form.action = prepareUri(form.action) + "__cart=";
		form.submit();
	//}
}
function forwardGoodsFavorite(form) {
	if (confirm("選択された商品をお気に入りに追加します。\nよろしいですか？")) {
		form.action = prepareUri(form.action) + "__favorite=";
		form.submit();
	}
}
function popupGoods(form, directory, file) {
	window.open(directory + "/" + file);
}

//------------------------------------------------------------------------------

function agreeMember(form) {
	if (form.agree[0].checked) {
		form.submit();
	}
}

//------------------------------------------------------------------------------

function forwardOrder(form, orderNo) {
	location.href = prepareUri("memberOrderHistoryDetail.do") + "order_no=" + orderNo;
}

//------------------------------------------------------------------------------

function forwardPoint(form, shopNo) {
	location.href = prepareShopUri("memberPointDetail.do", shopNo);
}

//------------------------------------------------------------------------------

function pageSelect(form, argPageNo) {
	var pageNo = parseInt(argPageNo);
	form.page_no.value = pageNo;
	form.submit();
}
function pageStart(form) {
	form.page_no.value = 1;
	form.submit();
}
function pageEnd(form, argMaxPageNo) {
	var maxPageNo = parseInt(argMaxPageNo);
	form.page_no.value = maxPageNo;
	form.submit();
}
function pagePrev(form) {
	var pageNo = parseInt(form.page_no.value);
	if (pageNo > 1) {
		form.page_no.value = pageNo - 1;
	}
	form.submit();
}
function pageNext(form, argMaxPageNo) {
	var maxPageNo = parseInt(argMaxPageNo);
	var pageNo = parseInt(form.page_no.value);
	if ((pageNo + 1) <= maxPageNo) {
		form.page_no.value = pageNo + 1;
	}
	form.submit();
}

/**
 * ボタンクリックイベント用のscript
 *
 * anchorでボタンクリックイベントを発生させる場合に使用する。
 * このscriptによりEECE#CEcDefaultActionにボタンイベントを通知する。
 *
 * @form : Document form
 * @buttonName : ボタン名
 *
 */
function appendButtonAction( form, buttonName ) {
	// inputオブジェクトを生成
	var obj = document.createElement( "input" );

	// hiddenでボタン名を埋め込み
	obj.type = "hidden";
	obj.name = "__" + buttonName;
	obj.value = "click";

	form.appendChild( obj );
	form.submit();
}

/**
 * Anchorクリックでのform.submit();
 *
 * @form : Document form
 * @buttonName : ボタン名
 *
 */
function anchorButtonClick( form, buttonName ) {
	return anchorButtonClick( form, buttonName, null );
}


/**
 * Anchorクリックでのform.submit();
 *
 * @form : Document form
 * @buttonName : ボタン名
 * @location : actionのurl
 *
 */
function anchorButtonClick( form, buttonName, location ) {
// alert( "from=" + form + ", buttonName=" + buttonName +  ", location=" + location );
	// ボタン名をhiddenに埋め込み
	appendButtonAction( form, buttonName );

	if( location != null ) {
		form.action = location;
	}

	form.submit();
	return false;
}

/**
 * 郵便番号一覧のPOP UP表示
 *
 * @postCode : 郵便番号
 */
function postCodeList( postCode, disp ) {
	var url = "postCode.do?disp=" + disp + "&post_code=" + postCode;
	var postCodeList = window.open( url,'postCodeList','toolbar=no,location=no,status=no,menubar=no,scrollbar=no,resizable=yes,width=770,height=590' );
	postCodeList.focus();

	return false;
}
