/* ---------------------------------------------------------------------
JavaScript for SHANGHAI AIRLINES CO.,LTD.
FileName: globalnavi.js
--------------------------------------------------------------------- */


// *** initialize
var gnHTML = '';
var catDefault = '';
var catPrevObj = '';
var tmpFlg = false;
var catFlg = false;
var subFlg = false;
var timerID;


// *** avtive check
function gnActiveCheck(){
	var path = location.pathname;

	if(path.indexOf('flight') != -1) catDefault = 'flight';
	if(path.indexOf('service') != -1) catDefault = 'service';
	if(path.indexOf('airport') != -1) catDefault = 'airport';
	if(path.indexOf('mileage') != -1) catDefault = 'mileage';
	if(path.indexOf('company') != -1) catDefault = 'company';
}
gnActiveCheck();


// *** global navigation - category over
function gnCatOver(imgObj){
	tmpFlg = true;

	clearTimeout(timerID);
	gnReDraw();

	catFlg = true;
	var catName = imgObj.parentNode.className;

	var imgStatus = imgObj.src.indexOf("_on") != -1;
	if(!imgStatus){
		var P = imgObj.src.lastIndexOf(".");
		var imgSrc = imgObj.src.substr(0, P) + '_on' + imgObj.src.substring(P);
		imgObj.src = imgSrc;
	}

	catPrevObj = imgObj;
	document.getElementById(catName + '_sub').style.display = 'block';
}


// *** global navigation - category out
function gnCatOut(imgObj){
	tmpFlg = false;
	catFlg = false;
	timerID = setTimeout("gnReDraw()", 3000);
}


// *** global navigation - sub menu over
function gnSubOver(imgObj){
	imgChange(imgObj);
	subFlg = true;
}


// *** global navigation - sub menu out
function gnSubOut(imgObj){
	tmpFlg = false;
	imgChange(imgObj);
	subFlg = false;
	timerID = setTimeout("gnReDraw()", 3000);
}


// *** global navigation - redraw
function gnReDraw(){
	if(catFlg || subFlg || catPrevObj == '') return;
	var imgStatus = catPrevObj.src.indexOf("_on") != -1;
	if(imgStatus) catPrevObj.src = catPrevObj.src.replace('_on', '');
	var prevCatName = catPrevObj.parentNode.className;
	document.getElementById(prevCatName + '_sub').style.display = 'none';

	if(!tmpFlg) gnActiveDraw();
}


// *** global navigation draw
function gnDraw(){

	// category
	gnHTML += '<div id="g_navi">';
	gnHTML += '<ul id="navi_category">';

	gnHTML += '<li class="flight"><img src="/common/img/g_navi_flight.gif"';
	gnHTML += ' onmouseover="gnCatOver(this);" onmouseout="gnCatOut(this);"';
	gnHTML += ' alt="フライトインフォメーション" /></li>';

	gnHTML += '<li class="service"><img src="/common/img/g_navi_service.gif"';
	gnHTML += ' onmouseover="gnCatOver(this);" onmouseout="gnCatOut(this);"';
	gnHTML += ' alt="サービスガイド" /></li>';

	gnHTML += '<li class="airport"><img src="/common/img/g_navi_airport.gif"';
	gnHTML += ' onmouseover="gnCatOver(this);" onmouseout="gnCatOut(this);"';
	gnHTML += ' alt="エアポートガイド" /></li>';

	gnHTML += '<li class="mileage"><img src="/common/img/g_navi_mileage.gif"';
	gnHTML += ' onmouseover="gnCatOver(this);" onmouseout="gnCatOut(this);"';
	gnHTML += ' alt="マイレージ" /></li>';

	gnHTML += '<li class="company"><img src="/common/img/g_navi_company.gif"';
	gnHTML += ' onmouseover="gnCatOver(this);" onmouseout="gnCatOut(this);"';
	gnHTML += ' alt="会社案内" /></li>';

	gnHTML += '</ul>';

	// flight
	gnHTML += '<p id="flight_sub">';

	gnHTML += '<a href="/flight/route/"><img src="/common/img/g_navi_flight_route.gif" alt="路線図"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '<a href="/flight/timetable/"><img src="/common/img/g_navi_flight_timetable.gif" alt="運航時刻表"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '<a href="/flight/faq/"><img src="/common/img/g_navi_flight_faq.gif" alt="FAQ"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '<a href="/company/news/nenyu.html" target="_blank"><img src="/common/img/g_navi_company_nenyu.gif" alt="「燃油特別付加運賃」「航空保険特別料金」について"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '</p>';

	// service
	gnHTML += '<p id="service_sub">';
	
	gnHTML += '<a href="/service/information/"><img src="/common/img/g_navi_service_info.gif" alt="サービス案内"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '<a href="/service/food/"><img src="/common/img/g_navi_service_food.gif" alt="機内食"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '<a href="/service/seatmap/b737_700_01.html"><img src="/common/img/g_navi_service_seatmap.gif" alt="シートマップ"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '<a href="/service/shopping/"><img src="/common/img/g_navi_service_shopping.gif" alt="機内販売"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '</p>';

	// airport
	gnHTML += '<p id="airport_sub">';
	gnHTML += '<a href="/airport/terminal/"><img src="/common/img/g_navi_airport_terminal.gif" alt="インフォメーション（日本）"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';
	gnHTML += '<a href="/airport/shanghai/"><img src="/common/img/g_navi_airport_shanghai.gif" alt="インフォメーション（中国）"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';
	gnHTML += '<a href="/airport/dunnage/"><img src="/common/img/g_navi_airport_dunnage.gif" alt="手荷物について"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';
	gnHTML += '</p>';

	// mileage
	gnHTML += '<p id="mileage_sub">';
	gnHTML += '<a href="/mileage/bank/"><img src="/common/img/g_navi_mileage_bank.gif" alt="マイレージバンク"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';
	gnHTML += '<a href="/mileage/save/"><img src="/common/img/g_navi_mileage_save.gif" alt="マイルを貯める"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';
	gnHTML += '<a href="/mileage/howto/"><img src="/common/img/g_navi_mileage_howto.gif" alt="マイルの使い方"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';
	gnHTML += '<a href="/mileage/regulation/"><img src="/common/img/g_navi_mileage_reg.gif" alt="規約"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';
	gnHTML += '</p>';

	// company
	gnHTML += '<p id="company_sub">';
	
	gnHTML += '<a href="/company/japanoffice/"><img src="/common/img/g_navi_company_japan.gif" alt="支店案内"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '<a href="/company/profile/"><img src="/common/img/g_navi_company_profile.gif" alt="会社概要"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '<a href="/company/recruit/"><img src="/common/img/g_navi_company_recruit.gif" alt="採用情報"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '<a href="/company/news/"><img src="/common/img/g_navi_company_news.gif" alt="ニュースリリース一覧"';
	gnHTML += ' onmouseover="gnSubOver(this);" onmouseout="gnSubOut(this);"';
	gnHTML += ' /></a>';

	gnHTML += '</p>';

	gnHTML += '</div>';

	DW(gnHTML);
	if(catDefault != '') gnActiveDraw();
}
gnDraw();


