

function getItemsByElement(e)

{

	var langObj = new Object();

	var nodes = e.childNodes;

	for (var i=0; i<nodes.length; i++)

		{

			var node = nodes[i];

			if (node.nodeName == "#text") continue;

			if (typeof(node.nodeName) == "undefined") continue;

			

			langObj[i] = new Object();

			langObj[i] = (node.firstChild)?node.firstChild.data:"";

		}	

	return langObj;

}



function getShopByElement(e)

{

	var nodes = e.childNodes;

	//alert(nodes);

	var id = e.getAttribute("id");

	var catid = e.getAttribute("catid");

	var subcatid = e.getAttribute("subcatid");

	var n = "";

	var loc = "";

	var h = "";

	var ur = "";

	var tels = new Object();

	var other = new Object();

	var desc = new Object();

	var logo = "";

	var image = "";
	
	var hidden = "";
	
	var hodPath = "";

	var zone = e.getAttribute("zone");

	//alert(id);

	

	for (var i=0; i<nodes.length; i++)

		{

			var node = nodes[i];

			if (node.nodeName == "name")

				{

					n = getLangByElement(node);

				}

			else if (node.nodeName == "url")

				{

					ur = (node.firstChild)?node.firstChild.data:"";

				}

			else if (node.nodeName == "location")

				{

					loc = (node.firstChild)?node.firstChild.data:"";

				}

			else if (node.nodeName == "operationHour")

				{

					h = (node.firstChild)?node.firstChild.data:"";

				}

			else if (node.nodeName == "tels")

				{

					tels = getItemsByElement(node);

				}

			else if (node.nodeName == "description")

				{

					desc = getLangByElement(node);

				}

			else if (node.nodeName == "other")

				{

					other = (node.firstChild)?node.firstChild.data:"";

				}

			else if (node.nodeName == "logo")

				{

					logo = (node.firstChild)?node.firstChild.data:"";

				}

			else if (node.nodeName == "image")

				{

					image = (node.firstChild)?node.firstChild.data:"";

				}
			else if (node.nodeName == "hidden")

				{

					hidden = (node.firstChild)?node.firstChild.data:"";

				}
			else if (node.nodeName == "hodPath")

				{

					hodPath = (node.firstChild)?node.firstChild.data:"";

				}

		}

		

	//return new sectionObj(id, n, t, p, sub);

	return new shopObj(id, catid, subcatid, n, tels, ur, loc, h, desc, other, logo, image, zone,hidden,hodPath);

}



function getCatByElement(e)

{

	var nodes = e.childNodes;

	var id = e.getAttribute("id");

	var title = new Object();

	var cats = new Object();

	

	for (var i=0; i<nodes.length; i++)

		{

			var node = nodes[i];

			if (node.nodeName == "title")

				{

					title = getLangByElement(node);

				}

			else if (node.nodeName == "cats")

				{

					var subNodes = node.childNodes;

					

					for (var j=0; j<subNodes.length; j++)

						{

							if (subNodes[j].nodeName == "cat")

								{

									var cid = subNodes[j].getAttribute("id");

									if (!cats[cid]) cats[cid] = new Object();

									cats[cid] = getCatByElement(subNodes[j]);

								}

						}

				}

		}

		

	return new catObj(id, title, cats);

}







function subDiningPaser(x)

