
$(function(){
	
	// ---------------------------------------------------------------------------- 
	
	// JS無効時のアラート
	$("div#jsAlert").hide();
	
    // news
	//$("div#news").hide();
	
	// ---------------------------------------------------------------------------- GET変数がある場合、言語切り替えのリンクにも追加
	
	// newsページだけは日本語と英語ページの内容が対応していないので例外とする
	if( !$("div#contents").hasClass("news") )
	{
		if(location.search)
		{
			// MEMO project?item111 など個別のアイテムのページで他言語のリンク先を動的に作成
			
			var query = location.search;
			var altLangLink = $("div#language a").not(".disable");
			var queryStr = getQueryByStr();
			
			for(var i=0; i<altLangLink.length; i++)
			{
				// project_en,project_cnなど
				var link = $(altLangLink[i]).attr("href");
				
				// 個別のIDを追加
				link += "?"+queryStr;
				//console.log(link);
				
				// リンクの修正
				$(altLangLink[i]).attr("href", link);
			}
			
			
		}
	}
	
	// ---------------------------------------------------------------------------- グローバルメニュー
	
	// サブメニューのあるものにtoggleBtnの追加、非表示・非表示
	$("ul#global_menu li.has_submenu>a").after('<div class="toggleBtn">↓</div>');
	$("ul#global_menu li.has_submenu").mouseenter
	(
        function () {
			$(this).children("div.toggleBtn").show();
        }
    );
	$("ul#global_menu li.has_submenu").mouseleave
	(
        function () {
			$(this).children("div.toggleBtn").hide();
        }
    );
	
	
	$("ul#global_menu ul.sub_menu").hide();
	$("ul#global_menu div.toggleBtn").hide();
	
	
	var dc = $("div#contents");
	
	// 現在表示中のページによって切替
	if( dc.hasClass("news") ) 
	{
		$("ul#global_menu li.top_menu#news>a").addClass("current");
		
	}
	else if( dc.hasClass("company") ) 
	{
		$("ul#global_menu li.top_menu#company>a").addClass("current");
		$("ul#global_menu li.top_menu#company ul.sub_menu").show();
		
	}
	else if( dc.hasClass("service") ) 
	{
		$("ul#global_menu li.top_menu#service>a").addClass("current");
		$("ul#global_menu li.top_menu#service ul.sub_menu").show();
		
	}
	else if(	dc.hasClass("projects_img")||
				dc.hasClass("projects_txt")||
				dc.hasClass("projects_cat_img")||
				dc.hasClass("projects_cat_txt")||
				dc.hasClass("project")
			) 
	{
		$("ul#global_menu li.top_menu#project>a").addClass("current");
		$("ul#global_menu li.top_menu#project ul.sub_menu").show();
		
	}
	else if(	dc.hasClass("designers")||
				dc.hasClass("designer")
			) 
	{
		$("ul#global_menu li.top_menu#designer>a").addClass("current");
		$("ul#global_menu li.top_menu#designer ul.sub_menu").show();
		
	}
	else if( dc.hasClass("awards") ) 
	{
		$("ul#global_menu li.top_menu#awards>a").addClass("current");
	}
	else if( dc.hasClass("publications") ) 
	{
		$("ul#global_menu li.top_menu#publications>a").addClass("current");
	}
	
	
	
	
	// お互いに知らせ合って動作を同期させる（ロールオーバー時）
	$("ul#global_menu li.has_submenu div.toggleBtn").mouseenter
	(
        function () {
			$(this).removeClass("active");
			$(this).prev("a").addClass("hover");
        }
    );
	$("ul#global_menu li.has_submenu div.toggleBtn").mouseleave
	(
        function () {
			$(this).prev("a").removeClass("hover");
        }
    );
	$("ul#global_menu li.has_submenu a").mouseenter
	(
        function () {
			$(this).next("div.toggleBtn").removeClass("active");
        }
    );
	$("ul#global_menu li.has_submenu ul.sub_menu").mouseenter
	(
        function () {
			$(this).prev("div.toggleBtn").addClass("active");
        }
    );
	$("ul#global_menu").mouseleave
	(
	 	function () {
			// リセット
			$("ul#global_menu").children().removeClass("hover");
			$("ul#global_menu").children().removeClass("active");
        }
    );
	
	
	
	// お互いに知らせ合って動作を同期させる(クリック時)
	$("ul#global_menu li.has_submenu div.toggleBtn").mousedown
	(
	 	function () {
        	$(this).prev("a").addClass("active");
			$(this).addClass("active"); // for IE6,7
		}
    );
	$("ul#global_menu li.has_submenu div.toggleBtn").mouseup
	(
	 	function () {
        	$(this).prev("a").removeClass("active");
			$(this).removeClass("active"); // for IE6,7
		}
    );
	$("ul#global_menu li.has_submenu a").mousedown
	(
	 	function () {
        	$(this).next("div.toggleBtn").addClass("active");
			$(this).addClass("active"); // for IE6,7
		}
    );
	$("ul#global_menu li.has_submenu a").mouseup
	(
	 	function () {
        	$(this).next("div.toggleBtn").removeClass("active");
			$(this).removeClass("active"); // for IE6,7
		}
    );
	
	
	// メニューの開閉
	
	$("ul#global_menu li.has_submenu div.toggleBtn").click(function()
	{
		if( $(this).next("ul.sub_menu").is(":hidden") )
		{
			menuHeight = $(this).next("ul.sub_menu").height();
			$(this).next("ul.sub_menu").slideDown(300,setHeight($(this).next("ul.sub_menu"),menuHeight));
		}
		else
		{
			$(this).next("ul.sub_menu").slideUp(300);
		}
	});
	
	/*
	var toggleBtns = $("ul#global_menu li.has_submenu div.toggleBtn");
	
	for( var i=0; i<toggleBtns.length; i++)
	{
		var btn = $(toggleBtns[i]);
		// 今サブメニューが開いているかどうかで切り替え
		if( btn.next("ul.sub_menu").is(":hidden") )
		{
			btn.toggle
			(function(){
				menuHeight = $(this).next("ul.sub_menu").height();
				$(this).next("ul.sub_menu").slideDown(300,setHeight($(this).next("ul.sub_menu"),menuHeight));
			},
			function(){
				$(this).next("ul.sub_menu").slideUp(300);
			});
		}
		else
		{
			btn.toggle
			(function(){
				$(this).next("ul.sub_menu").slideUp(300);
			},
			function(){
				menuHeight = $(this).next("ul.sub_menu").height();
				$(this).next("ul.sub_menu").slideDown(300,setHeight($(this).next("ul.sub_menu"),menuHeight));
			});
		}
	}
	*/
	// ---------------------------------------------------------------------------- ページ内スクロール
	
	$.localScroll({duration:1000, easing:'easeboth', axis:'xy', queue:true, hash:true,
		onAfter:function()
		{
			/*
			var targetID = location.hash;
			var target = $(targetID);
			
			// ページの先頭意外だったら
			if(("#"+$("body").attr("id")) != targetID)
			{
				blinkTarget(target);
			}
			*/
		}
	});
	
	// ---------------------------------------------------------------------------- NEWSチッカー
	
    // $("ul#ticker01").liScroll({travelocity: 0.15});
	
	
	// ---------------------------------------------------------------------------- プリント
	
	$('.print').click(function(){ $.jPrintArea('body') });
	
	
	// ---------------------------------------------------------------------------- 表の奇数にクラスを紐付け
	
	$("table.addClassOdd tr:odd").addClass("odd");
	
	
	
});


