function fnDocument_event_onload()
{
	// 메뉴 처리
	fnTopmenuProcess("id_topmenu_print_area");

	// 서브메뉴 처리
	fnSubmenuProcess("id_submenu_print_area");

	// 메뉴 활성화
	fnNowMenuEnable(false, true);

	// 메인 - 이미지 정보 목록 처리
	fnMain_maininfo(5000, "id_main_info", "id_main_info_navi");

	// 메인 - 팝업존 목록처리
	fnMain_popupzone(5000, "id_popupzone","id_popupzone_navi");

	// 메인 - 단양팔경 목록처리
	fnMain_List(-1, "id_danyang_eight_spot", "id_danyang_eight_spot_navi", "li", 6, "pre next");

	// 메인 - 단양의 축제여행 목록처리
	fnMain_Festival(5000, "id_danyang_festival", "id_danyang_festival_navi", "li", 1, "all");

/*
	// 플래쉬 삽입
	fnInsertFlash();

	// 세션타이머 설정
	fnSessionTimerSetting();

	// 메인 - 패밀리사이트 버튼 처리
//	fnMain_family("id_family", "id_family_list");

	// 메인 - 월간행사 목록처리
	fnMain_calendar(5000, "id_calendar", "id_calendar_navi");

	// 상단 알리미 처리
	fnTopInformation("id_information_box", 3000, 100, 2, 50);
*/
}
xAddEventListener(window, "load", fnDocument_event_onload, false);


function fnNavigationSource(strMode)
{
	var strRet	= "";
	strRet	+= "<div class=\"navigation\">\n";

	if(strMode.search(/pre/i) >= 0 || strMode.search(/all/i) >= 0)
		strRet	+= "	<a href=\"#\" class=\"pre\" title=\"이전\" {event_pre}><span class=\"bg\"></span>≪</a>\n";

	if(strMode.search(/start/i) >= 0 || strMode.search(/all/i) >= 0)
	{
		strRet	+= "	<a href=\"#\" class=\"start hide\" title=\"시작\" {event_start}><span class=\"bg\"></span>▷</a>\n";
		strRet	+= "	<a href=\"#\" class=\"stop\" title=\"정지\" {event_stop}><span class=\"bg\"></span>□</a>\n";
	}

	if(strMode.search(/next/i) >= 0 || strMode.search(/all/i) >= 0)
		strRet	+= "	<a href=\"#\" class=\"next\" title=\"다음\" {event_next}><span class=\"bg\"></span>≫</a>\n";

	strRet	+= "</div>\n";

	return strRet;
}


function fnNowMenuEnable(blsTopmenu, blsSubmenu)
{
	var strMenuCode	= location.href.getQueryString("menu");
	if(strMenuCode != "")
	{
		var objTopMenu		= xGetElementById("topmenu_code_"+ strMenuCode);
		var objSubMenu		= xGetElementById("submenu_code_"+ strMenuCode);

		if(blsTopmenu == true)
		{
			var strBuf			= strMenuCode;
			while(strBuf.length > 0)
			{
				if(objTopMenu)
				{
					var strClassName	= xGetClassName(objTopMenu);
					strClassName			= strClassName.search(/path/i) >= 0 ? strClassName : strClassName + " path";
					xSetClassName(objTopMenu, strClassName);
					fnTopmenu_event_process(objTopMenu, true);
				}

				strBuf				= strBuf.substring(0, strBuf.length - 2);
				objTopMenu		= xGetElementById("topmenu_code_"+ strBuf);
			}
		}

		if(blsSubmenu == true)
		{
			var strBuf			= strMenuCode;
			while(strBuf.length > 0)
			{
				if(objSubMenu)
				{
					var strClassName	= xGetClassName(objSubMenu);
					strClassName			= strClassName.search(/path/i) >= 0 ? strClassName : strClassName + " path";
					xSetClassName(objSubMenu, strClassName);
					fnSubmenu_event_process(objSubMenu, true);
				}

				strBuf				= strBuf.substring(0, strBuf.length - 2);
				objSubMenu		= xGetElementById("submenu_code_"+ strBuf);
			}

			if(strMenuCode.length > 10)
			{
				var objSubMenuBox	= xGetElementById("id_submenu_depth5_box");
				var objSubMenu			= xGetElementById("submenu_code_"+ strMenuCode);
				var objSubMenuList	= fnSearchParentNode(objSubMenu, "ul", "list_depth5");
				if(objSubMenuBox && objSubMenuBox && objSubMenuList)
				{
					var strClassName	= xGetClassName(objSubMenuBox);
					strClassName			= strClassName.replace(/hide/gi, "").trim();
					xSetClassName(objSubMenuBox, strClassName);
					objSubMenuBox.appendChild(objSubMenuList.cloneNode(true));
				}
			}
		}
	}
}





//********************************************************************************************************************************************
//	메뉴 처리
//********************************************************************************************************************************************
// 상단 메뉴 이벤트 처리
var g_objTopMenuArea	= null;
function fnTopmenuProcess(strPrintArea)
{
	var objMenuArea	= xGetElementById(strPrintArea);
	if(objMenuArea)
	{
		g_objTopMenuArea	= objMenuArea;
		var arrLink			= xGetElementsByTagName("a", objMenuArea);
		var arrTopMenuLink	= new Array;

		if(arrLink.length > 0)
		{
			for(var i=0; i<arrLink.length; i++)
			{
				var strId		= arrLink[i].id ? arrLink[i].id : "";
				if(strId.search(/topmenu\_code/gi) >= 0)
				{
					arrTopMenuLink[arrTopMenuLink.length]	= arrLink[i];
				}
			}
		}

		if(arrTopMenuLink.length > 0)
		{
			for(var i=0; i<arrTopMenuLink.length; i++)
			{
				var objParentNode		= fnSearchParentNode(arrTopMenuLink[i], "li", "list_child_depth1");
				var blsParentNodeSet	= xGetAttribute(objParentNode, "settopmenu");
				if(objParentNode && !blsParentNodeSet)
				{
					xSetAttribute(objParentNode, "settopmenu", true);

					var objChildNode	= fnSearchChildtNode(objParentNode, "div", "child_list_box_depth1");
					if(objChildNode)
					{
						xAddEventListener(arrTopMenuLink[i], "mouseover", fnTopmenu_event_click);
						xAddEventListener(arrTopMenuLink[i], "focus", fnTopmenu_event_click);

						xAddEventListener(arrTopMenuLink[i], "mouseover", fnTopmenu_event_process_timereset);
						xAddEventListener(arrTopMenuLink[i], "focus", fnTopmenu_event_process_timereset);
						xAddEventListener(arrTopMenuLink[i], "mouseout", fnTopmenu_event_process_timeout);
						xAddEventListener(arrTopMenuLink[i], "blur", fnTopmenu_event_process_timeout);
						xSetAttribute(arrTopMenuLink[i], "targetlink", arrTopMenuLink[i]);

						xAddEventListener(objChildNode, "mouseover", fnTopmenu_event_process_timereset);
						xAddEventListener(objChildNode, "focus", fnTopmenu_event_process_timereset);
						xAddEventListener(objChildNode, "mouseout", fnTopmenu_event_process_timeout);
						xAddEventListener(objChildNode, "blur", fnTopmenu_event_process_timeout);
						xSetAttribute(objChildNode, "targetlink", arrTopMenuLink[i]);

						var arrChildLink		= xGetElementsByTagName("a", objChildNode);
						for(var j=0; j<arrChildLink.length; j++)
						{
							xAddEventListener(arrChildLink[j], "focus", fnTopmenu_event_process_timereset);
						}

						var strClassname	= objChildNode.className ? objChildNode.className : "";
						strClassname			= strClassname.search(/hide/i) < 0 ? strClassname.trim() + " hide" : strClassname;
						objChildNode.className	 = strClassname;

						xSetAttribute(objChildNode, "linkobj", arrTopMenuLink[i]);
					}
				}
			}
		}
	}
}




