var timeOn=null;
var numMenus=50;
var currentMenuNo=0;
var menuActive=new Array(numMenus);
var tier=new Array(numMenus);
var borderMod=new Array(numMenus);
var menuType=new Array(numMenus);
var menus=new Array(numMenus);

function menuOver(){clearTimeout(timeOn);}

function menuOut(){timeOn=setTimeout("hideAllMenus()",500);}

function showMenu(m_No,eventObj){
	hideAllMenusTier(tier[m_No]-1);
	var borderModSize=borderMod[m_No];
	menuActive[m_No]=true;
	if (menuType[m_No]!='blank'){
		labelObj='labelCell'+m_No;
		x=getElementLeft(labelObj)-borderModSize;
		y=getElementTop(labelObj)+getElementHeight(labelObj);
		if (menus[m_No].align=='right')x=x+((getElementWidth(labelObj)-getElementWidth('menu'+m_No)))+(borderModSize*2);
		moveXY('menu'+m_No,x,y);
		if(changeObjectVisibility('menu' + m_No, 'visible'))return true;
    else return false;
	}
}


function showMenuSide(m_No,eventObj,myTier) {
	hideAllMenusTier(tier[m_No]-1);
	var borderModSize=borderMod[m_No];
	menuActive[m_No]=true;
	if(menuType[m_No]!='blank'){
		labelObj='labelCell'+m_No;
		if (mac_ie)labelObj='labelRow'+m_No;
		x=getElementLeft(labelObj);
		y=getElementTop(labelObj)-borderModSize;
		if(menus[m_No].align=='right')x=(x+getElementWidth(labelObj))-10;
		else x=x-getElementWidth('menu'+m_No);
		moveXY('menu'+m_No,x,y);
		if(changeObjectVisibility('menu'+ m_No,'visible'))return true;
	  else return false;
	}
}

function hideAllMenus(){for(var i=1;i<(currentMenuNo+1); i++){if(menuActive[i]==true)hideMenu(i);}}

function hideAllMenusTier(myTier){for(var i=1;i<(currentMenuNo+1);i++){if(tier[i]>myTier&&menuActive[i]==true)hideMenu(i);}}

function hideMenu(m_No){
	menuActive[m_No]=false;
	if(changeObjectVisibility('menu'+m_No,'hidden'))return true;
  else return false;
}

function menuBar(){this.addLabel=function(menuNo){numLabels=1;tier[menuNo]=0;borderMod[menuNo]=0;}}

function menu(){
	currentMenuNo+=1;
	this.numItems=0;
	this.itemText=new Array();
	this.rowText=new Array();
	this.addItem=function(itemText,menuNo,itemURL) {
		this.numItems+=1;
		var tempId=currentMenuNo+'_'+this.numItems;
		if(menuNo!=null){
			tier[menuNo]=tier[currentMenuNo]+1;
			borderMod[menuNo]=0;	
		}
		temp=new String('');
		this.rowText[this.numItems]=new String('');
		temp+='<li id="labelCell'+menuNo+'" onclick="document.location.href=\''+itemURL+'\';" onmouseover="menuOver(); ';
		if(menuNo!=null){temp+='return !showMenuSide('+menuNo+',event,tier['+menuNo+']);"';}
		else{temp+='hideAllMenusTier(tier['+currentMenuNo+']);"';}
		temp+=' onmouseout="menuOut();">';
		temp+='<div id="menuLabel'+menuNo+'">';
		temp+='<a href="'+itemURL+'" id="menuLink'+menuNo+'">';
		if(menuNo!=null){temp+='<img src="/images/bg-navtop-li-level2.gif" align="right">';}
		temp+=itemText+'</a></div></li>';	
		this.itemText[this.numItems]=new String(temp);
	}
	this.writeMenu=function(){
		var menuStr=new String();
		if(this.numItems==0)menuType[currentMenuNo]='blank';
		else menuType[currentMenuNo]='default';
		menuStr+='<div id="menu'+currentMenuNo+'" name="menu'+currentMenuNo+'" class="submenu">';
		menuStr+='<ul>';
		for (var count=0;count<this.numItems; count++){
			menuStr+=this.rowText[count+1];
			menuStr+=this.itemText[count+1];
		}
		menuStr+='</ul><!--[if lte IE 6.5]><iframe></iframe><![endif]--></div>';
		document.write(menuStr);
	}
}
//The root main menus
myTest=new menuBar();
myTest.addLabel(1);
myTest.addLabel(2);
myTest.addLabel(3);
myTest.addLabel(4);
myTest.addLabel(5);

