// JavaScript Document


/**  
 *
 *
 *  ui-tab-panelのアンカーと、ui-accordonのリンクを同期（？）する。
 *
 *  requires below
 *
 *

$(document).ready(function(){
	$(".most-recent").append('&nbsp;<img src="/myAssets/images/new.gif" alt="new" />');
	$("#headline h2").prepend('<img id="q_left" src="/myAssets/images/quate_left.gif" alt="" />');
	$("#headline h2").append('<img id="q_right" src="/myAssets/images/quate_right.gif" alt="" />');
	$("span.imagenote").prepend('<img class="imageNoteSymbol" src="/myAssets/images/green_dot.gif" alt="" />');
	$('a[@rel*=lightbox]').lightBox();
	$("div#free-trial-detail").slideUp("slow");
	$("div#free-trial-b h2").click(function(){
	$("div#free-trial-detail").slideToggle("slow");
	});
//	var $tabs = $("#tabnavi > ul").tabs();
});
*/


/*************************************************************************************/
/**** SECTION   LINK operation between Navi and Tab-panel                 ************/
/*************************************************************************************/
$(document).ready(function(){
	
	/****  Search Current URL to add class "active" for ACCORDION NAVI ************/
	
	var path_arr = document.URL.split('/');
	path_arr.shift();// http
	path_arr.shift();//
	path_arr.shift();// domain
	var link;
	while(path_arr.length){
//		link = $('#navi').find('a[href=/'+path_arr.join('/')+']');// a[href^=/map.html#chiba$]
		link = $('html').find('a[href=/'+path_arr.join('/')+']');// a[href^=/map.html#chiba$]
		if(link.length){
			link.addClass("active");
			var hrefStr = link.attr("href");
			link.attr("temp",hrefStr); 
			link.removeAttr("href");
			link.parents().filter(".tumtum").addClass("active");
			break;
		}
		path_arr.pop();
	}
	$("div.tumtum:has(a.active)").prev().addClass("active");
	$("div.tumtum dt:first-child").addClass("dt-first");
	$("div#navi").after("<p id='navi-bottom'>&nbsp;</p>");
	
	$("div#navi").accordion({ 
		active: ".active",
		header: ".toggle",
		//event: "mouseover",
		event: "click",
		//alwaysOpen: true,
		autoHeight: false
	//		navigation: true
	});
	
	/****  Select Tab-Paenl element instead of clicking a Tab itself   ************/
	$(".tabPanel > ul").tabs();// ナビコントロールしないuiタブパネル
//	$(".tabPanel > ul").tabs({fx: { opacity: 'toggle' }});// ナビコントロールしないuiタブパネル
	
	
	var $tabs = $("#tabnavi > ul").tabs({fx: { opacity: 'toggle' }});//ナビコントロールするuiタブパネル
/****************************************************************************/
//  $("div#navi a").click(function(){




  $("a").click(function(){
    var clickedNaviHref     = $(this).attr("href"); // e.g. /jump/targetpage.html#targetanchor
		var clickedNaviHrefArr  = clickedNaviHref.split("#"); 
		var clickedNaviHrefPath = clickedNaviHrefArr[0]; // e.g. /jump/targetpage.html
		var clickedNaviHashName = clickedNaviHrefArr[1]; // e.g. targetanchor
		var locationPagePath    = window.location.pathname; // e.g. /here/thispage.html
		if( clickedNaviHrefPath == locationPagePath ){
		    // ページ内のTabを選択
			$tabs.tabs("select", clickedNaviHashName); // switch to target tab   
			// DomLoad時にactiveクラスを付与されたNavi a要素を検索,初期に戻す
//    var $activeNaviLinkByDOMLoad = $('#navi a.active');
			var $activeNaviLinkByDOMLoad = $('a.active');
			// temp属性値を取得
		    var tempRestoreStr = $activeNaviLinkByDOMLoad.attr("temp")
			// href値を回復し、activeクラスを削除
			$activeNaviLinkByDOMLoad.attr("href",tempRestoreStr).removeClass("active");
			// クリックされたnavi a のhrefをtempに退避 
			$(this).attr("temp",clickedNaviHref);
			// href属性を削除。activeクラスを付与。
			$(this).removeAttr("href").addClass("active");
	//		return false;
		}else{
		    return true;
		}
	});

  
	/**** SECTION Operation NaviLink element attr. instead of clicking a Navi itself *****/
/****************************************************************************/	




		$("a").click(function(){
		// クリックされたタブの hrefをパスとともに取得し、AccordionNaviリンクを検索し、activeにする。
		// ロード時にclass="active"を付与されたナビのa要素を初期に戻す
		// クリックされたTabのアンカーからパスを組立てる。 locationではアンカーを取得できない。location.hash
			var clickedTabHrefArr = $(this).attr("href").split("#");
			//alert(clickedTabHrefArr[1]);	
//          var $activeNaviLinkByDOMLoad = $("#navi a.active");// navi内
            var $activeNaviLinkByDOMLoad = $("a.active");// 全て
			// temp属性値を取得
			var tempRestoreStr = $activeNaviLinkByDOMLoad.attr("temp");
			// href値を回復し、activeクラスを削除
			$activeNaviLinkByDOMLoad.attr("href",tempRestoreStr).removeClass("active");
			// クリックされたTabに相当するのアンカーをアクティブにする。href値をtemp属性に退避。 
			var clickedTabHashName = clickedTabHrefArr[1];
			var targetAccordionNaviLinkStr = location.pathname+"#"+clickedTabHashName;// e.g. /dev/navi-tab.html#kashiwa
			//alert(targetAccordionNaviLinkStr);// e.g. /lect/spring/index.dev#curri_dev
			// クリックされたTabに相当するナビのリンク(a要素)を取得　jqueryオブジェクト
			var $targetAccordionNaviLinkObjs = $("html").find('a[href='+targetAccordionNaviLinkStr+']');
			var hrefStr4temp = $targetAccordionNaviLinkObjs.attr("href");// hrefを取得
			// tempに退避。activeクラスを付与。href属性を削除。
			$targetAccordionNaviLinkObjs.attr("temp",hrefStr4temp).addClass("active").removeAttr("href");
	});





		
		
		// tabパネル内のリンクからパネル選択可能に？
  $(".ui-tab-panel a").click(function(){
//  $("div#navi a").click(function(){
    var clickedNaviHref     = $(this).attr("href"); // e.g. /jump/targetpage.html#targetanchor
		var clickedNaviHrefArr  = clickedNaviHref.split("#"); 
		var clickedNaviHrefPath = clickedNaviHrefArr[0]; // e.g. /jump/targetpage.html
		var clickedNaviHashName = clickedNaviHrefArr[1]; // e.g. targetanchor
		var locationPagePath    = window.location.pathname; // e.g. /here/thispage.html

		if( clickedNaviHrefPath == locationPagePath ){
		    // ページ内のTabを選択
			$tabs.tabs("select", clickedNaviHashName); // switch to target tab   
			// DomLoad時にactiveクラスを付与されたNavi a要素を検索,初期に戻す
		
//		var $activeNaviLinkByDOMLoad = $('#navi a.active');
			var $activeNaviLinkByDOMLoad = $('a.active');

			// temp属性値を取得
		    var tempRestoreStr = $activeNaviLinkByDOMLoad.attr("temp")
			// href値を回復し、activeクラスを削除
			$activeNaviLinkByDOMLoad.attr("href",tempRestoreStr).removeClass("active");
			// クリックされたnavi a のhrefをtempに退避 
			$(this).attr("temp",clickedNaviHref);
			// href属性を削除。activeクラスを付与。
			$(this).removeAttr("href").addClass("active");
			return true;
		}else{
		    return true;
		}
	});



});


