﻿setTimeout("expandNatvigation()",5000);
var isNatvigationExpanded = false;

//configuration for the natvigation
var natvigation = { "00" : ["img", "/img/share/nav_00.gif", "/img/share/nav_00_o.gif", "/img/share/nav_00_n.gif","/home/frontpage", ""],
					"01" : ["img", "/img/share/nav_01.gif", "/img/share/nav_01_o.gif", "/img/share/nav_01_n.gif","/programme/programme_flagship", "subnav_programme"],
						"01_0" : ["txt", "节目预览","/programme/programme_flagship"],

						"01_1" : ["txt", "序曲100@GPRD","/programme/flagship_program/jqgprd"],
						"01_2" : ["txt", "名人名段@GPRD","/programme/flagship_program/mrgprd"],
						"01_3" : ["txt", "大众乐章@GPRD","/programme/flagship_program/dzgprd"],
						
						"01_4" : ["txt", "流行点心","/programme/flagship_program/trends_dimsum"],
						"01_5": ["txt", "流行短信","/programme/flagship_program/shortmsg"],
						
						//"01_1" : ["txt", "节目表","/programme/programme_schedule"],
						"01_6" : ["txt", "跨越珠三角","/programme/flagship_program/delta"],
						"01_7" : ["txt", "一步一脚印企业篇","/programme/flagship_program/stepcorporate"],
						"01_8" : ["txt", "一步一脚印人物篇","/programme/flagship_program/stepperson"],
 
						"01_9" : ["txt", "分秒必争","/programme/flagship_program/time"],
						
						"01_10" : ["txt", "天天奥运","/programme/flagship_program/trends_olympic"],
						"01_11" : ["txt", "点心名人榜","/programme/flagship_program/fame"],
						"01_12" : ["txt", "解码珠三角","/programme/flagship_program/code"],
						"01_13" : ["txt", "点心剧场","/programme/programme_dramaindex"],
						"01_14" : ["txt", "亚洲综艺冠军","/programme/programme_entertainmentindex"],
						"01_15" : ["txt", "流行online","/programme/flagship_program/trends_online"],
						"01_16" : ["txt", "超级消费王","/programme/flagship_program/price"],
						"01_17" : ["txt", "心中有数?","/programme/flagship_program/know"],
 
						"01_18" : ["txt", "奥运ABC","/programme/flagship_program/olympic"],
						
					"02" : ["img", "/img/share/nav_02.gif", "/img/share/nav_02_o.gif", "/img/share/nav_02_n.gif","/action/forum", "subnav_action"],
						"02_0" : ["txt", "情报站","/action/forum"],
						"02_1" : ["txt", "游乐场","/action/game"],
						//"02_2" : ["txt", "DV酷","/action/dv"],
						//"02_3" : ["txt", "创意市集","/action/creative_market"],
					"03" : ["img", "/img/share/nav_03.gif", "/img/share/nav_03_o.gif", "/img/share/nav_03_n.gif","/blog/blog1", "subnav_blog"],
						"03_0" : ["txt", "点将录","/blog/blog1"],
						"03_1" : ["txt", "北京三月","/blog/beijing"],
						"03_2" : ["txt", "嘉宾热点","/blog/blog2"],
						//"03_2" : ["txt", "郭璐手记","/blog/yuri"],
						"03_3" : ["txt", "Howard笔记","/blog/howard"],
 						"03_4" : ["txt", "流行讲场","/blog/sam_miumiu"],
						
					//"04" : ["img", "/img/share/nav_04.gif", "/img/share/nav_04_o.gif", "/img/share/nav_04_n.gif","javascript:void(0);"], 
					"04" : ["img", "/img/share/nav_04.gif", "/img/share/nav_04_o.gif", "/img/share/nav_04_n.gif","/magazine/magazine_front"],
					//"04" : ["img", "/img/share/nav_04.gif", "/img/share/nav_04coming_o.gif", "/img/share/nav_04_n.gif","javascript:void(0);"],
					//"05" : ["img", "/img/share/nav_05.gif", "/img/share/nav_05_o.gif", "/img/share/nav_05_n.gif","/about/aboutus"],
					"06" : ["img", "/img/share/nav_06.gif", "/img/share/nav_06_o.gif", "/img/share/nav_06_n.gif","/advertising/adprice", "subnav_ad"]
					//	"06_0" : ["txt", "网络营销","/"],
					//	"06_1" : ["txt", "市场状况","/advertising/adprice"],
					//	"06_2" : ["txt", "推广活动","/advertising/rule"]
					};

