	var selected_rec_keyword_idx = -1;
	var __search_rec_keyword_type__ = "normal";

	function Init2()
	{
		document.body.attachEvent("onclick", ShowHideSearchPanel);
		document.getElementById("bell_search_btn").attachEvent("onclick", Search);
		document.getElementById("bell_search_clear").attachEvent("onclick", SearchClear);
		document.getElementById("bell_search_keyword").attachEvent("onkeyup", SearchCheck);
		document.getElementById("bell_search_keyword").attachEvent("onfocus", ShowSearchPanel);
		document.getElementById("bell_search_keyword").attachEvent("onkeydown", SearchKeword_OnKeyDown);
	}
	
	function SearchCheck()
	{
		if (event.keyCode == 13)
		{
			Search();
		}
	}
	
	function SearchThis(keyword)
	{
		 document.getElementById("rightmain_livebell_list_search_keyword").value = keyword;
		 Search();
	}
	
	function ShowHideSearchPanel()
	{
		var srcObj = event.srcElement;
		
		if (typeof(srcObj.id) != "undefined" && (srcObj.id == "rightmain_livebell_list_search_keyword" || srcObj.id == "rightmain_livebell_list_search_keyword_ac_arrow"))
		{
			ShowSearchPanel()
		}
		else
		{
			HideSearchPanel()
		}
	}
	
	function SearchKeword_OnKeyDown()
	{
		var destObj = event.srcElement;
		
		if (destObj.tagName != "INPUT")
		{
			return;
		}
		
		//alert(event.keyCode);
		
		// UP
		if (event.keyCode == 38)
		{
			MoveRecKeywords("UP");
		}
		// DOWN
		else if (event.keyCode == 40)
		{
			if (document.getElementById("rightmain_livebell_list_search_panel").style.display == "inline")
			{
				MoveRecKeywords("DOWN");
			}
			else
			{
				ShowSearchPanel();
			}
		}
	}	

	function MoveRecKeywords(dir)
	{
		var destObj = document.getElementById("rightmain_livebell_list_search_panel");
		
		if (destObj.style.display != "inline")
		{
			return;
		}
		
		var recKeywords = destObj.childNodes;
		
		if (dir == "UP")
		{
			if (selected_rec_keyword_idx > 0)
			{
				selected_rec_keyword_idx--;
			}
			else
			{
				document.getElementById("rightmain_livebell_list_search_keyword").value = "";//last_input_rcvphone;
				selected_rec_keyword_idx = -1;
				//HideRcvPhoneList();
				//return;
			}
		}
		else if (dir == "DOWN")
		{
			if (selected_rec_keyword_idx+1 < recKeywords.length)
			{
				selected_rec_keyword_idx++;
			}
		}
		
		for (var i=0; i<recKeywords.length; i++)
		{
			if (i == selected_rec_keyword_idx)
			{
				recKeywords[i].style.backgroundColor = "#F4FCC6";
				document.getElementById("rightmain_livebell_list_search_keyword").value = recKeywords[i].innerText;
			}
			else
			{
				recKeywords[i].style.backgroundColor = "#FFFFFF";
			}
		}
		
		destObj.scrollTop = Math.floor(selected_rec_keyword_idx / 7) * 120;
	}

	function ShowSearchPanel()
	{
		if (document.getElementById("rightmain_livebell_list_search_panel").style.display != "inline")
		{
			var ajax = new AJAX();
			var reqFile = (__search_rec_keyword_type__ == "livebell") ? "/config/livebell_rec_keyword.xml" : "/config/bell_rec_keyword.xml";
			ajax.Request(reqFile, ShowSearchPanel_Callback, null);
		}
		
		document.getElementById("rightmain_livebell_list_search_keyword").focus();
	}
	
	function ShowSearchPanel_Callback(xml)
	{
		//alert(xml);
		var xmlDoc = LoadDomDocument(xml, false);
		var oNodes = xmlDoc.documentElement.childNodes;
		var panelObj = document.getElementById("rightmain_livebell_list_search_panel");
		
		panelObj.innerHTML = "";
		for (var i=0; i<oNodes.length; i++)
		{
			panelObj.innerHTML += "<div class='bell_rec_keyword' onmouseover='RecKeywordList_MouseOver()' onmouseout='RecKeywordList_MouseOut()' onclick='RecKeywordList_MouseClick()'>"+oNodes(i).text+"</div>";
		}

		panelObj.style.display = "inline";
	}
	
	function RecKeywordList_MouseOver()
	{
		var recKeywords = document.getElementById("rightmain_livebell_list_search_keyword").getElementsByTagName("DIV");
		for (var i=0; i<recKeywords.length; i++)
		{
			recKeywords[i].style.backgroundColor = "#FFFFFF";
		}
		selected_rec_keyword_idx = -1;
		
		var destObj = event.srcElement;
		destObj.style.backgroundColor = "#F4FCC6";
	}
	
	function RecKeywordList_MouseOut()
	{
		var destObj = event.srcElement;
		destObj.style.backgroundColor = "#FFFFFF";
	}
	
	function RecKeywordList_MouseClick()
	{
		var selObj = event.srcElement;
		document.getElementById("rightmain_livebell_list_search_keyword").value = selObj.innerText;
		Search();
	}
	
	function HideSearchPanel()
	{
		selected_rec_keyword_idx = -1;
		document.getElementById("rightmain_livebell_list_search_panel").style.display = "none";
	}

