/*
	--------------------------------
	更新日: 2011-08-26
	--------------------------------
*/



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

({
	// 初期化
	init: function() {
		$.siteRoot = $.getScriptRoot('common/js/base.js');
		$(function() {
			$('.rollover').rollover({ on: '_ov' });
			$.scroller();
		});
		if ($.ua.isIE6) this.pngfix.init();
		if ($.ua.isIE) this.pngfix2.init();
//		if ($.ua.isLtIE9) this.html5shiv();
	},
	
	pngfix2: {
		init:function() {
			var d = document;
			var siteRoot = $.siteRoot;
			var src = [
				'<script type="text/javascript" src="' + siteRoot + 'common/lib/jquery.belatedPNG/jquery.belatedPNG.js"></script>'
			].join('');
			d.open();
			d.write(src);
			d.close();
		}
	},

	// PNG Fix
	pngfix: {
		// 設定
		ifixpng: 'common/lib/ifixpng/jquery.ifixpng2.js',
		ifixpngPixel: 'common/lib/ifixpng/pixel.gif',
		ifixpngSelector: 'img[src$=".png"], input[src$=".png"]',
		rolloverSelector: '.rollover',

		// 初期化
		init: function() {
			var self = this;
			this.load();
			$(function() {
				self.fix();
			});
		},

		// 読み込み
		load: function() {
			var d = document;
			var siteRoot = $.siteRoot;
			var src = [
				'<script type="text/javascript" src="' + siteRoot + this.ifixpng + '"></script>'
			].join('');
			d.open();
			d.write(src);
			d.close();
		},

		// 実行
		fix: function() {
			$.ifixpng($.siteRoot + this.ifixpngPixel);
			$(this.ifixpngSelector).ifixpng().filter(this.rolloverSelector).mouseout(function() {
				$(this).ifixpng();
			}).mouseover(function() {
				$(this).ifixpng();
			});
		}
	},

	// html5shiv
	html5shiv: function() {
		var d = document;
		d.open();
		d.write('<script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script>');
		d.close();
	}
}).init();



/* --------------------------------
	アウトライン削除
-------------------------------- */

$(function() {
	if ($.ua.isIE) $('a').click(function() { $(this).blur(); });
});



/* --------------------------------
	文字サイズ変更
-------------------------------- */
/**
 * BC Object Define
 */
var Mec = new Object();


$(function() {
	Mec.FontSize.init();
});


/**
 * FontSize Switcher
 */
Mec.FontSize = {
	config: {
		className: ['S','M','L'],
		cookieName: 'shochikuMetFontSizeSwitcher',
		cookieExpires: 90
	},
	change: function(arg){
		if(document.getElementById('container')){
			var b = document.getElementById('container');
			var c = "font"+this.config.className[arg];
			if(hasClass(b, c)) return;
			if(hasClass(b, "fontS")) removeClass(b, "fontS");
			if(hasClass(b, "fontM")) removeClass(b, "fontM");
			if(hasClass(b, "fontL")) removeClass(b, "fontL");
			addClass(b, c);
			createCookie(this.config.cookieName,arg,this.config.cookieExpires,'/');
		}
	},
	init :function(){
		var s = (readCookie(this.config.cookieName)==null) ? '1' : readCookie(this.config.cookieName);
		this.change(s);
	}
};



/**
 * Class Attribute Handler
 * http://snipplr.com/view/3561/addclass-removeclass-hasclass/
 */
function hasClass(ele,cls) {
	return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}
function addClass(ele,cls) {
	if (!hasClass(ele,cls)) ele.className += " "+cls;
}
function removeClass(ele,cls) {
	if (!hasClass(ele,cls)) return;
	var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
	ele.className=ele.className.replace(reg,' ');
}



// cookie script http://www.quirksmode.org/js/cookies.html
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 var 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;
}




/* --------------------------------
	MM_Behavior
-------------------------------- */

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}










