function genMenu(items) {
	$("#leftmenu").html("");
	$.each(items, function(n, item) {
		if(item.show != "1") return true;
		var prefix = "";
		prefix += item.parent == 1 ? "&gt; " : "- ";
		var newtr = document.createElement("tr");
		var newtd = document.createElement("td");
		var newurl = document.createElement("a");
		$(newtr).attr("id", item.id);
		$(newtr).attr("pid", item.pid);
		$(newtr).attr("lvl", item.lvl);
		$(newtr).attr("sel", item.sel);
		$(newtr).hover(function() {
			expand($(newtr));
		});
		$(newtr).mouseleave(function() {
			closeAll();
		});

		newurl.href = item.url == "" ? "#" : item.url;
		newurl.innerHTML = prefix + item.name;
		newtd.appendChild(newurl);
		newtd.style.paddingLeft = (item.lvl < 1 ? 0 : item.lvl - 1) + "em";
		if(item.sel == "1")
			$(newtd).attr("class", "on");
		newtr.appendChild(newtd);
		$(newtr).appendTo($("#leftmenu"));
	});
}
var siteMap;

function initMenu() {
	var selTr;
	$.each($("#leftmenu: tr"), function(n, item) {
		if($(this).attr("lvl") == "1")
			$(this).css("display", "");
		else
			$(this).css("display", "none");
		if($(this).attr("sel") == "1") selTr = $(this);
	});
//	expand(selTr);
}

function expand(objTr) {
	var currId = $(objTr).attr("id");
	var currPid = $(objTr).attr("pid");
	$.each($("#leftmenu: tr"), function(n, item) {
		if($(this).attr("id") == currId || 
				$(this).attr("id") == currPid || 
				$(this).attr("pid") == currId || 
				$(this).attr("pid") == currPid ||
				$(this).attr("lvl") == "1") {
			$(this).css("display", "");
//			$(this).fadeIn();
		} else {
			$(this).css("display", "none");
		}
	});
}

function closeAll() {
	$.each($("#leftmenu: tr"), function(n, item) {
		if(	$(this).attr("lvl") != "1") {
			$(this).hide();
		}
	});
}

function genSiteMap(items) {
	if(items.length < 1) return;
	siteMap = "";
	$.each(items, function(n, item) {
		if(item.sel == "1") {
			siteMap = "&gt;<a href='" + item.url + "'>" + item.name + "</a>";
			getSiteMapParent(items, item.pid);
			return false;
		}
	});
	siteMap = "&gt;<a href='" + items[0].url + "'>" + items[0].name + "</a>" + siteMap;
	$("#breadlink").html(siteMap);
}

function getSiteMapParent(items, pid) {
	var cloneItems = [].concat(items);
	for(var n = 0; n < cloneItems.length; n++) {
		if(cloneItems[n].id == pid && cloneItems[n].pid != -1) {
			var newPid = cloneItems[n].pid;
			siteMap = "&gt;<a href='" +  (cloneItems[n].url == "" ? "#" : cloneItems[n].url) + "'>" + 
				cloneItems[n].name + "</a>" + siteMap;
			cloneItems.remove(cloneItems[n]);
			getSiteMapParent(cloneItems, newPid);
		}
	}
}

$(document).ready(function getMenu(e) {
	var u = this.location.href;
	if(u.indexOf("/submember/member_upgrade") > -1) return;
	var reqUrl = '/coffee/menu.serx';
	if(u.indexOf("https") > -1)
  		reqUrl = '/member/submember/menu.serx';
  	$.ajax({
	    url: reqUrl,
	    data: {currUrl: this.location.href},
	    error: 	function(xhr) {
	  			},
	  	success:function(response) {
	  				var items = JSON.parse(response);
	  				genMenu(items[0].menuData);
	  				genSiteMap(items[0].menuData);
	  			  	initMenu();
  					setTimeout(function(){	}, 5000);
	  			}
	 });

});