/**
 * tkzwknp.js
 * @version    0.96
 * @updated    2010.03.26
 * @author     Keisuke Mori
 */

$(document).ready(function() {

/*	=00 Common Setting
-----------------------------------------------------*/
$.getScript = function(url, callback, cache){
	$.ajax({
		type: 'GET',
		url: url,
		success: callback,
		dataType: 'script',
		cache: cache
	});
};

/* =00-1 変数定義 --------------------------*/
	var tkzwknp = {
		ua : $.browser,
		bodyId : $(document.body).attr('id'),
		bodyClass : $(document.body).attr('class'),
		nav: {
			glb : $('#g-nav'),
			drug : $('#d-nav'),
			sub : $('#s-nav'),
			spd : 120,
			wait : 240,
			ease : 'easeOutCirc',
			path : $('#logo img').attr('src')
		},
		top: {
			a : $('.to-top a'),
			spd : 480,
			ease : 'easeOutExpo'
		},
		shop: {
			top: {
				color: '4B7F30',
				opacity: 0.15
			}
		},
		kaso: {
			snav: {
				parent: $('#sub-nav .has-child'),
				open: 'open',
				spd : 240,
				ease : 'easeOutCirc'
			}
		},
		hoge : 'hoge'
	};

// temporary (本アップ時はこれを削除してください）
	$('a').click(function(){
		if ( $(this).attr('href') == '#dummy' ) {
			return false;
		}
	});

/* **************************************************************-************************************************************** */

/*	=01 Common Funcion
-----------------------------------------------------*/
/* =01-1 Drug Navigation --------------------------*/
	$(tkzwknp.nav.glb)
		.find('.gn-medicine').hover(
			function(){
				$(tkzwknp.nav.drug)
					.slideDown(tkzwknp.nav.spd, tkzwknp.nav.ease);
			},
			function(){
				$(tkzwknp.nav.drug)
					.delay(tkzwknp.nav.wait)
					.slideUp(tkzwknp.nav.spd, tkzwknp.nav.ease);
			}
		);

/* =01-2 Shop Navigation --------------------------*/
	$(tkzwknp.nav.glb)
		.find('.gn-shop').hover(
			function(){
				$(tkzwknp.nav.sub)
					.slideDown(tkzwknp.nav.spd, tkzwknp.nav.ease);
			},
			function(){
				$(tkzwknp.nav.sub)
					.delay(tkzwknp.nav.wait)
					.slideUp(tkzwknp.nav.spd, tkzwknp.nav.ease);
			}
		);

/* =01-3 To Top Smooth Scroll --------------------------*/
	if( $(tkzwknp.top.a) ){
		$(tkzwknp.top.a).click(function () {
			$(this).blur();
			$('html,body').animate({ scrollTop: 0 }, tkzwknp.top.spd, tkzwknp.top.ease);
			return false;
		});
	}

/* =01-4 Preload --------------------------*/
	jQuery.preloadImages = function(){
		for(var i = 0; i<arguments.length; i++){
			jQuery('<img>').attr('src', arguments[i]);
		}
	}
	tkzwknp.nav.path = tkzwknp.nav.path.replace('logo.png', '');
	$.preloadImages(
		tkzwknp.nav.path + 'btn_drug-nav.gif',
		tkzwknp.nav.path + 'btn_gn-shop.gif'
	);


/* **************************************************************-************************************************************** */

/*	=02 Shop Page
-----------------------------------------------------*/
/* =02-1 Shop Top --------------------------*/
	if( tkzwknp.bodyId == 'shoptop' ){
		// Map Highlight
		$.getScript('../js/plugins/jquery.maphilight.min.js', function () {
			setTimeout(function () {
				$.fn.maphilight.defaults = {
					fill: true,
					fillColor: tkzwknp.shop.top.color,
					fillOpacity: tkzwknp.shop.top.opacity,
					stroke: true,
					strokeColor: tkzwknp.shop.top.color,
					strokeOpacity: 1,
					strokeWidth: 1,
					fade: true,
					alwaysOn: false
				}
				$('#map .map img').maphilight();
			}, 1);
		});

	}

/* =02-2 Shop Pref --------------------------*/
	if( tkzwknp.bodyId == 'shoppref' ){
		// Google Map Link
		$('.vcard').each(function(){
			var map = {
				fn: $(this).find('.fn').text(),
				adr: $(this).find('.adr').text(),
				url: $(this).find('.address a'),
				link: true
			};
			map.link = 'http://maps.google.co.jp/maps?q=' + encodeURIComponent(map.adr) + ' ' + encodeURIComponent(map.fn);
			if ( map.url.attr('href') == '#' ) {
				map.url.attr('href', map.link).addClass('show');
			}
			map.url.click(function(){ this.target = '_blank'; });
		});

	}

/* =02-3 Shop Detail --------------------------*/
	if( tkzwknp.bodyId == 'shopdetail' ){
		// Google Maps
		$.getScript('../../js/plugins/jquery.gmap3.min.js', function () {
			var shop = {
				adr: $('#shop-detail .adr').text(),
				fn: $('#shop-detail .fn').text()
			};
			shop.link = 'http://maps.google.co.jp/maps?q=' + encodeURIComponent(shop.adr) + ' ' + encodeURIComponent(shop.fn);
			setTimeout(function () {
				$('#gmap').gmap3(
					{
						address: shop.adr,
						altAddress: shop.adr,
						title: shop.fn,
						type: 1,
						control: 3,
						navigation: 1
					}
				);
			}, 1);
		});

	}

/* **************************************************************-************************************************************** */

/*	=03 Kaso Page
-----------------------------------------------------*/
	if( $(document.body).hasClass('kaso') ){
/* =03-1 Kaso Page Sub Navigation --------------------------*/
		// まず子メニューを隠す
		$(tkzwknp.kaso.snav.parent)
			.find('.child')
				.hide();
		// 下層詳細ページの場合、その内容が含まれてるナビゲーションを開く
		var thisPage = $('#main-inner').attr('class');
		thisPage = thisPage.replace('group ', 'has-child ');
		$(tkzwknp.kaso.snav.parent).each(function(){
			if ( $(this).attr('class') == thisPage ) {
				$(this)
					.find('.child')
						.show();
				$(this)
					.find('a:first')
						.addClass(tkzwknp.kaso.snav.open);
			} else {
			}
		});
		// 親メニュークリックで子メニューが開く
/*
		$(tkzwknp.kaso.snav.parent)
			.find('a:first').css({
				'outline': 'none'
			}).click(function(){
				$(this)
					.toggleClass(tkzwknp.kaso.snav.open)
					.parents('.has-child')
						.find('.child')
							.slideToggle(tkzwknp.kaso.snav.spd, tkzwknp.kaso.snav.ease);
				return false;
		});
*/

// Temporary サブナビゲーションのリンク先が #dummy だった場合 dummy クラスをつける
		$('#sub-nav a').each(function(){
			if ( $(this).attr('href') == '#dummy' ) {
				$(this).addClass('dummy');
			}
		});	

	}


});