{

	if (typeof(shopsObj["shops"]) == "undefined")

		{

			shopsObj["shops"] = new Object();

		}

	

	if (typeof(shopsObj["cats"]) == "undefined")

		{

			shopsObj["cats"] = new Object();

		}

	

	var root = x.getElementsByTagName('shopping').item(0);

	var rootCats = root.getElementsByTagName('cats').item(0);

	var cats = rootCats.childNodes;

	for (var i=0; i<cats.length; i++)

		{

			if (cats[i].nodeName == "cat")

				{

					var cid = cats[i].getAttribute("id");

					if (cid == 1) continue;

					if (cid == 3) continue;

					if (!shopsObj["cats"][cid]) shopsObj["cats"][cid] = new Object();

					shopsObj["cats"][cid] = getCatByElement(cats[i]);

				}

		}



	var rootShops = root.getElementsByTagName('shops').item(0);

	var nodes = rootShops.childNodes;

	for (var i=0; i<nodes.length; i++)

		{

			if (nodes[i].nodeName == "shop")

				{

					var cid = nodes[i].getAttribute("catid");

					if (cid == 1) continue;

					if (cid == 3) continue;

					var sid = nodes[i].getAttribute("id");

					if (!shopsObj["shops"][sid]) shopsObj["shops"][sid] = new Object();

					shopsObj["shops"][sid] = getShopByElement(nodes[i]);

				}

		}

	

		

	tempHtml = '';

	tempHtml += '<table width="100%" cellpadding="0" cellspacing="0" border="0">';	

	

	var lv0 = shopsObj["cats"];

	var startT = "";

	

	var allTxt = 'All';

	if (location.toString().indexOf('big5')!=-1)

	{

		allTxt = "所有";

	}

	if (location.toString().indexOf('gb')!=-1)

	{

		allTxt = "所有";

	}

	tempHtml += addListItem(allTxt, 0, 0);

	

	var lines = 0;

	for (var item0 in lv0)

		{

			var lv1 = lv0[item0];

			var catid = lv1.getID();



			for (var item1 in lv1.cats)

				{

					var lv2 = lv1.cats[item1];

					var subcatid = lv2.getID();

					tempHtml += addListItem(lv2.getTitle(), catid, subcatid);

					lines ++;

					if ((catid==1) && (subcatid==1))

						{

							startT = lv2.getTitle();

						}

				}

		}

	//tempHtml += tempStr;

	tempHtml += '</table>';

		

	var v=(lines>=7)?'show':'hide';

		

	var mct = document.getElementById("menuContentTable2");

		

	if (lines<7)

	{

		mct.style.height = 18*lines;

	}

	else

	{

		mct.style.height = 116;

	}

	

	var obj = document.getElementById("arrow_down");

    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }

	obj.visibility = v;

	

	var obj = document.getElementById("arrow_up");

    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }

	obj.visibility = v;

	

	

	document.getElementById("subCategoryContent").innerHTML = tempHtml;

	updateShopListByCat("All", 0, 0);

}



var rootListHolder;

var currentTargetCid;



function updateSubCatByCat(targetcid)

{

	if (currentTargetCid == targetcid) return;

	currentTargetCid = targetcid;

	if (typeof(shopsObj["shops"]) == "undefined")

		{

			shopsObj["shops"] = new Object();

		}

	

	if (typeof(shopsObj["cats"]) == "undefined")

		{

			shopsObj["cats"] = new Object();

		}

	

	var root = rootListHolder;

	var rootCats = root.getElementsByTagName('cats').item(0);

	var cats = rootCats.childNodes;

	

	shopsObj["cats"] = new Object();

	

	for (var i=0; i<cats.length; i++)

		{

			if (cats[i].nodeName == "cat")

				{

					var cid = cats[i].getAttribute("id");

					if (targetcid!=0)

					{

						if (cid != targetcid) continue;

					}

					else

					{

						if (cid == 2) continue;

					}

					if (!shopsObj["cats"][cid]) shopsObj["cats"][cid] = new Object();

					shopsObj["cats"][cid] = getCatByElement(cats[i]);

				}

		}



	var rootShops = root.getElementsByTagName('shops').item(0);

	var nodes = rootShops.childNodes;

	for (var i=0; i<nodes.length; i++)

		{

			if (nodes[i].nodeName == "shop")

				{

					var cid = nodes[i].getAttribute("catid");

					if (targetcid!=0)

					{

						if (cid != targetcid) continue;

					}

					else

					{

						if (cid == 2) continue;

					}

					var sid = nodes[i].getAttribute("id");

					if (!shopsObj["shops"][sid]) shopsObj["shops"][sid] = new Object();

					shopsObj["shops"][sid] = getShopByElement(nodes[i]);

				}

		}

		

		

	tempHtml = '';

	tempHtml += '<table width="100%" cellpadding="0" cellspacing="0" border="0">';	

	

	var lv0 = shopsObj["cats"];

	var startT = "";

	

	var allTxt = 'All';

	if (location.toString().indexOf('big5')!=-1)

	{

		allTxt = "所有";

	}

	if (location.toString().indexOf('gb')!=-1)

	{

		allTxt = "所有";

	}

	

	tempHtml += addListItem(allTxt, targetcid, null);

	

	var lines = 0;

	

	for (var item0 in lv0)

		{

			var lv1 = lv0[item0];

			var catid = lv1.getID();



			for (var item1 in lv1.cats)

				{

					var lv2 = lv1.cats[item1];

					var subcatid = lv2.getID();

					tempHtml += addListItem(lv2.getTitle(), catid, subcatid);

					

					lines++;

					

					if ((catid==1) && (subcatid==1))

						{

							startT = lv2.getTitle();

						}

				}

		}

	//tempHtml += tempStr;

	tempHtml += '</table>';

	

	//alert(targetcid);

	scroll_top("subCategoryContent");

	

	var v=(lines>=7)?'show':'hide';

	

	var mct = document.getElementById("menuContentTable2");

	//alert(mct.offsetHeight);

	

	if (lines<7)

	{

		mct.style.height = 17*lines;

	}

	else

	{

		mct.style.height = 116;

	}

	

	var obj = document.getElementById("arrow_down");

	if (obj)

	{

		if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }

		obj.visibility = v;

	}

	

	var obj = document.getElementById("arrow_up");

	if (obj)

	{

		if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }

		obj.visibility = v;

	}

	

	

	

	document.getElementById("subCategoryContent").innerHTML = tempHtml;

	//alert(document.getElementById("subCategoryContent").clientHeight);



}



