// pages.js

//------------------------------------------------------------------------------
// 画面共通処理
//------------------------------------------------------------------------------
var commons = {
/**
 * デバッグコード
 */
debug: function() {
	var elements = document.getElementsByTagName("a");
	for (var i = 0; i < elements.length; i++) {
		if (elements[i].href.match(/www.kimonosougoukaitori.com/)) {
			elements[i].href = elements[i].href.replace("www.kimonosougoukaitori.com", "www.triumphspaces.jp/kimonosougoukaitori.com");
		}
	}
},

/**
 * ナビゲーションメニュー中央寄せ
 */
adjust: function(args) {
	for (var i = 0; i < arguments.length; i++) {
		var sum = 0;
		$(arguments[i] + " > li").each(function() {
			sum += $(this).width();
		});
		$(arguments[i]).css("margin-left", (800 - sum) / 2);
	}
},


/**
 * ページオンロードイベントハンドラ
 */
display: function() {
	// debug
	//commons.debug();
	commons.adjust("#navi > ul", "#footer ul:first", "#footer ul:last");
	$("#navi").dropDown();
	$(".corner").corner();

},

/**
 * お気に入り登録
 */
bookmark: function() {
	if (window.sidebar) {
		window.sidebar.addPanel('着物総合買取ドットコム', 'http://www.kimonosougoukaitori.com/', '');
	} else if (document.all) {
		window.external.AddFavorite('http://www.kimonosougoukaitori.com/','着物総合買取ドットコム');
	}
	return false;
},

/**
 * 入力チェック
 */
validate: function(element) {
	var elements = element.childNodes;
	var ret = true;

	if (elements.length == 0 && element.name != undefined) {
		if (element.title.match(/required/)) {
			
			// 必須チェック
			if (element.value == "") {
				element.style.backgroundColor = "red";
				element.focus();
				return false;
			} else if (element.title.match(/requiredif=(.*)/)) {
			// 相関チェック
				var target = document.getElementById(RegExp.$1);
				if (target.value != element.value) {
					target.style.backgroundColor = "red";
					element.style.backgroundColor = "red";
					element.focus();
					return false;
				} else {
					target.style.backgroundColor = "";
					element.style.backgroundColor = "";
				}
			} else if (element.type == "checkbox") {
			// チェックボックスチェック
				var list = document.getElementsByName(element.name);
				ret = false;
				for (var i = 0; i < list.length; i++) {
					if (list[i].checked) {
						ret = true;
					}
				}
				for (var i = 0; i < list.length; i++) {
					if (ret) {
						list[i].style.backgroundColor = "";
					} else {
						list[i].style.backgroundColor = "red";
					}
				}
				return ret;
			}else {
				element.style.backgroundColor = "";
				return true;
			}
			
		}
	}
	for (var i = 0; i < elements.length; i++) {
		if (!commons.validate(elements[i])) {
			ret = false;
		}
	}
	return ret;
}
};

//------------------------------------------------------------------------------
// ドロップダウンメニュー処理
//------------------------------------------------------------------------------
$.fn.dropDown = function() {
	function getSubNavi(element) {
		var sub = $("ul", element);
		if (sub.length > 0) {
			return sub;
		}
		return null;
	}
	
	function hide() {
		var sub = getSubNavi(this);
		if (!sub) return;
		$(sub).slideUp(250);
	}

	function show() {
		var sub = getSubNavi(this);
		if (!sub) return;
		$(sub).slideDown(250);
/*		$(sub).hover(
			function() {}, 
			function() {$(this).slideUp(250);}
		);*/
	}

	$("li", this).hover(show);
	$("li", this).click(hide);
	$("li > ul", this).hide();
};

// オンロードイベント割当
$(document).ready(function(){
	commons.display();
});



//------------------------------------------------------------------------------
// ブランド一覧ページ
//------------------------------------------------------------------------------
var brandPage = {
/**
 * ページオンロードイベントハンドラ
 */
display: function() {
	// 画像コピーしにくくする対応
	var elements = document.getElementById("brandList").getElementsByTagName("div");
	for (var i = 0; i < elements.length; i++) {
		if (elements[i].className == "brand") {
			var id = "#" + elements[i].id + "-img";
			var width = $(id).width();
			var height = $(id).height();
			var spacer = document.getElementById(elements[i].id + "-sp");
			spacer.width = width;
			spacer.height = height;
			spacer.oncontextmenu = brandPage.handleImageContextMenu;
		}
	}
	
	// メニューアクティブページカラー設定
	location.href.match(/.*id=(.*)/);
	var id = "page" + RegExp.$1.replace(/#.*/, "");
	var a = document.getElementById(id);
	a.style.backgroundColor = "#70100C";
	a.style.height = "49px";
		
	// アンカータグをターゲットブランク設定
	var elements = document.getElementById("brandList").getElementsByTagName("a");
	for (var i = 0; i < elements.length; i++) {
		elements[i].target = "_blank";
	}
	
	// 左リストのバックを下まで伸ばす
	var height = $('#brandList').height();
	$("#nameList").height(height);
	
	commons.display();
},

/**
 * 右クリック抑止
 */
handleImageContextMenu: function() {
	return false;
}
};

//------------------------------------------------------------------------------
// お問い合わせ、資料請求、メール査定ページ
//------------------------------------------------------------------------------
var requestPage = {
/**
 * 確認ボタンクリックイベントハンドラ
 */
handleConfirmOnClick: function() {
	var form = document.getElementById("frmRequest");
	if (!commons.validate(form)) {
		alert("入力に誤りがあります。ご確認ください。");
		return false;
	}
	
	form.submit();
},

/**
 * 戻るボタンクリックイベントハンドラ
 */
handleBackOnClick: function() {
	var form = document.getElementById("frmRequest");
	var mode = document.getElementById("mode");
	mode.value = "1";
	form.submit();
},

/**
 * 送信ボタンクリックイベントハンドラ
 */
handleSendOnClick: function() {
	var form = document.getElementById("frmRequest");
	form.submit();
},

/**
 * 都道府県設定
 */
setPref: function(value) {
	var select = document.getElementById("pref");
	for (var i = 0; i < select.length; i++) {
		if (select.options[i].text == value) {
			select.options[i].selected = true;
			return;
		}
	}
},

/**
 * 買取商品設定
 */
setProduct: function(value) {
	var elements = document.getElementsByName("prod");
	for (var i = 0; i < elements.length; i++) {
		if (value.match(elements[i].value)) {
			elements[i].checked = true;
		}
	}
}
};