// 상위 노드 찾기
function fnSearchParentNode(objThis, strTag, strClassName)
{
	strTag	= strTag ? strTag : "";
	strClassName	= strClassName ? strClassName : "";

	if(!objThis || strTag == "")
		return null;

	var strThisTag	= objThis.tagName ? objThis.tagName : "";
	var strThisClass	= objThis.className ? objThis.className : "";
	if(strThisTag.toLowerCase() == "body")
		return null;

	if(strThisTag.toLowerCase() == strTag.toLowerCase() && strThisClass.search(strClassName) >= 0)
	{
		return objThis;
	}

	objThis		= objThis.parentNode;

	return fnSearchParentNode(objThis, strTag, strClassName);
}

// 상위 노드 찾기
function fnSearchParentNode2(objThis, strAttName)
{
	strAttName	= strAttName ? strAttName : "";

	if(!objThis || strAttName == "")
		return null;

	var strThisTag	= objThis.tagName ? objThis.tagName : "";
	var strAttValue	= xGetAttribute(objThis, strAttName);
	if(strThisTag.toLowerCase() == "body")
		return null;

	if(strAttValue != null)
	{
		return objThis;
	}

	objThis		= objThis.parentNode;

	return fnSearchParentNode2(objThis, strAttName);
}

// 하위 노드 찾기
function fnSearchChildtNode(objThis, strTag, strClassName)
{
	strTag	= strTag ? strTag : "";
	strClassName	= strClassName ? strClassName : "";

	if(!objThis || strTag == "")
		return null;

	if(objThis.childNodes.length > 0)
	{
		for(var i=0; i<objThis.childNodes.length; i++)
		{
			var strThisTag	= objThis.childNodes[i].tagName ? objThis.childNodes[i].tagName : "";
			var strThisClass	= objThis.childNodes[i].className ? objThis.childNodes[i].className : "";

			if(strThisTag.toLowerCase() == strTag.toLowerCase() && strThisClass.search(strClassName) >= 0)
			{
				return objThis.childNodes[i];
			}
			else
			{
				//return fnSearchChildtNode(objThis.childNodes[i], strTag, strClassName);
			}
		}
	}
	else
		return null;
}


var g_objPreTopmenu	= null;
function fnTopmenu_event_click(Event)
{
	var objEvent	= new xEvent(Event);
	if(objEvent)
	{
		var objTarget			= objEvent.target;
		var strTagName		= objTarget.tagName ? objTarget.tagName.toLowerCase() : "";
		if(strTagName != "a")
		{
			objTarget		= fnSearchParentNode(objTarget, "a");
		}

		fnTopmenu_event_process(objTarget, true);
	}
}

function fnTopmenu_event_process(objThis, blsEnable)
{
	blsEnable	= blsEnable ? true : false;

	if(!g_objTopMenuArea)
		return;

	if(!objThis)
		return;

	if(blsEnable && g_objPreTopmenu == objThis)
		return;

	var objParentNode	= fnSearchParentNode(objThis, "li", "list_child_depth1");
	var objChildNode	= fnSearchChildtNode(objParentNode, "div", "child_list_box_depth1");

	if(objChildNode)
	{
		var strClassName0	= g_objTopMenuArea.className ? g_objTopMenuArea.className : "";
		var strClassName1	= objThis.className ? objThis.className : "";
		var strClassName2	= objChildNode.className ? objChildNode.className : "";

		if(blsEnable)
		{
			if(g_objPreTopmenu != objThis)
				fnTopmenu_event_process(g_objPreTopmenu, !blsEnable);

			strClassName0	= strClassName0.search(/disable/i) >= 0 ? strClassName0.replace(/disable/gi, "enable").trim() : strClassName0.trim() + " enable";
			strClassName1	= strClassName1.search(/path/i) >= 0 || strClassName1.search(/over/i) >= 0 ? strClassName1 : strClassName1.trim() + " over";
			strClassName2	= strClassName2.search(/path/i) >= 0 || strClassName2.search(/over/i) >= 0 ? strClassName2 : strClassName2.trim() + " over";
//			strClassName2	= strClassName2.search(/hide/i) >= 0 ? strClassName2.replace(/hide/gi, "block").trim() : strClassName2.trim();

			g_objPreTopmenu	= objThis;
		}
		else
		{
			strClassName0	= strClassName0.search(/enable/i) >= 0 ? strClassName0.replace(/enable/gi, "disable").trim() : strClassName0.trim() + " disable";
			strClassName1	= strClassName1.search(/path/i) >= 0 || strClassName1.search(/over/i) >= 0 ? strClassName1.replace(/over/gi, "").trim() : strClassName1.trim() + " over";
			strClassName2	= strClassName2.search(/path/i) >= 0 || strClassName2.search(/over/i) >= 0 ? strClassName2.replace(/over/gi, "").trim() : strClassName2.trim() + " over";
//			strClassName2	= strClassName2.search(/block/i) >= 0 ? strClassName2.replace(/block/gi, "hide").trim() : strClassName2 + " hide".trim();
		}

		g_objTopMenuArea.className	= strClassName0;
		objThis.className			= strClassName1;
		objChildNode.className		= strClassName2;
	}
}

var g_blsTopmenu_event_process_timereset		= false;
var g_objTopmenu_event_process_timeout_timer	= null;
function fnTopmenu_event_process_timereset(Event)
{
	g_blsTopmenu_event_process_timereset	= false;

	if(g_objTopmenu_event_process_timeout_timer)
	{
		clearTimeout(g_objTopmenu_event_process_timeout_timer);
		g_objTopmenu_event_process_timeout_timer	= null;
	}
}