function subCatPaser(x)

{

	if (typeof(shopsObj["shops"]) == "undefined")

		{

			shopsObj["shops"] = new Object();

		}

	

	if (typeof(shopsObj["cats"]) == "undefined")

		{

			shopsObj["cats"] = new Object();

		}

	

	var root = x.getElementsByTagName('shopping').item(0);

	var rootCats = root.getElementsByTagName('cats').item(0);

	

	rootListHolder = root;

	

	var cats = rootCats.childNodes;

	for (var i=0; i<cats.length; i++)

		{

			if (cats[i].nodeName == "cat")

				{

					var cid = cats[i].getAttribute("id");

					if (cid == 2) continue;

					if (!shopsObj["cats"][cid]) shopsObj["cats"][cid] = new Object();

					shopsObj["cats"][cid] = getCatByElement(cats[i]);

				}

		}



	var rootShops = root.getElementsByTagName('shops').item(0);

	var nodes = rootShops.childNodes;

	for (var i=0; i<nodes.length; i++)

		{

			if (nodes[i].nodeName == "shop")

				{

					var cid = nodes[i].getAttribute("catid");

					if (cid == 2) continue;

					var sid = nodes[i].getAttribute("id");

					if (!shopsObj["shops"][sid]) shopsObj["shops"][sid] = new Object();

					shopsObj["shops"][sid] = getShopByElement(nodes[i]);

				}

		}



		

		

		

	tempHtml = '';

	tempHtml += '<table width="100%" cellpadding="0" cellspacing="0" border="0">';	

	

	var lv0 = shopsObj["cats"];

	var startT = "";

	var lvOneList = {1:'Shopping', 3:'Entertainment and others'};

	var allTxt = 'All';

	if (location.toString().indexOf('big5')!=-1)

	{

		allTxt = "所有";

		lvOneList = {1:'購物指南', 3:'娛樂及其他'};

	}

	if (location.toString().indexOf('gb')!=-1)

	{

		allTxt = "所有";

		lvOneList = {1:'购物指南', 2:'娱乐及其他'};

	}

	

	

	tempHtml += addCatListItem(allTxt, 0, 0);

	

//	var lvOneList = {1:'Shopping', 2:'Dining', 3:'Entertainment'};

	

	

	for (var item0 in lvOneList)

		{

			var item1 = lvOneList[item0];

			tempHtml += addCatListItem(item1, item0);

		}

	//tempHtml += tempStr;

	tempHtml += '</table>';

	

	document.getElementById("categoryContent").innerHTML = tempHtml;

		

		

		

		

		

		

	tempHtml = '';

	tempHtml += '<table width="100%" cellpadding="0" cellspacing="0" border="0">';	

	

	var lv0 = shopsObj["cats"];

	var startT = "";

	

	var allTxt = 'All';

	if (location.toString().indexOf('big5')!=-1)

	{

		allTxt = "所有";

	}

	if (location.toString().indexOf('gb')!=-1)

	{

		allTxt = "所有";

	}

	

	tempHtml += addListItem(allTxt, 0, 0);

	

	for (var item0 in lv0)

		{

			var lv1 = lv0[item0];

			var catid = lv1.getID();



			for (var item1 in lv1.cats)

				{

					var lv2 = lv1.cats[item1];

					var subcatid = lv2.getID();

					tempHtml += addListItem(lv2.getTitle(), catid, subcatid);

					if ((catid==1) && (subcatid==1))

						{

							startT = lv2.getTitle();

						}

				}

		}

	//tempHtml += tempStr;

	tempHtml += '</table>';

	

	document.getElementById("subCategoryContent").innerHTML = tempHtml;

	updateShopListByCat("All", 0, 0);

}





