/* 文字サイズstyleseet title属性名 */
var style = new Array();
style[0] = "fontMd";
style[1] = "fontbg";
style[2] = "fontmx";

/***
 *  文字サイズ リンク押下時処理
 *   ・対応する文字サイズに変更
 *   ・文字サイズをCookieに保存
 *   @param (number) n 文字サイズtitle属性配列番号
 **/
function fsize(n) {
	this.setCss(n);
  
	this.setCssById(n, 'menu');
	this.setCssById(n, 'contents-f');
	
  /* 指定されたfontサイズをクッキーに保持 */
	this.setCookie("font-size", n);
}

/***
 *  Cookieに保持したフォントサイズを設定
 *  画面遷移時に必ず呼び出される
 **/
function setFontSize() {
	var font = getCookie("font-size");
	if (font == "") {
		font = 0;
	}
	this.setCss(font);
}

/***
 *  styleseetを切り替える。
 *  対応したlinkタグのtitle属性名の文字サイズstyleseetを活性化し、
 *  他の文字サイズstyleseetを非活性化する。
 *  
 *  @param (number) n 文字サイズtitle属性配列番号
 ***/
function setCss(n) {
	var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == style[n]) a.disabled = false;
    }
  }
}

/***
 *  styleseetを切り替える。
 *  指定したIDのiframe内の
 *  対応したlinkタグのtitle属性名の文字サイズstyleseetを活性化し、
 *  他の文字サイズstyleseetを非活性化する。
 *  
 *  @param (number) n 文字サイズtitle属性配列番号
 *  @param (String) id 切り替え先iframeのID
 ***/
function setCssById(n, id) {
	var iframe = document.getElementById(id);

	var i, a, main;
	  for(i=0; (a = iframe.contentWindow.document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == style[n]) a.disabled = false;
    }
  }

}

/***
 *  指定したCookieの値を取得する。
 *  Cookieはブラウザを閉じるまで有効 
 *  
 *  @param (String) key 取得CookieID
 ***/
function getCookie(key) {
    var tmp1 = " " + document.cookie + ";";
    var xx1 = 0;
    var xx2 = 0;
    var xx3 = 0;
    var len = tmp1.length;
    while (xx1 < len) {
        xx2 = tmp1.indexOf(";", xx1);
        tmp2 = tmp1.substring(xx1 + 1, xx2);
        xx3 = tmp2.indexOf("=");
        if (tmp2.substring(0, xx3) == key) {
            return(unescape(tmp2.substring(xx3 + 1, xx2 - xx1 - 1)));
        }
        xx1 = xx2 + 1;
    }
    return("");
}

/***
 *  指定したCookieの値を設定する。
 *  Cookieはブラウザを閉じるまで有効。
 *  
 *  @param (String) key 設定CookieID
 *  @param (String) val 設定Cookie値
 ***/
function setCookie(key, val) {
    var tmp = key + "=" + escape(val) + "; ";
    document.cookie = tmp;
}

/**
 * ブラウザがIEの場合にtrueを返却
 */
function isIE() {
	return (IE='\v'=='v');
}

/**
 * 文字サイズ指定リンクを描画する。
 * IE以外の場合は描画しない。
 * index.htmlから一度だけ呼び出される。
 */
function printFsize() {
	if(this.isIE()) {
		var html = '文字サイズ ： '
		html += '<a href="javascript:fsize(0);">中</a>'
		html += ' &lt; ';
		html += '<a href="javascript:fsize(1);">大</a>'
		html += ' &lt; ';
		html += '<a href="javascript:fsize(2);">最大</a>';
		this.setInnerHTML("sizer", html);
	}
}

/**
 * 指定ID部にHTMLをセットする。
 * 
 * @param (String) id 描画先ID
 * @param (String) html 描画html
 */
function setInnerHTML(id, html){
	var d = document.getElementById(id);
	d.innerHTML = html;
}


/******* jsファイル読込時に実行(IEの場合のみ) ******/
if(this.isIE()) {
	/* 文字サイズをCookieの値を参照して設定 */
	this.setFontSize();
}