function fnTopmenu_event_process_timeout(Event)
{
	g_blsTopmenu_event_process_timereset		= true;
	g_objTopmenu_event_process_timeout_timer	= setTimeout(fnTopmenu_event_process_timeout_process, 500);
	//fnTopmenu_event_process_timeout_process();
}

function fnTopmenu_event_process_timeout_process()
{
	if(!g_blsTopmenu_event_process_timereset || !g_objPreTopmenu)
		return;

	fnTopmenu_event_process(g_objPreTopmenu, false);
	g_objPreTopmenu	= null;

	g_blsTopmenu_event_process_timereset		= false;
}
//********************************************************************************************************************************************
//********************************************************************************************************************************************



//********************************************************************************************************************************************
//	메뉴 처리
//********************************************************************************************************************************************
// 좌측 메뉴 이벤트 처리
function fnSubmenuProcess(strPrintArea)
{
	var objMenuArea	= xGetElementById(strPrintArea);
	if(objMenuArea)
	{
		var arrLink		= xGetElementsByTagName("a", objMenuArea);
		var arrSubMenuLink	= new Array;

		if(arrLink.length > 0)
		{
			for(var i=0; i<arrLink.length; i++)
			{
				var strId		= arrLink[i].id ? arrLink[i].id : "";
				if(strId.search(/submenu\_code/gi) >= 0)
				{
					arrSubMenuLink[arrSubMenuLink.length]	= arrLink[i];
				}
			}
		}

		if(arrSubMenuLink.length > 0)
		{
			for(var i=0; i<arrSubMenuLink.length; i++)
			{
				var objParentNode		= fnSearchParentNode(arrSubMenuLink[i], "li", "list_child_depth2");
				var objParentNode2		= fnSearchParentNode(arrSubMenuLink[i], "div", "pathname_depth2");
				var blsParentNodeSet	= xGetAttribute(objParentNode, "setsubmenu");
				if(objParentNode && objParentNode2 && !blsParentNodeSet)
				{
					xSetAttribute(objParentNode, "setsubmenu", true);
					xAddEventListener(arrSubMenuLink[i], "click", fnSubmenu_event_click);

					var objChildNode	= fnSearchChildtNode(objParentNode, "div", "child_list_box_depth2");
					if(objChildNode)
					{
						if(objParentNode2)
						{
							var strClassname	= objParentNode2.className ? objParentNode2.className : "";
							strClassname			= strClassname.search(/have\_childnode/i) < 0 ? strClassname.trim() + " have_childnode" : strClassname;
							objParentNode2.className	 = strClassname;
						}
						
						arrSubMenuLink[i].onclick	= null;
						//xAddEventListener(arrSubMenuLink[i], "click", fnSubmenu_event_click);

						xSetAttribute(arrSubMenuLink[i], "href", "#_opensublist");
						xSetAttribute(arrSubMenuLink[i], "title", "선택/클릭-하위메뉴를 보실수 있습니다");

						var strClassname	= objChildNode.className ? objChildNode.className : "";
						strClassname			= strClassname.search(/hide/i) < 0 ? strClassname.trim() + " hide" : strClassname;
						objChildNode.className	 = strClassname;
					}
				}
			}
		}
	}
}

var g_objPreSubmenu	= null;
function fnSubmenu_event_click(Event)
{
	var objEvent	= new xEvent(Event);
	if(objEvent)
	{
		var objTarget			= objEvent.target;
		var strTagName		= objTarget.tagName ? objTarget.tagName.toLowerCase() : "";
		if(strTagName != "a")
		{
			objTarget		= fnSearchParentNode(objTarget, "a");
		}

		fnSubmenu_event_process(objTarget, true);
	}
}

function fnSubmenu_event_process(objThis, blsEnable)
{
	blsEnable	= blsEnable ? true : false;
	if(!objThis)
		return;

	if(blsEnable && g_objPreSubmenu == objThis)
	{
		blsEnable	= !blsEnable;
	}

	var objParentNode	= fnSearchParentNode(objThis, "li", "list_child_depth2");
	var objChildNode	= fnSearchChildtNode(objParentNode, "div", "child_list_box_depth2");

	if(objChildNode)
	{
		var strClassName1	= objThis.className ? objThis.className : "";
		var strClassName2	= objChildNode.className ? objChildNode.className : "";

		if(blsEnable)
		{
			strClassName1	= strClassName1.search(/path/i) >= 0 || strClassName1.search(/over/i) >= 0 ? strClassName1 : strClassName1.trim() + " over";
			strClassName2	= strClassName2.search(/hide/i) >= 0 ? strClassName2.replace(/hide/gi, "block").trim() : strClassName2.trim();

			g_objPreSubmenu	= objThis;
		}
		else
		{
			strClassName1	= strClassName1.search(/path/i) >= 0 || strClassName1.search(/over/i) >= 0 ? strClassName1.replace(/over/gi, "").trim() : strClassName1.trim() + " over";
			strClassName2	= strClassName2.search(/block/i) >= 0 ? strClassName2.replace(/block/gi, "hide").trim() : strClassName2 + " hide".trim();

			g_objPreSubmenu	= g_objPreSubmenu == objThis ? null : g_objPreSubmenu;
		}

		objThis.className			= strClassName1;
		objChildNode.className	= strClassName2;
	}
}




// 폼안의 드롭다운 박스에서 사이트 선택 후 해당 사이트 열기 처리
function fnFormLinkSite(objForm)
{
	if(!objForm)
		return false;

	var arrSite	= xGetElementsByTagName("select", objForm);

	if(arrSite.length > 0)
	{
		var objSite	= null;
		for(var i=0; i<arrSite.length; i++)
		{
			var strName	= arrSite[i].name ? arrSite[i].name : "";
			if(strName.toLowerCase() == "site")
			{
				objSite	= arrSite[i];
				break;
			}
		}

		if(objSite)
		{
			var strValue	= objSite.options[objSite.options.selectedIndex].value;
			if(strValue != "")
			{
				window.open(strValue);
			}
		}
	}
	return false;
}


// 페이지 만족도 조사 처리
function page_vote_form_check(objForm)
{
	var blsRet	= false;

	if(!blsRet) blsRet = fnCheckForm(objForm, "point", "평점", "", 0, 0, true);

	return !blsRet;
}