// IE7で、animate後に高さが0になってしまう現象への対策
function setHeight(target,val)
{
	target.height(val);
}

// ページ内リンクで移ったときに光らせる
function blinkTarget(target)
{
	target.animate({opacity:"0.2"},50).animate({opacity:"1"},300);
}


// GETの変数を読み取って配列にして返す
function getQuery()
{
	if(location.search)
	{
		var q = new Array();
		var query = location.search;
		query = query.substring(1,query.length);
		var querys = new Array();
		querys = query.split("&");
		for(i=0;i<querys.length;i++)
		{
			var pram = new Array();
			pram = querys[i].split("=");
			var name = pram[0];
			var value = pram[1];
			q[name] = value;
		}
		
		return q;
	}
	return null;
}
// GETの変数を読み取ってそのまま返す
function getQueryByStr()
{
	if(location.search)
	{
		var q = new Array();
		var query = location.search;
		query = query.substring(1,query.length);
		return query;
	}
	return null;
}


// "100px" を 100　に変換
function getNumberFromPxString( _string )
{
	var val = _string.substring(0,_string.length-2);
	return Number(val);
}

// 一番高さの高い要素の高さに他の要素の高さを合わせる
function ajustHeightMax( _array )
{
	var maxHeight = 0;
	for(var n = 0; n<_array.length; n++)
	{
		var itm = _array[n];
		maxHeight = Math.max(maxHeight, itm.height());
	}
	for(var m = 0; m<_array.length; m++)
	{
		var itm2 = _array[m];
		itm2.height( Math.ceil( maxHeight ) );
	}
}