function shopPaser(x)

{

	if (typeof(shopsObj["shops"]) == "undefined")

		{

			shopsObj["shops"] = new Object();

		}

	

	if (typeof(shopsObj["cats"]) == "undefined")

		{

			shopsObj["cats"] = new Object();

		}

	

	var root = x.getElementsByTagName('shopping').item(0);

	var rootCats = root.getElementsByTagName('cats').item(0);

	var cats = rootCats.childNodes;

	for (var i=0; i<cats.length; i++)

		{

			if (cats[i].nodeName == "cat")

				{

					var cid = cats[i].getAttribute("id");

					if (!shopsObj["cats"][cid]) shopsObj["cats"][cid] = new Object();

					shopsObj["cats"][cid] = getCatByElement(cats[i]);

				}

		}



	var rootShops = root.getElementsByTagName('shops').item(0);

	var nodes = rootShops.childNodes;

	for (var i=0; i<nodes.length; i++)

		{

			if (nodes[i].nodeName == "shop")

				{

					var sid = nodes[i].getAttribute("id");

					if (!shopsObj["shops"][sid]) shopsObj["shops"][sid] = new Object();

					shopsObj["shops"][sid] = getShopByElement(nodes[i]);

				}

		}

	

	//alert(shopsObj.targetLoc);


	//genShop(getShopByLoc(shopsObj.targetLoc));	
	var hodShop=getShopByLoc(shopsObj.targetLoc);
	genShop(hodShop);
if(getLang()=='gb') {
//	alert('aaa');
//	alert(hodShop);
//	alert(hodShop.getHodPath());
}
	var hodUrl = '/'+getLang()+'/shop/detail/'+hodShop.getHodPath()+'/';
	window.location =hodUrl;
	/*
	
	var qq=getShopByLoc(shopsObj.targetLoc);
alert(hodShop.getHodPath());
	*/
}















function subFivePaser(x)

{

	if (typeof(shopsObj["shops"]) == "undefined")

		{

			shopsObj["shops"] = new Object();

		}

	

	if (typeof(shopsObj["cats"]) == "undefined")

		{

			shopsObj["cats"] = new Object();

		}

	

	var root = x.getElementsByTagName('shopping').item(0);

	var rootCats = root.getElementsByTagName('cats').item(0);

	var cats = rootCats.childNodes;

	for (var i=0; i<cats.length; i++)

		{

			if (cats[i].nodeName == "cat")

				{

					var cid = cats[i].getAttribute("id");

					if (!shopsObj["cats"][cid]) shopsObj["cats"][cid] = new Object();

					shopsObj["cats"][cid] = getCatByElement(cats[i]);

				}

		}



	var rootShops = root.getElementsByTagName('shops').item(0);

	var nodes = rootShops.childNodes;

	for (var i=0; i<nodes.length; i++)

		{

			if (nodes[i].nodeName == "shop")

				{

					var cid = nodes[i].getAttribute("catid");

					var sid = nodes[i].getAttribute("id");

					if (!shopsObj["shops"][sid]) shopsObj["shops"][sid] = new Object();

									

					shopsObj["shops"][sid] = getShopByElement(nodes[i]);

				}

		}

	

	var lv0 = shopsObj["cats"];

	var startT = "";

	updateShopListByZone(currentZone);

}