// 메인 - 이미지 정보 목록 처리
var g_arrMain_maininfo		= new Array;
var g_arrMain_maininfo_area	= null;
var g_blsMain_maininfo_stop	= false;
var g_dwMain_maininfo_index	= null;
var g_dwMain_maininfo_time	= null;
var g_dwMain_maininfo_timer	= null;
var g_dwMain_maininfo_dumy	= null;
function fnMain_maininfo(dwTime, objArea, objNav)
{
	g_dwMain_maininfo_time	 = dwTime;

	objArea	= xGetElementById(objArea);
	objNav	= xGetElementById(objNav);

	if(objArea && objNav)
	{
		objDumy	= xGetElementById(objArea.id +"_dumy");

		g_dwMain_maininfo_dumy	= objDumy;

		if(g_dwMain_maininfo_dumy)
		{
/*
			g_dwMain_maininfo_dumy.style.filter		= "alpha(opacity=0)";
			g_dwMain_maininfo_dumy.style.MozOpacity	= 0;
			g_dwMain_maininfo_dumy.style.opacity	= 0;
*/

			try
			{
				g_dwMain_maininfo_dumy.style.opacity	= 0;

			}
			catch(e)
			{
				try
				{
					g_dwMain_maininfo_dumy.style.MozOpacity	= 0;
				}
				catch(e)
				{
					try
					{
						g_dwMain_maininfo_dumy.filters.alpha.opacity	= 0;
					}
					catch(e)
					{
						try
						{
							g_arrMain_maininfo_area.filters[0].Opacity	= 0;						
						}
						catch(e)
						{
							try
							{
								g_dwMain_maininfo_dumy.style.filter		= "alpha(opacity=0)";
							}
							catch(e)
							{
							}
						}
					}
				}
			}
		}


		g_arrMain_maininfo_area	= objArea;


		var arrList		= g_arrMain_maininfo;
		var dwLength	= arrList.length;

		if(dwLength <= 1)
		{
			return;
		}
		else if(dwLength > 1)
		{
			g_dwMain_maininfo_index		= -1;
			g_blsMain_maininfo_stop		= false;
		}

		var strNavi		= fnNavigationSource("all");
		strNavi			= strNavi.replace(/\{event\_pre\}/gi, "onclick=\"fnMain_maininfo_nav_event(this, 'pre'); return false;\"");
		strNavi			= strNavi.replace(/\{event\_start\}/gi, "onclick=\"fnMain_maininfo_nav_event(this, 'start', true); return false;\"");
		strNavi			= strNavi.replace(/\{event\_stop\}/gi, "onclick=\"fnMain_maininfo_nav_event(this, 'stop'); return false;\"");
		strNavi			= strNavi.replace(/\{event\_next\}/gi, "onclick=\"fnMain_maininfo_nav_event(this, 'next'); return false;\"");

		replaceHtml(objNav, strNavi);

		fnMain_maininfo_process();
	}
}

function fnMain_maininfo_nav_move(dwIndex, blsStop)
{
	if(dwIndex != null)
	{
		dwIndex		-= g_dwMain_maininfo_index;
		fnMain_maininfo_process(dwIndex);
	}

	var strEvent	= blsStop ? "stop" : "start";
	fnMain_maininfo_nav_event(null, strEvent);
}

function fnMain_maininfo_nav_event(objThis, strEvent, blsNotCallProcess)
{
	blsNotCallProcess	= blsNotCallProcess ? true : false;

	if(objThis)
	{
		objParentNode	= objThis.parentNode;
		var arrLink		= xGetElementsByTagName("a", objParentNode);
	}
	else
	{
		var arrLink			= new Array;
	}

	strEvent	 = strEvent ? strEvent.toLowerCase() : "start";

	if(strEvent == "start")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i] != "")
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_maininfo_stop	 = false;

		if(blsNotCallProcess)
			fnMain_maininfo_process();
	}
	else if(strEvent == "stop")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i])
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_maininfo_stop	 = true;
	}
	else if(strEvent == "pre")
	{
		fnMain_maininfo_process(-1);
	}
	else if(strEvent == "next")
	{
		fnMain_maininfo_process(1);
	}
}

function fnMain_maininfo_process(dwMoveStep)
{
	if(!g_arrMain_maininfo_area)
		return;

	g_dwMain_maininfo_index	= g_dwMain_maininfo_index == null ? -1 : g_dwMain_maininfo_index;

	dwMoveStep	= typeof(dwMoveStep) == "number" ? dwMoveStep : 0;
	g_dwMain_maininfo_index += dwMoveStep;

	var strClassName	= "";
	var blsShow	= false;

	if(g_blsMain_maininfo_stop && dwMoveStep == 0)
		return;
	else if(dwMoveStep == 0)
		g_dwMain_maininfo_index++;

	var dwLength			= g_arrMain_maininfo.length;
	g_dwMain_maininfo_index	= g_dwMain_maininfo_index >= dwLength ? 0 : g_dwMain_maininfo_index;
	g_dwMain_maininfo_index	= g_dwMain_maininfo_index < 0 ? dwLength + g_dwMain_maininfo_index : g_dwMain_maininfo_index;

	if(g_arrMain_maininfo[g_dwMain_maininfo_index])
	{
		if(g_arrMain_maininfo[g_dwMain_maininfo_index] != "")
		{
//			g_arrMain_maininfo_area.src	= g_arrMain_maininfo[g_dwMain_maininfo_index];
/*
			try
			{
				g_arrMain_maininfo_area.filters[0].Enabled	= true;
				g_arrMain_maininfo_area.filters[0].blendTrans.duration	= 1;

				g_arrMain_maininfo_area.filters.blendTrans.apply();
				g_arrMain_maininfo_area.src		= g_arrMain_maininfo[g_dwMain_maininfo_index];
				g_arrMain_maininfo_area.filters.blendTrans.duration=0.5;
				g_arrMain_maininfo_area.filters.blendTrans.play();
			}
			catch(e)
			{
				g_arrMain_maininfo_area.src	= g_arrMain_maininfo[g_dwMain_maininfo_index];
			}
*/
			var objNewImg	= new Image;
			objNewImg.src	= g_arrMain_maininfo[g_dwMain_maininfo_index];
			
			var dwWidth		= objNewImg.width ? objNewImg.width : g_arrMain_maininfo_area.width;
			var dwHeight	= objNewImg.height ? objNewImg.height : g_arrMain_maininfo_area.height;

			xWidth(g_dwMain_maininfo_dumy, dwWidth);
			xHeight(g_dwMain_maininfo_dumy, dwHeight);

			g_dwMain_maininfo_dumy.style.backgroundImage	= "url(\""+ g_arrMain_maininfo[g_dwMain_maininfo_index] +"\")";
			fnMain_maininfo_process_timer();
		}
	}


//	clearTimeout(g_dwMain_maininfo_timer);
//	g_dwMain_maininfo_timer	= setTimeout(function(){ fnMain_maininfo_process(); }, g_dwMain_maininfo_time);
}