// *** global navigation - active draw
function gnActiveDraw(){
	for(var i = 0; i < 5; i++){
		var catObj = document.getElementById('navi_category').getElementsByTagName('li')[i];
		if(catObj.className == catDefault){
			var imgObj = catObj.childNodes[0];
			var imgStatus = imgObj.src.indexOf("_on") != -1;
			if(!imgStatus){
				var P = imgObj.src.lastIndexOf(".");
				var imgSrc = imgObj.src.substr(0, P) + '_on' + imgObj.src.substring(P);
				imgObj.src = imgSrc;
			}

			document.getElementById(catObj.className + '_sub').style.display = 'block';
			catPrevObj = imgObj;
		}
	}
}


// *** image preload - initialize
addPreLoad(new Array(
	'/common/img/g_navi_flight.gif',
	'/common/img/g_navi_service.gif',
	'/common/img/g_navi_airport.gif',
	'/common/img/g_navi_mileage.gif',
	'/common/img/g_navi_company.gif',
	'/common/img/g_navi_flight_timetable.gif',
	'/common/img/g_navi_flight_route.gif',
	'/common/img/g_navi_flight_faq.gif',
	'/common/img/g_navi_company_nenyu.gif',
	'/common/img/g_navi_service_info.gif',
	'/common/img/g_navi_service_food.gif',
	'/common/img/g_navi_service_seatmap.gif',
	'/common/img/g_navi_service_shopping.gif',
	'/common/img/g_navi_airport_terminal.gif',
	'/common/img/g_navi_airport_shanghai.gif',
	'/common/img/g_navi_airport_dunnage.gif',
	'/common/img/g_navi_mileage_mileage.gif',
	'/common/img/g_navi_mileage_howto.gif',
	'/common/img/g_navi_mileage_reg.gif',
	'/common/img/g_navi_company_japan.gif',
	'/common/img/g_navi_company_profile.gif',
	'/common/img/g_navi_company_news.gif',
	'/common/img/g_navi_company_recruit.gif',
	'/common/img/g_navi_flight_on.gif',
	'/common/img/g_navi_service_on.gif',
	'/common/img/g_navi_airport_on.gif',
	'/common/img/g_navi_mileage_on.gif',
	'/common/img/g_navi_company_on.gif',
	'/common/img/g_navi_flight_timetable_on.gif',
	'/common/img/g_navi_flight_route_on.gif',
	'/common/img/g_navi_flight_faq_on.gif',
	'/common/img/g_navi_company_nenyu_on.gif',
	'/common/img/g_navi_service_info_on.gif',
	'/common/img/g_navi_service_food_on.gif',
	'/common/img/g_navi_service_seatmap_on.gif',
	'/common/img/g_navi_service_shopping_on.gif',
	'/common/img/g_navi_airport_terminal_on.gif',
	'/common/img/g_navi_airport_shanghai_on.gif',
	'/common/img/g_navi_airport_dunnage_on.gif',
	'/common/img/g_navi_mileage_mileage_on.gif',
	'/common/img/g_navi_mileage_howto_on.gif',
	'/common/img/g_navi_mileage_reg_on.gif',
	'/common/img/g_navi_company_japan_on.gif',
	'/common/img/g_navi_company_profile_on.gif',
	'/common/img/g_navi_company_news_on.gif',
	'/common/img/g_navi_company_recruit_on.gif'
));