//BOOKINGS
menus[1] = new menu();
menus[1].addItem('&#26102;&#21051;&#34920;',null,'http://booking.qatarairways.com/qribe-web/public/showSearch.do?hdnFrom=TIMETABLE');
menus[1].writeMenu();

//TRAVEL INFORMATION
menus[2] = new menu();
menus[2].addItem('&#22312;&#26426;&#22330;',null,'/cn/cn/at-the-airport.html');
menus[2].addItem('&#34892;&#26446;&#35268;&#23450;',null,'/cn/cn/baggage.html');
menus[2].addItem('&#22312;&#32447;&#21150;&#29702;&#30331;&#26426;&#25163;&#32493;',null,'/cn/cn/online-checkin.html');
menus[2].addItem('&#34394;&#25311;&#26053;&#34892;',6,'/cn/cn/360/virtual-tours.html');
menus[2].addItem('&#36733;&#36816;&#26053;&#23458;&#20449;&#24687;&#39044;&#21578;',null,'/cn/cn/apis.html');
menus[2].writeMenu();

//SPECIAL OFFERS
menus[3] = new menu();
menus[3].addItem('&#21271;&#20140;',null,'/cn/cn/special-offers-beijing.html');
menus[3].addItem('&#24191;&#24030;',null,'/cn/cn/special-offers-guangzhou.html');
menus[3].addItem('&#19978;&#28023;',null,'/cn/cn/special-offers-shanghai.html');
menus[3].addItem('&#30005;&#23376;&#31616;&#25253;',null,'/cn/cn/newsletter.html');
menus[3].writeMenu();

//PRIVILEGE CLUB
menus[4]=new menu();
menus[4].addItem('Home',null,'/privilegeclub/en/homepage.html');
menus[4].addItem('About Privilege Club',null,'/privilegeclub/en/about-us.html');
menus[4].addItem('Membership Levels',7,'/privilegeclub/en/membership-levels.html');
menus[4].addItem('Family Programme',null,'/privilegeclub/en/family-programme.html');
menus[4].addItem('Calculator',8,'/privilegeclub/en/calculator-earn.html');
menus[4].addItem('Offers & News',9,'/privilegeclub/en/offers.html');
menus[4].addItem('Partners',10,'/privilegeclub/en/earn-qmiles-with-partners.html');
menus[4].addItem("FAQ's",13,"/privilegeclub/en/faq-privilege-club.html");
menus[4].addItem('Privilege Club Forms',null,'/privilegeclub/en/forms.html');
menus[4].addItem('Terms & Conditions',null,'/privilegeclub/en/terms-and-conditions.html ');
menus[4].addItem('Your Account',null,'https://secure.qmiles.com/qmiles/FrontPage.jsp?linkya19');
menus[4].writeMenu();

//ABOUT US
menus[5] = new menu();
menus[5].addItem('&#39318;&#24109;&#25191;&#34892;&#23448;(CEO)&#33268;&#36766;',null,'/cn/cn/ceo-message.html');
menus[5].addItem('&#21345;&#22612;&#23572;&#33322;&#31354;&#20844;&#21496;&#22312;&#20013;&#22269;',null,'/cn/cn/qr-china.html');
menus[5].addItem('&#32852;&#31995;&#25105;&#20204;',null,'/cn/cn/contact-us.html');
menus[5].writeMenu();

//VIRTUAL TOURS
menus[6] = new menu();
menus[6].addItem('&#22836;&#31561;&#33329;',null,'/cn/cn/360/virtual-tours.html?id=02');
menus[6].addItem('&#20844;&#21153;&#33329;',null,'/cn/cn/360/virtual-tours.html?id=03');
menus[6].addItem('&#32463;&#27982;&#33329;',null,'/cn/cn/360/virtual-tours.html?id=04');
menus[6].addItem('&#31036;&#36935;&#21040;&#36798;&#20241;&#24687;&#23460;',null,'/cn/cn/360/virtual-tours.html?id=06');
menus[6].addItem('&#23453;&#39532;&#36735;&#36710;&#25509;&#36865;&#26381;&#21153;',null,'/cn/cn/360/virtual-tours.html?id=05');
menus[6].addItem('&#22810;&#21704;&#30331;&#26426;',null,'/cn/cn/360/virtual-tours.html?id=07');
menus[6].addItem('&#39030;&#32423;&#33322;&#31449;&#27004;&#22823;&#21381;',null,'/cn/cn/360/virtual-tours.html?id=08');
menus[6].addItem('&#22836;&#31561;&#33329;',null,'/cn/cn/360/virtual-tours.html?id=10');
menus[6].addItem('&#20844;&#21153;&#33329;',null,'/cn/cn/360/virtual-tours.html?id=09');
menus[6].addItem('&#39030;&#32423;&#33322;&#31449;&#27004;&#27700;&#30103;&#26381;&#21153;',null,'/cn/cn/360/virtual-tours.html?id=01');
menus[6].writeMenu();

