﻿/* ------------------------------------------------------------ */
/*                                                              */
/*                         global param                         */
/*                                                              */
/* ------------------------------------------------------------ */

var _loc      = location.pathname;
var _pathName = _loc.substring(0,_loc.lastIndexOf('/')+1);
var _fileName = _loc.substring(_loc.lastIndexOf('/')+1);
var _swfAry   = new Array();

function _(p,q) {q=new Image;q.src=p;p=q.src;q.src='#';return p}
var _absPath  = (_(document.getElementsByTagName('script')[0].src.split('_common')[0]));





/* ------------------------------------------------------------ */
/*                                                              */
/*                       import libraries                       */
/*                                                              */
/* ------------------------------------------------------------ */
document.write('<script type="text/javascript" src="'+_absPath+'_common/js/core/swfobject.js"></script>');
document.write('<script type="text/javascript" src="'+_absPath+'_common/js/lib/newsticker.js"></script>');
document.write('<script type="text/javascript" src="'+_absPath+'_common/js/lib/dimensions.js"></script>');
document.write('<script type="text/javascript" src="'+_absPath+'_common/js/lib/ifixpng.js"></script>');
document.write('<script type="text/javascript" src="'+_absPath+'_common/js/lib/thickbox/thickbox.js"></script>');
document.write('<link rel="stylesheet" type="text/css" href="'+_absPath+'_common/js/lib/thickbox/thickbox.css" media="screen" />');

var $j = jQuery.noConflict();





/* ------------------------------------------------------------ */
/*                                                              */
/*                          initialize                          */
/*                                                              */
/* ------------------------------------------------------------ */

try {document.execCommand('BackgroundImageCache', false, true);} catch(e) {}  // ie6 background-image reload issue

$j(function($){

	// tabs --------------------------------------------------------
	if($('#tabs').size()) {
		$.fn.tabs('#tabs');
	}

	// _blank window -----------------------------------------------------
	$('a.blank, area.blank').click(function(){ window.open(this.href, '_blank'); return false; });

	// anchor ------------------------------------------------------------
	$('a.more').before('<img src="'+_absPath+'_common/styles/theme/img/white/arrow.gif" width="9" height="9" alt="" />');

	// localnav --------------------------------------------------------
	if($('#localnav').size()) {
		$('#localnav li a:eq(0)').addClass('active');
		var pname = (location.href.indexOf('.html')>0) ? location.href : location.href+'index.html';
		$('#localnav li a:gt(0)').each(function(){
			if(this.href == pname) { 
				$(this).addClass('active');
				$('#localnav li a:eq(0)').removeClass('active');
			}
		});
	}

	// location [ Floor Map ] ------------------------------------------------------------
	if($('a.location').size()) {
		$('a.location').attr('href','/makuhari/info/facilities/map.html?width=900&height=480').addClass('thickbox');
	}

	// table stripe ------------------------------------------------
	//	$('.stripe tr').mouseover(function(){$(this).addClass('over');}).mouseout(function(){$(this).removeClass('over');});
	$('.stripe tr:even').addClass('even');
	$('.stripe tr:odd').addClass('odd');
	$('.stripe_v tr').not('.thead').mouseover(function(){$(this).addClass('over');}).mouseout(function(){$(this).removeClass('over');});
	$('.stripe_v td:even').addClass('even');
	$('.stripe_v td:odd').addClass('odd');

	// overlayMenus --------------------------------------------------------
	$.fn.overlayMenus();
	$.fn.overlayIndex();

	// overlay ------------------------------------------------------------
	if($('.overlay').size()) {
		$('.overlay').wrap('<div class="boxWrap"><div class="boxOverlay"></div></div>');
		$('.boxWrap').append('<div class="boxOverlayBottom">&nbsp;</div><div class="boxOverlayArrow">&nbsp;</div><div class="boxOverlayArrow2">&nbsp;</div><div class="boxOverlayClose"><a href="#">このウィンドウを閉じる</a></div>');
	}

	// png fix ------------------------------------------------------------
	$('.boxOverlay,.boxOverlayBottom,.boxOverlayArrow,.boxOverlayArrow2').ifixpng('/makuhari/_common/img/blank.gif');
});










