// 지도 네비게이션 관련

/*
	function getAbsTop(obj) 	{ return (obj.offsetParent==null)? 0 : obj.offsetTop+getAbsTop(obj.offsetParent);}
	function getAbsLeft(obj) 	{ return (obj.offsetParent==null)? 0 : obj.offsetLeft+getAbsLeft(obj.offsetParent);	}
	function getWidth(obj) 		{	return obj.offsetWidth;}
	function getHeight(obj)		{	return obj.offsetHeight; }

// 미사용
	function navigationDiv_XY() {
		if (document.getElementsByName('navigationDiv').length > 0) {
			var topStart, leftStart;
			
			topStart  = getAbsTop(document.getElementById('view_map'))-10;
			leftStart = getAbsLeft(document.getElementById('view_map'))-document.getElementById('navigationDiv').width-10;;
			
			topStart  = getAbsTop(document.getElementById('view_map'))-10;
			leftStart = 130;
			
			if (topStart  < 224) topStart = 224;
			if (leftStart < 130) leftStart= 130;
		
			document.getElementById('navigationDiv').style.top = topStart;
			document.getElementById('navigationDiv').style.left= leftStart;
			
		}
	}	
*/	

//================================================================
//== 함수명	: valAddStr(val, maxValLen, addStr, gubn)
//== 처  리	: 비교값 강제로 만들기
//== 인  자 : val(원래 값) , maxValLen (필요 자릿수), addStr(반복시킬 문자), gubn(A: 뒤, B:앞)
//== 리  턴	: 
//================================================================

	function valAddStr(val, maxValLen, addStr, gubn) {
		var chgCodeName=val;
		var addCnt;
		
		if(val.length < maxValLen) addCnt=maxValLen-val.length;
			
		if(addCnt > 0)  {
			for(var i=1;i <=addCnt; i++) {
				if (gubn=='A') chgCoderName+=addStr;
				else chgCodeName=addStr+chgCodeName;
			}
		}		
		return chgCodeName;		
	}

 	function chkLimit(val) {
		var msg="마지막입니다.";
		var moveChk=true;
		
		var tmp_maps_numb;

		var tmpX1=x1;
		var tmpX2=x2;
		var tmpY1=y1;
		var tmpY2=y2;
		
		var intTmpX1 = tmpX1.charCodeAt(0);
		var intTmpX2 = tmpX2.charCodeAt(0);
	
		var intTmpY1 = Number(tmpY1);
		var intTmpY2 = Number(tmpY2);

		switch(val) {
			case "WN" : 
				if((intTmpX1==intMinX) || (intTmpY1==intMinY)) {alert(msg); moveChk=false;break;}

				tmpX1 = String.fromCharCode(intTmpX1-1);
				tmpX2 = String.fromCharCode(intTmpX2-1);

				tmpY1 = valAddStr(String(intTmpY1-1), 2, "0", "B");
				tmpY2 = valAddStr(String(intTmpY2-1), 2, "0", "B");
				
				tmp_maps_numb = tmpX1+tmpY1+tmpX2+tmpY2;

				break; 

			case "N"  :
				if(intTmpY1==intMinY) {alert(msg); moveChk=false;break;}
				
				tmpY1 = valAddStr(String(intTmpY1-1), 2, "0", "B");
				tmpY2 = valAddStr(String(intTmpY2-1), 2, "0", "B");
				
				tmp_maps_numb = tmpX1+tmpY1+tmpX2+tmpY2;
				
				break; 

			case "NE" :
				if((intTmpY1==intMinY) || (intTmpX2==intMaxX)) {alert(msg); moveChk=false; break; }

				tmpY1 = valAddStr(String(intTmpY1-1), 2, "0", "B");
				tmpY2 = valAddStr(String(intTmpY2-1), 2, "0", "B");

				tmpX1 = String.fromCharCode(intTmpX1+1);
				tmpX2 = String.fromCharCode(intTmpX2+1);

				tmp_maps_numb = tmpX1+tmpY1+tmpX2+tmpY2;

				break; 

			case "E"  : 
				if(intTmpX2==intMaxX) {alert(msg); moveChk=false;break;}
				
				tmpX1 = String.fromCharCode(intTmpX1+1);
				tmpX2 = String.fromCharCode(intTmpX2+1);

				tmp_maps_numb = tmpX1+tmpY1+tmpX2+tmpY2;

				break; 

			case "ES" : 
				if((intTmpX2==intMaxX) || (intTmpY2==intMaxY)) {alert(msg); moveChk=false; break; }
				
				tmpX1 = String.fromCharCode(intTmpX1+1);
				tmpX2 = String.fromCharCode(intTmpX2+1);

				tmpY1 = valAddStr(String(intTmpY1+1), 2, "0", "B");
				tmpY2 = valAddStr(String(intTmpY2+1), 2, "0", "B");

				tmp_maps_numb = tmpX1+tmpY1+tmpX2+tmpY2;

				break; 

			case "S"  : 
				if(intTmpY2==intMaxY) {alert(msg); moveChk=false;break;}
				
				tmpY1 = valAddStr(String(intTmpY1+1), 2, "0", "B");
				tmpY2 = valAddStr(String(intTmpY2+1), 2, "0", "B");
				
				tmp_maps_numb = tmpX1+tmpY1+tmpX2+tmpY2;

				break; 

			case "SW" : 
				if((intTmpY2==intMaxY) || (intTmpX1==intMinX)) {alert(msg); moveChk=false;break;}

				tmpY1 = valAddStr(String(intTmpY1+1), 2, "0", "B");
				tmpY2 = valAddStr(String(intTmpY2+1), 2, "0", "B");

				tmpX1 = String.fromCharCode(intTmpX1-1);
				tmpX2 = String.fromCharCode(intTmpX2-1);

				tmp_maps_numb = tmpX1+tmpY1+tmpX2+tmpY2;

				break; 
				
			case "W"  : 
				if(intTmpX1==intMinX) {alert(msg); moveChk=false;break;}
				
				tmpX1 = String.fromCharCode(intTmpX1-1);
				tmpX2 = String.fromCharCode(intTmpX2-1);

				tmp_maps_numb = tmpX1+tmpY1+tmpX2+tmpY2;

				break; 
		}

		if(moveChk) {
			readyGoGetMap(tmp_maps_numb); 
		}
	}

	function replaceMapXY(str) {
		x1 = str.substr(0,1);
		x2 = str.substr(3,1);
		y1 = str.substr(1,2);
		y2 = str.substr(4,2);
		
		chkMove(x1, x2, y1, y2);
	}