//PRIVILEGE CLUB>Membership Levels
menus[7]=new menu();
menus[7].addItem('Gold',null,'/privilegeclub/en/gold-benefits.html');
menus[7].addItem('Silver',null,'/privilegeclub/en/silver-benefits.html');
menus[7].addItem('Burgundy',null,'/privilegeclub/en/burgundy-benefits.html');
menus[7].writeMenu();

//PRIVILEGE CLUB>Calculators
menus[8]=new menu();
menus[8].addItem('Earn',null,'/privilegeclub/en/calculator-earn.html');
menus[8].addItem('Redeem',null,'/privilegeclub/en/calculator-redeem.html');
menus[8].addItem('Qmiles Plus Cash',null,'/privilegeclub/en/Qmiles-Plus-Cash.html');
menus[8].writeMenu();

//PRIVILEGE CLUB>Offers & News
menus[9]=new menu();
menus[9].addItem('Offers',null,'/privilegeclub/en/offers.html');
menus[9].addItem('News',null,'/privilegeclub/en/news.html');
menus[9].writeMenu();

//PRIVILEGE CLUB > Partners
menus[10]=new menu();
menus[10].addItem('Earn Qmiles with Partners',11,'/privilegeclub/en/earn-qmiles-with-partners.html');
menus[10].addItem('Redeem Qmiles on Partner Airlines',null,'/privilegeclub/en/redeem-qmiles-airline-partners.html');
menus[10].addItem('Redeem Qmiles on Non-Air Partners',null,'/privilegeclub/en/redeem-qmiles-non-air-partners.html');
menus[10].addItem('Claim Missing Qmiles with Partners',12,'/privilegeclub/en/claim-missing-partner-qmiles.html');
menus[10].writeMenu();

//PRIVILEGE CLUB > Partner Qmiles
menus[11]=new menu();
menus[11].addItem('Partner Airlines',null,'/privilegeclub/en/partner-airlines.html');
menus[11].addItem('Credit Cards',null,'/privilegeclub/en/partner-credit-cards.html');
menus[11].addItem('Financial Partners',null,'/privilegeclub/en/partner-financial.html');
menus[11].addItem('Hotel Partners',null,'/privilegeclub/en/partner-hotels.html ');
menus[11].addItem('Car Rental Partners',null,'/privilegeclub/en/partner-car-rental.html ');
menus[11].addItem('Travel & Service Partners',null,'/privilegeclub/en/partner-travel-and-services.html ');
menus[11].writeMenu();

//PRIVILEGE CLUB > Claim missing qmiles with partners
menus[12]=new menu();
menus[12].addItem('Contact Details for Financial Partners',null,'/privilegeclub/en/financial-partners-contact.html');
menus[12].addItem('Contact Details for Hotel Partners',null,'/privilegeclub/en/hotel-partners-contact.html');
menus[12].addItem('Contact Details for Car Rental Partners',null,'/privilegeclub/en/car-rental-partners-contact.html');
menus[12].addItem('Contact Details for Travel & Service Partners',null,'/privilegeclub/en/travel-services-partners-contact.html');
menus[12].writeMenu();

//PRIVILEGE CLUB > Faqs
menus[13]=new menu();
menus[13].addItem('Privilege Club',null,'/privilegeclub/en/faq-privilege-club.html');
menus[13].addItem('Earning Qmiles & Qpoints ',null,'/privilegeclub/en/faq-earning-qmiles-qpoints.html');
menus[13].addItem('Claim Missing Qmiles',null,'/privilegeclub/en/faq-claim-missing-qmiles.html');
menus[13].addItem('Redeeming Qmiles',null,'/privilegeclub/en/faq-redeeming-qmiles.html');
menus[13].addItem('Qmiles.com',null,'/privilegeclub/en/faq-qmiles.html');
menus[13].addItem('Mileage Expiry',null,'/privilegeclub/en/faq-mileage-expiry.html');
menus[13].writeMenu();

//Align the menus tab
menus[1].align='left';
menus[2].align='left';
menus[3].align='left';
menus[4].align='left';
menus[5].align='left';
menus[6].align='right';
menus[7].align='right';
menus[8].align='right';
menus[9].align='right';
menus[10].align='right';
menus[11].align='right';
menus[12].align='right';
menus[13].align='right';