var natvigationId = "natvigation";
var fps = 30;
var expandDuration = 1;
var expandEffect = Effect.Transitions.quad;
//var expandEffect = Effect.Transitions.cubic;
var subNavHeight = 15;
var scrollAmount = 3;
var scrollDuration = 0.25;
var scrollEffect = Effect.Transitions.quad;

//*****************not neccessary to update if u like the layout *************************//
var navObj;
var activeFirstNav;
var activeSecondNav;
var time;

//call this to initialize the natvigation
function initNatvigation(key) {
	if (key.indexOf("_") != -1) {
		var keyArr = key.split("_");
		
		activeFirstNav = keyArr[0];
		activeSecondNav = keyArr[1];
	}
	else {
		activeFirstNav = key;
		activeSecondNav = "";
	}
		
	parseNatvigation();
	renderNatvigation();
}

function parseNatvigation() {
	var lastKey = "";
	var counter;
	
	navObj = new Object();
			
	for (key in natvigation) {
		if (key.indexOf("_") == -1) {
			lastKey = key;
			navObj[key] = new Object();
			navObj[key]["type"] = natvigation[key][0];
			if (navObj[key]["type"] == "txt") {
				navObj[key]["name"] = natvigation[key][1];
				navObj[key]["url"] = natvigation[key][2];
				navObj[key]["subNavStyle"] = natvigation[key][3];
			}
			else {
				navObj[key]["normal"] = natvigation[key][1];
				navObj[key]["over"] = natvigation[key][2];
				navObj[key]["active"] = natvigation[key][3];
				navObj[key]["url"] = natvigation[key][4];
				navObj[key]["subNavStyle"] = natvigation[key][5];
			}
			navObj[key]["totalSubNav"] = 0;
			navObj[key]["subNav"] = new Object();
		}
		else {
			counter = navObj[lastKey]["totalSubNav"];
			navObj[lastKey]["subNav"][counter] = new Object();
			navObj[lastKey]["subNav"][counter]["type"] = natvigation[key][0];
			
			if (navObj[lastKey]["subNav"][counter]["type"] == "txt") {
				navObj[lastKey]["subNav"][counter]["name"] = natvigation[key][1];
				navObj[lastKey]["subNav"][counter]["url"] = natvigation[key][2];
				//navObj[lastKey]["subNav"][counter]["subNavStyle"] = natvigation[key][3];
			}
			else {
				navObj[lastKey]["subNav"][counter]["normal"] = natvigation[key][1];
				navObj[lastKey]["subNav"][counter]["over"] = natvigation[key][2];
				navObj[lastKey]["subNav"][counter]["active"] = natvigation[key][3];
				navObj[lastKey]["subNav"][counter]["url"] = natvigation[key][4];
				//navObj[lastKey]["subNav"][counter]["subNavStyle"] = natvigation[key][5];
			}
			
			navObj[lastKey]["totalSubNav"]++;
		}
	}
}