var fnMain_maininfo_process_check		= 0;
var fnMain_maininfo_process_timer_timer	= null;
function fnMain_maininfo_process_timer()
{
	if(fnMain_maininfo_process_check == 0)
	{
		g_dwMain_maininfo_dumy.style.display	= 'block';
	}

	if(fnMain_maininfo_process_check < 100)
		fnMain_maininfo_process_check	+= 10;

	if(g_dwMain_maininfo_dumy)
	{
		if(g_dwMain_maininfo_dumy.style.opacity)
		{
			g_dwMain_maininfo_dumy.style.opacity		= fnMain_maininfo_process_check/100;
		}
		else if(g_dwMain_maininfo_dumy.style.MozOpacity)
		{
			g_dwMain_maininfo_dumy.style.MozOpacity		= fnMain_maininfo_process_check/100;
		}
//		else if(g_dwMain_maininfo_dumy.filters)
		else
		{
			try
			{
				g_dwMain_maininfo_dumy.filters.alpha.opacity	= fnMain_maininfo_process_check;
			}
			catch(e1)
			{
				try
				{
					g_arrMain_maininfo_area.filters[0].Opacity	= fnMain_maininfo_process_check;
				}
				catch(e2)
				{
					try
					{
						g_dwMain_maininfo_dumy.style.filter	= "alpha(opacity="+ fnMain_maininfo_process_check +")";
					}
					catch(e3)
					{
						fnMain_maininfo_process_check	= 100;
					}
				}
			}
/*
			if(g_dwMain_maininfo_dumy.filters.length > 0)
				g_dwMain_maininfo_dumy.filters.alpha.opacity	= fnMain_maininfo_process_check;
			else
				g_dwMain_maininfo_dumy.style.filter	= "alpha(opacity="+ fnMain_maininfo_process_check +")";
*/
		}
	}
	else
	{
		fnMain_maininfo_process_check	= 100;
	}

	if(fnMain_maininfo_process_check < 100)
	{
		clearTimeout(fnMain_maininfo_process_timer_timer);
		fnMain_maininfo_process_timer_timer	= setTimeout(function(){ fnMain_maininfo_process_timer(); }, 50);
	}
	else if(fnMain_maininfo_process_check >= 100)
	{
//		g_arrMain_maininfo_area.src		= g_dwMain_maininfo_dumy.style.backgroundImage;
		g_arrMain_maininfo_area.src		= g_arrMain_maininfo[g_dwMain_maininfo_index];
		g_dwMain_maininfo_dumy.style.display	= 'none';

		fnMain_maininfo_process_check	= 0;

		clearTimeout(g_dwMain_maininfo_timer);
		g_dwMain_maininfo_timer	= setTimeout(function(){ fnMain_maininfo_process(); }, g_dwMain_maininfo_time);
		return;
	}
}











// 메인 - 팝업존 목록처리
var g_arrMain_popupzone	= new Array;
var g_arrMain_popupzone_tab		= new Array;
var g_blsMain_popupzone_stop	= false;
var g_dwMain_popupzone_index	= null;
var g_dwMain_popupzone_time	= null;
var g_dwMain_popupzone_timer	= null;
function fnMain_popupzone(dwTime, objArea, objNav)
{
	g_dwMain_popupzone_time	 = dwTime;

	objArea	= xGetElementById(objArea);
	objNav	= xGetElementById(objNav);
	if(objArea && objNav)
	{
		var arrTabList			= xGetElementsByTagName("dt", objArea);
		var dwTabLength	= arrTabList.length;
		if(dwTabLength <= 1)
		{
			return;
		}
		else if(dwTabLength > 1)
		{
			for(var i=0; i<dwTabLength; i++)
			{
				var strBuf		= xGetClassName(arrTabList[i]);
				strBuf			= strBuf + " list_title"+ (i + 1);
				xSetClassName(arrTabList[i], strBuf);
				strBuf			= arrTabList[i].innerHTML;
				strBuf			= "<a href=\"#\" onclick=\"fnMain_popupzone_nav_move("+ i +", true); return false;\" onmouseover=\"fnMain_popupzone_nav_move("+ i +", true);\" onfocus=\"fnMain_popupzone_nav_move("+ i +", true);\" onmouseout=\"fnMain_popupzone_nav_move(null, false);\">"+ strBuf +"</a>";
				replaceHtml(arrTabList[i], strBuf);

				var arrLink		= xGetElementsByTagName("a", arrTabList[i]);
				if(arrLink.length >= 1)
					g_arrMain_popupzone_tab[i]	= arrLink[0];
			}
		}


		var arrList		= xGetElementsByTagName("dd", objArea);
		var dwLength	= arrList.length;

		if(dwLength <= 1)
		{
			return;
		}
		else if(dwLength > 1)
		{
			g_arrMain_popupzone				= arrList;
			g_dwMain_popupzone_index	= -1;
			g_blsMain_popupzone_stop		= false;
		}

		var strNavi		= fnNavigationSource("all");
		strNavi		= strNavi.replace(/\{event\_pre\}/gi, "onclick=\"fnMain_popupzone_nav_event(this, 'pre'); return false;\"");
		strNavi		= strNavi.replace(/\{event\_start\}/gi, "onclick=\"fnMain_popupzone_nav_event(this, 'start'); return false;\"");
		strNavi		= strNavi.replace(/\{event\_stop\}/gi, "onclick=\"fnMain_popupzone_nav_event(this, 'stop'); return false;\"");
		strNavi		= strNavi.replace(/\{event\_next\}/gi, "onclick=\"fnMain_popupzone_nav_event(this, 'next'); return false;\"");

		replaceHtml(objNav, strNavi);

		fnMain_popupzone_process();
	}
}

function fnMain_popupzone_nav_move(dwIndex, blsStop)
{
	if(dwIndex != null)
	{
		dwIndex		-= g_dwMain_popupzone_index;
		fnMain_popupzone_process(dwIndex);
	}

	var strEvent	= blsStop ? "stop" : "start";
	fnMain_popupzone_nav_event(null, strEvent);
}

function fnMain_popupzone_nav_event(objThis, strEvent, blsNotCallProcess)
{
	blsNotCallProcess	 = blsNotCallProcess ? true : false;

	if(objThis)
	{
		objParentNode	= objThis.parentNode;
		var arrLink			= xGetElementsByTagName("a", objParentNode);
	}
	else
	{
		var arrLink			= new Array;
	}

	strEvent	 = strEvent ? strEvent.toLowerCase() : "start";

	if(strEvent == "start")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i])
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_popupzone_stop	 = false;

		if(blsNotCallProcess)
			fnMain_popupzone_process();
	}
	else if(strEvent == "stop")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i])
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_popupzone_stop	 = true;
	}
	else if(strEvent == "pre")
	{
		fnMain_popupzone_process(-1);
	}
	else if(strEvent == "next")
	{
		fnMain_popupzone_process(1);
	}
}

