// ホテルエピナール那須の処理を格納するオブジェクト。
if (typeof epinard == "undefined" || !epinard) var epinard = {};

// IE6のキャッシュを有効にする。
try {
	document.execCommand("BackgroundImageCache", false, true);
} catch(e) {}

/**
 * 指定のリンクを別ウィンドウで開くように設定する。
 * 「rel="external"」を記述したaタグを対象とする。
 */
epinard.externalLink = function()
{
	$('a[rel="external"]').each(function(){
		var href = $(this).attr('href');
		$(this).click(function(){ return !window.open(href); });
		$(this).keypress(function(e){
			var keyCode;
			if (e.keyCode) keyCode = e.keyCode;
			else if (e.which) keyCode = e.which;
			if (keyCode != 13 && keyCode != 32) return true;
			return !window.open(href);
		});
	});
};

/**
 * bodyタグ(ページ全体を意味する)の文字サイズを設定する。
 * Cookieに文字サイズを保存する。
 *
 * @param size	String:	CSSのfont-sizeに指定する文字列。
 */
epinard.setFontSize = function(size)
{
	size = size || '1.2em';
	$('body').css('font-size', size);
	$.cookie('font-size', size, {expires:365,path:'/'});
	return false;
};

/**
 * 文字サイズを変更するメニューを表示する。
 */
epinard.createFontSizeMenu = function()
{
	var div = $('<div id="header_fontsize" class="clearfix"><div id="fontsize_title">フォントの大きさ</div></div>');
	div.append($('<div id="fontsize_large" class="fontsize_box">大</div>').clickpress(function(){ epinard.setFontSize('1.5em'); }));
	div.append($('<div id="fontsize_medium" class="fontsize_box">中</div>').clickpress(function(){ epinard.setFontSize('1.2em'); }));
	div.append($('<div id="fontsize_small" class="fontsize_box">小</div>').clickpress(function(){ epinard.setFontSize('0.9em'); }));
	$('div#header_inner').append(div);
};

/**
 * 指定の要素にGoogle Analyticsのページトラッカーを設定する。
 *
 * @param target	String:	jQueryで1個を特定可能な
 * @param url		String:	ページトラッカーに設定するURL。
 */
epinard.setPageTracker = function(target, url)
{
	if (typeof pageTracker == "undefined") return;
	$(target).clickpress(function(){ pageTracker._trackPageview(url); });
}

/**
 * 外部リンクにGoogle Analyticsのページトラッカーを設定する。
 */
epinard.setPageTrackerExternalLink = function()
{
	// 外部リンク(自ドメインをURLに含まない)にトラッキングを設定する。
	var domain = 'epinard\.jp'; //'epinard.jp'.replace(/\W/g, '\\$&');
	var reg = new RegExp(domain,'i');
	$('a[href*="://"]').each(function(){
		var href = this.href;
		if (href.match(reg)) return;
		$(this).clickpress(function(){
			var link = '/_external/' + href.replace(/http(|s):\/\//i,'');
			pageTracker._trackPageview(link);
		});
	});
};

// メイン処理。
$(function(){

	// 別ウィンドウを開くように設定する。
	epinard.externalLink();

	// 文字サイズを変更して、メニューも表示する。
	epinard.setFontSize($.cookie('font-size'));
	epinard.createFontSizeMenu();

	// 外部リンクにGoogle Analyticsのページトラッカーを設定する。
	epinard.setPageTrackerExternalLink();

});