// 네비게이션으로 이동
	function readyGoGetMap(tmpNumb) {
		 getSightsMap(current_rate, tmpNumb);
	}

	function startMapXY() {
		x1 = startX ;
		x2 = endX;
	
		y1 = startY ;
		y2 = endY;

		chkMove(x1, x2, y1, y2);
	}

	var WN_HTML = document.getElementById('WN').innerHTML;
	var N_HTML  = document.getElementById('N').innerHTML;
	var NE_HTML = document.getElementById('NE').innerHTML;
	var E_HTML  = document.getElementById('E').innerHTML;
	var ES_HTML = document.getElementById('ES').innerHTML;
	var S_HTML  = document.getElementById('S').innerHTML;
	var SW_HTML = document.getElementById('SW').innerHTML;
	var W_HTML  = document.getElementById('W').innerHTML;

	function chkNavigateImg(obj, gubn) {
		var thisObj = document.getElementById(obj);
		var str="";
		
		switch(obj) {
			case "WN"	:
				if (gubn) str = WN_HTML;
				else str = "<img src='http://image.lesvacances.co.kr/img/city/nw.gif' name='arr_upleft'>";

				break;
			
			case "N"	:
				if (gubn) str = N_HTML;
				else
					str = "<img src='http://image.lesvacances.co.kr/img/city/n.gif' name='arr_up'>";
					document.getElementById('arr_up_left').src = "http://image.lesvacances.co.kr/img/city/nxnwc.gif";
					document.getElementById('arr_up_right').src = "http://image.lesvacances.co.kr/img/city/nxnec.gif";

				break;

			case "NE"	:
				if (gubn) str = NE_HTML;
				else str = "<img src='http://image.lesvacances.co.kr/img/city/ne.gif' name='arr_upright'>";

				break;

			case "E"	:
				if (gubn) str = E_HTML;
				else str = "<img src='http://image.lesvacances.co.kr/img/city/e.gif' name='arr_right'>";
				document.getElementById('arr_right_top').src = "http://image.lesvacances.co.kr/img/city/exnec.gif";
				document.getElementById('arr_right_bottom').src = "http://image.lesvacances.co.kr/img/city/exsec.gif";

				break;

			case "ES"	:
				if (gubn) str = ES_HTML;
				else str = "<img src='http://image.lesvacances.co.kr/img/city/se.gif' name='arr_downright'>";

				break;

			case "S"	:
				if (gubn) str = S_HTML;
				else str = "<img src='http://image.lesvacances.co.kr/img/city/s.gif' name='arr_down'>";
				document.getElementById('arr_down_left').src = "http://image.lesvacances.co.kr/img/city/sxswc.gif";
				document.getElementById('arr_down_right').src = "http://image.lesvacances.co.kr/img/city/sxsec.gif";

				break;

			case "SW"	:
				if (gubn) str = SW_HTML;
				else str = "<img src='http://image.lesvacances.co.kr/img/city/sw.gif' name='arr_downleft'>";

				break;

			case "W"	:
				if (gubn) str = W_HTML;
				else str = "<img src='http://image.lesvacances.co.kr/img/city/w.gif' name='arr_left'>";
				document.getElementById('arr_left_top').src = "http://image.lesvacances.co.kr/img/city/wxnwc.gif";
				document.getElementById('arr_left_bottom').src = "http://image.lesvacances.co.kr/img/city/wxswc.gif";

				break;
		}
		thisObj.innerHTML = str;
	}

 	function chkMove(thisX1, thisX2, thisY1, thisY2) {
		var tmpX1=thisX1;
		var tmpX2=thisX2;
		var tmpY1=thisY1;
		var tmpY2=thisY2;
		
		var intTmpX1 = tmpX1.charCodeAt(0);
		var intTmpX2 = tmpX2.charCodeAt(0);
	
		var intTmpY1 = Number(tmpY1);
		var intTmpY2 = Number(tmpY2);
		
		var WN_FLAG = true;
		var N_FLAG  = true;
		var NE_FLAG = true;
		var E_FLAG  = true;
		var ES_FLAG = true;
		var S_FLAG  = true;
		var SW_FLAG = true;
		var W_FLAG  = true;
		
		if((intTmpX1==intMinX) || (intTmpY1==intMinY))  WN_FLAG = false;
		if(intTmpY1==intMinY) 													N_FLAG  = false;
		if((intTmpY1==intMinY) || (intTmpX2==intMaxX)) 	NE_FLAG = false;
		if(intTmpX2==intMaxX) 													E_FLAG  = false;
		if((intTmpX2==intMaxX) || (intTmpY2==intMaxY))	ES_FLAG = false;
		if(intTmpY2==intMaxY)														S_FLAG  = false;
		if((intTmpY2==intMaxY) || (intTmpX1==intMinX))	SW_FLAG = false;
		if(intTmpX1==intMinX)														W_FLAG  = false;	

		chkNavigateImg('WN', WN_FLAG);
		chkNavigateImg('N',  N_FLAG);
		chkNavigateImg('NE', NE_FLAG);
		chkNavigateImg('E',  E_FLAG);
		chkNavigateImg('ES', ES_FLAG);
		chkNavigateImg('S' , S_FLAG);
		chkNavigateImg('SW', SW_FLAG);
		chkNavigateImg('W' , W_FLAG);
	}