function fnMain_popupzone_process(dwMoveStep)
{
	g_dwMain_popupzone_index	= g_dwMain_popupzone_index == null ? -1 : g_dwMain_popupzone_index;

	dwMoveStep	= typeof(dwMoveStep) == "number" ? dwMoveStep : 0;
	g_dwMain_popupzone_index += dwMoveStep;

	var strClassName	= "";
	var blsShow	= false;

	if(g_blsMain_popupzone_stop && dwMoveStep == 0)
		return;
	else if(dwMoveStep == 0)
		g_dwMain_popupzone_index++;


	var dwLength	= g_arrMain_popupzone.length;
	g_dwMain_popupzone_index	= g_dwMain_popupzone_index >= dwLength ? 0 : g_dwMain_popupzone_index;
	g_dwMain_popupzone_index	= g_dwMain_popupzone_index < 0 ? dwLength + g_dwMain_popupzone_index : g_dwMain_popupzone_index;

	for(var i=0; i<dwLength; i++)
	{
		blsShow	= false;
		strClassName	 = g_arrMain_popupzone[i].className ? g_arrMain_popupzone[i].className : ""

		if(i == g_dwMain_popupzone_index)
			blsShow	= true;
		else
			blsShow	= false;

		if(blsShow)
			strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");
		else
			strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
		
		g_arrMain_popupzone[i].className	= strClassName;


		strClassName	 = g_arrMain_popupzone_tab[i].className ? g_arrMain_popupzone_tab[i].className : ""
		if(blsShow)
			strClassName	 = strClassName.search(/over/i) >= 0 ? strClassName : strClassName + " over";
		else
			strClassName	 = strClassName.search(/over/i) >= 0 ? strClassName.replace(/over/gi, "") : strClassName;

		g_arrMain_popupzone_tab[i].className	= strClassName.trim();
	}

	clearTimeout(g_dwMain_popupzone_timer);
	g_dwMain_popupzone_timer	= setTimeout(function(){ fnMain_popupzone_process(); }, g_dwMain_popupzone_time);
}













// 메인 - 월간행사 목록처리
var g_arrMain_calendar	= new Array;
var g_blsMain_calendar_stop	= false;
var g_dwMain_calendar_index	= null;
var g_dwMain_calendar_time	= null;
var g_dwMain_calendar_timer	= null;
function fnMain_calendar(dwTime, objArea, objNav)
{
	g_dwMain_calendar_time	 = dwTime;

	objArea	= xGetElementById(objArea);
	objNav	= xGetElementById(objNav);
	if(objArea && objNav)
	{
		var arrList		= xGetElementsByTagName("ul", objArea);
		var dwLength	= arrList.length;

		if(dwLength <= 1)
		{
			return;
		}
		else if(dwLength > 1)
		{
			g_arrMain_calendar	 = arrList;
			g_dwMain_calendar_index	= -1;
			g_blsMain_calendar_stop		= false;
		}

		var strNavi		= fnNavigationSource("all");
		strNavi		= strNavi.replace(/\{event\_pre\}/gi, "onclick=\"fnMain_calendar_nav_event(this, 'pre'); return false;\"");
		strNavi		= strNavi.replace(/\{event\_start\}/gi, "onclick=\"fnMain_calendar_nav_event(this, 'start'); return false;\"");
		strNavi		= strNavi.replace(/\{event\_stop\}/gi, "onclick=\"fnMain_calendar_nav_event(this, 'stop'); return false;\"");
		strNavi		= strNavi.replace(/\{event\_next\}/gi, "onclick=\"fnMain_calendar_nav_event(this, 'next'); return false;\"");

		replaceHtml(objNav, strNavi);

		fnMain_calendar_process();
	}
}

function fnMain_calendar_nav_event(objThis, strEvent)
{
	objParentNode	= objThis.parentNode;
	var arrLink			= xGetElementsByTagName("a", objParentNode);

	strEvent	 = strEvent ? strEvent.toLowerCase() : "start";

	if(strEvent == "start")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i])
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_calendar_stop	 = false;
		fnMain_calendar_process();
	}
	else if(strEvent == "stop")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i])
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_calendar_stop	 = true;
	}
	else if(strEvent == "pre")
	{
		fnMain_calendar_process(-1);
	}
	else if(strEvent == "next")
	{
		fnMain_calendar_process(1);
	}
}

function fnMain_calendar_process(dwMoveStep)
{
	g_dwMain_calendar_index	= g_dwMain_calendar_index == null ? -1 : g_dwMain_calendar_index;

	dwMoveStep	= typeof(dwMoveStep) == "number" ? dwMoveStep : 0;
	g_dwMain_calendar_index += dwMoveStep;

	var strClassName	= "";
	var blsShow	= false;

	if(g_blsMain_calendar_stop && dwMoveStep == 0)
		return;
	else if(dwMoveStep == 0)
		g_dwMain_calendar_index++;

	var dwLength	= g_arrMain_calendar.length;
	g_dwMain_calendar_index	= g_dwMain_calendar_index >= dwLength ? 0 : g_dwMain_calendar_index;
	g_dwMain_calendar_index	= g_dwMain_calendar_index < 0 ? dwLength + g_dwMain_calendar_index : g_dwMain_calendar_index;

	for(var i=0; i<dwLength; i++)
	{
		blsShow	= false;
		strClassName	 = g_arrMain_calendar[i].className ? g_arrMain_calendar[i].className : ""

		if(i == g_dwMain_calendar_index)
			blsShow	= true;
		else
			blsShow	= false;

		if(blsShow)
			strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");
		else
			strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
		
		g_arrMain_calendar[i].className	= strClassName;
	}

	clearTimeout(g_dwMain_calendar_timer);
	g_dwMain_calendar_timer	= setTimeout(function(){ fnMain_calendar_process(); }, g_dwMain_calendar_time);
}



// 메인 - 게시판 처리
var g_arrMain_board_link			= new Array;
var g_arrMain_board_content	= new Array;
function fnMain_board(objBoard)
{
	objBoard	= xGetElementById(objBoard);
	if(objBoard)
	{
		var arrTitle			= xGetElementsByTagName("dt", objBoard);
		var arrContent		= xGetElementsByTagName("dd", objBoard);

		if(arrTitle.length == arrContent.length)
		{
			for(var i=0; i<arrContent.length; i++)
			{
				var strClassName	= arrContent[i].className ? arrContent[i].className : "";
				strClassName		= strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				arrContent[i].className	= strClassName;
				g_arrMain_board_content[i]	= arrContent[i];
			}

			for(var i=0; i<arrTitle.length; i++)
			{
				var arrLink	= xGetElementsByTagName("a", arrTitle[i]);
				for(var j=0; j<arrLink.length; j++)
				{
					xAddEventListener(arrLink[j], "focus", fnMain_board_event, false);
					xAddEventListener(arrLink[j], "mouseover", fnMain_board_event, false);
					g_arrMain_board_link[i]	= arrLink[j];
				}
			}
		}

		var arrImage	= xGetElementsByTagName("img", objBoard);
		if(arrImage.length > 0)
		{
			var dwMaxWidth		= 140;
			var dwMaxHeight	= 105;

			for(var i=0; i<arrImage.length; i++)
			{
				fnImageAutoResize(arrImage[i], dwMaxWidth, dwMaxHeight);
			}
		}
	}

	fnMain_board_event_process(0);
}