function renderNatvigation() {

	var navStr = '<table border="0" cellpadding="0" cellspacing="0">';
	var subNavObj;
	var offset;
	
	for (key in navObj) {
		navStr += '<tr>';
		navStr += '<td>';
		if (navObj[key]["type"] == "txt")
			navStr += '<a href="' + navObj[key]["url"] + '"><div id="">+ <div id="nav_text_' + key + '">' + navObj[key]["name"] + '</div></a>';
		else {
			if (key == activeFirstNav)
				navStr += '<img id="navBtn' + key + '" src="' + navObj[key]["active"] + '" border="0"/>';
			else
				navStr += '<a href="' + navObj[key]["url"] + '" onmouseover="MM_swapImage(\'navBtn' + key + '\',\'\',\'' + navObj[key]["over"] + '\',1)" onmouseout="MM_swapImgRestore()"><img id="navBtn' + key + '" src="' + navObj[key]["normal"] + '" border="0"/></a>';
		}
		navStr += '<div id="nav' + key + '" style="display:none" class="' + navObj[key]["subNavStyle"] + '">';
		
		//check if subNatvigation exists
		if (navObj[key]["totalSubNav"] > 0) {
			navStr += '<table border="0" cellpadding="0" cellspacing="0">';
			if (navObj[key]["totalSubNav"] > 4) {
				navStr += 	'<tr>';
				navStr += 		'<td><a href="javascript:void(0);" onmouseover="scrollUp(\'nav' + key + '_scroll\');MM_swapImage(\'nav_sub_up\',\'\',\'/img/share/nav_sub_up_o.gif\',1)" onmouseout="stopScroll();MM_swapImgRestore()"><img src="/img/share/nav_sub_up.gif" name="nav_sub_up" width="15" height="15" border="0" id="nav_sub_up" /></a></td>';
				//navStr += 		'<td><a href="javascript:void(0);" onmousedown="scrollUp(\'nav' + key + '_scroll\');" onmouseup="stopScroll();" onmouseover="MM_swapImage(\'nav_sub_up\',\'\',\'/img/share/nav_sub_up_o.gif\',1)" onmouseout="MM_swapImgRestore()"><img src="/img/share/nav_sub_up.gif" name="nav_sub_up" width="15" height="15" border="0" id="nav_sub_up" /></a></td>';
				navStr += 	'</tr>';
				
				offset = 0;
			}
			else {
				navStr += 	'<tr>';
				navStr += 		'<td>&nbsp;</td>';
				navStr += 	'</tr>';
				
				offset = subNavHeight * (4 - navObj[key]["totalSubNav"]) / 2;
			}
			navStr += 	'<tr>';
			navStr += 		'<td>';
			navStr += 		'<div id="holder">';
			navStr += 		'<div id="win" style="top:' + offset + 'px">';
			navStr += 			'<div id="nav' + key + '_scroll">';
			navStr += 			'<table width="140" border="0" cellpadding="0" cellspacing="0">';
					
			subNavObj = navObj[key]["subNav"];
			
			for (key1 in subNavObj) {
				navStr += 			'<tr>';
				if (subNavObj[key1]["type"] == "txt") {
					if (key1 != activeSecondNav)
						navStr += 				'<td class="subnav_dot">-</td><td class="subnav_item"><a href="' + subNavObj[key1]["url"] + '" id="link_' + key + '_' + key1 + '"><div id="nav_text_' + key + '_' + key1 + '">' + subNavObj[key1]["name"] + '</div></a></td>';
					else
						navStr += 				'<td class="subnav_dot">+</td><td class="subnav_current">' + subNavObj[key1]["name"] + '</td>';
				}
				else {
					navStr += 				'<td>&nbsp;&nbsp;&nbsp;&nbsp;<a href="' + subNavObj[key1]["url"] + '"><img src="' + subNavObj[key1]["name"] + '" border="0"/></a></td>';
				}
				navStr += 			'</tr>';
			}
			
			navStr += 			'</table>';
			navStr += 			'</div>';
			navStr += 		'</div>';
			navStr += 		'</div>';
			navStr += 		'</td>';
			navStr += 	'</tr>';	
			if (navObj[key]["totalSubNav"] > 4) {			
				navStr += 	'<tr>';
				navStr += 		'<td><a href="javascript:void(0);" onmouseover="scrollDown(\'nav' + key + '_scroll\');MM_swapImage(\'nav_sub_down\',\'\',\'/img/share/nav_sub_down_o.gif\',1)" onmouseout="stopScroll();MM_swapImgRestore()"><img src="/img/share/nav_sub_down.gif" name="nav_sub_down" width="15" height="15" border="0" id="nav_sub_down" /></a></td>';
				navStr += 	'</tr>';
			}
			else {
				navStr += 	'<tr>';
				navStr += 		'<td>&nbsp;</td>';
				navStr += 	'</tr>';
			}
			navStr += '</table>';
		}
		
		navStr += '</div>';
		navStr += '</td>';
		navStr += '</tr>';
	}
	
	navStr += '</table>';

if(this.location.pathname=="/magazine/magazine_front"){
	navStr += '<table height="387"><tr><td>&nbsp;</td><tr></table>';
}

	document.getElementById(natvigationId).innerHTML = navStr;
	
	//scrol it so that we can see the activated sub nav
	if ((navObj[activeFirstNav]["totalSubNav"] > 4) && (activeSecondNav != "")) {
		var scrollTimes = 0;
		scrollTimes = parseInt(activeSecondNav);
		if (parseInt(activeSecondNav) + 4 > navObj[activeFirstNav]["totalSubNav"])
			scrollTimes -= (4 - (navObj[activeFirstNav]["totalSubNav"] - parseInt(activeSecondNav)));
		
		if (document.getElementById("nav" + activeFirstNav + "_scroll") != null)
			new Effect.MoveBy("nav" + activeFirstNav + "_scroll",-subNavHeight * scrollTimes,0,{fps: fps, duration: 0, afterFinish: function(){moveEnd("nav" + activeFirstNav + "_scroll");}});	
	}
}