/* ------------------------------------------------------------ */
/*                                                              */
/*                        locationMap                           */
/*                                                              */
/* ------------------------------------------------------------ */
locationMap = {
	init: function() {
		var pathType = location.pathname.split('/').slice(2,3);
		var pathUrl  = (pathType=='restaurant') ? location.pathname.split('/').slice(1,4).join('/') : location.pathname.split('/').slice(1,5).join('/');
		pathUrl      = '/' + pathUrl + '/index.html';
		$('.floormaps').hide();
		$('area[href='+pathUrl+']').parent().each(function(){
			var pos = $(this).children('area[href='+pathUrl+']').attr('coords').split(',');
			var targFloor = $('#'+this.id.split('_')[1]);
			targFloor.show().css({'position':'relative'});
			targFloor.append('<div style="position:absolute;left:'+(pos[0]-10)+'px;top:'+(pos[1]-2)+'px;"><img src="/makuhari/_common/img/location.gif" width="13" height="13" alt="☆" /></div>');
		});
	}
};



/* ------------------------------------------------------------ */
/*                                                              */
/*                        overlayIndex                          */
/*                                                              */
/* ------------------------------------------------------------ */

(function($){
	$.fn.overlayIndex = function() {
		var ON_CLASS  = 'active';
		var OFF_CLASS = 'inactive';
		var id = '#indexnav';
		var closeClick = false;
		$(id + '>div').hide();
		$(id + '>div.overlay').show();
		$(id + '>.index>li a').click(function(){
			var trigger = ($(this).parent().is('p')) ? $(this).parent().prev('a'): $(this);
			var pos = trigger.position();
			if (!trigger.is('.' + ON_CLASS)) {
				if (closeClick) {
					closeClick = false;
					return false;
				}
				var re = /([_\-\w]+$)/i;
				var target = $('#' + re.exec(this.href)[1]).parent().parent();
				if (target.size() > 0) {
					$(id).addClass("plain");
					$(id + '>div:visible').css({display:"none"});
					target.css({display:"block"});
					target.children(".boxOverlayArrow").css({"left": (pos.left+62)+"px"});
					target.children(".boxOverlayClose>a").click(function(){
						$(id + '>div:visible').css({display:"none"});
						$(id + '>.index>li a').removeClass(ON_CLASS).removeClass(OFF_CLASS);
						$(id).removeClass("plain");
						closeClick = true;
					});
					if ( $('body.fitness').size() > 0) {
						target.click(function(){
						},function(){
							$(id + '>div:visible').css({display:"none"});
							$(id + '>.index>li a').removeClass(ON_CLASS).removeClass(OFF_CLASS);
							$(id).removeClass("plain");
						});
					}
					$(id + '>.index>li a').removeClass(ON_CLASS).addClass(OFF_CLASS);
					trigger.addClass(ON_CLASS).removeClass(OFF_CLASS);
				} else {
					$(id + '>.index>li a').removeClass(ON_CLASS).removeClass(OFF_CLASS);
					$(id).removeClass("plain");
				}
			}
			return false;
		},function(){
				
		});
	}
})(jQuery);





/* ------------------------------------------------------------ */
/*                                                              */
/*                        overlayMenus                          */
/*                                                              */
/* ------------------------------------------------------------ */