var g_dwMain_board_event_preobject	= null;
function fnMain_board_event(Event)
{
	var objEvent	= new xEvent(Event);
	var objTarget	= objEvent.target;

	while(1==1)
	{
		var strTagName	= objTarget.tagName ? objTarget.tagName.toLowerCase() : "";
		if(strTagName == "a")
			break;
		else
			objTarget	= objTarget.parentNode;
	}

	if(objTarget)
	{
		for(var i=0; i<g_arrMain_board_link.length; i++)
		{
			if(g_arrMain_board_link[i] == objTarget)
			{
				fnMain_board_event_process(i);
				break;
			}
		}
	}
}

function fnMain_board_event_process(dwIndex)
{
	var objTarget	= g_arrMain_board_link[dwIndex];

	if(dwIndex == g_dwMain_board_event_preobject)
	{
		return;
	}
	
	var strClassName	= "";
	var objContent		= null;
	var objBuf				= null;

	objBuf	= g_arrMain_board_link[g_dwMain_board_event_preobject];
	if(objBuf)
	{
		strClassName	= objBuf.className ? objBuf.className : "";
		strClassName		= strClassName.replace(/over/gi, "").trim();
		objBuf.className	= strClassName;
		objContent		= g_arrMain_board_content[g_dwMain_board_event_preobject];
		if(objContent)
		{
			var strClassName	= objContent.className ? objContent.className : "";
			strClassName		= strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
			objContent.className	= strClassName;
		}
	}

	objBuf	= objTarget;
	if(objBuf)
	{
		strClassName			= objBuf.className ? objBuf.className : "";
		strClassName			= strClassName.search(/over/i) >= 0 ? strClassName : strClassName + " over";
		objBuf.className	= strClassName;
		objContent		= g_arrMain_board_content[dwIndex];
		if(objContent)
		{
			strClassName		= objContent.className ? objContent.className : "";
			strClassName		= strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");
			objContent.className	= strClassName;

		}

		g_dwMain_board_event_preobject	 = dwIndex;
	}
}



// 메인 - 리스트 목록처리
var g_arrMain_List				= new Array;
var g_blsMain_List_showcount	= 0;
var g_blsMain_List_stop			= false;
var g_dwMain_List_index			= null;
var g_dwMain_List_time			= null;
var g_dwMain_List_timer			= null;
function fnMain_List(dwTime, objArea, objNav, strTagName, dwShowCount, strPrintNavi)
{
	g_dwMain_List_time			= dwTime;
	g_blsMain_List_showcount	= dwShowCount;

	objArea	= xGetElementById(objArea);
	objNav	= xGetElementById(objNav);
	if(objArea && objNav)
	{
		var arrList		= xGetElementsByTagName(strTagName, objArea);
		var dwLength	= arrList.length;

		if(dwLength <= g_blsMain_List_showcount)
		{
			return;
		}
		else if(dwLength > g_blsMain_List_showcount)
		{
			g_arrMain_List			= arrList;
			g_dwMain_List_index		= -1;
			g_blsMain_List_stop		= false;
		}

		var strNavi		= fnNavigationSource(strPrintNavi);
		strNavi			= strNavi.replace(/\{event\_pre\}/gi, "onclick=\"fnMain_List_nav_event(this, 'pre'); return false;\"");
		strNavi			= strNavi.replace(/\{event\_start\}/gi, "onclick=\"fnMain_List_nav_event(this, 'start'); return false;\"");
		strNavi			= strNavi.replace(/\{event\_stop\}/gi, "onclick=\"fnMain_List_nav_event(this, 'stop'); return false;\"");
		strNavi			= strNavi.replace(/\{event\_next\}/gi, "onclick=\"fnMain_List_nav_event(this, 'next'); return false;\"");

		replaceHtml(objNav, strNavi);

		fnMain_List_process();
	}
}

function fnMain_List_nav_event(objThis, strEvent)
{
	objParentNode	= objThis.parentNode;
	var arrLink			= xGetElementsByTagName("a", objParentNode);

	strEvent	 = strEvent ? strEvent.toLowerCase() : "start";

	if(strEvent == "start")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i])
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_List_stop	 = false;
		fnMain_List_process();
	}
	else if(strEvent == "stop")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i])
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_List_stop	 = true;
	}
	else if(strEvent == "pre")
	{
		fnMain_List_process(-1);
	}
	else if(strEvent == "next")
	{
		fnMain_List_process(1);
	}
}

function fnMain_List_process(dwMoveStep)
{
	g_dwMain_List_index	= g_dwMain_List_index == null ? -1 : g_dwMain_List_index;

	dwMoveStep	= typeof(dwMoveStep) == "number" ? dwMoveStep : 0;
	g_dwMain_List_index += dwMoveStep;

	var strClassName	= "";
	var blsShow	= false;

	if(g_blsMain_List_stop && dwMoveStep == 0)
		return;
	else if(dwMoveStep == 0)
		g_dwMain_List_index++;

	var dwLength		= g_arrMain_List.length;
//	g_dwMain_List_index	= g_dwMain_List_index >= dwLength ? 0 : g_dwMain_List_index;
//	g_dwMain_List_index	= g_dwMain_List_index < 0 ? dwLength + g_dwMain_List_index : g_dwMain_List_index;

	g_dwMain_List_index	= g_dwMain_List_index >= dwLength ? (dwLength - g_blsMain_List_showcount) : g_dwMain_List_index;
	g_dwMain_List_index	= g_dwMain_List_index < 0 ? 0 : g_dwMain_List_index;

	g_dwMain_List_index	= g_dwMain_List_index >= (dwLength - g_blsMain_List_showcount) ? (dwLength - g_blsMain_List_showcount) : g_dwMain_List_index;


	var dwInedxStart	= g_dwMain_List_index;
	var dwInedxEnd		= g_dwMain_List_index + g_blsMain_List_showcount - 1;


	var dwCheckCount	= 0;
	for(var i=0; i<dwLength; i++)
	{
		blsShow	= false;
		strClassName	 = g_arrMain_List[i].className ? g_arrMain_List[i].className : ""

		//if(i == g_dwMain_List_index)
		if(i >= dwInedxStart && i <= dwInedxEnd)
			blsShow	= true;
		else
			blsShow	= false;

		if(blsShow)
			strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");
		else
			strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
		
		g_arrMain_List[i].className	= strClassName;
	}

	if(g_dwMain_List_time > 0)
	{
		clearTimeout(g_dwMain_List_timer);
		g_dwMain_List_timer	= setTimeout(function(){ fnMain_List_process(); }, g_dwMain_List_time);
	}
}





