// Common JS.  Build 2008-09-14.
//
// 全ページ共通JSコード
//

// --------------------------------
// Image override (required Prototype.js)
//
//  The define : ioo = {  'IMGID':[ 'MouseoverSrc', 'MouseoutSrc' ], .... }
//
//  Fig) ioo = { 'Btn1':['over.img', 'out.img'] };
//       <img src="out.img" class="iover" id="Btn1" />
//
var ioo = {
	
	'm01':['./images/m01.gif','./images/m01o.gif']
	,'m02':['./images/m02.gif','./images/m02o.gif']
	,'m03':['./images/m03.gif','./images/m03o.gif']
	,'m04':['./images/m04.gif','./images/m04o.gif']
	,'m05':['./images/m05.gif','./images/m05o.gif']
	,'m06':['./images/m06.gif','./images/m06o.gif']
	,'mm01':['./images/mm01.gif','./images/mm01o.gif']
	,'mm02':['./images/mm02.gif','./images/mm02o.gif']
	,'mm03':['./images/mm03.gif','./images/mm03o.gif']
	,'mm04':['./images/mm04.gif','./images/mm04o.gif']
	,'mm05':['./images/mm05.gif','./images/mm05o.gif']
	,'mm06':['./images/mm06.gif','./images/mm06o.gif']
	,'ar01':['./images/ar01.gif','./images/ar01o.gif']
	
	};

if(window['Prototype'])
{
	/* Browser Detection */
	Prototype.Browser.IE6 = Prototype.Browser.IE && parseInt(navigator.userAgent.substring (navigator.userAgent.indexOf("MSIE")+5))==6;
	Prototype.Browser.IE7 = Prototype.Browser.IE && !Prototype.Browser.IE6;

	var cImageOverride = Class.create({
		initialize: function(oImg)
		{
			Event.observe(oImg, 'mouseover', function(){ oImg.src = ioo[oImg.id][1]; }, false);
			Event.observe(oImg, 'mouseout', function(){ oImg.src = ioo[oImg.id][0]; }, false);
		}
	});
	Event.observe(window, 'load', function(){
	// onload Event function

		Event.observe(window.document, "mousemove", hintTracking, false);

		// image override init.
		if(window['ioo']){ var iOvers = $$('img.iover'); for(var i=0;i<=iOvers.length-1; i++) if(ioo[iOvers[i].id]) new cImageOverride(iOvers[i]); }


		// search init.
		var idSearchText = 'cmn-search-text', blankKeyword = ' ここから検索できます';
		if($(idSearchText))
		{
			if($(idSearchText).value==''||$(idSearchText).value==blankKeyword) $(idSearchText).value=blankKeyword; else Element.addClassName( $(idSearchText), 'cmn-search-intext' );
			
			// event handlers
			Event.observe($(idSearchText), 'focus', function(){
				if(this.value==blankKeyword)
				{
					$(idSearchText).value='';
					Element.removeClassName( $(idSearchText), 'cmn-search-notext' ); Element.addClassName( $(idSearchText), 'cmn-search-intext' );
				}
			}, false);
			Event.observe($(idSearchText), 'blur', function(){
				if(this.value==''||this.value==blankKeyword)
				{
					$(idSearchText).value=blankKeyword; Element.removeClassName( $(idSearchText), 'cmn-search-intext' ); Element.addClassName( $(idSearchText), 'cmn-search-notext' );
				}
			}, false);
		}

	}, false);
	
	
	var hint = {
		
		active : false,
		activeId : ''
	
	};
	var hintTracking = function(e)
	{
		if(!hint.active) return;
		$(hint.activeId).style.position = 'absolute';
		$(hint.activeId).style.top    = (Event.pointerY(e)-50) + 'px';
		$(hint.activeId).style.left   = (Event.pointerX(e)+10) + 'px';
	};
	var hintOn = function(id)
	{
		if($(id)) Element.show($(id));
	
		hint.activeId = id;
		hint.active = true;
	};
	var hintOff = function(id)
	{
		hint.active = false;
		if($(id)) Element.hide($(id));
	};
};

// Browser window Resizer //
var winResize = {
	
	w: 0,
	h: 0,
	
	resize: function(w, h)
	{
		winResize.w = w;
		winResize.h = h;

		/* Safari only */
		if(BrowserDetect.browser=='Safari'){
			window.resizeTo(winResize.w, winResize.h+22);
			return;
		}

		Event.observe(window, 'resize', winResize.resize_int, false);
		window.resizeTo(winResize.w, winResize.h);
	},
	
	/* private */
	resize_int: function()
	{
		Event.stopObserving(window, 'resize', winResize.resize_int, false);
		var w = setTimeout('winResize.resize_proc()',500);
	},
	resize_proc: function()
	{
		var vDim = document.viewport.getDimensions();
		
		/* IE 6 only */
		if(BrowserDetect.browser=='Explorer'&&BrowserDetect.version<7){
			window.resizeTo(winResize.w+10, winResize.h+26);
			return;
		}
		/* Can't detect outer size */
		if(vDim.width<=0||vDim.height<=0){
			return;
		}

		//alert(winResize.w+' x '+winResize.h+'\n\n '+vDim.width+' x '+vDim.height);

		var nW = winResize.w - vDim.width;
		var nH = winResize.h - vDim.height;
		
		/* Opera only */
		if(BrowserDetect.browser=='Opera') nH = nH + 40;
		/* Google Chrome only */
		//if(BrowserDetect.browser=='Chrome' &&  Prototype.Browser.WebKit) nH = nH + 25;

		//alert((winResize.w + nW) + 'X' + (winResize.h + nH));

		window.resizeTo(winResize.w + nW, winResize.h + nH);
	}
};



