var isMainFrame = true;
var isResized = false;
var isLoaded = false;
var pChecked = false;
var isLI = false;
var interval = null;
var currMenu = null, inMenu = false, _cf = _cw = null;
var curr_size = 1;
function Ini() {

	window.onbeforeunload = UnIni;
	window.onunload = UnIni;
	ResizeWindowTo(TargetWidth, TargetHeight);
	isResized = true;
	_cf = document.getElementById("CenterFrame");
	if (isIE) {
		setTimeout("SetStyle()", 1000);
	}

	IniMenuArray();
	attachMouseEvents();
	isLoaded = true;
	//ShowBanners(GetBannerArr());
	if (IsLogged) RegLI();
}
function SetStyle() {
	_cf.style.position = "relative";
	_cf.style.top = "0px"
	_cf.style.left = "0px";
}
function CheckPlayer() {
	if (pChecked) return;
	pChecked = true;
	if (!isIE || isMac) return;
	document.getElementById("HiddenFrame2").src = "public/CheckPlayer.aspx";
}
function RegLI() {
//alert ("RegLI");
	if (isLI) return;
	isLI = true;
	interval = setInterval("SendDummy();", 60000);
	document.getElementById("bottomlogout1").style.display = "";
	document.getElementById("bottomlogout2").style.display = "";
}
function UnRegLI() {
//alert ("UnRegLI");
	if (!isLI) return;
	isLI = false;
	clearInterval(interval);
	document.getElementById("bottomlogout1").style.display = "";
	document.getElementById("bottomlogout2").style.display = "";
}
function SendDummy() {
	var s = "public/dummy.aspx?d=" + Date();
	document.getElementById("HiddenFrame1").src = s;
}
function UnIni() {
	if (isLI) {
		var s = "http://" + window.location.host + WebRoot + "public/CloseSession.aspx?d=" + Date();
		var http;
		if (window.XMLHttpRequest) http = new XMLHttpRequest();
		else if (window.ActiveXObject) {
			try {
				http = new ActiveXObject("MSXML2.XmlHttp");
			}
			catch (e) {
				try {
					http = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {}
			}
		}
		if (http) {
			try {
				http.open("GET", s + "&sender=X", false);
				http.send("");
				var res = http.responseText;
				if (res != "OK") {
					throw "invalid response";
				}
				UnRegLI();
				return;
			}
			catch(e) {
			}
		}
		isWaiting = true;
		isClosed = false;
		document.getElementById("HiddenFrame1").src = s + "&sender=F";
	}
}
function RedirectToLogin(c) {
	var s = WebRoot + "login.aspx";
	if (c) s += "?se=" + c
	document.getElementById("CenterFrame").src = s;
}
function RegisterCW(w) {
	_cw = w;
}
function attachMouseEvents() {
	attachMouseEvents2("nav");
	attachMouseEvents2("nav2");
}
function attachMouseEvents2(id) {
	var navRoot = document.getElementById(id);	
	var nn = navRoot.childNodes;
	for (var i=0; i< nn.length; i++) {
		var n2 = navRoot.childNodes[i];
		if (n2.tagName == "TD") {
			n2.onmouseover = function() { ShowDropdown(this);}
			n2.onmouseout = function() { MenuMouseOut(this); }
		}
	}

}
function ShowDropdown(me) {
	//me.className += " over";
	var id = me.id.split("_")[1];
	inMenu = true;
	var prevMenu = currMenu;
	currMenu = id;
	if (prevMenu)
		HideDropdown(prevMenu);
	var pop = document.getElementById("mip_" + id);
	if (pop) {
		HidePlayer();
		var arr = GetAbsolutePosArr(me);
		var l = arr[0];
		var t = arr[1];
		if (me.className == "topnavcell" || me.className == "topnavcellend")  t += me.offsetHeight; // + 40;
		else t+= me.offsetHeight + 1;
		pop.style.left = l + "px";
		pop.style.top = t + "px";
		pop.style.display = "block";
		var w = pop.offsetWidth;
		if ((w + l) > TargetWidth) {
			l = TargetWidth - w - 5;
			pop.style.left = l + "px";
		}
		if (isIE && !isMac) {
			var f = $get("HiddenFrame3");
			if (f) {
				f.style.left = l + "px";
				f.style.top = t + "px";
				f.style.width = pop.offsetWidth + "px";
				f.style.height = pop.offsetHeight + "px";
				f.style.display = "block";
			}
		}
	}
	else {
		currMenu = false;
		inMenu = false;
	}
}
function MenuMouseOut(me) {
	//me.className = me.className.replace(" over", "");
	var id = me.id.split("_")[1];
	TimeoutDropdown(id);
}
function TimeoutDropdown(id) {
	inMenu = false;
	window.setTimeout("HideDropdown('" + id + "');",1100);
}
function HideDropdown(id) {
	if (inMenu && currMenu == id) {
		return;
	}
	var menu = document.getElementById("mip_" + id);
	if (!menu) return;
	if (isIE && !isMac && !inMenu) {
		var f = $get("HiddenFrame3");
		if (f) f.style.display = "none";
	}
	menu.style.display = "none";
	if (!inMenu) ShowPlayer();
}
function HidePlayer() {
	if (isIE && brVer < 5.5) _cf.style.display = "none";
}
function ShowPlayer() {
	if (isIE && brVer < 5.5) _cf.style.display = "block";
}
function DropdownHover(me, ev, id) {
	inMenu = true;
	currMenu = id;
}
function DropdownOut(me, ev, id) {
	TimeoutDropdown(id);
}
function GoToHome(me, ev) {
	if (!pChecked) return true;
	CancelEvent(ev);
	DoBlur(me);
	GoToPage("global/homepage.aspx");
	return false;
}
function GoToPage(url) {
	var s = url;
	var ext = s.substring(s.length - 5);
	if (ext == ".html") {
		s = s.substring(0, s.length - 4) + UIL + ext;
	}
	else {
		if (isNS) {
			if (s.indexOf("?") > -1) s += "&misc=" + new Date();
			else s += "?misc=" + new Date();
		}
	}
	_cf.src = s;
}
function GoToExternalLink(me, ev, url) {
	CancelEvent(ev);
	DoBlur(me);
	var isOk = false;
	try {
		var w = null;
		try {
			var w = window.opener.top;
			w.location = url;
		} catch(e) {}
		if (!w) {
			w = window.open(url, "ChelseaHome");
		}
		if (w) {
			try {
				w.focus();
			} catch(e) {}
			isOk = true;
		}
	}
	catch (e) {
	}
	if (isOk) {
		return false;
	}
	return true;
}

function ShowBanners(arr) {
	var d = document.getElementById("divBanners");
	
	if (arr.length == 0) return;
	var s = '<table class="bottomrowtable" cellpadding="0" cellspacing="0"><tr>';
	var hideMenu = false;
	for (var i = 0; i < arr.length; i++) {
		if (arr[i].height > 55) hideMenu = true;
		s += '<td class="bottombannercell"><iframe style="width:' + (arr[i].width == -1 ? '632' : arr[i].width);
		s += 'px;height:' + (arr[i].height == -1 ? '80' : arr[i].height);
		s += 'px;margin:0px;" marginheight="0" marginwidth="0" frameborder="0" scrolling="no" src="';
		s += WebRoot + arr[i].url + '" title="';
		s += GetStringFromResource("BANNER_FRAME_TITLE") + '">&nbsp;</iframe></td>';
	}
	s += '</tr></table>';
	d.innerHTML = s;
	var bm = document.getElementById("divBottomMenu");
	if (hideMenu) bm.style.display = "block";
	else bm.style.display = "block";
	d.style.display = "block";
}
//---------------------------------------------------- Menu
var MMMenu = null;
var currM1 = 0, currM2 = 0;
function MMMenuItem(id, link, link_type, default_item, items) {
	this.id = id;
	this.link = link;
	this.link_type = link_type;
	this.default_item = default_item;
	this.items = items;
}
function MMSelectItemFromFrame(a) {
	if (!a) {
		MMSelectItem(0, 0);
	}
	else {
		MMSelectItem(a[0], a[1]);
	}
}
function MMSelectItem(id1, id2) {
	if (!isLoaded) {
		setTimeout("MMSelectItem(" + id1 + "," + id2 + ");", 500);
		return;
	}
	var item1, item2, prev1, prev2;
	var tt = document.getElementById("divContentMenu");
	if (tt.style.display == "none") {
		tt.style.display = "block";
	}
	var tt1 = document.getElementById("divBottomMenu");
	if (tt1.style.display == "none") {
		tt1.style.display = "block";
	}
	var tt1 = document.getElementById("divSearch");
	if (tt1.style.display == "none") {
		tt1.style.display = "block";
	}

	item1 = MMFindItem(MMMenu, id1);
	if (item1 && id2 > 0) {
		item2 = MMFindItem(item1.items, id2);
	}
	if (item1 && item2 == null) {
		if (item1.default_item && item1.default_item > 0) {
			item2 = MMFindItem(item1.items, item1.default_item);
		}
	}
	if (currM1 > 0) {
		prev1 = MMFindItem(MMMenu, currM1);
	}
	if (prev1 && currM2 > 0) {
		prev2 = MMFindItem(prev1.items, currM2);
	}
	if (prev2 && prev2 != item2) {
		MMHighlight(prev1.id, prev2.id, 0);
	}
	if (prev1 && prev1 != item1) {
		MMHighlight(prev1.id, 0, 0);
	}
	if (item2) {
		MMHighlight(item1.id, item2.id, 1);
	}
	if (item1 && item1 != prev1) {
		MMHighlight(item1.id, 0, 1);
	}
	if (item1) currM1 = item1.id;
	else currM1 = 0;
	if (item2) currM2 = item2.id;
	else currM2 = 0;
}
function MMFindItem(arr, id) {
	if (arr == null) {
		return null;
	}
	for (var i = 0; i < arr.length; i++) {
		if (arr[i].id == id) {
			return arr[i];
		}
	}
	return null;
}
function MMHighlight(id, id2, h) {
	var li = null;
	if (id2 == 0) li = document.getElementById("mi_" + id);
	else li = document.getElementById("mi2_" + id2);
	if (!li) return;
	var a = null;
	for (var i = 0; i < li.childNodes.length; i++) {
		if (li.childNodes[i].nodeName == "A") {
			a = li.childNodes[i];
			break;
		}
	}
	if (!a) return;
	if (h == 1) a.className = "highlightcolor";
	else a.className = "";	
}

function MMItemClick(me, ev, lev, id1, id2) {
	CancelEvent(ev);
	DoBlur(me);
	if (!pChecked) CheckPlayer();
	var item1, item2 = null;
	item1 = MMFindItem(MMMenu, id1);
	if (!item1) return false;
	if (lev == 2) {
		item2 = MMFindItem(item1.items, id2);
		if (!item2) return false;
	}
	else {
		if ((!item1.link || item1.link.lengthh == 0) && item1.default_item && item1.default_item > 0) {
			item2 = MMFindItem(item1.items, item1.default_item);
		}
		if (!item2) item2 = item1;
	}
	if (item2 && item2.link && item2.link.length > 0) {
		GoToPage(item2.link);
	}
	MMSelectItem(id1, id2);
	return false;
}


function BottomItemClick(me, ev, link, title) {
	CancelEvent(ev);
	DoBlur(me);
	if (!pChecked) return false;
	
	if (title == 'BACK') {
		DoGoBackMain();
	}
	else if (title == 'BOOKMARK') {
		return CreateBookmark(me, ev);
	}
	else {
		_cf.src = link;
	}

	return false;
}

function CreateBookmark(me, ev) {
	var loc = null;
	var tit = null;
	var tit2 = GetStringFromResource('Chelsea');
	var f = $get("CenterFrame");
	try {
		loc = f.contentWindow.location.pathname;
		tit = f.contentWindow.document.title
	} catch(e) {}
	if (loc == null || loc == "") {
		loc = "http://" + window.location.host + WebRoot;
	}
	else {
		loc2 = loc.toLowerCase();
		var pos = loc2.indexOf(WebRoot.toLowerCase());
		if (pos == -1) {
			loc = "http://" + window.location.host + WebRoot;
			tit = tit2;
		}
		else {
			var s1 = loc.substring(pos + WebRoot.length);
			pos = s1.indexOf(".aspx");
			if (pos > -1) {
				s1 = s1.substring(0, pos);
			}
			pos = s1.indexOf("?");
			if (pos > -1) {
				s1 = s1.substring(0, pos);
			}
			pos = s1.indexOf("#");
			if (pos > -1) {
				s1 = s1.substring(0, pos);
			}
			var arr = GetQsArray(loc);
			loc = "http://" + window.location.host + WebRoot + "?p=" + s1;
			var qs = "";
			for (var i = 0; i < arr.length; i++) {
				var n = arr[i].name;
				if (!(n == "misc" || n == "do" || n == "d" || n == "add" || n == "remove")) {
					qs += "&" + arr[i].name + "=" + arr[i].value;
				}
			}
			if (qs.length > 0) {
				loc += "&" + qs.substring(1);
			}
		}
	}
	if (tit == null || tit == "") {
		tit = tit2;
	}
	else if (tit != tit2) {
		tit = tit2 + " - " + tit;
	}
      	if (window.sidebar) {
		CancelEvent(ev);
		window.sidebar.addPersistentPanel(tit, loc, '');
		return false;
	}
	else if (window.external) {
		CancelEvent(ev);
		window.external.AddFavorite(loc, tit);
		return false;
	}
	else if (window.opera) {
		me.rel = "sidebar";
		me.target = "search";
		me.title = tit;
		me.href = loc;
		return true;
	}
}

function ChangeFrameSize(size) {
	if (size == curr_size) return;
	var f = document.getElementById("CenterFrame");
	if (size == 1) {
		f.style.height = "415px";
		ResizeWindowTo(TargetWidth, TargetHeight);
	}
	else {
		f.style.height = "483px";
		ResizeWindowTo(TargetWidth, TargetHeight + 68);
	}
	curr_size = size;
}
function RestoreFrameSize() {
	ChangeFrameSize(1);
}
function SearchKeywords(me, ev) {
	CancelEvent(ev);
	DoBlur(me);
	var el = $get("inpSearch");
	el.value = trim(el.value);
	if (el.value == GetStringFromResource('SEARCH_FIELD')) {
		el.value = "";
	}
	if (el.value.length == 0) {
		alert(GetStringFromResource('SEARCH_KEYWORD_EMPTY'));
		el.focus();
		return false;
	}
	if (el.value.length < 3) {
		alert(GetStringFromResource('SEARCH_KEYWORD_TOO_EMPTY'));
		el.focus();
		return false;
	}
	var f = $get("frmSearch");
	f.submit();
	return false;
}
function GetMenuName(id) {
	var el = document.getElementById("mi_" + id);
	if (!el) {
		return "";
	}
	var aa = el.getElementsByTagName("A");
	if (aa.length == 0) {
		return "";
	}
	s = aa[0].innerHTML;
	if (!s) return "";
	var re = new RegExp("&nbsp;","gi");
	s = s.replace(re, " ")
	return s;
}