(function($){
	$.fn.imageRollover = function(options) {
		var defaults = {
			off : '_off',
			on  : '_on'
		};
		var settings = $.extend(defaults, options);
		this.each(function() {
			if ( $(this).attr('src').lastIndexOf(settings.off) == -1 ) return;
			$('<img />').attr('src', $(this).attr('src').replace(settings.off, settings.on));
			$(this).hover(function() {
				$(this).attr('src',$(this).attr('src').replace(settings.off, settings.on));
			},function() {
				$(this).attr('src',$(this).attr('src').replace(settings.on, settings.off));
			});
		});
		return this;
	};
})(jQuery);

(function($){
	$.fn.pageScroller = function(options) {
		var defaults = {
			duration   : 795,
			easing     : 'easeOutExpo',
			scrollLeft : false
		},
			html = document.documentElement,
			body = document.body,
			settings = $.extend(defaults, options);
		this.each(function() {
			if (!$(this).attr('href') || $(this).attr('href').indexOf('/') != -1 || $(this).attr('href').indexOf('#') == -1) return;
			//if (!$(this).attr('href') || $(this).attr('href').indexOf('#') == -1) return;
			$(this).click(function(e){
				e.preventDefault();
				var target       = $($(this).attr('href')),
					targetY      = target.offset().top || 0,
					targetX      = target.offset().left || 0,
					windowHeight = html.clientHeight || body.clientHeight,
					windowWidth  = html.clientWidth || body.clientWidth,
					pageHeight   = html.scrollHeight || body.scrollHeight,
					pageWidth    = html.scrollWidth || body.scrollWidth;
				if (document.compatMode == 'BackCompat') {
					pageHeight = body.scrollHeight, pageWidth = body.scrollWidth;
				};
				if (windowHeight + targetY > pageHeight) targetY -= (windowHeight + targetY) - pageHeight;
				if (windowWidth + targetX > pageWidth) targetX -= (windowWidth + targetX) - pageWidth;
				if (! settings.scrollLeft ) {
					$('html,body').animate({
						scrollTop: targetY
					}, settings.duration, settings.easing);
				} else {
					$('html,body').animate({
						scrollTop: targetY,
						scrollLeft: targetX
					}, settings.duration, settings.easing);
				};
			});
		});
		return this;
	};
})(jQuery);

(function($){
	$.fn.imgFader = function(options) {
		var defaults = {
			In  : 1,
			Out : 0.8
		};
		settings = $.extend(defaults, options);
		this.each(function() {
			$(this).hover(function(){
				$(this).animate({opacity: settings.Out}, {duration: "fast", queue: false});
			},function(){
				$(this).animate({opacity: settings.In}, {duration: "fast", queue: false});
			});
		});
		return this;
	};
})(jQuery);


$(function(){
	$('img, input:image').imageRollover();
	$('a').pageScroller();
	$('#plan li img').imgFader();

	if(!jQuery.support.opacity){
		if(!jQuery.support.style){
			if (typeof document.documentElement.style.maxHeight == "undefined") {
				var isIE = true;
			}
		}
	}
	if (!isIE) {

	var specialInfo = function() {
		var flag = 0;
		var timer;
		var target = $('#special');
		var btn = $('#special p img').css({'cursor': 'pointer'});
		$('<img />').attr('src', btn.attr('src').replace('.png', '_cr.png'));
		var open = function(){
			target.animate({'height':'341px'},500,function(){
				btn.attr('src',btn.attr('src').replace('.png', '_cr.png'));
			});
			flag = 1;
		}
		var close = function(){
			target.animate({'height':'38px'},500,function(){
				btn.attr('src',btn.attr('src').replace('_cr.png', '.png'));
			});
			flag = 0;
		}
		btn.toggle(function(){
			if(flag) { close() } else { open() };
		},function(){
			if(flag) { close() } else { open() };
		});
		timer = setTimeout(function() {
			timer = null;
			close();
		},3000);
	}

	if($('#special').size()) specialInfo();
	}

	if($("#visual").length){
		var visualContainer = $('#visual ul');
		var visualNavi = $('#thumbnail li');
		
		//$("#thumbnail li").append("<span class='off'></span><span class='on'></span>");
		visualNavi.each(function(){
			$(this).append("<span class='off'></span><span class='on'></span>");
			$(this).find('span.on').hide();
		});
		
		visualContainer.cycle({
			fx: 'fade', 
			speed: 500,
			timeout: 5000,
			before: function(){
				visualNavi.removeClass("current");
				visualNavi.eq($(this).index()).addClass("current");
				visualNavi.each(function(){
					$(this).find('span.on').hide();
					$(this).find('span.off').show()
				});
				visualNavi.eq($(this).index()).find('span.off').hide();
				visualNavi.eq($(this).index()).find('span.on').show();
			}
		});
		visualNavi.click(function(){
			visualNavi.not($(this)).removeClass("current");
			$(this).addClass("current");
			$(this).find('span.off').hide();
			$(this).find('span.on').show();
			visualContainer.cycle($(this).index());
			visualContainer.cycle('pause');
		});
	}
	
	if($('a.fancy').length){
		$("a.fancy").fancybox({
			'width'	: '640',
			'height' : '480',
			'titlePosition'	: 'inside',
			'overlayColor'		: '#000',
			'overlayOpacity'	: 0.7
		});
	}
	var photoGalleryS = function(){
		$('.photoGallery').each(function(){
			var target = $(this).find('.photo ul'),
			    nav = $(this).find('.thumbnail li');
			target.cycle({
				fx: 'fade', 
				speed: 500,
				timeout: 5000
			});
			target.after('<div class="cover"></div>');
			target.cycle('pause');
			nav.click(function(){
				nav.not($(this)).removeClass('current');
				$(this).addClass('current');
				target.cycle($(this).index());
				target.cycle('pause');
			});
			nav.eq(0).addClass('current');
		});
	}
	if($('.photoGallery').size()) photoGalleryS();
});

function changeMapImage(imgPath) {
  document.getElementById('clickmap').src = imgPath;
}