// 메인 - 축제여행 목록처리
var g_arrMain_Festival				= new Array;
var g_blsMain_Festival_showcount	= 0;
var g_blsMain_Festival_stop			= false;
var g_dwMain_Festival_index			= null;
var g_dwMain_Festival_timer			= null;
var g_blsMain_Festival_initialize	= false;
var g_strMain_Festival_navi			= null;
function fnMain_Festival(dwTime, objArea, objNav, strTagName, dwShowCount, strPrintNavi)
{
	g_dwMain_Festival_time			= dwTime;
	g_blsMain_Festival_showcount	= dwShowCount;
	g_strMain_Festival_navi			= objNav;

	objArea	= xGetElementById(objArea);
	objNav	= xGetElementById(objNav);
	if(objArea && objNav)
	{
		var arrFestival		= xGetElementsByTagName(strTagName, objArea);
		var dwLength		= arrFestival.length;

		if(dwLength <= g_blsMain_Festival_showcount)
		{
			return;
		}
		else if(dwLength > g_blsMain_Festival_showcount)
		{
			g_arrMain_Festival			= arrFestival;
			g_dwMain_Festival_index		= -1;
			g_blsMain_Festival_stop		= false;
		}

		var strNavi		= fnNavigationSource(strPrintNavi);
		strNavi			= strNavi.replace(/\{event\_pre\}/gi, "onclick=\"fnMain_Festival_nav_event(this, 'pre'); return false;\"");
		strNavi			= strNavi.replace(/\{event\_start\}/gi, "onclick=\"fnMain_Festival_nav_event(this, 'start'); return false;\"");
		strNavi			= strNavi.replace(/\{event\_stop\}/gi, "onclick=\"fnMain_Festival_nav_event(this, 'stop'); return false;\"");
		strNavi			= strNavi.replace(/\{event\_next\}/gi, "onclick=\"fnMain_Festival_nav_event(this, 'next'); return false;\"");

		replaceHtml(objNav, strNavi);

		fnMain_Festival_process();
	}
}

function fnMain_Festival_nav_event(objThis, strEvent)
{
	objParentNode	= objThis.parentNode;
	var arrLink		= xGetElementsByTagName("a", objParentNode);

	strEvent	 = strEvent ? strEvent.toLowerCase() : "start";

	if(strEvent == "start")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i])
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_Festival_stop	 = false;
		fnMain_Festival_process();
	}
	else if(strEvent == "stop")
	{
		for(var i=0; i<arrLink.length; i++)
		{
			if(arrLink[i])
			{
				var strClassName	= arrLink[i].className ? arrLink[i].className : "";
				if(strClassName.search(/stop/i) >= 0)
					strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
				else if(strClassName.search(/start/i) >= 0)
					strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");

				arrLink[i].className	= strClassName;
			}
		}

		g_blsMain_Festival_stop	 = true;
	}
	else if(strEvent == "pre")
	{
		fnMain_Festival_process(-1);
	}
	else if(strEvent == "next")
	{
		fnMain_Festival_process(1);
	}
}

function fnMain_Festival_process(dwMoveStep)
{
	if(!g_arrMain_Festival)
		return;

	if(!g_blsMain_Festival_initialize)
	{
		var dwLength		= g_arrMain_Festival.length;
		for(var i=0; i<dwLength; i++)
		{
			strClassName	 = g_arrMain_Festival[i].className ? g_arrMain_Festival[i].className : "";
			if(strClassName.search(/first/i) >= 0)
			{
				g_dwMain_Festival_index		= i - 1;
				g_dwMain_Festival_time		= -1;

				if(g_strMain_Festival_navi)
				{
					var strNavi		= fnNavigationSource("pre next");
					strNavi			= strNavi.replace(/\{event\_pre\}/gi, "onclick=\"fnMain_Festival_nav_event(this, 'pre'); return false;\"");
					strNavi			= strNavi.replace(/\{event\_start\}/gi, "onclick=\"fnMain_Festival_nav_event(this, 'start'); return false;\"");
					strNavi			= strNavi.replace(/\{event\_stop\}/gi, "onclick=\"fnMain_Festival_nav_event(this, 'stop'); return false;\"");
					strNavi			= strNavi.replace(/\{event\_next\}/gi, "onclick=\"fnMain_Festival_nav_event(this, 'next'); return false;\"");

					replaceHtml(g_strMain_Festival_navi, strNavi);
				}

				break;
			}
		}

		g_blsMain_Festival_initialize	= true;
	}


	g_dwMain_Festival_index	= g_dwMain_Festival_index == null ? -1 : g_dwMain_Festival_index;

	dwMoveStep	= typeof(dwMoveStep) == "number" ? dwMoveStep : 0;
	g_dwMain_Festival_index += dwMoveStep;

	var strClassName	= "";
	var blsShow	= false;

	if(g_blsMain_Festival_stop && dwMoveStep == 0)
		return;
	else if(dwMoveStep == 0)
		g_dwMain_Festival_index++;

	var dwLength		= g_arrMain_Festival.length;

	g_dwMain_Festival_index	= g_dwMain_Festival_index >= dwLength ? 0 : g_dwMain_Festival_index;
	g_dwMain_Festival_index	= g_dwMain_Festival_index < 0 ? dwLength + g_dwMain_Festival_index : g_dwMain_Festival_index;

//	g_dwMain_Festival_index	= g_dwMain_Festival_index >= dwLength ? (dwLength - g_blsMain_Festival_showcount) : g_dwMain_Festival_index;
//	g_dwMain_Festival_index	= g_dwMain_Festival_index < 0 ? 0 : g_dwMain_Festival_index;
//
//	g_dwMain_Festival_index	= g_dwMain_Festival_index >= (dwLength - g_blsMain_Festival_showcount) ? (dwLength - g_blsMain_Festival_showcount) : g_dwMain_Festival_index;


	var dwInedxStart	= g_dwMain_Festival_index;
	var dwInedxEnd		= g_dwMain_Festival_index + g_blsMain_Festival_showcount - 1;


	var dwCheckCount	= 0;
	for(var i=0; i<dwLength; i++)
	{
		blsShow	= false;
		strClassName	 = g_arrMain_Festival[i].className ? g_arrMain_Festival[i].className : "";

		if(i == g_dwMain_Festival_index)
			blsShow	= true;
		else
			blsShow	= false;

		if(blsShow)
			strClassName	 = strClassName.search(/hide/i) >= 0 ? strClassName.replace(/hide/gi, "show") : (strClassName.search(/show/i) >= 0 ? strClassName : strClassName + " show");
		else
			strClassName	 = strClassName.search(/show/i) >= 0 ? strClassName.replace(/show/gi, "hide") : (strClassName.search(/hide/i) >= 0 ? strClassName : strClassName + " hide");
		
		g_arrMain_Festival[i].className	= strClassName;
	}

	if(g_dwMain_Festival_time > 0)
	{
		clearTimeout(g_dwMain_Festival_timer);
		g_dwMain_Festival_timer	= setTimeout(function(){ fnMain_Festival_process(); }, g_dwMain_Festival_time);
	}
}




