/*
=======================================================
フォントサイズ変更処理（クッキー使用）

=======================================================
*/

/*
---------- 初期設定 ----------
*/

// 値の単位
var fontSizeUnit = "pt";

// 一回の操作で変化させる値
var perOrder = 2;

// 初期状態の値
var defaultSize = 10;

// クッキーの名前
var cookName = "twin-apple";

// クッキーの有効期限
var cookDays = 7;

// クッキーのパス
var cookPath = "/";


/*
---------- ページ読み込み時の値を設定 --------
*/

// クッキー読み出し
var fsccCook = GetCookie( cookName );

if ( fsccCook == null ) {
	var currentSize = defaultSize;				// クッキーが無ければ初期値を設定
} else {
	var currentSize = eval( fsccCook );
}


/*
---------- 文字サイズのスタイルを出力 ----------
*/
document.writeln( '<style type="text/css">' );
document.write( 'body{ font-size:' + currentSize + fontSizeUnit + ';}' );
document.writeln( '</style>' );


/*--------------------

--------------------*/

function fsc( CMD ) {
	
	// 拡大
	if ( CMD == "larger" ) {
		var newSize = Number( currentSize + perOrder );
		SetCookie( cookName , newSize );
	}
	
	// 縮小
	if ( CMD == "smaller" ) {
		if ( currentSize != perOrder ) {
			var newSize = Number( currentSize - perOrder );
			SetCookie( cookName , newSize );
		} else {
			var newSize = Number( currentSize );
		}
	}
	
	// 元に戻す
	if ( CMD == 'default' ) {
		DeleteCookie( cookName );
	}

	// ページの再読み込み
	location.reload();
}

// ----------------------------------------------------

/* 関数　SetCookie */
function SetCookie ( name , value ) {
	var dobj = new Date();
	dobj.setTime(dobj.getTime() + 24 * 60 * 60 * cookDays * 1000);
	var expiryDate = dobj.toGMTString();
	document.cookie = name + '=' + escape(value) + ';expires=' + expiryDate + ';path=' + cookPath;
}

/* 関数　GetCookie */
function GetCookie ( name ) {
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while ( i < clen ) {
		var j = i + alen;
		if ( document.cookie.substring(i,j) == arg )
		return getCookieVal (j);
		i = document.cookie.indexOf(" ", i) + 1;
		if ( i== 0 ) break;
	}
	return null;
}


/* 関数　getCookieVal */
function getCookieVal ( offset ) {
	var endstr = document.cookie.indexOf ( ";", offset );
	if (endstr == -1 )
	endstr = document.cookie.length;
	return unescape( document.cookie.substring( offset, endstr ) );
}


/* 関数　DeleteCookie */
function DeleteCookie ( name ) {
	if ( GetCookie( name ) ) {
		document.cookie = name + '=' +
		'; expires=Thu, 01-Jan-70 00:00:01 GMT;path='+cookPath;
	}
}