(function($){
	$.fn.overlayMenus = function() {
		$('#main').append('<div id="overlayMenuWindow" class="overlay"></div>');
		var ON_CLASS = 'active';
		var olTimerID;
		$('#main a.overlayMenu, #main .overlayMenu a').hover(function(){
			clearTimeout(olTimerID);
			var trigger = $(this);
			var pos = trigger.position();
			if (!trigger.is('.' + ON_CLASS)) {
				var re = /([_\-\w]+$)/i;
				var target = $('#' + re.exec(this.href)[1]);
				if (target.size()) {
					$('#overlayMenuWindow').empty().show();
					target.clone().prependTo('#overlayMenuWindow');
					$('#overlayMenuWindow').children().removeClass('hide');
					var BOX = $('#overlayMenuWindow').parent().parent();
					BOX.children('.boxOverlayClose').children('a').html('&nbsp;').click(function(){
						BOX.hide();
					});
					BOX.show().hover(function(){
						clearTimeout(olTimerID);
					},function(){
						$(this).hide();
					});
					BOX.css({"position":"absolute", "top": (pos.top)+"px", "left": (pos.left + 50)+"px"});
					if (trigger.parents("#roomsList").size() || trigger.parents("#hallsList").size()) {
						var innH = $("#overlayMenuWindow").children("div").height();
						BOX.css({"top": (pos.top + 45 -innH)+"px"});
						BOX.children(".boxOverlayArrow").css({"top": (innH - 2)+"px"});
					}
					if (pos.left > 700) {
						BOX.css({"left": (pos.left - 300)+"px"});
						BOX.children(".boxOverlayArrow").hide();
						BOX.children(".boxOverlayArrow2").show();
					} else {
						BOX.children(".boxOverlayArrow").show();
						BOX.children(".boxOverlayArrow2").hide();
					}
				}
			}
			return false;
		},function(){
			olTimerID = setTimeout(function(){$('#overlayMenuWindow').parent().parent().hide();}, 50);
		});
	}
})(jQuery);





/* ------------------------------------------------------------ */
/*                                                              */
/*                           tabs                               */
/*                                                              */
/* ------------------------------------------------------------ */

(function($){
	$.fn.tabs = function(containerId) {
		var start = (location.search) ? parseInt(location.search.split('?')[1]) : 1;
		var ON_CLASS = 'active';
		var id = containerId;
		var i = (typeof start == "number") ? start - 1 : 0;
		$(id + '>div').css({display:"none"});
		$(id + '>div:eq(' + i + ')').css({display:"block"});
		var tabWidth = Math.floor($(id + '>ol#tabsnav').width() / $(id + '>ol#tabsnav>li').size());
		$(id + '>ol#tabsnav>li').each(function(){
			$(this).css({'width':tabWidth+'px','margin-left':'0px'});
		});
		var tabHeight = $(id + '>ol#tabsnav').height();
		$(id + '>ol#tabsnav>li').each(function(){
			$(this).height(tabHeight);
		});
		$(id + '>ol#tabsnav>li:nth-child(' + (i+1) + ')>a').addClass(ON_CLASS);
		$(id + '>ol#tabsnav>li>a').click(function() {
			if (!$(this).is('.' + ON_CLASS)) {
				var re = /([_\-\w]+$)/i;
				var target = $('#' + re.exec(this.href)[1]);
				if (target.size() > 0) {
					$(id + '>div:visible').css({display:"none"});
					target.css({display:"block"});
					$(id + '>ol#tabsnav>li>a').removeClass(ON_CLASS);
					$(this).addClass(ON_CLASS);
				}
			}
			return false;
		});
	}
})(jQuery);
















/* ------------------------------------------------------------ */
/*                                                              */
/*                        basic scripts                         */
/*                                                              */
/* ------------------------------------------------------------ */

//------------------------------------------------------------
// Util
//------------------------------------------------------------
Array.prototype.shuffle = function(){
	var i   = this.length;
	var ary = this.concat();
	var ret = [];
	while(i) ret.push(ary.splice(Math.floor(Math.random()*i--),1));
	return ret
}





//------------------------------------------------------------
// PopUp
//------------------------------------------------------------
function popup(theURL) {
  window.open(theURL,Math.floor(Math.random()*100),'status=yes,scrollbars=yes,menubar=yes,resizable=yes,width=750,height=500');
}
function opener(theURL,newwinFlag) {
  if((is_opener())&&(newwinFlag!='newwin')) {
    ol = window.opener;
    ol.location.href=theURL;
    ol.focus();
  } else {
    window.open(theURL,'blank','resizable=yes,scrollbars=yes,toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes');
  }
}
function is_opener() {
  var ua = navigator.userAgent;
  if(!!window.opener) {
    if( ua.indexOf('MSIE 4')!=-1 && ua.indexOf('Win')!=-1) { 
      return !window.opener.closed;
    } else {
      return typeof window.opener.document  == 'object';
    }
  } else {
    return false;
  }
}







