// CSS情報
var css = new Array(3);
css[0] = "css/fontsize_s.css";  // フォントサイズ小（標準）
css[1] = "css/fontsize_m.css";    // フォントサイズ中
css[2] = "css/fontsize_l.css";  // フォントサイズ大

// クッキー作成
function createCookie( name, value, days ){
	if( days ){
		var date = new Date();
		date.setTime( date.getTime() + ( days * 24 * 60 * 60 * 1000 ) );
		var expires = "; expires=" + date.toGMTString();
	}
	else{
		expires = "";
	}
	document.cookie = name + "=" + value + expires + "; path=/";
}

// クッキー読込
function readCookie( name ) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for( var i = 0; i < ca.length; i++ ){
		var c = ca[i];
		while( c.charAt(0) == ' ' ){
			c = c.substring( 1, c.length );
		}
		if( c.indexOf( nameEQ ) == 0 ){
			return c.substring( nameEQ.length, c.length );
		}
	}
	return null;
}


// フォントサイズセット
function setFontSize( size ){
	createCookie( "fontsize", size, 365 );
	reflectionCss( size );

	if (size == "small"){
		document.FontSizeS.src=IMGsrc[0][1];
		document.FontSizeM.src=IMGsrc[1][0];
		document.FontSizeL.src=IMGsrc[2][0];
	} else if (size == "normal"){
		document.FontSizeS.src=IMGsrc[0][0];
		document.FontSizeM.src=IMGsrc[1][1];
		document.FontSizeL.src=IMGsrc[2][0];
	} else if (size == "large"){
		document.FontSizeS.src=IMGsrc[0][0];
		document.FontSizeM.src=IMGsrc[1][0];
		document.FontSizeL.src=IMGsrc[2][1];
	} else{
		document.FontSizeS.src=IMGsrc[0][0];
		document.FontSizeM.src=IMGsrc[1][0];
		document.FontSizeL.src=IMGsrc[2][0];
	}
}

// フォントサイズゲット
function getFontSize(){
	var size = "small";
	var cookie = readCookie( "fontsize" );
	return cookie ? cookie : size;
}

// フォントサイズ画像チェンジ
var fontsize = getFontSize();
var icon0 = "";
var icon1 = "";
var icon2 = "";
if (fontsize == "small"){
	var icon0 = "./image/btn_fontsize_s_f2.gif";
	var icon1 = "./image/btn_fontsize_m.gif";
	var icon2 = "./image/btn_fontsize_l.gif";
}else if (fontsize == "normal"){
	var icon0 = "./image/btn_fontsize_s.gif";
	var icon1 = "./image/btn_fontsize_m_f2.gif";
	var icon2 = "./image/btn_fontsize_l.gif";
}else if (fontsize == "large"){
	var icon0 = "./image/btn_fontsize_s.gif";
	var icon1 = "./image/btn_fontsize_m.gif";
	var icon2 = "./image/btn_fontsize_l_f2.gif";
}else{
	var icon0 = "./image/btn_fontsize_s_f2.gif";
	var icon1 = "./image/btn_fontsize_m.gif";
	var icon2 = "./image/btn_fontsize_l.gif";
}

IMGsrc = new Array();
IMGsrc[0] = new Array("./image/btn_fontsize_s.gif","./image/btn_fontsize_s_f2.gif");
IMGsrc[1] = new Array("./image/btn_fontsize_m.gif","./image/btn_fontsize_m_f2.gif");
IMGsrc[2] = new Array("./image/btn_fontsize_l.gif","./image/btn_fontsize_l_f2.gif");


//文字サイズ変更ボタンHTML
var fontsize_html = ''
+'<img src="image/btn_fontsize_text.gif" alt="文字のサイズ変更" width="159" height="11" hspace="8">'
+'<a href="javascript:setFontSize(\'small\');" onfocus="if(document.all)this.blur()"><img src="'+icon0+'" alt="標準" width="60" height="15" name="FontSizeS" border="0"></a>'
+'<a href="javascript:setFontSize(\'normal\');" onfocus="if(document.all)this.blur()"><img src="' +icon1+ '" alt="やや大きめ" width="60" height="15" hspace="5" name="FontSizeM" border="0"></a>'
+'<a href="javascript:setFontSize(\'large\');" onfocus="if(document.all)this.blur()"><img src="' +icon2+ '" alt="大きめ" width="60" height="15" name="FontSizeL" border="0"></a>';




// フォントサイズ反映
function reflectionCss( size ){
	if( size == null ){
		size = getFontSize();
	}
	var i, obj;
	for( i = 0; ( obj = document.getElementsByTagName("link")[i] ); i++ ){
		if( obj.getAttribute("rel").indexOf("style") != -1 && obj.getAttribute("title") ){
			if( obj.getAttribute("title") == size ){
				obj.disabled = false;
			}
			else{
				obj.disabled = true;
			}
		}
	}
}

var di = document.implementation;

function loadCss( obj ){
	var i, n;
	var size = getFontSize();
	// 読込順を正しくしないと動きがおかしくなる可能性がある。
	if( di && di.hasFeature( 'HTMLEvents', '2.0' ) ){
		switch( size ){
			case 'small': n = new Array( 0, 1, 2 ); break;
			case 'large': n = new Array( 2, 0, 1 ); break;
			default: n = new Array( 1, 2, 0 ); break;
		}
	}else{
		switch( size ){
			case 'small': n = new Array( 1, 2, 0 ); break;
			case 'large': n = new Array( 0, 1, 2 ); break;
			default: n = new Array( 2, 0, 1 ); break;
		}
	}
	
	for( i = 0; i < 3; i++ ){
		switch( n[i] ){
			case 0: document.writeln('<link rel="stylesheet" title="small" type="text/css" href="' + css[0] +'">'); break;
			case 1: document.writeln('<link rel="stylesheet" title="normal" type="text/css" href="' + css[1] +'">'); break;
			default: document.writeln('<link rel="stylesheet" title="large" type="text/css" href="' + css[2] +'">'); break;
		}
	}
	document.close();
}

function addEvent( obj, eventType, func ){
	if( di && di.hasFeature( 'HTMLEvents', '2.0' ) ){
		window.addEventListener( 'load', initCss, false );
	}else{
		initCss();
	}
}

// ロード時
function initCss(){
		reflectionCss( null );
}


// CSS読込
loadCss( window );

// イベント追加
addEvent( window, 'load', initCss );


