/*------------------------------------------------------------
  TextSizeController
------------------------------------------------------------*/

var TextSizeController = {
	
	/* プロパティ
	============================================================*/
	//使用テキストサイズ単位
	tsUnit:"px",
	//標準テキストサイズ
	normalSize:12,
	//
	nowSize:0,
	
	/* bodyオブジェクト
	============================================================*/
	bodyObj:function(){
		return document.getElementsByTagName('body')[0];		
	},
	
	/* サイズセット　　
	============================================================*/
	sizeSet:function(size_){
		this.bodyObj().style.fontSize = this.normalSize + size_ + this.tsUnit;
		this.nowSize=size_;
	},

	/* img 差し替え
	============================================================*/
	imgReplace:function(isize){
	  var aaimg= new Array('its_S','its_M','its_L');
		for(var ii=0;ii<3;ii++){
			var aImage = document.getElementById(aaimg[ii]);
			var src = aImage.getAttribute('src');
			var ftype = src.substring(src.lastIndexOf('_'), src.length);
			var nftype = ftype.replace('_on', '_off');
			var hsrc = src.replace(ftype,nftype);
			aImage.setAttribute('src',  hsrc);
		}
		aImage = document.getElementById(isize); 
		var src = aImage.getAttribute('src');
		var ftype = src.substring(src.lastIndexOf('_'), src.length);
		var nftype = ftype.replace('_off', '_on')
		var hsrc = src.replace(ftype,nftype);
		aImage.setAttribute('src',  hsrc);

	},
	
	/* 初期設定
	============================================================*/
	init:function(){
		var bodyStyle = this.bodyObj().style;
		this.bodyObj().style.fontSize = this.normalSize + this.tsUnit//
	}
}


/* イベント設定
============================================================*/
function setEventTSC(){
	var anchorObj = document.getElementsByTagName('a');
	var textsize_c=0;
	for(var i=0;i<anchorObj.length;i++){
		
		if(anchorObj[i].className.match("ts_L")){
			anchorObj[i].onclick = function(){
				TextSizeController.sizeSet(1);
				TextSizeController.imgReplace("its_L");
				return false;
			};
		}else if(anchorObj[i].className.match("ts_M")){
			anchorObj[i].onclick = function(){
				TextSizeController.sizeSet(0);
				TextSizeController.imgReplace("its_M");
				return false;
			};
		}else if(anchorObj[i].className.match("ts_S")){
			anchorObj[i].onclick = function(){
				TextSizeController.sizeSet(-1);
				TextSizeController.imgReplace("its_S");
				return false;
			};
		}
	}
	//初期設定実行
	TextSizeController.init();
}

/* クッキー
============================================================*/
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 sizeSetCookie() {
	var baimg= new Array('its_S','its_M','its_L');
  var cookie = readCookie("fsize");
	TextSizeController.sizeSet(eval(cookie));
	TextSizeController.imgReplace(baimg[eval(cookie)+1]);
}

function sizePutCookie() {
  createCookie("fsize",TextSizeController.nowSize,365);
}


/* イベント設定実行
============================================================*/
if(window.addEventListener){
	window.addEventListener("load",setEventTSC,false);
	window.addEventListener("load",sizeSetCookie,false);
	window.addEventListener("unload",sizePutCookie,false);
	
}else if(window.attachEvent){
	window.attachEvent("onload",sizeSetCookie);
	window.attachEvent("onload",setEventTSC);
	window.attachEvent("onunload",sizePutCookie);	
}