//call this function in bodyOnLoad
function expandNatvigation() {
	if (!isNatvigationExpanded) {
		if (navObj != null) {
			if (navObj[activeFirstNav]["totalSubNav"] > 0)
				new Effect.SlideDown("nav" + activeFirstNav,{fps: fps, duration: expandDuration, transition: expandEffect});

			showDisableTips();

			isNatvigationExpanded = true;
		}
	}
}

function showDisableTips() {
/*
	var link = document.getElementById("link_02_2");
	
	if (link != null) {
		link.onmouseover = function() {
			document.getElementById("nav_text_02_2").innerHTML = "快将推出";
		};
		
		link.onmouseout = function() {
			document.getElementById("nav_text_02_2").innerHTML = "游乐场";
		};
	}
	*/
	/*
	var link = document.getElementById("link_03_1");
	
	if (link != null) {
		link.onmouseover = function() {
			document.getElementById("nav_text_03_1").innerHTML = "快将推出";
		};
		
		link.onmouseout = function() {
			document.getElementById("nav_text_03_1").innerHTML = "嘉宾热点";
		};
	}
	*/
/*
	var len;
	var id;
	
	len = disabledSection.length;
	for (i=0;i<len;i++) {
		id = "link_" + disabledSection[i];
		var links = document.getElementById(id).getElementsByTagName("a");
		for(j=0;j<links.length;j++){
			links[j].title = "快将推出";
	    }
		enableTooltips(id);
	}
*/



}

function scrollUp(scrollId) {
	var scroll = document.getElementById(scrollId);
	var top = 0;
	
	if (scroll.style.top != "")
		top = parseInt(scroll.style.top);
		
	if (parseInt(scroll.style.top) + scrollAmount< 0)
		new Effect.MoveBy(scrollId,scrollAmount,0,{fps: fps, duration: scrollDuration, transition: scrollEffect, afterFinish: function(){moveEnd(scrollId);}});
	
	time = setTimeout("scrollUp('" + scrollId + "')",fps);
}

function scrollDown(scrollId) {
	var scroll = document.getElementById(scrollId);
	var totalSubNatvigation = navObj[scrollId.substr(3,2)]["totalSubNav"];
	var top = 0;
	
	if (scroll.style.top != "")
		top = parseInt(scroll.style.top);
		
	if (top - scrollAmount + (totalSubNatvigation - 4) * subNavHeight > 0)
		new Effect.MoveBy(scrollId,-scrollAmount,0,{fps: fps, duration: scrollDuration, transition: scrollEffect, afterFinish: function(){moveEnd(scrollId);}});
	
	time = setTimeout("scrollDown('" + scrollId + "')",fps);
}

function stopScroll() {
	if (time) 
		clearTimeout(time);
}

function moveEnd(scrollId) {
	var styleObj;
	var opacity;
	var top;
	var totalSubNatvigation = navObj[scrollId.substr(3,2)]["totalSubNav"];
	var scroll = document.getElementById(scrollId);
	
	isMoving = false;
	
	if (totalSubNatvigation > 4) {
		top = 0;
		if (scroll.style.top != "")
			top = parseInt(scroll.style.top);
		
		//for up btn
		styleObj = document.getElementById("nav_sub_up").style;
		
		if (top >= 0) {
			opacity = 30;
			styleObj.cursor = "default";
			
			stopScroll();
		}
		else {
			opacity = 100;
			styleObj.cursor = "pointer";
		}
		
		styleObj.opacity = (opacity / 100); 
		styleObj.MozOpacity = (opacity / 100); 
		styleObj.KhtmlOpacity = (opacity / 100); 
		styleObj.filter = "alpha(opacity=" + opacity + ")"; 
		
		//for down btn
		styleObj = document.getElementById("nav_sub_down").style;
		
		if (top + (navObj[scrollId.substr(3,2)]["totalSubNav"] - 4) * subNavHeight <= 0) {
			opacity = 30;
			styleObj.cursor = "default";
			
			stopScroll();
		}
		else {
			opacity = 100;
			styleObj.cursor = "pointer";
		}
			
		styleObj.opacity = (opacity / 100); 
		styleObj.MozOpacity = (opacity / 100); 
		styleObj.KhtmlOpacity = (opacity / 100); 
		styleObj.filter = "alpha(opacity=" + opacity + ")"; 
	}
}
