/*

・ヘッダ部変更
<div align="right" id="fontsize"><script type="text/javascript" src="../common/scripts/resize.js"></script></div>

*/

var resizeFont={
	cookiename:"resize",
	defaultsize:"medium",
	days:100,
	
	linkElements:[],imagePath:"",size:"",
	
	buttonHTMLs:[
		'<img src="###mn_moji.gif" alt="文字サイズ変更" width="88" height="14" />',
		'<img src="###mn_moji_s.gif" onClick="resizeFont.sizeChange(\'small\');" alt="小" title="文字を小さくします" id="resize_button_small" width="12" height="12"  />',
		'<img src="###mn_moji_m.gif" onClick="resizeFont.sizeChange(\'medium\');" alt="中" title="文字を標準の大きさにします" id="resize_button_medium" width="15" height="15"  />',
		'<img src="###mn_moji_l.gif" onClick="resizeFont.sizeChange(\'large\');" alt="大" title="文字を大きくします" id="resize_button_large" width="18" height="18"  />'
	],	
	initialize:function(){
		//パスを取得
		var sc=document.getElementsByTagName("script");
		if(!sc.length) return false;
		for(var i=0,L=sc.length;i<L;i++){
			var srcVar=sc[i].getAttribute("src");
			if(!srcVar) continue;
			var reg=new RegExp(/^(.*)resize.js$/);
			if(reg.exec(srcVar)==null) continue;
			var _path=RegExp.$1;
			var cssPath		=_path.replace("common/scripts","common/css");
			this.imagePath=_path.replace("common/scripts","common/images");
			break;
		}
		if((!cssPath) || (!this.imagePath)) return false;

		//クッキーから初期値を取得
		var siz=resizeFont.defaultsize;
		var cookiename = resizeFont.cookiename+"=";
		var li = document.cookie.split(';');
		for(var i=0,L=li.length;i < L ;i++) {
			var value = li[i];
			while (value.charAt(0)==' ') value = value.substring(1,value.length);
			if (value.indexOf(cookiename ) == 0) {
				siz=value.substring(cookiename.length,value.length);
			}
		}
		
		//スタイルシートセット
		/*var disable_flags=["","",""];
		switch(siz){
			case "small":
				disable_flags[1]=disable_flags[2]=" disabled='disabled'";
			case "medium":
				disable_flags[0]=disable_flags[2]=" disabled='disabled'";
			case "large":
				disable_flags[0]=disable_flags[1]=" disabled='disabled'";
		}
		document.write("<link rel='alternate stylesheet' type='text/css' href='"+cssPath+"style_small.css' title='small'"+disable_flags[0]+" \/><link rel='alternate stylesheet' type='text/css' href='"+cssPath+"style_medium.css' title='medium'"+disable_flags[1]+" \/><link rel='alternate stylesheet' type='text/css' href='"+cssPath+"style_large.css' title='large'"+disable_flags[2]+" \/>");*/
		
		var links=document.getElementsByTagName("link");
		if(links.length<1) return;
		for(var i=0,L=links.length;i<L;i++){
			var title_text=links[i].getAttribute("title");
			if(title_text) {
				resizeFont.linkElements.push(links[i]);
				if(title_text==siz) {
					//links[i].setAttribute("disabled","");
					links[i].disabled=false;
				}
			}
		}		
		//resizeFont.setcss(siz);
		resizeFont.size=siz;
		if(document.all){
			window.attachEvent('onload',this.load);
			window.attachEvent('onunload',this.unload);
		} else 	{
			window.addEventListener('load',this.load,false);
			window.addEventListener('unload',this.unload,false);	
		}
	},
	
	load:function(){
		resizeFont.changebutton(resizeFont.size);
	},
	
	set:function(){
		//ボタン画像セット
		var buttonHTMLs=[];
		for(var i=0,L=resizeFont.buttonHTMLs.length;i<L;i++){
			buttonHTMLs[i]=resizeFont.buttonHTMLs[i].replace("###",resizeFont.imagePath);
		}
		document.write(buttonHTMLs.join(""))
	},
	unload:function(){
		var days=resizeFont.days;
		var cookiename =resizeFont.cookiename;
		
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
		document.cookie=cookiename+"="+resizeFont.size+expires+"; path=/";
	},

	setcss:function(siz) {
		var links = resizeFont.linkElements;
		for(i=0,L=links.length;i<L ; i++) {
			var obj=links[i];
			if(obj.getAttribute("rel").indexOf("style") != -1 && obj.getAttribute("title")) {
				
				if(obj.getAttribute("title") == siz){
					obj.disabled = false;
				} else {
					obj.disabled = true;
				}
			}
		}
	},
	  
	changebutton:function (siz){
		
		var current;
		var sizes=new Array("resize_button_small","resize_button_medium","resize_button_large");
		var buttons=new Array("mn_moji_s","mn_moji_m","mn_moji_l");
		var ext=".gif";
		for(var i=0,L=sizes.length;i<L;i++){
			if(sizes[i].indexOf(siz)!=-1){
				current = "_c";
			} else {
				current = "";
			}				
			var buttonfile_body=buttons[i];
			var buttonElem=document.getElementById(sizes[i]);
			if(buttonElem){
				var src_value =buttonElem.getAttribute("src");
				src_value = src_value.replace(/[^\/]+$/,buttonfile_body+current+ext);
			 	
				buttonElem.setAttribute("src",src_value);
			}
		}
	},
	
	sizeChange:function (siz){
		resizeFont.changebutton(siz);
		resizeFont.setcss(siz);
		resizeFont.size=siz;
	}	
}
resizeFont.initialize();