/* ------------------------------------------------------------ */
/*                                                              */
/*                      Flash  -  SWFObject                     */
/*                                                              */
/* ------------------------------------------------------------ */
function _swf(obj) {
  if (typeof obj == 'undefined') return null;

  switch (obj.type) {
    case 'home':
      prm = {w:680,h:458,id:'swfMain',swf:_absPath+'_common/swf/photo_home.swf',param:''}; break;
    case 'stay':
      prm = {w:670,h:400,id:'swfMain',swf:_absPath+'_common/swf/photo_stay.swf',param:''}; break;
    case '417':
      prm = {w:417,h:290,id:'swfMain',swf:_absPath+'_common/swf/photo_417.swf',param:''}; break;
    case '450-610':
      prm = {w:450,h:610,id:'swfMain',swf:_absPath+'_common/swf/photo_450-610.swf',param:''}; break;
    case '450-650':
      prm = {w:450,h:650,id:'swfMain',swf:_absPath+'_common/swf/photo_450-650.swf',param:''}; break;
    case '460':
      prm = {w:460,h:350,id:'swfMain',swf:_absPath+'_common/swf/photo_460.swf',param:''}; break;
    case '670':
      prm = {w:670,h:350,id:'swfMain',swf:_absPath+'_common/swf/photo_670.swf',param:''}; break;
    case '670-400':
      prm = {w:670,h:400,id:'swfMain',swf:_absPath+'_common/swf/photo_670-400.swf',param:''}; break;
    case '700-650':
      prm = {w:700,h:650,id:'swfMain',swf:_absPath+'_common/swf/photo_700-650.swf',param:''}; break;
    case '710-610':
      prm = {w:710,h:610,id:'swfMain',swf:_absPath+'_common/swf/photo_710-610.swf',param:''}; break;
    case '777':
      prm = {w:777,h:300,id:'swfMain',swf:_absPath+'_common/swf/photo_777.swf',param:''}; break;
    case '777-400':
      prm = {w:777,h:400,id:'swfMain',swf:_absPath+'_common/swf/photo_777-400.swf',param:''}; break;
    case '777-450':
      prm = {w:777,h:450,id:'swfMain',swf:_absPath+'_common/swf/photo_777-450.swf',param:''}; break;
  }
  if (typeof prm == 'undefined') return null;

  /* --- case of undefined --- */
  if (!prm.v)      prm.v      = 8;
  if (!prm.bg)     prm.bg     = '#ffffff';
  if (!prm.scale)  prm.scale  = 'noscale';
  if (!prm.salign) prm.salign = 'TL';
  if (!prm.wmode)  prm.wmode  = 'transparent';

  var so = new SWFObject(prm.swf, prm.id, prm.w, prm.h, prm.v, prm.bg);

  /* --- add param --- */
  so.addParam('scale',  prm.scale);
  so.addParam('salign', prm.salign);
  if (prm.wmode == 'transparent') {
    so.addParam('wmode', prm.wmode);  // Japanese IME & Scroll Wheel issue
  }

  /* --- add variable --- */
  if (prm.param) { var pAry=prm.param.split('&'); for (var i=0;i<pAry.length;i++) {var a=pAry[i].split('='); so.addVariable(a[0],a[1]);} };
  if (location.search) { var sAry=location.search.substr(1).split('&'); for (var i=0;i<sAry.length;i++) {var a=sAry[i].split('='); so.addVariable(a[0],a[1]);} };
  so.addVariable('_pathName', _pathName);

  /* --- marginFix & write --- */
  so.setAttribute('style', ';');
  so.write(prm.id+'Holder');
}
