PageSourceSearch

https://dawulmap.com/js/navi_shortpath.js

js dawulmap.com collected 2026-10-02 00:29:37 UTC 148,494 bytes, 3,909 lines download raw bytes

1var naviAddTextFormCntSp = 0;
2var naviSearchTypeSp = "";
3var startNameSp = "";
4var startCoordSp = "";
5var endNameSp = "";
6var endCoordSp = "";
7var middleNamesSp = new HashMap();
8var middleCoordsSp = new HashMap();
9
10var carRouteContentSp = new HashMap();
11var naviMiddleMkSp = new Array();
12var naviStartMkSp;
13var naviEndMkSp;
14var naviLayerSp;
15var naviLayersSp = new Array();
16var naviLayersSp2 = new Array();
17var naviInfoMkSp = new Array();
18
19var fullLineDatasSp = new Array();
20
21var navi_searchNameSp = "";
22
23var allDistSp = 0;
24
25var navi_rsize_checkSp = false;
26
27var startCoordSplitSp = null;
28var endCoordSplitSp = null;
29
30var middlePointOrderFlagSp = false;
31
32var lastAngleSp = -1;
33
34/* ------------------------ v4 ---------------------------
351. 도보 출도착,경유 판단을 위한 변수 
36---------------------------------------------------------- */
37var startInputFlagSp = false;
38var endInputFlagSp = false;
39var middleInputFlagSp = false;
40var naviProcessFlagSp = false;
41/* ------------------------------------------------------ */
42
43function spModeChange(_this) {
44	if(!$(_this).attr("class").includes("on")) {
45		$(_this).addClass("on");
46	}else {
47		$(_this).removeClass("on");
48	}
49}
50
51function naviTextFormSp() {
52	var startInfoStr = "", middleInfoStr = "", endInfoStr = "";
53	if(lan=="KOR") { startInfoStr = "출발지를 입력하세요."; middleInfoStr = "경유지를 입력하세요."; endInfoStr = "도착지를 입력하세요."; }
54	else if(lan=="ENG") { startInfoStr = "Input the starting place."; middleInfoStr = "Input the stopover place."; endInfoStr = "Input the destination."; }
55	else if(lan=="JAN") { startInfoStr = "出発地入力"; middleInfoStr = "経由地入力"; endInfoStr = "目的地入力"; }
56	else if(lan=="CHINAG") { startInfoStr = "输入出发地"; middleInfoStr = "输入经由地"; endInfoStr = "输入目的地"; }
57	
58	naviAddTextFormCntSp=0; // 경유지개수 초기화
59	var html = '';
60	html += '<div class="pr d_form">';
61	html += '<form onsubmit="return false">';
62	html += '<fieldset>';
63	html += '<legend>길찾기 검색</legend>';
64	html += '<label for="startInputSp">검색어 입력</label>';
65	html += '<input type="text" value="" id="startInputSp" name="startInputSp" class="naviSearchInputSp" placeholder="'+startInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'startInputSp\');}" autocomplete="on">';
66	html += '</fieldset>';
67	html += '</form>';
68	html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'startInputSp\');"></a></div><!-- 검색 아이콘 -->';
69	html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'startInputSp\');"></a></div><!-- 초기화 아이콘 -->';
70	html += '</div>';
71	
72	html += '<div class="pr d_form">';
73	html += '<form onsubmit="return false">';
74	html += '<fieldset>';
75	html += '<legend>길찾기 검색</legend>';
76	html += '<label for="endInputSp">검색어 입력</label>';
77	html += '<input type="text" value="" id="endInputSp" name="endInputSp" class="naviSearchInputSp" placeholder="'+endInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'endInputSp\');}" autocomplete="on">';
78	html += '</fieldset>';
79	html += '</form>';
80	html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'endInputSp\');"></a></div><!-- 검색 아이콘 -->';
81	html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'endInputSp\');"></a></div><!-- 초기화 아이콘 -->';
82	html += '</div>';
83	
84	html += '<div class="ico_change"><a href="#" onclick="naviSearchChangeSp();"></a></div><!-- 출발지/도착지 전환 아이콘 -->';
85	$("#naviInputFormSp").html(html);
86	
87	$('.naviSearchInputSp').bind("focus",function() {
88		naviSearchBtnOnSp(this);
89	});
90	$('.naviSearchInputSp').bind("blur",function() {
91		naviSearchBtnOffSp(this);
92	});
93	
94	for(var i=0; i<$(".naviSearchInputSp").length; i++) {
95		if($(".naviSearchInputSp").eq(i).val()!="") {
96			textDelOnSp(i);
97		}
98	}
99}
100
101function naviAddTextFormSp() {
102	var startInfoStr = "", middleInfoStr = "", endInfoStr = "";
103	if(lan=="KOR") { startInfoStr = "출발지를 입력하세요."; middleInfoStr = "경유지를 입력하세요."; endInfoStr = "도착지를 입력하세요."; }
104	else if(lan=="ENG") { startInfoStr = "Input the starting place."; middleInfoStr = "Input the stopover place."; endInfoStr = "Input the destination."; }
105	else if(lan=="JAN") { startInfoStr = "出発地入力"; middleInfoStr = "経由地入力"; endInfoStr = "目的地入力"; }
106	else if(lan=="CHINAG") { startInfoStr = "输入出发地"; middleInfoStr = "输入经由地"; endInfoStr = "输入目的地"; }
107	
108	if(naviAddTextFormCntSp < 5) {
109		naviAddTextFormCntSp++;
110		
111		var html = '';
112		html += '<div class="pr d_form">';
113		html += '<form onsubmit="return false">';
114		html += '<fieldset>';
115		html += '<legend>길찾기 검색</legend>';
116		html += '<label for="startInputSp">검색어 입력</label>';
117		html += '<input type="text" value="" id="startInputSp" name="startInputSp" class="naviSearchInputSp" placeholder="'+startInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'startInputSp\');}" autocomplete="on">';
118		html += '</fieldset>';
119		html += '</form>';
120		html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'startInputSp\');"></a></div><!-- 검색 아이콘 -->';
121		html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'startInputSp\');"></a></div><!-- 초기화 아이콘 -->';
122		html += '</div>';
123		
124		for(var i=0; i<naviAddTextFormCntSp; i++) {
125			html += '<div class="pr d_form">';
126			html += '<form onsubmit="return false">';
127			html += '<fieldset>';
128			html += '<legend>길찾기 검색</legend>';
129			html += '<label for="middleInputSp'+i+'">검색어 입력</label>';
130			html += '<input type="text" value= "" id="middleInputSp'+i+'" name="middleInputSp'+i+'" class="naviSearchInputSp" placeholder="'+middleInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'middleInputSp'+i+'\');}" autocomplete="on">';
131			html += '</fieldset>';
132			html += '</form>';
133			html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'middleInputSp'+i+'\');"></a></div><!-- 검색 아이콘 -->';
134			html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'middleInputSp'+i+'\');"></a></div><!-- 초기화 아이콘 -->';
135			html += '<div class="ico_del"><a href="#" onclick="middleRmTextFormSp('+i+');"></a></div><!-- 경유지 삭제 아이콘 -->';
136			html += '</div>';
137		}
138		
139		html += '<div class="pr d_form">';
140		html += '<form onsubmit="return false">';
141		html += '<fieldset>';
142		html += '<legend>길찾기 검색</legend>';
143		html += '<label for="endInputSp">검색어 입력</label>';
144		html += '<input type="text" value="" id="endInputSp" name="endInputSp" class="naviSearchInputSp" placeholder="'+endInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'endInputSp\');}" autocomplete="on">';
145		html += '</fieldset>';
146		html += '</form>';
147		html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'endInputSp\');"></a></div><!-- 검색 아이콘 -->';
148		html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'endInputSp\');"></a></div><!-- 초기화 아이콘 -->';
149		html += '</div>';
150		$("#naviInputFormSp").html(html);
151		
152		$('.naviSearchInputSp').bind("focus",function() {
153			naviSearchBtnOnSp(this);
154		});
155		$('.naviSearchInputSp').bind("blur",function() {
156			naviSearchBtnOffSp(this);
157		});
158		
159		if(startNameSp!="") {
160			$("#startInputSp").val(startNameSp);
161		}
162		if(endNameSp!="") {
163			$("#endInputSp").val(endNameSp);
164		}
165		
166		for(var i=0; i<middleNamesSp.size(); i++) {
167			if(middleNamesSp.keySet()[i].indexOf("Sp") == -1){
168				middleNamesSp.keySet()[i] = middleNamesSp.keySet()[i].replace("middleInput","middleInputSp");
169			}
170			
171			$("#"+middleNamesSp.keySet()[i]).val(middleNamesSp.valSet()[i]);
172		}
173		
174		for(var i=0; i<$(".naviSearchInputSp").length; i++) {
175			if($(".naviSearchInputSp").eq(i).val()!="") {
176				textDelOnSp(i);
177			}
178		}
179		
180		return true;
181	}else {
182		if(lan=="KOR") { alert("경유지는 최대 5개까지 적용됩니다."); }
183		else if(lan=="ENG") { alert("Up to five different waypoints are applicable."); }
184		else if(lan=="JAN") { alert("経由地は最大5個まで適用されます。"); }
185		else if(lan=="CHINAG") { alert("经由地最多可适用5个。"); }
186		if(rightClickPop!=null) {
187			map.removeLayer(rightClickPop);
188		}
189		
190		return false;
191	}
192}
193
194function middleRmTextFormSp(keyId) {
195	//동적 다국어 변경
196	var startInfoStr = "", middleInfoStr = "", endInfoStr = "", subFolder = "";
197	if(lan=="KOR") { startInfoStr = "출발지를 입력하세요."; middleInfoStr = "경유지를 입력하세요."; endInfoStr = "도착지를 입력하세요."; subFolder = "kor"; }
198	else if(lan=="ENG") { startInfoStr = "Input the starting place."; middleInfoStr = "Input the stopover place."; endInfoStr = "Input the destination."; subFolder = "eng"; }
199	else if(lan=="JAN") { startInfoStr = "出発地入力"; middleInfoStr = "経由地入力"; endInfoStr = "目的地入力"; subFolder = "jpn"; }
200	else if(lan=="CHINAG") { startInfoStr = "输入出发地"; middleInfoStr = "输入经由地"; endInfoStr = "输入目的地"; subFolder = "chn";}
201	
202	naviAddTextFormCntSp--;
203	var html = '';
204	html += '<div class="pr d_form">';
205	html += '<form onsubmit="return false">';
206	html += '<fieldset>';
207	html += '<legend>길찾기 검색</legend>';
208	html += '<label for="startInputSp">검색어 입력</label>';
209	html += '<input type="text" id="startInputSp" name="startInputSp" class="naviSearchInputSp" placeholder="'+startInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'startInputSp\');}" autocomplete="on">';
210	html += '</fieldset>';
211	html += '</form>';
212	html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'startInputSp\');"></a></div><!-- 검색 아이콘 -->';
213	html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'startInputSp\');"></a></div><!-- 초기화 아이콘 -->';
214	html += '</div>';
215	
216	for(var i=0; i<naviAddTextFormCntSp; i++) {
217		html += '<div class="pr d_form">';
218		html += '<form onsubmit="return false">';
219		html += '<fieldset>';
220		html += '<legend>길찾기 검색</legend>';
221		html += '<label for="middleInputSp'+i+'">검색어 입력</label>';
222		html += '<input type="text" id="middleInputSp'+i+'" name="middleInputSp'+i+'" class="naviSearchInputSp" placeholder="'+middleInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'middleInputSp'+i+'\');}" autocomplete="on">';
223		html += '</fieldset>';
224		html += '</form>';
225		html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'middleInputSp'+i+'\');"></a></div><!-- 검색 아이콘 -->';
226		html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'middleInputSp'+i+'\');"></a></div><!-- 초기화 아이콘 -->';
227		html += '<div class="ico_del"><a href="#" onclick="middleRmTextFormSp('+i+');"></a></div><!-- 경유지 삭제 아이콘 -->';
228		html += '</div>';
229	}
230	
231	html += '<div class="pr d_form">';
232	html += '<form onsubmit="return false">';
233	html += '<fieldset>';
234	html += '<legend>길찾기 검색</legend>';
235	html += '<label for="endInputSp">검색어 입력</label>';
236	html += '<input type="text" id="endInputSp" name="endInputSp" class="naviSearchInputSp" placeholder="'+endInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'endInputSp\');}" autocomplete="on">';
237	html += '</fieldset>';
238	html += '</form>';
239	html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'endInputSp\');"></a></div><!-- 검색 아이콘 -->';
240	html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'endInputSp\');"></a></div><!-- 초기화 아이콘 -->';
241	html += '</div>';
242	
243	if(naviAddTextFormCntSp==0) {
244		html += '<div class="ico_change"><a href="#" onclick="naviSearchChangeSp();"></a></div><!-- 출발지/도착지 전환 아이콘 -->';
245	}
246	$("#naviInputFormSp").html(html);
247	
248	$('.naviSearchInputSp').bind("focus",function() {
249		naviSearchBtnOnSp(this);
250	});
251	$('.naviSearchInputSp').bind("blur",function() {
252		naviSearchBtnOffSp(this);
253	});
254	
255	if(startNameSp!="") {
256		$("#startInputSp").val(startNameSp);
257	}
258	if(endNameSp!="") {
259		$("#endInputSp").val(endNameSp);
260	}
261	
262	middleNames.remove("middleInput"+keyId);
263	middleCoords.remove("middleInput"+keyId);
264	middleNamesSp.remove("middleInputSp"+keyId);
265	middleCoordsSp.remove("middleInputSp"+keyId);
266	while (naviMiddleMkSp.length > 0) {
267		map.removeLayer(naviMiddleMkSp[naviMiddleMkSp.length - 1]);
268		naviMiddleMkSp.pop();
269	}
270	
271	for(var i=0; i<middleCoordsSp.size(); i++) {
272		var num = /\d/.exec(middleNamesSp.keySet()[i]);
273		if(keyId<num) {
274			middleNamesSp.keySet()[i] = "middleInputSp"+(num-1);
275			middleCoordsSp.keySet()[i] = "middleInputSp"+(num-1);
276		}
277		
278		var coords = middleCoordsSp.get(middleCoordsSp.keySet()[i]).split(",");
279		var iconIndex = parseInt(middleCoordsSp.keySet()[i].replace("middleInputSp",""));
280		naviMiddleMkSp.push(new L.Marker(new L.LatLng(coords[0], coords[1]),{icon: new L.Icon({
281   			iconUrl: "./images/naviImg/"+subFolder+"/rpin_via_"+(iconIndex+1)+".png",
282   			iconAnchor: [20,53],
283   		})}).addTo(map));
284		naviMiddleMkSp[naviMiddleMkSp.length-1].setZIndexOffset(10000);
285		
286		$("#"+middleNamesSp.keySet()[i]).val(middleNamesSp.valSet()[i]);
287	}
288	
289	var inputCheck = true;
290	for(var i=0; i<$(".naviSearchInputSp").length; i++) {
291		if($(".naviSearchInputSp").eq(i).val()!="") {
292			textDelOnSp(i);
293		}else {
294			inputCheck = false;
295		}
296	}
297	
298	while (naviLayersSp.length>0) {
299		map.removeLayer(naviLayersSp[naviLayersSp.length - 1]);
300		naviLayersSp.pop();
301	}
302	while (naviLayersSp2.length>0) {
303		map.removeLayer(naviLayersSp2[naviLayersSp2.length - 1]);
304		naviLayersSp2.pop();
305	}
306	if(naviLayerSp!=null) {
307		map.removeLayer(naviLayerSp);
308		naviLayerSp = null;
309	}
310	while (naviInfoMkSp.length>0) {
311		map.removeLayer(naviInfoMkSp[naviInfoMkSp.length - 1]);
312		naviInfoMkSp.pop();
313	}
314	while (fullLineDatasSp.length>0) {
315		fullLineDatasSp.pop();
316	}
317	
318	if(inputCheck) {
319		naviStartSp();
320	}
321}
322
323function middleSetTextFormSp() {
324	var startInfoStr = "", middleInfoStr = "", endInfoStr = "";
325	if(lan=="KOR") { startInfoStr = "출발지를 입력하세요."; middleInfoStr = "경유지를 입력하세요."; endInfoStr = "도착지를 입력하세요."; }
326	else if(lan=="ENG") { startInfoStr = "Input the starting place."; middleInfoStr = "Input the stopover place."; endInfoStr = "Input the destination."; }
327	else if(lan=="JAN") { startInfoStr = "出発地入力"; middleInfoStr = "経由地入力"; endInfoStr = "目的地入力"; }
328	else if(lan=="CHINAG") { startInfoStr = "输入出发地"; middleInfoStr = "输入经由地"; endInfoStr = "输入目的地"; }
329	
330	naviAddTextFormCntSp = middleNamesSp.size();
331	var html = '';
332	html += '<div class="pr d_form">';
333	html += '<form onsubmit="return false">';
334	html += '<fieldset>';
335	html += '<legend>길찾기 검색</legend>';
336	html += '<label for="startInputSp">검색어 입력</label>';
337	html += '<input type="text" id="startInputSp" name="startInputSp" class="naviSearchInputSp" placeholder="'+startInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'startInputSp\');}" autocomplete="on">';
338	html += '</fieldset>';
339	html += '</form>';
340	html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'startInputSp\');"></a></div><!-- 검색 아이콘 -->';
341	html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'startInputSp\');"></a></div><!-- 초기화 아이콘 -->';
342	html += '</div>';
343	
344	for(var i=0; i<naviAddTextFormCntSp; i++) {
345		html += '<div class="pr d_form">';
346		html += '<form onsubmit="return false">';
347		html += '<fieldset>';
348		html += '<legend>길찾기 검색</legend>';
349		html += '<label for="middleInputSp'+i+'">검색어 입력</label>';
350		html += '<input type="text" id="middleInputSp'+i+'" name="middleInputSp'+i+'" class="naviSearchInputSp" placeholder="'+middleInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'middleInputSp'+i+'\');}" autocomplete="on">';
351		html += '</fieldset>';
352		html += '</form>';
353		html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'middleInputSp'+i+'\');"></a></div><!-- 검색 아이콘 -->';
354		html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'middleInputSp'+i+'\');"></a></div><!-- 초기화 아이콘 -->';
355		html += '<div class="ico_del"><a href="#" onclick="middleRmTextFormSp('+i+');"></a></div><!-- 경유지 삭제 아이콘 -->';
356		html += '</div>';
357	}
358	
359	html += '<div class="pr d_form">';
360	html += '<form onsubmit="return false">';
361	html += '<fieldset>';
362	html += '<legend>길찾기 검색</legend>';
363	html += '<label for="endInputSp">검색어 입력</label>';
364	html += '<input type="text" id="endInputSp" name="endInputSp" class="naviSearchInputSp" placeholder="'+endInfoStr+'" onKeyDown="javascript:if(event.keyCode == 13){ naviSearchSp(\'endInputSp\');}" autocomplete="on">';
365	html += '</fieldset>';
366	html += '</form>';
367	html += '<div class="navi_searchSp ico_search" style="display: none;"><a href="#" onmouseenter="blurUnbindSp();" onmouseleave="blurbindSp();" onclick="naviSearchSp(\'endInputSp\');"></a></div><!-- 검색 아이콘 -->';
368	html += '<div class="text_delSp ico_reset" style="display: none;"><a href="#" onclick="naviTextDelSp(\'endInputSp\');"></a></div><!-- 초기화 아이콘 -->';
369	html += '</div>';
370	
371	if(naviAddTextFormCntSp==0) {
372		html += '<div class="ico_change"><a href="#" onclick="naviSearchChangeSp();"></a></div><!-- 출발지/도착지 전환 아이콘 -->';
373	}
374	$("#naviInputFormSp").html(html);
375	
376	$('.naviSearchInputSp').bind("focus",function() {
377		naviSearchBtnOnSp(this);
378	});
379	$('.naviSearchInputSp').bind("blur",function() {
380		naviSearchBtnOffSp(this);
381	});
382	
383	if(startNameSp!="") {
384		$("#startInputSp").val(startNameSp);
385		textDelOnSp(0);
386	}
387	if(endNameSp!="") {
388		$("#endInputSp").val(endNameSp);
389		textDelOnSp($(".text_delSp").length-1);
390	}
391	
392	for(var outer = middleNamesSp.size()-1; outer>0; outer--) {
393        for(var inner=0; inner<outer; inner++) {
394        	var number1 = Number(middleNamesSp.keySet()[inner].replace("middleInputSp",""));
395    		var number2 = Number(middleNamesSp.keySet()[inner+1].replace("middleInputSp",""));
396            if(number1>number2) {
397            	var temp = "";
398    			temp1 = middleNamesSp.keySet()[inner]; 
399    			middleNamesSp.keySet()[inner] = middleNamesSp.keySet()[inner+1];
400    			middleNamesSp.keySet()[inner+1] = temp1;
401    			
402    			temp = middleNamesSp.valSet()[inner]; 
403    			middleNamesSp.valSet()[inner] = middleNamesSp.valSet()[inner+1];
404    			middleNamesSp.valSet()[inner+1] = temp;
405    			
406    			temp = middleCoordsSp.keySet()[inner]; 
407    			middleCoordsSp.keySet()[inner] = middleCoordsSp.keySet()[inner+1];
408    			middleCoordsSp.keySet()[inner+1] = temp;
409    			
410    			temp = middleCoordsSp.valSet()[inner]; 
411    			middleCoordsSp.valSet()[inner] = middleCoordsSp.valSet()[inner+1];
412    			middleCoordsSp.valSet()[inner+1] = temp;
413            }
414        }
415    }
416	
417	for(var i=0; i<middleNamesSp.size(); i++) {
418		middleNamesSp.keySet()[i] = "middleInputSp"+i;
419		middleCoordsSp.keySet()[i] = "middleInputSp"+i;
420		$("#"+middleNamesSp.keySet()[i]).val(middleNamesSp.valSet()[i]);
421		textDelOnSp((i+1));
422	}
423}
424
425function blurbindSp() {
426	$('.naviSearchInputSp').bind("blur",function() {
427		naviSearchBtnOffSp(this);
428	});
429}
430
431function blurUnbindSp() {
432	$(".naviSearchInputSp").unbind("blur");
433}
434
435function navi_resetSp() {
436	/* ------------------------ v4 ---------------------------
437	1. 자동차 경유지 추가 옆 초기화 버튼 클릭
438	---------------------------------------------------------- */
439	$("#naviFromBg").removeClass("r_size");
440	navi_rsize_check = false;
441	$("#naviSearchForm").css("display","none");
442	$("#naviResultForm").css("display","none");
443	$("#naviOnOff").css("display","none");
444	startName = "";
445	startCoord = "";
446	endName = "";
447	endCoord = "";
448	middleNames.clear();
449	middleCoords.clear();
450	navi_searchClear();
451	naviResultClear();
452	naviTextForm();
453	
454	startInputFlag = false;
455	endInputFlag = false;
456	middleInputFlag = false;
457	naviProcessFlag = false;
458	globalRightClickFlag = false;
459	/* ------------------------------------------------------ */ 
460	
461	/* ------------------------ v4 ---------------------------
462	1. 대중교통 경유지 추가 옆 초기화 버튼 클릭
463	---------------------------------------------------------- */
464	
465	$("#naviSearchFormTf").css("display","none");
466	$("#naviResultFormTf").css("display","none");
467	$("#naviNoResultFormTf").css("display","none");
468	
469	startNameTf = "";
470	startCoordTf = "";
471	endNameTf = "";
472	endCoordTf = "";
473	
474	navi_searchClearTf(); 
475	naviResultClearTf();
476	naviTextFormTf();
477	startInputFlagTf = false;
478	endInputFlagTf = false;
479	naviProcessFlagTf = false;
480	globalRightClickFlag = false;
481	/* ------------------------------------------------------ */ 
482	
483	/* ------------------------ v4 ---------------------------
484	1. 도보 경유지 추가 옆 초기화 버튼 클릭
485	---------------------------------------------------------- */
486	navi_rsize_checkSp = false;
487	
488	$("#naviSearchFormSp").css("display","none");
489	$("#naviResultFormSp").css("display","none");
490	$("#naviNoResultFormSp").css("display","none");
491	
492	startNameSp = "";
493	startCoordSp = "";
494	endNameSp = "";
495	endCoordSp = "";
496	
497	middleNamesSp.clear();
498	middleCoordsSp.clear();
499	navi_searchClearSp(); 
500	naviResultClearSp();
501	naviTextFormSp();
502	startInputFlagSp = false;
503	endInputFlagSp = false;
504	middleInputFlagSp = false;
505	naviProcessFlagSp = false;
506	globalRightClickFlag = false;
507	/* ------------------------------------------------------ */
508}
509
510function textDelOnSp(index) {
511	if($(".naviSearchInputSp").eq(index).val()!="") {
512		$(".text_delSp").eq(index).css("display","");
513	}
514}
515
516function textDelOffSp(index) {
517	$(".text_delSp").eq(index).css("display","none");
518}
519
520function naviSearchBtnOnSp(this_) {
521	var index = $("#naviInputFormSp").find("input").index(this_);
522	textDelOffSp(index);
523	$(".navi_searchSp").eq(index).css("display","");
524}
525
526function naviSearchBtnOffSp(this_) {
527	var index = $("#naviInputFormSp").find("input").index(this_);
528	textDelOnSp(index);
529	$(".navi_searchSp").eq(index).css("display","none");
530}
531
532function naviSearchChangeSp() {
533	var temp = "";
534	temp = startNameSp;
535	startNameSp = endNameSp;
536	endNameSp = temp;
537	
538	temp = startCoordSp;
539	startCoordSp = endCoordSp;
540	endCoordSp = temp;
541	
542	$("#startInputSp").val(startNameSp);
543	$("#endInputSp").val(endNameSp);
544	
545	if(startNameSp!="" && endNameSp!="") {
546		naviStartSp();
547	}
548}
549
550function naviTextDelSp(type) {
551	if(type=="startInputSp") {
552		startNameSp="";
553		startCoordSp="";
554		if(naviStartMkSp!=null) {
555			map.removeLayer(naviStartMkSp);
556			naviStartMkSp = null;
557		}
558		textDelOffSp(0);
559	}else if(type=="endInputSp") {
560		endNameSp="";
561		endCoordSp="";
562		if(naviEndMkSp!=null) {
563			map.removeLayer(naviEndMkSp);
564			naviEndMkSp = null;
565		}
566		textDelOffSp($(".naviSearchInputSp").length-1);
567	}else {
568		var subFolder = "";
569		if(lan=="KOR") { subFolder = "kor"; }
570		else if(lan=="ENG") { subFolder = "eng"; }
571		else if(lan=="JAN") { subFolder = "jpn"; }
572		else if(lan=="CHINAG") { subFolder = "chn"; }
573		
574		middleNamesSp.remove(type);
575		middleCoordsSp.remove(type);
576		while (naviMiddleMkSp.length > 0) {
577			map.removeLayer(naviMiddleMkSp[naviMiddleMkSp.length - 1]);
578			naviMiddleMkSp.pop();
579		}
580		textDelOffSp(parseInt(type.replace("middleInputSp",""))+1);
581		for(var i=0; i<middleCoordsSp.size(); i++) {
582			var coords = middleCoordsSp.get(middleCoordsSp.keySet()[i]).split(",");
583			var iconIndex = parseInt(middleCoordsSp.keySet()[i].replace("middleInputSp",""));
584			naviMiddleMkSp.push(new L.Marker(new L.LatLng(coords[0], coords[1]),{icon: new L.Icon({
585	   			iconUrl: "./images/naviImg/"+subFolder+"/rpin_via_"+(iconIndex+1)+".png",
586	   			iconAnchor: [20,53],
587	   		})}).addTo(map));
588			naviMiddleMkSp[naviMiddleMkSp.length-1].setZIndexOffset(10000);
589			
590			$("#"+middleNamesSp.keySet()[i]).val(middleNamesSp.valSet()[i]);
591		}
592	}
593	$("#"+type).val("");
594	navi_searchClearSp();
595	$("#naviFromBg").removeClass("r_size");
596	navi_rsize_checkSp = false;
597	$("#naviSearchFormSp").css("display","none");
598	$("#naviResultFormSp").css("display","none");
599	$("#naviOnOff").css("display","none");
600	$("#naviResultListSp").html("");
601	
602	while (naviLayersSp.length>0) {
603		map.removeLayer(naviLayersSp[naviLayersSp.length - 1]);
604		naviLayersSp.pop();
605	}
606	while (naviLayersSp2.length>0) {
607		map.removeLayer(naviLayersSp2[naviLayersSp2.length - 1]);
608		naviLayersSp2.pop();
609	}
610	if(naviLayerSp!=null) {
611		map.removeLayer(naviLayerSp);
612		naviLayerSp = null;
613	}
614	while (naviInfoMkSp.length>0) {
615		map.removeLayer(naviInfoMkSp[naviInfoMkSp.length - 1]);
616		naviInfoMkSp.pop();
617	}
618	while (fullLineDatasSp.length>0) {
619		fullLineDatasSp.pop();
620	}
621}
622
623
624function naviOnOffSp() {
625	if($("#naviSearchFormSp").css("display")=="none" && $("#naviResultFormSp").css("display")=="none") {
626		$("#naviFromBg").addClass("r_size");
627		if($("#naviOnOff").attr("class").indexOf("naviOnOff2")!=-1) {
628			$("#naviSearchFormSp").css("display","");
629			$("#naviOnOff").attr("class","ico_close2 naviOnOff2");
630		}else {
631			$("#naviResultFormSp").css("display","");
632			$("#naviOnOff").attr("class","ico_close naviOnOff");
633		}
634	}else {
635		$("#naviFromBg").removeClass("r_size");
636		$("#naviSearchFormSp").css("display","none");
637		$("#naviResultFormSp").css("display","none");
638		if($("#naviOnOff").attr("class").indexOf("naviOnOff2")!=-1) {
639			$("#naviOnOff").attr("class","ico_open2 naviOnOff2");
640		}else {
641			$("#naviOnOff").attr("class","ico_open2 naviOnOff");
642		}
643	}
644}
645
646// !----------------------- 네비게이션 통합검색 ----------------------------------
647function navi_searchTabSp(mode) {  // mode (0: 전체 , 1: 주소 , 2: 장소)
648	$("#naviOnOff").css("display","");
649	$("#naviOnOff").attr("class","ico_close2 naviOnOff2");
650	$("#navi_search_tabSp > li").each(function(index,e) {
651		if(index==mode) {
652			$(e).addClass("on");
653			$(e).removeClass("off");
654		}else {
655			$(e).addClass("off");
656			$(e).removeClass("on");
657		}
658	});
659}
660
661function naviSearchSp(type) {  // type(startInputSp: 출발 endInputSp: 도착 middleInputSp+숫자 : 경유지)
662	naviSearchTypeSp = type;
663	
664	/* ------------------------ v4 ---------------------------
665	1. 도보 출도착,경유 판단
666	---------------------------------------------------------- */
667	if(naviSearchTypeSp=="startInputSp"){
668		startInputFlag = false; endInputFlag = false; middleInputFlag = false;			
669		startInputFlagSp = true; endInputFlagSp = false; middleInputFlagSp = false;
670		startInputFlagTf  = false; endInputFlagTf  = false;
671	}else if(naviSearchTypeSp=="endInputSp"){
672		startInputFlag = false; endInputFlag = false; middleInputFlag = false;			
673		startInputFlagSp = false; endInputFlagSp = true; middleInputFlagSp = false;
674		startInputFlagTf  = false; endInputFlagTf  = false;
675	}else if(naviSearchTypeSp.indexOf("middleInputSp")!=-1){
676		startInputFlag = false; endInputFlag = false; middleInputFlag = false;	
677		startInputFlagSp = false; endInputFlagSp = false; middleInputFlagSp = true;
678		startInputFlagTf  = false; endInputFlagTf  = false;
679	}
680	naviProcessFlagSp = false;
681	globalRightClickFlag = false;
682	/* ---------------------------------------------------------- */
683	
684	navi_unifiedSearchSp(0,1,true);
685}
686
687function naviTextFormFocusSp() {
688	if(naviSearchTypeSp.indexOf("start")!=-1) {
689		for(var i=0; i<naviAddTextFormCntSp; i++) {
690			if($("#middleInputSp"+i).val()=="") {
691				$("#middleInputSp"+i).focus();
692				return;
693			}
694		}
695		if($("#endInputSp").val()=="") {
696			$("#endInputSp").focus();
697			return;
698		}
699	}else if(naviSearchTypeSp.indexOf("end")!=-1) {
700		if($("#startInputSp").val()=="") {
701			$("#startInputSp").focus();
702			return;
703		}
704		for(var i=0; i<naviAddTextFormCntSp; i++) {
705			if($("#middleInputSp"+i).val()=="") {
706				$("#middleInputSp"+i).focus();
707				return;
708			}
709		}
710	}else if(naviSearchTypeSp.indexOf("middle")!=-1) {
711		if($("#startInputSp").val()=="") {
712			$("#startInputSp").focus();
713			return;
714		}
715		for(var i=0; i<naviAddTextFormCntSp; i++) {
716			if($("#middleInputSp"+i).val()=="") {
717				$("#middleInputSp"+i).focus();
718				return;
719			}
720		}
721		if($("#endInputSp").val()=="") {
722			$("#endInputSp").focus();
723			return;
724		}
725	}
726}
727
728function navi_unifiedSearchSp(mode, page, first){ // mode = 0 전체, mode = 1 주소, mode = 2 장소 , first(true:첫검색, false:이미검색된 결과)
729	if(rightClickPop!=null) {
730		map.closePopup(rightClickPop);
731	}
732	for(var i=0; i<ncodeSearchMarker.length; i++) {
733		ncodeSearchMarker[i].popState = false;
734		ncodeSearchMarker[i].closePopup();
735	}
736	ncodeSelectMid = "";
737	
738	for(var i=0; i<jiguMarker.length; i++) {
739		jiguMarker[i].popState = false;
740		jiguMarker[i].closePopup();
741	}
742	jiguSelectMid = "";
743	
744	if(first) {
745		navi_searchNameSp = $("#"+naviSearchTypeSp).val();
746	}
747	if(navi_searchNameSp != ""){
748		naviSearchBtnOffSp(document.getElementById(naviSearchTypeSp));
749		
750		$("#naviFromBg").addClass("r_size");
751		navi_rsize_checkSp = true;
752		$("#naviSearchFormSp").css("display","");
753		navi_searchTabSp(mode); // 검색 탭 변경
754		$("#navi_searchNullFormSp").css("display","none");
755		
756		if(lan=="KOR") { $("#navi_search_info_formSp").html("<span>'"+navi_searchNameSp+"'</span> 검색결과");	}
757		else if(lan=="ENG") { $("#navi_search_info_formSp").html("<span>'"+navi_searchNameSp+"'</span> Search results"); }
758		else if(lan=="JAN") { $("#navi_search_info_formSp").html("<span>'"+navi_searchNameSp+"'</span> 検索結果"); }
759		else if(lan=="CHINAG") { $("#navi_search_info_formSp").html("<span>'"+navi_searchNameSp+"'</span> 搜索结果"); }
760		
761		mapCopyClear();
762		navi_searchClearSp();
763		naviResultClearSp();
764		$("#naviResultFormSp").css("display","none");
765		
766		if(mode!=2){
767			$("#navi_addressSearchFormSp").css("display","");
768			if(mode==1) {
769				$("#navi_address_list_moreSp").css("display","none");
770				$("#navi_poiSearchFormSp").css("display","none");
771			}else {
772				$("#navi_poiSearchFormSp").css("display","");
773			}
774			navi_geoCodingSearchSp(mode, page);
775		}else{
776			$("#navi_poi_list_moreSp").css("display","none");
777			$("#navi_addressSearchFormSp").css("display","none");
778			$("#navi_poiSearchFormSp").css("display","");
779			navi_poiSearchSp(mode, page);
780		}
781	}else{
782		if(lan=="KOR") { alert("검색어를 입력해주세요."); }
783		else if(lan=="ENG") { alert("Please enter your search words."); }
784		else if(lan=="JAN") { alert("検索語を入力してください。"); }
785		else if(lan=="CHINAG") { alert("请输入您的搜索字词。"); }
786		
787		if(naviSearchTypeSp.indexOf("start")!=-1) {
788			if($("#startInputSp").val()=="") {
789				$("#startInputSp").focus();
790				return;
791			}
792		}else if(naviSearchTypeSp.indexOf("end")!=-1) {
793			if($("#endInputSp").val()=="") {
794				$("#endInputSp").focus();
795				return;
796			}
797		}else if(naviSearchTypeSp.indexOf("middle")!=-1) {
798			for(var i=0; i<naviAddTextFormCntSp; i++) {
799				if($("#middleInputSp"+i).val()=="") {
800					$("#middleInputSp"+i).focus();
801					return;
802				}
803			}
804		}
805	}
806}
807
808function navi_geoCodingSearchSp(mode, page){
809	jHeader.serviceName = "GEOCODING";
810	geoBody.fulladdress = navi_searchNameSp;
811	geoBody.selectFields.geoType = "ORIGIN";
812	geoBody.addressType = "HLS";
813
814	var jReqBody = {
815			"header" : jHeader,
816			"body" : geoBody
817		};
818
819	var dataString = "callback=?&req="+encodeURIComponent(objectToJSONString(jReqBody));
820	//console.log(jUrl + "?callback=?&req=" + objectToJSONString(jReqBody));
821	$.ajax({
822		url:jUrl,
823		async: true,
824		type:'post',
825		dataType:'jsonp',
826		data:dataString,
827		timeout:200000,
828		error : function(d, txtStatus, error) {
829			alert("다시 실행해주시기 바랍니다. code:11 \n"+"getJSON failed : " + d + ",  status: "+ txtStatus + ",  error: " + error);
830		},success: function(data,result){
831			if(data.body.geojson != undefined){
832				naviTextFormFocusSp();
833				var cnt = data.body.geojson.features.length;
834				var pageCnt = 10; // 페이지당 개수
835				var stIndex = (page-1)*pageCnt;
836				var enIndex = (stIndex+pageCnt) < cnt ? (stIndex+pageCnt) : cnt;
837				
838				if(mode==0) { // 더보기 유, 무
839					if(enIndex>3) {
840						enIndex=3;
841						$('#navi_address_list_moreSp').css('display', '');
842					}else {
843						$('#navi_address_list_moreSp').css('display', 'none');
844					}
845				}
846				
847				var list = "";
848				for(var i = stIndex ; i < enIndex; i++){
849					var feature = data.body.geojson.features[i];
850					var centerPoint = centerCoord("GRS_80",feature.geometry);
851					
852					geoCodingSearchLayer.push(new L.GeoJSON(
853						feature, {
854							style : function() {
855								return {
856									weight: 2, dashArray: '5, 5', color : "#ff6e04", opacity : 1, fillColor : "#ff6e04", fillOpacity : 0
857								};						
858							}
859						}).addTo(map));
860					
861					geoCodingSearchLayer[geoCodingSearchLayer.length-1].on("click", function(){
862						for(var i=0; i<geoCodingSearchMarker.length; i++) {
863							geoCodingSearchMarker[i].popState = false;
864							$(".navi_JusoResultIconSp")[i].src = geoCodingSearchMarker[i].listMarkerImg;
865							var iconOn = new L.Icon({
866								iconUrl:geoCodingSearchMarker[i].markerImg,
867								iconAnchor: [14,33]
868							});
869							geoCodingSearchMarker[i].setIcon(iconOn);
870							geoCodingSearchMarker[i].closePopup();
871						}
872						
873						for(var i=0; i<poiSearchMarker.length; i++) {
874							poiSearchMarker[i].popState = false;
875							$(".navi_PoiResultIconSp")[i].src = poiSearchMarker[i].listMarkerImg;
876							var iconOn = new L.Icon({
877								iconUrl:poiSearchMarker[i].markerImg,
878								iconAnchor: [14,33]
879							});
880							poiSearchMarker[i].setIcon(iconOn);
881							poiSearchMarker[i].closePopup();
882						}
883						
884						for(var i=0; i<ncodeSearchMarker.length; i++) {
885							ncodeSearchMarker[i].popState = false;
886							ncodeSearchMarker[i].closePopup();
887						}
888						ncodeSelectMid = "";
889						
890						for(var i=0; i<jiguMarker.length; i++) {
891							jiguMarker[i].popState = false;
892							jiguMarker[i].closePopup();
893						}
894						jiguSelectMid = "";
895						
896						map.removeLayer(rightClickPop);
897					});
898					
899					geoCodingSearchLayer[geoCodingSearchLayer.length-1].on("mouseover", function(){
900						this.setStyle({opacity:1, fillOpacity:0.2});
901					});
902					geoCodingSearchLayer[geoCodingSearchLayer.length-1].on("mouseout", function(){
903						this.setStyle({opacity:1, fillOpacity:0});
904					});
905					
906					geoCodingSearchLayer[geoCodingSearchLayer.length-1].on("contextmenu", function(e) {
907						if(chkDist == false){
908							tooltipClose();
909
910							var lat = e.latlng.lat;
911							var lng = e.latlng.lng;
912							rightClickPopup(lat,lng,0);
913						}
914					});
915					
916					var markerImg = "./images/pin/mpin_"+(geoCodingSearchMarker.length+1)+".png";
917					var listMarkerImg = "./images/pin/pin_"+(geoCodingSearchMarker.length+1)+".png";
918					var onMarkerImg = "./images/pin/mpin_on.png";
919					var onListMarkerImg = "./images/pin/mpin_on.png";
920					geoCodingSearchMarker.push(new L.Marker(new L.LatLng(centerPoint.lat, centerPoint.lng),{icon: new L.Icon({
921				    	iconUrl: markerImg,
922				    	iconAnchor: [14,33]
923					})}).addTo(map));
924					geoCodingSearchMarker[geoCodingSearchMarker.length-1].markerImg = markerImg;
925					geoCodingSearchMarker[geoCodingSearchMarker.length-1].listMarkerImg = listMarkerImg;
926					geoCodingSearchMarker[geoCodingSearchMarker.length-1].onMarkerImg = onMarkerImg;
927					geoCodingSearchMarker[geoCodingSearchMarker.length-1].onListMarkerImg = onListMarkerImg;
928					if(i == stIndex){
929						geoCodingSearchMarker[geoCodingSearchMarker.length-1].popState = true;
930					}else{
931						geoCodingSearchMarker[geoCodingSearchMarker.length-1].popState = false;
932					}
933					geoCodingSearchMarker[geoCodingSearchMarker.length-1].feature = feature;
934					geoCodingSearchMarker[geoCodingSearchMarker.length-1].index = geoCodingSearchMarker.length-1;
935					geoCodingSearchMarker[geoCodingSearchMarker.length-1].bindPopup(tooltip.makeGeoContent(feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
936					geoCodingSearchMarker[geoCodingSearchMarker.length-1].on("click", function(e) {
937						var index = this.index;
938						if(this.popState){
939							this.popState = false;
940							$(".navi_JusoResultIconSp")[index].src = this.listMarkerImg;
941							var iconOn = new L.Icon({
942								iconUrl: this.markerImg,
943								iconAnchor: [14,33]
944							});
945							this.setIcon(iconOn);
946						}else{
947							if(rightClickPop!=null) {
948								map.closePopup(rightClickPop);
949							}
950							for(var i = 0; i<geoCodingSearchMarker.length; i++){
951								if(i == index){
952									$(".navi_JusoResultIconSp")[i].src = geoCodingSearchMarker[i].onListMarkerImg;
953									geoCodingSearchMarker[i].popState = true;
954									geoCodingSearchMarker[i].setZIndexOffset(1000);
955									var iconOn = new L.Icon({
956										iconUrl : geoCodingSearchMarker[i].onMarkerImg,
957										iconAnchor: [14,33]
958									});
959								}else{
960									$(".navi_JusoResultIconSp")[i].src = geoCodingSearchMarker[i].listMarkerImg;
961									geoCodingSearchMarker[i].popState = false;
962									geoCodingSearchMarker[i].setZIndexOffset(100);
963									var iconOn = new L.Icon({
964										iconUrl : geoCodingSearchMarker[i].markerImg,
965										iconAnchor: [14,33]
966									});
967								}
968								geoCodingSearchMarker[i].setIcon(iconOn);
969
970								if(geoCodingSearchMarker[i].popState) {
971									geoCodingSearchMarker[i].bindPopup(tooltip.makeGeoContent(geoCodingSearchMarker[i].feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
972								}
973							}
974							
975							for(var i=0; i<poiSearchMarker.length; i++) {
976								poiSearchMarker[i].popState = false;
977								$(".navi_PoiResultIconSp")[i].src = poiSearchMarker[i].listMarkerImg;
978								var iconOn = new L.Icon({
979									iconUrl:poiSearchMarker[i].markerImg,
980									iconAnchor: [14,33]
981								});
982								poiSearchMarker[i].setIcon(iconOn);
983								poiSearchMarker[i].closePopup();
984							}
985							
986							for(var i=0; i<ncodeSearchMarker.length; i++) {
987								ncodeSearchMarker[i].popState = false;
988								ncodeSearchMarker[i].closePopup();
989							}
990							ncodeSelectMid = "";
991							
992							for(var i=0; i<jiguMarker.length; i++) {
993								jiguMarker[i].popState = false;
994								jiguMarker[i].closePopup();
995							}
996							jiguSelectMid = "";
997						}
998					});
999					
1000					// ----------- 리스트 -----------
1001					var properties = feature.properties;
1002					list += navi_searchListSp("addressSearch",properties,centerPoint.lat, centerPoint.lng);
1003				}
1004				navi_searchResultSp("addressSearch",mode,cnt,list,page);
1005			}else{
1006				$("#navi_addressSearchFormSp").css("display","none");
1007				if(mode==0) {
1008					navi_poiSearchSp(mode, page); // 주소 없으면 장소 검색
1009				}else if(mode==1) {
1010					navi_searchListNullSp();
1011				}
1012			}
1013		}
1014	});
1015}
1016
1017
1018function navi_jusoPagingSp(pageNum, totalCnt){ // 주소 페이징
1019	var startPageNum = pageNum - ((pageNum-1)%5);
1020	var maxPageNum = Math.ceil(totalCnt/10);
1021	var pagingList = "";
1022	
1023	pagingList += '<div class="tc" style="margin-top:10px;">';
1024	pagingList += '<div class="page clear">';
1025		
1026	if(pageNum>5){
1027		pagingList += '<span class="off arrow"> <span> <a href="#" onclick="navi_unifiedSearchSp(1, '+(startPageNum-1)+',false);">&lt;</a></span></span>';
1028	}
1029	for(var i=0; i<5; i++)
1030	{
1031		if(i+startPageNum<=maxPageNum) {	
1032			if(i+startPageNum==pageNum) {
1033				pagingList += '<span class="on">'+(i+startPageNum)+'</span>';
1034			}else {
1035				pagingList += '<span class="off" onclick="navi_unifiedSearchSp(1, '+(i+startPageNum)+',false);"><a href="#">'+(i+startPageNum)+'</a></span>';
1036			}
1037		}
1038	}
1039	if(maxPageNum>=startPageNum+5)
1040	{
1041		pagingList += '<span class="off arrow"><span><a href="#" onclick="navi_unifiedSearchSp(1, '+(startPageNum+5)+',false);">&gt;</a></span></span>';
1042	}
1043	
1044	pagingList += "</div>";
1045	pagingList += "</div>";
1046	
1047	return pagingList;
1048}
1049
1050
1051function navi_searchListNullSp() {
1052	$("#"+naviSearchTypeSp).focus();
1053	if(lan=="KOR") {
1054		$("#navi_search_info_formSp").html("<span>'"+navi_searchNameSp+"'</span>에 대한 검색 결과가 없습니다.");	
1055	}else if(lan=="ENG") {
1056		$("#navi_search_info_formSp").html("Maps can't find <span>'"+navi_searchNameSp+"'</span>");
1057	}else if(lan=="JAN") {
1058		$("#navi_search_info_formSp").html("<span>'"+navi_searchNameSp+"'</span> に対する住所検索結果がありません。");
1059	}else if(lan=="CHINAG") {
1060		$("#navi_search_info_formSp").html("未找到关于您要的 <span>'"+navi_searchNameSp+"'</span>");
1061	}
1062	$("#navi_searchNullFormSp").css("display","");
1063}
1064
1065
1066function navi_subGeoSearchSp(code,geoType,page) {
1067	jHeader.serviceName = "SUB_GEOCODING";
1068	subBody.code = code;
1069	subBody.selectFields.geoType = geoType;
1070	subBody.adminType = "ROAD_ADDRESS";
1071	subBody.page.cnt = 10;
1072	subBody.page.pageNo = page;
1073	var jReqBody = {
1074		"header" : jHeader,
1075		"body" : subBody
1076	};
1077	
1078	var dataString = "callback=?&req="+encodeURIComponent(objectToJSONString(jReqBody));
1079	//console.log(jUrl+"?callback=?&req="+objectToJSONString(jReqBody));
1080	$.ajax({
1081		url:jUrl,
1082		async:true,
1083		type:'POST',
1084		dataType:'jsonp',
1085		data:dataString,
1086		timeout : 200000,
1087		error : function(d, textStatus, error){
1088			alert("다시 실행해주시기 바랍니다. code:11 \n"+"getJSON failed : "+d+",  status: " + textStatus + ",  error: "+error);
1089		},success: function(data, result){
1090			if(data.body.geojson!=undefined) {
1091				var listCount = data.body.geojson.features.length;
1092				var totalCnt = data.body.page.totalCnt;
1093				var list = "";
1094				for ( var i = 0; i < listCount; i++) {
1095					var feature = data.body.geojson.features[i];
1096					if(geoType=='ORIGIN'){
1097						var centerPoint = centerCoord("GRS_80",feature.geometry);
1098						
1099						var markerImg = "./images/pin/mpin_s"+(subGeoCodingSearchMarker.length+1)+".png";
1100						var listMarkerImg = "./images/pin/pin_s"+(subGeoCodingSearchMarker.length+1)+".png";
1101						subGeoCodingSearchMarker.push(new L.Marker(new L.LatLng(centerPoint.lat, centerPoint.lng),{icon: new L.Icon({   // 마커 찍기
1102					    	iconUrl: markerImg,
1103					    	iconAnchor: [14,33]
1104						})}));
1105						
1106						subGeoCodingSearchMarker[subGeoCodingSearchMarker.length-1].feature = feature;
1107						subGeoCodingSearchMarker[subGeoCodingSearchMarker.length-1].index = subGeoCodingSearchMarker.length-1;
1108						subGeoCodingSearchMarker[subGeoCodingSearchMarker.length-1].markerImg = markerImg;
1109						subGeoCodingSearchMarker[subGeoCodingSearchMarker.length-1].listMarkerImg = listMarkerImg;
1110						subGeoCodingSearchMarker[subGeoCodingSearchMarker.length-1].bindPopup(tooltip.makeGeoContent(feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
1111						subGeoCodingSearchMarker[subGeoCodingSearchMarker.length-1].on("click",function(e) {
1112							if(rightClickPop!=null) {
1113								map.closePopup(rightClickPop);
1114							}
1115							for(var i=0; i<ncodeSearchMarker.length; i++) {
1116								ncodeSearchMarker[i].popState = false;
1117								ncodeSearchMarker[i].closePopup();
1118							}
1119							ncodeSelectMid = "";
1120							
1121							for(var i=0; i<jiguMarker.length; i++) {
1122								jiguMarker[i].popState = false;
1123								jiguMarker[i].closePopup();
1124							}
1125							jiguSelectMid = "";
1126						});
1127						
1128						subGeoCodingSearchLayer.push(new L.GeoJSON(
1129							feature, {
1130								style : function() {
1131									return {
1132										weight: 2, dashArray: '5, 5', color : "#0100FF", opacity : 1, fillColor : "#0100FF", fillOpacity : 0.2, clickable : false
1133									};						
1134								}
1135							}).addTo(map));
1136						
1137						// ----------- 리스트 ---------------
1138						var properties = feature.properties;
1139						list += navi_subGeoSearchListSp(i,properties,centerPoint.lat,centerPoint.lng);
1140						// ----------- //리스트 -------------
1141					}
1142				}
1143				list += navi_subGeoPagingSp(page, totalCnt, code);
1144				$("#"+code).html(list);
1145			}else {
1146				f
1147			}
1148		}
1149	});
1150}
1151
1152function navi_subGeoPagingSp(pageNum, totalCnt, code){
1153	var startPageNum = pageNum-((pageNum-1)%5);
1154	var maxPageNum = Math.ceil(totalCnt/10);// 페이지 갯수
1155	var subPagingList="";
1156	
1157	subPagingList += '<div class="tc" style="margin-top:10px;">';
1158	subPagingList += '<div class="page clear">';
1159	if(pageNum>5) {
1160		subPagingList += '<span class="off arrow"><span><a href="#" onclick="navi_subMenuSlideSp(\'addressSearch\',\''+code+'\',1,'+(startPageNum-1)+');">&lt;</a></span></span>';
1161	}
1162	for(var i=0; i<5; i++) {	
1163		if(i+startPageNum<=maxPageNum) {	
1164			if(i+startPageNum==pageNum) {
1165				subPagingList += '<span class="on">'+(i+startPageNum)+'</span>';
1166			}else {
1167				subPagingList += '<span class="off" onclick="navi_subMenuSlideSp(\'addressSearch\',\''+code+'\',1,'+(i+startPageNum)+');"><a href="#">'+(i+startPageNum)+'</a></span>';
1168			}
1169		}
1170	}
1171	if(maxPageNum>=startPageNum+5)
1172	{
1173		subPagingList += '<span class="off arrow"><span><a href="#" onclick="navi_subMenuSlideSp(\'addressSearch\',\''+code+'\',1,'+(startPageNum+5)+');">&gt;</a></span></span>';
1174	}
1175	subPagingList += '</div>';
1176	subPagingList += '</div>';
1177    return subPagingList;
1178}
1179
1180
1181function navi_poiSearchSp(mode, page){
1182	jHeader.serviceName = "POI";
1183	poiBody.crs = "GRS_80";
1184	poiBody.fulltext = navi_searchNameSp;
1185	poiBody.page = {};
1186	if(mode==0) {
1187		poiBody.page.cnt = 5;
1188	}else {
1189		poiBody.page.cnt = 10 ;
1190	}
1191	
1192    poiBody.page.pageNo = page;
1193    var jReqBody = {
1194		"header" : jHeader,
1195		"body" : poiBody
1196	};
1197	
1198	delete poiBody.field;
1199	delete poiBody.mbr;
1200	var dataString = "callback=?&req="+encodeURIComponent(objectToJSONString(jReqBody));
1201	//console.log(jUrl+"?callback=?&req="+objectToJSONString(jReqBody));
1202	$.ajax({
1203		url:jUrl,
1204		async:true,
1205		type:'POST',
1206		dataType:'jsonp',
1207		data:dataString,
1208		timeout : 200000,
1209		error : function(d, textStatus, error){
1210			alert("다시 실행해주시기 바랍니다. code:22 \n"+"getJSON failed : "+d+",  status: " + textStatus + ",  error: "+error);
1211		},success: function(data, result){
1212			if(data.body.geojson!=undefined) {
1213				var countID = data.body.geojson.features.length; // ID 개수
1214				var totalCnt = data.body.page.totalCnt;
1215				if(mode==0) {
1216					if(geoCodingSearchMarker.length==0){
1217						naviTextFormFocusSp();
1218					}
1219					if(totalCnt>5){
1220						$('#navi_poi_list_moreSp').css('display', 'block');
1221					}else {
1222						$('#navi_poi_list_moreSp').css('display', 'none');
1223					}
1224				}
1225				var list = "";
1226				for(var i=0; i<countID; i++) {
1227					var feature = data.body.geojson.features[i];
1228					var centerX = feature.geometry.coordinates[0];
1229					var centerY = feature.geometry.coordinates[1];
1230					
1231					var contentName = "";
1232					var themeName = "";
1233					var treeFlag = "";
1234					var themeId = "";
1235					if(lan=="KOR" && (feature.properties.c_tree_flag=="2" || feature.properties.c_tree_flag=="3")){  // 2 : 개발지구 , 3 : 실내지도
1236						for(var j=0; j<tree_flag.length; j++){
1237							if(feature.properties.c_tree_flag==j+1){
1238								contentName = tree_content_name[j];
1239								themeName = tree_flag_name[j];
1240								treeFlag = tree_flag[j];
1241								themeId = eval("feature.properties."+treeFlag);
1242								/*
1243								 * if(j<tree_flag_marker_img.length) {
1244								 * markerImg = tree_flag_marker_img[j]; }
1245								 */
1246								break;
1247							}
1248						}
1249						if(themeId!="-2147483648" && themeId!="" && themeId!=0) {
1250							navi_themeflagSp(feature,contentName,themeName,themeId);
1251						}else {
1252							navi_poiflagSp(feature);
1253						}
1254					}else {
1255						navi_poiflagSp(feature);
1256					}
1257					// ----------- 리스트 ---------------------------------
1258					var properties = feature.properties;
1259					list += navi_searchListSp("POISearch",properties,centerX,centerY,themeId,treeFlag);  // themeId,treeFlag : poi 확장컨텐츠가 있을때만 사용
1260					// ----------- //리스트 ---------------------------------
1261				}
1262				navi_searchResultSp("POISearch",mode,totalCnt,list,page);
1263			}else {
1264				$("#navi_poiSearchFormSp").css("display","none");
1265				if((mode==0 && geoCodingSearchMarker.length==0) || mode==2) {
1266					navi_searchListNullSp();
1267				}else {
1268					
1269				}
1270			}
1271		}
1272	});
1273}
1274
1275function navi_poiPagingSp(pageNum, totalCnt){ // poi 페이징
1276	var startPageNum = pageNum - ((pageNum-1)%5);
1277	var maxPageNum = Math.ceil(totalCnt/10);
1278	var PoiPagingList = "";
1279	
1280	PoiPagingList += '<div class="tc" style="margin-top:10px;">';
1281	PoiPagingList += '<div class="page clear">';
1282	if(pageNum>5){
1283		PoiPagingList += '<span class="off arrow"> <span> <a href="#" onclick="navi_unifiedSearchSp(2, '+(startPageNum-1)+',false);">&lt;</a></span></span>';
1284	}
1285	for(var i=0; i<5; i++){
1286		if(i+startPageNum<=maxPageNum){	
1287			if(i+startPageNum==pageNum){
1288				// PoiPagingList += '<span class="on" onclick="unifiedSearch(2,
1289				// '+(i+startPageNum)+');"><a
1290				// href="#">'+(i+startPageNum)+'</a></span>';
1291				PoiPagingList += '<span class="on">'+(i+startPageNum)+'</span>';
1292			}else {
1293				PoiPagingList += '<span class="off" onclick="navi_unifiedSearchSp(2, '+(i+startPageNum)+',false);"><a href="#">'+(i+startPageNum)+'</a></span>';
1294			}
1295		}
1296	}
1297	if(maxPageNum>=startPageNum+5){
1298		// pagingList += "<li><a href='#'
1299		// onclick='unifiedSearch(1,"+(startPageNum+5)+");'><img
1300		// src='./img/dw_arrow_right.png' alt='뒤로' /></a></li>";
1301		PoiPagingList += '<span class="off arrow"><span><a href="#" onclick="navi_unifiedSearchSp(2, '+(startPageNum+5)+',false);">&gt;</a></span></span>';
1302	}
1303	PoiPagingList += "</div>";
1304	PoiPagingList += "</div>";
1305	return PoiPagingList;
1306}
1307
1308function navi_poiflagSp(feature) {
1309	var markerImg = "./images/pin/mpin_poi_"+(poiSearchMarker.length+1)+".png";
1310	var listMarkerImg = "./images/pin/pin_poi_"+(poiSearchMarker.length+1)+".png";
1311	var tooltipIconImg = "./images/num/num_"+(poiSearchMarker.length+1)+".png";
1312	poiSearchMarker.push(new L.Marker(new L.LatLng(feature.geometry.coordinates[0], feature.geometry.coordinates[1]),{icon: new L.Icon({
1313    	iconUrl: markerImg,
1314    	iconAnchor: [14,33]
1315	})}).addTo(map));
1316	poiSearchMarker[poiSearchMarker.length-1].popState=false;
1317	poiSearchMarker[poiSearchMarker.length-1].feature = feature;
1318	poiSearchMarker[poiSearchMarker.length-1].index = poiSearchMarker.length-1;
1319	poiSearchMarker[poiSearchMarker.length-1].markerImg = markerImg;
1320	poiSearchMarker[poiSearchMarker.length-1].listMarkerImg = listMarkerImg;
1321	poiSearchMarker[poiSearchMarker.length-1].tooltipIconImg = tooltipIconImg;
1322	poiSearchMarker[poiSearchMarker.length-1].bindPopup(tooltip.makePOIContent(feature,tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
1323	poiSearchMarker[poiSearchMarker.length-1].on("click",function(e) {
1324		var index = this.index;
1325		if(this.popState) {
1326			this.popState = false;
1327			$(".navi_PoiResultIconSp")[index].src = this.listMarkerImg;
1328			var iconOn = new L.Icon({
1329				iconUrl:this.markerImg,
1330				iconAnchor: [14,33]
1331			});
1332			this.setIcon(iconOn);
1333		}else {
1334			if(rightClickPop!=null) {
1335				map.closePopup(rightClickPop);
1336			}
1337			for(var i=0; i<poiSearchMarker.length; i++) {
1338				var iconOn = null;
1339				if(i==index) {
1340					$(".navi_PoiResultIconSp")[i].src = "./images/pin/pin_on.png";
1341					poiSearchMarker[i].popState = true;
1342					poiSearchMarker[i].setZIndexOffset(1000);
1343					iconOn = new L.Icon({
1344						iconUrl:"./images/pin/mpin_on.png",
1345						iconAnchor: [14,33]
1346					});
1347				}else {
1348					$(".navi_PoiResultIconSp")[i].src = poiSearchMarker[i].listMarkerImg;
1349					poiSearchMarker[i].popState = false;
1350					poiSearchMarker[i].setZIndexOffset(100);
1351					iconOn = new L.Icon({
1352						iconUrl:poiSearchMarker[i].markerImg,
1353						iconAnchor: [14,33]
1354					});
1355				}
1356				poiSearchMarker[i].setIcon(iconOn);
1357				
1358				if(poiSearchMarker[i].popState) {
1359					poiSearchMarker[i].bindPopup(tooltip.makePOIContent(poiSearchMarker[i].feature,poiSearchMarker[i].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
1360				}
1361			}
1362			
1363			for(var i=0; i<geoCodingSearchMarker.length; i++) {
1364				$(".navi_JusoResultIconSp")[i].src = geoCodingSearchMarker[i].listMarkerImg;
1365				geoCodingSearchMarker[i].popState = false;
1366				geoCodingSearchMarker[i].setZIndexOffset(100);
1367				
1368				var iconOn = new L.Icon({
1369					iconUrl:geoCodingSearchMarker[i].markerImg,
1370					iconAnchor: [14,33]
1371				});
1372				geoCodingSearchMarker[i].setIcon(iconOn);
1373			}
1374			
1375			for(var i=0; i<ncodeSearchMarker.length; i++) {
1376				ncodeSearchMarker[i].popState = false;
1377				ncodeSearchMarker[i].closePopup();
1378			}
1379			ncodeSelectMid = "";
1380			
1381			for(var i=0; i<jiguMarker.length; i++) {
1382				jiguMarker[i].popState = false;
1383				jiguMarker[i].closePopup();
1384			}
1385			jiguSelectMid = "";
1386		}
1387	});
1388}
1389
1390function navi_themeflagSp(poiFeature,contentName,themeName,themeId) {
1391	var markerImg = "./images/pin/mpin_poi_son.png";
1392	var listMarkerImg = "./images/pin/pin_poi_son.png";
1393	var tooltipIconImg = "./images/num/num_"+(poiSearchMarker.length+1)+".png";
1394	poiSearchMarker.push(new L.Marker(new L.LatLng(poiFeature.geometry.coordinates[0], poiFeature.geometry.coordinates[1]),{icon: new L.Icon({
1395    	iconUrl: markerImg,
1396    	iconAnchor: [14,33]
1397	})}).addTo(map));
1398	var poiSearchMarkerIndex = poiSearchMarker.length-1;
1399	poiSearchMarker[poiSearchMarker.length-1].popState=false;
1400	poiSearchMarker[poiSearchMarker.length-1].markerImg = markerImg;
1401	poiSearchMarker[poiSearchMarker.length-1].listMarkerImg = markerImg;
1402	poiSearchMarker[poiSearchMarker.length-1].tooltipIconImg = tooltipIconImg;
1403	poiSearchMarker[poiSearchMarker.length-1].c_tree_flag = poiFeature.properties.c_tree_flag;
1404	
1405	jHeader.serviceName = "EXTENSION_SEARCH";
1406	extBody.conditions = {};
1407	extBody.conditions.geometry = {};
1408	extBody.conditions.geometry.spatialOp = "INTERSECT";
1409	extBody.conditions.field = [];
1410	extBody.conditions.field[extBody.conditions.field.length] = {};
1411	extBody.conditions.field[extBody.conditions.field.length-1].name = themeName;
1412	extBody.conditions.field[extBody.conditions.field.length-1].value = themeId;
1413	
1414	extBody.contentName = contentName;
1415	extBody.selectFields.geoType = "ORIGIN";
1416	extBody.page = {};
1417	extBody.page.cnt=10;
1418	extBody.page.pageNo=1;
1419	var jReqBody = {
1420		"header" : jHeader,
1421		"body" : extBody
1422	};
1423	ajaxLoding = true;
1424	var dataString = "callback=?&req="+encodeURIComponent(objectToJSONString(jReqBody));
1425	//console.log(jUrl+"?callback=?&req="+objectToJSONString(jReqBody));
1426	$.ajax({
1427		url:jUrl,
1428		type:'POST',
1429		dataType:'jsonp',
1430		data:dataString,
1431		timeout : 200000,
1432		async : false,
1433		error : function(d, textStatus, error){
1434			alert("다시 실행해주시기 바랍니다. code:11 \n"+"getJSON failed : "+d+",  status: " + textStatus + ",  error: "+error);
1435		},success: function(data, result){
1436			if(data.body.geojson!=undefined) {
1437				var countID = data.body.geojson.features.length;
1438				var totalCnt = data.body.page.totalCnt;
1439				var list = "";
1440				for ( var i = 0; i < countID; i++) {
1441					var feature = data.body.geojson.features[i];
1442					poiSearchMarker[poiSearchMarkerIndex].popState=false;
1443					poiSearchMarker[poiSearchMarkerIndex].feature = feature;
1444					poiSearchMarker[poiSearchMarkerIndex].index = poiSearchMarkerIndex;
1445					poiSearchMarker[poiSearchMarkerIndex].bindPopup(tooltip.themeContent(feature,parseInt(poiFeature.properties.c_tree_flag)-1,poiSearchMarker[poiSearchMarkerIndex].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
1446					poiSearchMarker[poiSearchMarkerIndex].on("click",function(e) {
1447						var index = this.index;
1448						if(this.popState) {
1449							this.popState = false;
1450							$(".navi_PoiResultIconSp")[index].src = this.listMarkerImg;
1451							var iconOn = new L.Icon({
1452								iconUrl:this.markerImg,
1453								iconAnchor: [14,33]
1454							});
1455							this.setIcon(iconOn);
1456						}else {
1457							for(var i=0; i<poiSearchMarker.length; i++) {
1458								var iconOn = null;
1459								if(i==index) {
1460									$(".navi_PoiResultIconSp")[i].src = "./images/pin/pin_on.png";
1461									poiSearchMarker[i].popState = true;
1462									poiSearchMarker[i].setZIndexOffset(1000);
1463									
1464									iconOn = new L.Icon({
1465										iconUrl:"./images/pin/mpin_on.png",
1466										iconAnchor: [14,33]
1467									});
1468								}else {
1469									$(".navi_PoiResultIconSp")[i].src = poiSearchMarker[i].listMarkerImg;
1470									poiSearchMarker[i].popState = false;
1471									poiSearchMarker[i].setZIndexOffset(100);
1472									
1473									iconOn = new L.Icon({
1474										iconUrl:poiSearchMarker[i].markerImg,
1475										iconAnchor: [14,33]
1476									});
1477								}
1478								poiSearchMarker[i].setIcon(iconOn);
1479								
1480								if(poiSearchMarker[i].popState) {
1481									poiSearchMarker[i].bindPopup(tooltip.themeContent(feature,parseInt(poiFeature.properties.c_tree_flag)-1,poiSearchMarker[i].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
1482								}
1483							}
1484							
1485							for(var i=0; i<geoCodingSearchMarker.length; i++) {
1486								$(".navi_JusoResultIconSp")[i].src = geoCodingSearchMarker[i].listMarkerImg;
1487								geoCodingSearchMarker[i].popState = false;
1488								geoCodingSearchMarker[i].setZIndexOffset(100);
1489								
1490								var iconOn = new L.Icon({
1491									iconUrl:geoCodingSearchMarker[i].markerImg,
1492									iconAnchor: [14,33]
1493								});
1494								geoCodingSearchMarker[i].setIcon(iconOn);
1495							}
1496							
1497							for(var i=0; i<ncodeSearchMarker.length; i++) {
1498								ncodeSearchMarker[i].popState = false;
1499								ncodeSearchMarker[i].closePopup();
1500							}
1501							ncodeSelectMid = "";
1502							
1503							for(var i=0; i<jiguMarker.length; i++) {
1504								jiguMarker[i].popState = false;
1505								jiguMarker[i].closePopup();
1506							}
1507							jiguSelectMid = "";
1508						}
1509					});
1510					
1511					if (feature.geometry.type == "Polygon") {
1512						var cntCoord = feature.geometry.coordinates.length;
1513						for ( var j = 0; j < cntCoord; j++) {
1514							var cntCoord2 = feature.geometry.coordinates[j].length;
1515							for ( var k = 0; k < cntCoord2; k++) {
1516								var UtmkX = feature.geometry.coordinates[j][k][0];
1517								var UtmkY = feature.geometry.coordinates[j][k][1];
1518								var geoWgs = Coord_Trans("utmktowgs", new PT(UtmkX, UtmkY));
1519								feature.geometry.coordinates[j][k][0] = geoWgs.y;
1520								feature.geometry.coordinates[j][k][1] = geoWgs.x;
1521							}
1522						}
1523					}else if (feature.geometry.type == "MultiPolygon") {
1524						var cntCoord = feature.geometry.coordinates.length;
1525						
1526						for ( var j = 0; j < cntCoord; j++) {
1527							var cntCoord2 = feature.geometry.coordinates[j].length;
1528
1529							for ( var k = 0; k < cntCoord2; k++) {
1530								var cntCoord3 = feature.geometry.coordinates[j][k].length;
1531
1532								for ( var l = 0; l < cntCoord3; l++) {
1533									var UtmkX = feature.geometry.coordinates[j][k][l][0];
1534									var UtmkY = feature.geometry.coordinates[j][k][l][1];
1535									var geoWgs = Coord_Trans("utmktowgs", new PT(UtmkX, UtmkY));
1536									feature.geometry.coordinates[j][k][l][0] = geoWgs.y;
1537									feature.geometry.coordinates[j][k][l][1] = geoWgs.x;
1538								}
1539							}
1540						}
1541					}
1542					if(contentName=="takji") {
1543						poiExtensionSearchLayer.push(new L.GeoJSON(
1544							feature, {
1545								style : function() {
1546									return {
1547										color: '#08a65d', weight: 2, opacity: 1, dashArray: '5, 5', fill: true, fillColor: '#08a65d', fillOpacity: 0.2, clickable : false
1548					              	};
1549								}
1550						}).addTo(map));
1551					}else if(contentName=="indoor") {
1552						poiExtensionSearchLayer.push(new L.GeoJSON(
1553							feature, {
1554								style : function() {
1555									return {
1556										color: '#018ece', weight: 2, dashArray: '5, 5', opacity: 1, fill: true, fillColor: '#018ece', fillOpacity: 0.2, clickable : false
1557					              	};
1558								}
1559						}).addTo(map));
1560					}
1561				}
1562			}
1563			ajaxLoding = false;
1564		}
1565	});
1566}
1567
1568
1569
1570function navi_subPOISearchSp(code,page,treeFlag,parentIndex) {
1571	jHeader.serviceName = "POI";
1572	poiBody.crs = "GRS_80";
1573	poiBody.fulltext = "";
1574	poiBody.field = [];
1575	poiBody.field[0] = {};
1576	poiBody.field[0].name = treeFlag;
1577	poiBody.field[0].value = code;
1578	poiBody.page = {};
1579	poiBody.page.cnt = 10;
1580    poiBody.page.pageNo = page;
1581	var jReqBody = {
1582		"header" : jHeader,
1583		"body" : poiBody
1584	};
1585	delete poiBody.mbr;
1586	var dataString = "callback=?&req="+encodeURIComponent(objectToJSONString(jReqBody));
1587	//console.log(jUrl+"?callback=?&req="+objectToJSONString(jReqBody));
1588	$.ajax({
1589		url:jUrl,
1590		async:true,
1591		type:'POST',
1592		dataType:'jsonp',
1593		data:dataString,
1594		timeout : 200000,
1595		error : function(d, textStatus, error){
1596			alert("다시 실행해주시기 바랍니다. code:11 \n"+"getJSON failed : "+d+",  status: " + textStatus + ",  error: "+error);
1597		},success: function(data, result){
1598			if(data.body.geojson!=undefined) {
1599				var listCount = data.body.geojson.features.length; // ID 개수
1600				var totalCnt = data.body.page.totalCnt;
1601				var list = "";
1602				for(var i=0; i<listCount; i++) {
1603					var feature = data.body.geojson.features[i];
1604					var centerX = feature.geometry.coordinates[0];
1605					var centerY = feature.geometry.coordinates[1];
1606					
1607					var markerImg = "./images/pin/mpin_poi_s"+(subPOISearchMarker.length+1)+".png";
1608					var listMarkerImg = "./images/pin/pin_poi_s"+(subPOISearchMarker.length+1)+".png";
1609					var tooltipIconImg = "./images/num/num_poi_"+(subPOISearchMarker.length+1)+".png";
1610					subPOISearchMarker.push(new L.Marker(new L.LatLng(centerX, centerY),{icon: new L.Icon({
1611				    	iconUrl: markerImg,
1612				    	iconAnchor: [14,33]
1613					})}).addTo(map));
1614					subPOISearchMarker[subPOISearchMarker.length-1].popState=false;
1615					subPOISearchMarker[subPOISearchMarker.length-1].feature = feature;
1616					subPOISearchMarker[subPOISearchMarker.length-1].index = subPOISearchMarker.length-1;
1617					subPOISearchMarker[subPOISearchMarker.length-1].markerImg = markerImg;
1618					subPOISearchMarker[subPOISearchMarker.length-1].listMarkerImg = listMarkerImg;
1619					subPOISearchMarker[subPOISearchMarker.length-1].tooltipIconImg = tooltipIconImg;
1620					subPOISearchMarker[subPOISearchMarker.length-1].bindPopup(tooltip.makePOIContent(feature,tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
1621					subPOISearchMarker[subPOISearchMarker.length-1].on("click",function(e) {
1622						var index = this.index;
1623						if(this.popState) {
1624							this.popState = false;
1625						}else {
1626							if(rightClickPop!=null) {
1627								map.closePopup(rightClickPop);
1628							}
1629							this.popState = true;
1630							this.setZIndexOffset(1000);
1631							for(var i=0; i<subPOISearchMarker.length; i++) {
1632								if(i!=index) {
1633									subPOISearchMarker[i].popState = false;
1634									subPOISearchMarker[i].setZIndexOffset(100);
1635								}
1636							}
1637							
1638							for(var i=0; i<ncodeSearchMarker.length; i++) {
1639								ncodeSearchMarker[i].popState = false;
1640								ncodeSearchMarker[i].closePopup();
1641							}
1642							ncodeSelectMid = "";
1643							
1644							for(var i=0; i<jiguMarker.length; i++) {
1645								jiguMarker[i].popState = false;
1646								jiguMarker[i].closePopup();
1647							}
1648							jiguSelectMid = "";
1649						}
1650					});
1651					
1652					// ----------- 리스트 ---------------------------------
1653					var properties = feature.properties;
1654					list += navi_subPOISearchListSp(i,properties,centerX,centerY);
1655					// ----------- //리스트 ---------------------------------
1656				}
1657				list += navi_subPOIPagingSp(page,totalCnt,treeFlag,code,parentIndex);
1658				
1659				$("#"+code).html(list);
1660				
1661				$(".navi_subPOIResult").hover(
1662					function() {
1663						var index = $(".navi_subPOIResult").index(this);
1664						for(var i=0; i<subPOISearchMarker.length; i++) {
1665							if(i==index) {
1666								subPOISearchMarker[i].setZIndexOffset(1000);
1667							}else {
1668								subPOISearchMarker[i].setZIndexOffset(100);
1669							}
1670						}
1671					},function() {
1672						var index = $(".navi_subPOIResult").index(this);
1673						for(var i=0; i<subPOISearchMarker.length; i++) {
1674							if(subPOISearchMarker[i].popState) {
1675								subPOISearchMarker[i].setZIndexOffset(1000);
1676							}else {
1677								subPOISearchMarker[i].setZIndexOffset(100);
1678							}
1679						}
1680				});
1681				
1682			}else {
1683			}
1684		}
1685	});
1686}
1687
1688function navi_subPOIPagingSp(pageNum, totalCnt, treeFlag, code, parentIndex){
1689	var startPageNum = pageNum-((pageNum-1)%5);
1690	var maxPageNum = Math.ceil(totalCnt/10); // 페이지 갯수
1691	var subPagingList="";
1692	subPagingList += '<div class="tc" style="margin-top:10px;">';
1693	subPagingList += '<div class="page clear">';
1694	if(pageNum>5) {
1695		subPagingList += '<span class="off arrow"><span><a href="#" onclick="navi_subMenuSlideSp(\'POISearch\',\''+code+'\',1,'+(startPageNum-1)+','+parentIndex+',\''+treeFlag+'\');">&lt;</a></span></span>';
1696	}
1697	for(var i=0; i<5; i++) {	
1698		if(i+startPageNum<=maxPageNum) {	
1699			if(i+startPageNum==pageNum) {
1700				subPagingList += '<span class="on">'+(i+startPageNum)+'</span>';
1701			}else {
1702				subPagingList += '<span class="off" onclick="navi_subMenuSlideSp(\'POISearch\',\''+code+'\',1,'+(i+startPageNum)+','+parentIndex+',\''+treeFlag+'\');"><a href="#">'+(i+startPageNum)+'</a></span>';
1703			}
1704		}
1705	}
1706	if(maxPageNum>=startPageNum+5)
1707	{
1708		subPagingList += '<span class="off arrow"><span><a href="#" onclick="navi_subMenuSlideSp(\'POISearch\',\''+code+'\',1,'+(startPageNum+5)+','+parentIndex+',\''+treeFlag+'\');">&gt;</a></span></span>';
1709	}
1710	subPagingList += '</div>';
1711	subPagingList += '</div>';
1712    return subPagingList;
1713}
1714
1715
1716// 길찾기 동적 리스트 테이블 생성
1717function navi_searchListSp(param, properties, centerX, centerY, themeId, treeFlag){
1718	var content1 = "";
1719	var content2 = "";
1720	var content3 = "";
1721	var content4 = "";
1722	
1723	if(param=="addressSearch"){
1724		var resKey = new Array(); // 결과값 키값
1725		var resVal = new Array(); // 결과값 value
1726		
1727		for ( var key in properties) {
1728			resKey.push(key);
1729			resVal.push(properties[key]);
1730		}
1731		
1732		var addrType = properties.type; // 어떤 주소인지 판별
1733		if(addrType == "sido" || addrType == "gu" || addrType == "li"){  //시도,시군구
1734			content1 = properties.name;
1735		}else if(addrType == "road"){ //도로
1736			content1 = properties.name;
1737			content2 = properties.code;
1738		}else if(addrType == "ldong" || addrType == "hdong"){ //읍면동(행정동,법정동)
1739			content1 = properties.name;
1740
1741			if(lan=="KOR") { content2 = "관련주소 : "; }
1742			else if(lan=="ENG") { content2 = "Related address : "; }
1743			else if(lan=="JAN") { content2 = "関連住所 : "; }
1744			else if(lan=="CHINAG") { content2 = "关联地址 : "; }
1745			if(properties.hcodename!=undefined) {
1746				if(properties.hcodename!="") {
1747					content2 += properties.hcodename;	
1748				}else {
1749					content2 = "";
1750				}
1751			}else {
1752				if(properties.lcodename!="") {
1753					content2 += properties.lcodename;	
1754				}else {
1755					content2 = "";
1756				}
1757			}
1758		}else if(addrType == "jijuk"){ //지번주소
1759			content1 = properties.pnuname;
1760			var data = properties.newrpnuname.split("|");
1761			
1762			if(lan=="KOR") { content2 = "도로명 : "; }
1763			else if(lan=="ENG") { content2 = "Road name address : "; }
1764			else if(lan=="JAN") { content2 = "道路名 : "; }
1765			else if(lan=="CHINAG") { content2 = "道路名 : "; }
1766			
1767			for(var i=0; i<data.length; i++) {
1768				var data2 = data[i].split(" ");
1769				content2 += data[i].replace(data2[0]+" "+data2[1], "");
1770				if(i!=data.length-1) {
1771					content2 += ",";
1772				}
1773			}
1774		}else if(addrType == "build"){
1775			content1 = properties.newrpnuname;
1776			var data = properties.pnuname.split("|");
1777			
1778			if(lan=="KOR") { content2 = "지번 : "; content3 = properties.buildname; }
1779			else if(lan=="ENG") { content2 = "Lot number : "; }
1780			else if(lan=="JAN") { content2 = "地番 : "; }
1781			else if(lan=="CHINAG") { content2 = "地番 : "; }
1782			
1783			for(var i=0; i<data.length; i++) {
1784				var data2 = data[i].split(" ");
1785				content2 += data[i].replace(data2[0]+" "+data2[1], "");
1786				if(i!=data.length-1) {
1787					content2 += ",";
1788				}
1789			}
1790		}
1791		
1792		var list='';
1793		list += '<div class="navi_JusoResultSp list clear" onclick="navi_setMapClickSp(this); startEndChoiceSp(this,\''+content1+'\','+centerX+','+centerY+');"><!-- class on : 리스트 on 상태 -->';
1794		list += '<div class="pin"><img class="navi_JusoResultIconSp" src="'+geoCodingSearchMarker[geoCodingSearchMarker.length-1].listMarkerImg+'" width="20" height="24" alt="" /></div><!-- pin -->';
1795		list += '<dl>';
1796		list += '<dt>'+content1+'</dt>';
1797		if(content2!="" && addrType == "road") {
1798			list += '<dd class="txt2">'+content2+'</dd>';
1799		}
1800		if(content3!="") {
1801			list += '<dd class="blank"></dd>';
1802			list += '<dd class="txt2">'+content3+'</dd>';
1803		}
1804		if(addrType == "road") {
1805			list += '<dd class="navi_sub_address plus"><a href="#" onclick="stopProp(); navi_subMenuSlideSp(\'addressSearch\',\''+content2+'\',0,1,'+(geoCodingSearchMarker.length-1)+');"></a></dd>';
1806			list += '</dl>';
1807			list += '<div id="'+content2+'" class="navi_sub_list slist clear" style="display:none;">';
1808			list += '</div>';
1809		}else {
1810			list += '</dl>';
1811		}
1812		
1813		var startStr = "", middleStr = "", endStr = "";
1814		if(lan=="KOR") { startStr = "출발"; middleStr = "경유"; endStr = "도착"; }
1815		else if(lan=="ENG") { startStr = "Start"; middleStr = "Via"; endStr = "Arrive"; }
1816		else if(lan=="JAN") { startStr = "出発"; middleStr = "経由"; endStr = "到着"; }
1817		else if(lan=="CHINAG") { startStr = "出发"; middleStr = "经由"; endStr = "到着"; }
1818		
1819		if(naviSearchTypeSp.indexOf("start")!=-1) {
1820			list += '<div class="navi_fix_addr_listSp ico_start" style="display:none;"><span>'+startStr+'</span></div>';	
1821		}else if(naviSearchTypeSp.indexOf("end")!=-1) {
1822			list += '<div class="navi_fix_addr_listSp ico_arrival" style="display:none;"><span>'+endStr+'</span></div>';
1823		}else {
1824			list += '<div class="navi_fix_addr_listSp ico_via" style="display:none;"><span>'+middleStr+'</span></div>';
1825		}
1826		
1827		list += '</div>';
1828	}else if(param=="POISearch"){
1829		content1 = properties.name;
1830		var htmlChar = lfNmFormat(properties.sv_cls);
1831		content2 = htmlChar;
1832		content3 = properties.newrpnuname;
1833		if(properties.newrpnuname!="" && properties.newrpnuname!=null){
1834			var addr = properties.newrpnuname.split(" ");
1835			jibunAddr = properties.pnuname.replace(addr[0]+" "+addr[1], "");
1836		}else{
1837			jibunAddr = properties.pnuname;
1838		}
1839		
1840		if(lan=="KOR") { content4 = "지번 : "; }
1841		else if(lan=="ENG") { content4 = "Lot number : "; }
1842		else if(lan=="JAN") { content4 = "地番 : "; }
1843		else if(lan=="CHINAG") { content4 = "地番 : "; }
1844		content4 += jibunAddr;
1845		
1846		var list = '';
1847		list += '<div class="navi_PoiResultSp list clear" onclick="navi_setMapClickSp(this); startEndChoiceSp(this,\''+content1+'\','+centerX+','+centerY+');"><!-- class on : 리스트 on 상태 -->';
1848		list += '<div class="pin"><img class="navi_PoiResultIconSp" src="'+poiSearchMarker[poiSearchMarker.length-1].listMarkerImg+'" width="20" height="24" alt="" /></div><!-- pin -->';
1849		list += '<dl>';
1850		list += '<dt>'+content1+'</dt>';
1851		list += '<dd class="txt">'+content3+'</dd>';
1852		list += '<dd class="txt2">'+content4+'</dd>';
1853		list += '<dd class="blank"></dd><!-- blank : txt2 와 txt2 사이 padding 값 -->';
1854		list += '<dd class="txt2">'+content2+'</dd>';
1855		if(themeId!=null && themeId!="-2147483648" && themeId!="" && themeId!=0) {
1856			list += '<dd class="navi_sub_poi plus"><a href="#" onclick="stopProp(); navi_subMenuSlideSp(\'POISearch\',\''+themeId+'\',0,1,'+(poiSearchMarker.length-1)+',\''+treeFlag+'\');"></a></dd>';
1857			list += '</dl>';
1858			list += '<div id="'+themeId+'" class="navi_sub_list slist clear" style="display:none;">';
1859			list += '</div>';
1860		}else {
1861			list += '</dl>';
1862		}
1863		
1864		var startStr = "", middleStr = "", endStr = "";
1865		if(lan=="KOR") { startStr = "출발"; middleStr = "경유"; endStr = "도착"; }
1866		else if(lan=="ENG") { startStr = "Start"; middleStr = "Via"; endStr = "Arrive"; }
1867		else if(lan=="JAN") { startStr = "出発"; middleStr = "経由"; endStr = "到着"; }
1868		else if(lan=="CHINAG") { startStr = "出发"; middleStr = "经由"; endStr = "到着"; }
1869		
1870		if(naviSearchTypeSp.indexOf("start")!=-1) {
1871			list += '<div class="navi_fix_poi_listSp ico_start" style="display:none;"><span>'+startStr+'</span></div>';	
1872		}else if(naviSearchTypeSp.indexOf("end")!=-1) {
1873			list += '<div class="navi_fix_poi_listSp ico_arrival" style="display:none;"><span>'+endStr+'</span></div>';
1874		}else {
1875			list += '<div class="navi_fix_poi_listSp ico_via" style="display:none;"><span>'+middleStr+'</span></div>';
1876		}
1877		list += '</div>';
1878	}	
1879	return list;
1880}
1881
1882
1883function navi_subGeoSearchListSp(i, properties, centerX, centerY) {
1884	var newrpnuname = properties.newrpnuname;
1885	var pnuname = properties.pnuname;
1886	var buildname = properties.buildname;
1887	var data = pnuname.split("|");
1888	var data2 = data[0].split(" ");
1889	var pnuname = data[0].replace(data2[0]+" "+data2[1], "");
1890	
1891	var list = '';
1892	list += '<div class="navi_subGeoResult blank clear" onclick="stopProp(); navi_setMapClickSp(this);">';
1893	list += '<div class="pin"><img src="'+subGeoCodingSearchMarker[subGeoCodingSearchMarker.length-1].listMarkerImg+'" width="20" height="24" alt="" /></div>';
1894	list += '<dl>';
1895	list += '<dt>'+newrpnuname+'</dt>';
1896	list += '<dd>'+pnuname+'</dd>';
1897	list += '<dd>'+buildname+'</dd>';
1898	list += '</dl>';
1899	list += '</div>';
1900	return list;
1901}
1902
1903
1904function navi_subPOISearchListSp(i, properties, centerX, centerY) {
1905	var content1 = "";
1906	var content2 = "";
1907	var content3 = "";
1908	var content4 = "";
1909	content1 = properties.name;
1910	var htmlChar = lfNmFormat(properties.sv_cls);
1911	content2 = htmlChar;
1912	content3 = properties.newrpnuname;
1913	if(properties.newrpnuname!="" && properties.newrpnuname!=null)
1914	{
1915		var addr = properties.newrpnuname.split(" ");
1916		jibunAddr = properties.pnuname.replace(addr[0]+" "+addr[1], "");
1917	}else
1918	{
1919		jibunAddr = properties.pnuname;
1920	}
1921	content4 = "지번 : "+jibunAddr;
1922	
1923	var list = '';
1924	list += '<div class="navi_subPOIResult blank clear" onclick="stopProp(); navi_setMapClickSp(this);">';
1925	list += '<div class="pin"><img src="'+subPOISearchMarker[subPOISearchMarker.length-1].listMarkerImg+'" width="20" height="24" alt="" /></div>';
1926	list += '<dl>';
1927	list += '<dt>'+content1+'</dt>';
1928	list += '<dd>'+content3+'</dd>';
1929	list += '<dd>'+content4+'</dd>';
1930	list += '<dd>'+content2+'</dd>';
1931	list += '</dl>';
1932	list += '</div>';
1933	
1934	return list;
1935}
1936
1937
1938
1939// 리스트 마우스 이벤트
1940function navi_searchResultSp(type, mode, totalCnt, list, page) {
1941	if(type=="addressSearch") {
1942		map.fitBounds(geoCodingSearchLayer[0].getBounds(),{ padding: [100, 100] });
1943		map.invalidateSize(false); // 맵 갱신
1944		
1945		if(mode==0) {
1946			navi_poiSearchSp(mode,page);
1947		}else if(mode==1) {
1948			list += navi_jusoPagingSp(page, totalCnt); // 주소리스트 페이징
1949		}
1950		
1951		if(lan=="KOR") {
1952			$("#navi_addressTotalCountSp").html("주소 ( <span>"+toComma(totalCnt)+"</span> 건)");
1953		}else if(lan=="ENG") {
1954			$("#navi_addressTotalCountSp").html("Address ( <span>"+toComma(totalCnt)+"</span> cases )");
1955		}else if(lan=="JAN") {
1956			$("#navi_addressTotalCountSp").html("住所 ( <span>"+toComma(totalCnt)+"</span> 件 )");
1957		}else if(lan=="CHINAG") {
1958			$("#navi_addressTotalCountSp").html("地址 ( <span>"+toComma(totalCnt)+"</span> 件 )");
1959		}
1960		$("#navi_addressListFormSp").html(list);
1961		
1962		startEndChoiceSp($(".navi_JusoResultSp")[0],$(".navi_JusoResultSp > dl > dt").html(),geoCodingSearchMarker[0].getLatLng().lat,geoCodingSearchMarker[0].getLatLng().lng);
1963		$(".navi_JusoResultIconSp")[0].src = "./images/pin/pin_on.png";
1964		var iconOn = new L.Icon({
1965			iconUrl:"./images/pin/mpin_on.png",
1966			iconAnchor: [14,33]
1967		});
1968		geoCodingSearchMarker[0].setIcon(iconOn);
1969		geoCodingSearchMarker[0].bindPopup(tooltip.makeGeoContent(geoCodingSearchMarker[0].feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
1970		geoCodingSearchMarker[0].openPopup();
1971		geoCodingSearchMarker[0].setZIndexOffset(1000);
1972		$(".navi_JusoResultSp").hover(
1973			function() {
1974				var index = $(".navi_JusoResultSp").index(this);
1975				$(".navi_JusoResultIconSp")[index].src = "./images/pin/pin_on.png";
1976				var iconOn = new L.Icon({
1977					iconUrl:"./images/pin/mpin_on.png",
1978					iconAnchor: [14,33]
1979				});
1980				geoCodingSearchMarker[index].setIcon(iconOn);
1981				
1982				for(var i=0; i<geoCodingSearchMarker.length; i++) {
1983					if(i==index) {
1984						geoCodingSearchMarker[i].setZIndexOffset(1000);
1985					}else {
1986						geoCodingSearchMarker[i].setZIndexOffset(100);
1987					}
1988					if(geoCodingSearchMarker[i].popState) {
1989						geoCodingSearchMarker[i].bindPopup(tooltip.makeGeoContent(geoCodingSearchMarker[i].feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
1990					}
1991				}
1992				
1993				for(var i=0; i<poiSearchMarker.length; i++) {
1994					poiSearchMarker[i].setZIndexOffset(100);
1995				}
1996			},function() {
1997				var index = $(".navi_JusoResultSp").index(this);
1998				if(geoCodingSearchMarker[index].popState) {
1999					geoCodingSearchMarker[index].bindPopup(tooltip.makeGeoContent(geoCodingSearchMarker[index].feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2000					geoCodingSearchMarker[index].openPopup();
2001					return;
2002				}
2003				$(".navi_JusoResultIconSp")[index].src = geoCodingSearchMarker[index].listMarkerImg;
2004				var iconOn = new L.Icon({
2005					iconUrl:geoCodingSearchMarker[index].markerImg,
2006					iconAnchor: [14,33]
2007				});
2008				geoCodingSearchMarker[index].setIcon(iconOn);
2009				
2010				for(var i=0; i<geoCodingSearchMarker.length; i++) {
2011					if(geoCodingSearchMarker[i].popState) {
2012						geoCodingSearchMarker[i].setZIndexOffset(1000);
2013						geoCodingSearchMarker[i].bindPopup(tooltip.makeGeoContent(geoCodingSearchMarker[i].feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2014						geoCodingSearchMarker[i].openPopup();
2015					}else {
2016						geoCodingSearchMarker[i].setZIndexOffset(100);
2017					}
2018				}
2019				
2020				for(var i=0; i<poiSearchMarker.length; i++) {
2021					if(poiSearchMarker[i].popState) {
2022						poiSearchMarker[i].setZIndexOffset(1000);
2023						if(poiSearchMarker[i].c_tree_flag!=undefined) {
2024							poiSearchMarker[i].bindPopup(tooltip.themeContent(poiSearchMarker[i].feature,parseInt(poiSearchMarker[i].c_tree_flag)-1),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2025						}else {
2026							poiSearchMarker[i].bindPopup(tooltip.makePOIContent(poiSearchMarker[i].feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2027						}
2028						poiSearchMarker[i].openPopup();
2029					}else {
2030						poiSearchMarker[i].setZIndexOffset(100);
2031					}
2032				}
2033		});
2034		//map.fitBounds(geoCodingSearchLayer[0].getBounds(),{ padding: [100, 100] });
2035	}else if(type=="POISearch") {
2036		if(mode==0) {
2037			
2038		}else if(mode==2) {
2039			list += navi_poiPagingSp(page,totalCnt);
2040		}
2041		
2042		if(lan=="KOR") {
2043			$("#navi_poiTotalCountSp").html("장소 ( <span>"+toComma(totalCnt)+"</span> 건 )");
2044		}else if(lan=="ENG") {
2045			$("#navi_poiTotalCountSp").html("Place ( <span>"+toComma(totalCnt)+"</span> cases )");
2046		}else if(lan=="JAN") {
2047			$("#navi_poiTotalCountSp").html("場所 ( <span>"+toComma(totalCnt)+"</span> 件 )");
2048		}else if(lan=="CHINAG") {
2049			$("#navi_poiTotalCountSp").html("场所 ( <span>"+toComma(totalCnt)+"</span> 件 )");
2050		}
2051		$("#navi_poiListFormSp").html(list);
2052		
2053		if(geoCodingSearchMarker.length==0) {
2054			map.setView(poiSearchMarker[0].getLatLng(), 12); // 지도 위치 이동 (좌표,지도 레벨)
2055			map.invalidateSize(false); // 맵 갱신
2056			startEndChoiceSp($(".navi_PoiResultSp")[0],$(".navi_PoiResultSp > dl > dt").html(),poiSearchMarker[0].getLatLng().lat,poiSearchMarker[0].getLatLng().lng);
2057			$(".navi_PoiResultIconSp")[0].src = "./images/pin/pin_on.png";
2058			var iconOn = new L.Icon({
2059				iconUrl:"./images/pin/mpin_on.png",
2060				iconAnchor: [14,33]
2061			});
2062			
2063			poiSearchMarker[0].setIcon(iconOn);
2064			if(poiSearchMarker[0].c_tree_flag!=undefined) {
2065				interval = setInterval(function() {
2066					if(!ajaxLoding) {
2067						poiSearchMarker[0].popState = true;
2068						poiSearchMarker[0].bindPopup(tooltip.themeContent(poiSearchMarker[0].feature,parseInt(poiSearchMarker[0].c_tree_flag)-1,poiSearchMarker[0].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2069						poiSearchMarker[0].openPopup();
2070						poiSearchMarker[0].setZIndexOffset(1000);
2071						clearInterval(interval);
2072						interval = null;
2073					}
2074				},100);
2075			}else {
2076				poiSearchMarker[0].popState = true;
2077				poiSearchMarker[0].bindPopup(tooltip.makePOIContent(poiSearchMarker[0].feature,poiSearchMarker[0].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2078				poiSearchMarker[0].openPopup();
2079				poiSearchMarker[0].setZIndexOffset(1000);
2080			}
2081		}
2082		$(".navi_PoiResultSp").hover(
2083			function() {
2084				var index = $(".navi_PoiResultSp").index(this);
2085				$(".navi_PoiResultIconSp")[index].src = "./images/pin/pin_on.png";
2086				var iconOn = new L.Icon({
2087					iconUrl:"./images/pin/mpin_on.png",
2088					iconAnchor: [14,33]
2089				});
2090				poiSearchMarker[index].setIcon(iconOn);
2091				for(var i=0; i<poiSearchMarker.length; i++) {
2092					if(i==index) {
2093						poiSearchMarker[i].setZIndexOffset(1000);
2094					}else {
2095						poiSearchMarker[i].setZIndexOffset(100);
2096					}
2097					if(poiSearchMarker[i].popState) {
2098						if(poiSearchMarker[i].c_tree_flag!=undefined) {
2099							poiSearchMarker[i].bindPopup(tooltip.themeContent(poiSearchMarker[i].feature,parseInt(poiSearchMarker[i].c_tree_flag)-1,poiSearchMarker[i].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2100						}else {
2101							poiSearchMarker[i].bindPopup(tooltip.makePOIContent(poiSearchMarker[i].feature,poiSearchMarker[i].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2102						}
2103					}
2104				}
2105				
2106				for(var i=0; i<geoCodingSearchMarker.length; i++) {
2107					geoCodingSearchMarker[i].setZIndexOffset(100);
2108				}
2109			},function() {
2110				var index = $(".navi_PoiResultSp").index(this);
2111				if(poiSearchMarker[index].popState) {
2112					if(poiSearchMarker[index].c_tree_flag!=undefined) {
2113						poiSearchMarker[index].bindPopup(tooltip.themeContent(poiSearchMarker[index].feature,parseInt(poiSearchMarker[index].c_tree_flag)-1,poiSearchMarker[index].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2114					}else {
2115						poiSearchMarker[index].bindPopup(tooltip.makePOIContent(poiSearchMarker[index].feature,poiSearchMarker[index].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2116					}
2117					poiSearchMarker[index].openPopup();
2118					return;
2119				}
2120				$(".navi_PoiResultIconSp")[index].src = poiSearchMarker[index].listMarkerImg;
2121				var iconOn = new L.Icon({
2122					iconUrl:poiSearchMarker[index].markerImg,
2123					iconAnchor: [14,33]
2124				});
2125				poiSearchMarker[index].setIcon(iconOn);
2126				
2127				for(var i=0; i<poiSearchMarker.length; i++) {
2128					if(poiSearchMarker[i].popState) {
2129						poiSearchMarker[i].setZIndexOffset(1000);
2130						if(poiSearchMarker[i].c_tree_flag!=undefined) {
2131							poiSearchMarker[i].bindPopup(tooltip.themeContent(poiSearchMarker[i].feature,parseInt(poiSearchMarker[i].c_tree_flag)-1,poiSearchMarker[i].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2132						}else {
2133							poiSearchMarker[i].bindPopup(tooltip.makePOIContent(poiSearchMarker[i].feature,poiSearchMarker[i].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2134						}
2135						poiSearchMarker[i].openPopup();
2136					}else {
2137						poiSearchMarker[i].setZIndexOffset(100);
2138					}
2139				}
2140				
2141				for(var i=0; i<geoCodingSearchMarker.length; i++) {
2142					if(geoCodingSearchMarker[i].popState) {
2143						geoCodingSearchMarker[i].setZIndexOffset(1000);
2144						geoCodingSearchMarker[i].bindPopup(tooltip.makeGeoContent(geoCodingSearchMarker[i].feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2145						geoCodingSearchMarker[i].openPopup();
2146					}else {
2147						geoCodingSearchMarker[i].setZIndexOffset(100);
2148					}
2149				}
2150		});
2151	}
2152}
2153
2154// / 리스트 클릭시 위치로 이동...
2155function navi_setMapClickSp(this_){
2156	if(rightClickPop!=null) {
2157		map.closePopup(rightClickPop);
2158	}
2159	for(var i=0; i<ncodeSearchMarker.length; i++) {
2160		ncodeSearchMarker[i].popState = false;
2161		ncodeSearchMarker[i].closePopup();
2162	}
2163	ncodeSelectMid = "";
2164	
2165	for(var i=0; i<jiguMarker.length; i++) {
2166		jiguMarker[i].popState = false;
2167		jiguMarker[i].closePopup();
2168	}
2169	jiguSelectMid = "";
2170	
2171	var className = this_.className.split(" ")[0];
2172	var index = $("."+className).index(this_);
2173	for(var i=0; i<subGeoCodingSearchMarker.length; i++) {
2174		map.removeLayer(subGeoCodingSearchMarker[i]);
2175	}
2176	if(className=="navi_JusoResultSp") {
2177		map.fitBounds(geoCodingSearchLayer[index].getBounds(),{ padding: [100, 100] });
2178		for(var i=0; i<geoCodingSearchMarker.length; i++) {
2179			if(i!=index) {
2180				geoCodingSearchMarker[i].popState = false;
2181				$(".navi_JusoResultIconSp")[i].src = geoCodingSearchMarker[i].listMarkerImg;
2182				var iconOn = new L.Icon({
2183					iconUrl:geoCodingSearchMarker[i].markerImg,
2184					iconAnchor: [14,33]
2185				});
2186				geoCodingSearchMarker[i].setIcon(iconOn);
2187			}else {
2188				geoCodingSearchMarker[i].popState = true;
2189				geoCodingSearchMarker[i].bindPopup(tooltip.makeGeoContent(geoCodingSearchMarker[i].feature),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2190				geoCodingSearchMarker[i].openPopup();
2191			}
2192		}
2193		
2194		for(var i=0; i<poiSearchMarker.length; i++) {
2195			poiSearchMarker[i].popState = false;
2196			
2197			$(".navi_PoiResultIconSp")[i].src = poiSearchMarker[i].listMarkerImg;
2198			var iconOn = new L.Icon({
2199				iconUrl:poiSearchMarker[i].markerImg,
2200				iconAnchor: [14,33]
2201			});
2202			poiSearchMarker[i].setIcon(iconOn);
2203		}
2204	} else if(className=="navi_PoiResultSp") {
2205		map.setView(poiSearchMarker[index].getLatLng(), 12);
2206		for(var i=0; i<geoCodingSearchMarker.length; i++) {
2207			geoCodingSearchMarker[i].popState = false;
2208			$(".navi_JusoResultIconSp")[i].src = geoCodingSearchMarker[i].listMarkerImg;
2209			var iconOn = new L.Icon({
2210				iconUrl:geoCodingSearchMarker[i].markerImg,
2211				iconAnchor: [14,33]
2212			});
2213			geoCodingSearchMarker[i].setIcon(iconOn);
2214		}
2215		
2216		for(var i=0; i<poiSearchMarker.length; i++) {
2217			if(i!=index) {
2218				poiSearchMarker[i].popState = false;
2219				$(".navi_PoiResultIconSp")[i].src = poiSearchMarker[i].listMarkerImg;
2220
2221				var iconOn = new L.Icon({
2222					iconUrl:poiSearchMarker[i].markerImg,
2223					iconAnchor: [14,33]
2224				});
2225				
2226				poiSearchMarker[i].setIcon(iconOn);
2227			}else {
2228				poiSearchMarker[i].popState=true;
2229				if(poiSearchMarker[i].c_tree_flag!=undefined) {
2230					poiSearchMarker[i].bindPopup(tooltip.themeContent(poiSearchMarker[i].feature,parseInt(poiSearchMarker[i].c_tree_flag)-1,poiSearchMarker[i].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2231				}else {
2232					poiSearchMarker[i].bindPopup(tooltip.makePOIContent(poiSearchMarker[i].feature,poiSearchMarker[i].tooltipIconImg),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
2233				}
2234				poiSearchMarker[i].openPopup();
2235			}
2236		}
2237	}else if(className=="navi_subGeoResult") {
2238		map.fitBounds(subGeoCodingSearchLayer[index].getBounds(),{ padding: [100, 100] });
2239		for(var i=0; i<geoCodingSearchMarker.length; i++) {
2240			geoCodingSearchMarker[i].popState = false;
2241			$(".navi_JusoResultIconSp")[i].src = geoCodingSearchMarker[i].listMarkerImg;
2242			var iconOn = new L.Icon({
2243				iconUrl:geoCodingSearchMarker[i].markerImg,
2244				iconAnchor: [14,33]
2245			});
2246			geoCodingSearchMarker[i].setIcon(iconOn);
2247		}
2248		
2249		for(var i=0; i<poiSearchMarker.length; i++) {
2250			poiSearchMarker[i].popState = false;
2251			$(".navi_PoiResultIconSp")[i].src = poiSearchMarker[i].markerImg;
2252			var iconOn = new L.Icon({
2253				iconUrl:poiSearchMarker[i].listMarkerImg,
2254				iconAnchor: [14,33]
2255			});
2256			poiSearchMarker[i].setIcon(iconOn);
2257		}
2258		
2259		for(var i=0; i<ncodeSearchMarker.length; i++) {
2260			ncodeSearchMarker[i].popState = false;
2261			ncodeSearchMarker[i].closePopup();
2262		}
2263		ncodeSelectMid = "";
2264		
2265		for(var i=0; i<jiguMarker.length; i++) {
2266			jiguMarker[i].popState = false;
2267			jiguMarker[i].closePopup();
2268		}
2269		jiguSelectMid = "";
2270		
2271		subGeoCodingSearchMarker[index].addTo(map);
2272		subGeoCodingSearchMarker[index].openPopup();
2273		
2274	}else if(className=="navi_subPOIResult") {
2275		map.setView(subPOISearchMarker[index].getLatLng(), 12);
2276		for(var i=0; i<geoCodingSearchMarker.length; i++) {
2277			geoCodingSearchMarker[i].popState = false;
2278			$(".navi_JusoResultIconSp")[i].src = geoCodingSearchMarker[i].listMarkerImg;
2279			var iconOn = new L.Icon({
2280				iconUrl:geoCodingSearchMarker[i].markerImg,
2281				iconAnchor: [14,33]
2282			});
2283			geoCodingSearchMarker[i].setIcon(iconOn);
2284			geoCodingSearchMarker[i].closePopup();
2285		}
2286		
2287		for(var i=0; i<poiSearchMarker.length; i++) {
2288			poiSearchMarker[i].popState = false;
2289			$(".navi_PoiResultIconSp")[i].src = poiSearchMarker[i].listMarkerImg;
2290			var iconOn = new L.Icon({
2291				iconUrl:poiSearchMarker[i].markerImg,
2292				iconAnchor: [14,33]
2293			});
2294			poiSearchMarker[i].setIcon(iconOn);
2295			poiSearchMarker[i].closePopup();
2296		}
2297		for(var i=0; i<subPOISearchMarker.length; i++) {
2298			if(i!=index) {
2299				subPOISearchMarker[i].popState = false;
2300			}else {
2301				subPOISearchMarker[i].popState = true;
2302				subPOISearchMarker[i].openPopup();
2303			}
2304		}
2305	}
2306}
2307
2308
2309function startEndChoiceSp(this_,name,lat,lng) {
2310	var subFolder = "";
2311	if(lan=="KOR") { subFolder = "kor"; }
2312	else if(lan=="ENG") { subFolder = "eng"; }
2313	else if(lan=="JAN") { subFolder = "jpn"; }
2314	else if(lan=="CHINAG") { subFolder = "chn"; }
2315	
2316	var className = this_.className.split(" ")[0];
2317	var index = $("."+className).index(this_);
2318	if(className=="navi_JusoResultSp"){
2319		$(".navi_fix_addr_listSp").each(function(index2,e) {
2320			if(index!=index2) {
2321				$(e).css("display","none");
2322			}else {
2323				$(e).css("display","");
2324			}
2325		});
2326		
2327		$(".navi_fix_poi_listSp").css("display","none");
2328	}else if(className=="navi_PoiResultSp"){
2329		$(".navi_fix_poi_listSp").each(function(index2,e) {
2330			if(index!=index2) {
2331				$(e).css("display","none");
2332			}else {
2333				$(e).css("display","");
2334			}
2335		});
2336		
2337		$(".navi_fix_addr_listSp").css("display","none");
2338	}
2339	
2340	$("#"+naviSearchTypeSp).val(name);
2341	if(naviSearchTypeSp.indexOf("start")!=-1) {
2342		startNameSp = name;
2343		startCoordSp = lat+","+lng;
2344		if(naviStartMkSp!=null) {
2345			naviStartMkSp.setLatLng(new L.LatLng(lat, lng));	
2346		}else {
2347			naviStartMkSp = new L.Marker(new L.LatLng(lat, lng),{icon: new L.Icon({
2348				iconUrl: "./images/naviImg/"+subFolder+"/rpin_start.png",
2349				iconAnchor: [15,36]
2350			})}).addTo(map);
2351			naviStartMkSp.setZIndexOffset(10000);	
2352		}
2353	}else if(naviSearchTypeSp.indexOf("end")!=-1) {
2354		endNameSp = name;
2355		endCoordSp = lat+","+lng;
2356		if(naviEndMkSp!=null) {
2357			naviEndMkSp.setLatLng(new L.LatLng(lat, lng));	
2358		}else {
2359			naviEndMkSp = new L.Marker(new L.LatLng(lat, lng),{icon: new L.Icon({
2360	 	    	iconUrl: "./images/naviImg/"+subFolder+"/rpin_arrival.png",
2361	 	    	iconAnchor: [15,36]
2362			})}).addTo(map);
2363			naviEndMkSp.setZIndexOffset(10000);	
2364		}
2365	}else {
2366		middleNamesSp.set(naviSearchTypeSp,name);
2367		middleCoordsSp.set(naviSearchTypeSp,lat+","+lng);
2368		while (naviMiddleMkSp.length > 0) {
2369			map.removeLayer(naviMiddleMkSp[naviMiddleMkSp.length - 1]);
2370			naviMiddleMkSp.pop();
2371		}
2372		for(var i=0; i<middleCoordsSp.size(); i++) {
2373			var coords = middleCoordsSp.get(middleCoordsSp.keySet()[i]).split(",");
2374			var iconIndex = parseInt(middleCoordsSp.keySet()[i].replace("middleInputSp",""));
2375			naviMiddleMkSp.push(new L.Marker(new L.LatLng(coords[0], coords[1]),{icon: new L.Icon({
2376	   			iconUrl: "./images/naviImg/"+subFolder+"/rpin_via_"+(iconIndex+1)+".png",
2377	   			iconAnchor: [15,36]
2378	   		})}).addTo(map));
2379			naviMiddleMkSp[naviMiddleMkSp.length-1].setZIndexOffset(10000);
2380		}
2381	}
2382}
2383
2384function navi_searchClearSp() {
2385	while(geoCodingSearchLayer.length > 0){
2386		map.removeLayer(geoCodingSearchLayer[geoCodingSearchLayer.length - 1]);
2387		geoCodingSearchLayer.pop();
2388	}
2389	
2390	while (geoCodingSearchMarker.length > 0) {
2391		map.removeLayer(geoCodingSearchMarker[geoCodingSearchMarker.length - 1]);
2392		geoCodingSearchMarker.pop();
2393	}
2394	
2395	while(poiSearchMarker.length > 0){
2396		map.removeLayer(poiSearchMarker[poiSearchMarker.length - 1]);
2397		poiSearchMarker.pop();
2398	}
2399	
2400	$("#navi_addressListFormSp").html("");
2401	$("#navi_addressTotalCountSp").html("0");
2402	$("#navi_poiListFormSp").html("");
2403	$("#navi_poiTotalCountSp").html("0");
2404}
2405
2406function navi_subGeoSearchClearSp(id) {
2407	while (subGeoCodingSearchMarker.length > 0) {
2408		map.removeLayer(subGeoCodingSearchMarker[subGeoCodingSearchMarker.length - 1]);
2409		subGeoCodingSearchMarker.pop();
2410	}
2411	
2412	while (subGeoCodingSearchLayer.length > 0) {
2413		map.removeLayer(subGeoCodingSearchLayer[subGeoCodingSearchLayer.length - 1]);
2414		subGeoCodingSearchLayer.pop();
2415	}
2416	
2417	var idClass=$(".navi_sub_list");
2418	if(id!="") {
2419		/*
2420		 * for(var i=0; i<idClass.length; i++) { var tempId = idClass[i].id;
2421		 * if(tempId!=id) { $("#"+tempId).html(""); } }
2422		 */
2423	}else {
2424		idClass.html("");
2425		idClass.slideUp();
2426		$(".navi_sub_address").removeClass('minus');
2427		$(".navi_sub_address").addClass('plus');
2428	}
2429}
2430
2431
2432function navi_subPOISearchClearSp(id) {
2433	while (subPOISearchMarker.length > 0) {
2434		map.removeLayer(subPOISearchMarker[subPOISearchMarker.length - 1]);
2435		subPOISearchMarker.pop();
2436	}
2437	
2438	var idClass=$(".navi_sub_list");
2439	if(id!="") {
2440		/*
2441		 * for(var i=0; i<idClass.length; i++) { var tempId = idClass[i].id;
2442		 * if(tempId!=id) { $("#"+tempId).html(""); } }
2443		 */
2444	}else {
2445		idClass.html("");
2446		idClass.slideUp();
2447		$(".navi_sub_poi").removeClass('minus');
2448		$(".navi_sub_poi").addClass('plus');
2449	}
2450}
2451
2452
2453function navi_searchResetSp() {
2454	$("#unifiedSearchForm").css("display","none");
2455	$("#inputSearchDel").css("display","none");
2456	$("#inputSearch").val("");
2457	searchClear();
2458}
2459
2460
2461// 슬라이드
2462function navi_subMenuSlideSp(searchType,id,type,page,parentIndex,treeFlag) {
2463	if(searchType=="addressSearch") {
2464		if(type==0) {
2465			var submenu = $("#"+id);
2466	        // submenu 가 화면상에 보일때는 위로 보드랍게 접고 아니면 아래로 부드럽게 펼치기
2467			navi_subGeoSearchClearSp("");
2468			
2469	        if(submenu.is(":visible")) {
2470	            submenu.slideUp(200);
2471	            var subClass = $(".navi_JusoResultSp").eq(parentIndex).find(".navi_sub_address");
2472	            subClass.removeClass('minus');
2473	            subClass.addClass('plus');
2474	        }else{
2475	        	navi_setMapClickSp($(".navi_JusoResultSp")[parentIndex]);
2476	        	navi_subGeoSearchSp(id,"ORIGIN",page);
2477	            submenu.slideDown(200);
2478	            var subClass = $(".navi_JusoResultSp").eq(parentIndex).find(".navi_sub_address");
2479	            subClass.removeClass('plus');
2480	            subClass.addClass('minus');
2481	        }
2482		}else {
2483			navi_subGeoSearchClearSp(id);
2484			navi_subGeoSearchSp(id,"ORIGIN",page);
2485		}
2486	}else if(searchType=="POISearch") {
2487		if(type==0) {
2488			var submenu = $("#"+id);
2489	        // submenu 가 화면상에 보일때는 위로 보드랍게 접고 아니면 아래로 부드럽게 펼치기
2490			navi_subPOISearchClearSp("");
2491	        if(submenu.is(":visible")) {
2492	            submenu.slideUp(200);
2493	            var subClass = $(".navi_PoiResultSp").eq(parentIndex).find(".navi_sub_poi");
2494	            subClass.removeClass('minus');
2495	            subClass.addClass('plus');
2496	        }else{
2497	        	navi_setMapClickSp($(".navi_PoiResultSp")[parentIndex]);
2498	        	navi_subPOISearchSp(id,page,treeFlag,parentIndex);
2499	            submenu.slideDown(200);
2500	            var subClass = $(".navi_PoiResultSp").eq(parentIndex).find(".navi_sub_poi");
2501	            subClass.removeClass('plus');
2502	            subClass.addClass('minus');
2503	        }
2504		}else {
2505			navi_subPOISearchClearSp(id);
2506			navi_setMapClickSp($(".navi_PoiResultSp")[parentIndex]);
2507			navi_subPOISearchSp(id,page,treeFlag,parentIndex);
2508		}
2509	}
2510}
2511
2512function naviChoiceSp(type,lat,lng,name) {
2513	if(baseMapCnt == 0){
2514		gridAllClear(0); 
2515	}else{
2516		gridAllClear(1);
2517	}
2518	
2519	// naviDefaultSetting();
2520	
2521	/* ------------------------ v4 ---------------------------
2522	1. 도보 출도착,경유 판단
2523	---------------------------------------------------------- */
2524	if(type=="startInputSp"){
2525		startInputFlag = false; endInputFlag = false; middleInputFlag = false;
2526		startInputFlagSp = true; endInputFlagSp = false; middleInputFlagSp = false;
2527		startInputFlagTf = false; endInputFlagTf = false;
2528	}else if(type=="endInputSp"){
2529		startInputFlag = false; endInputFlag = false; middleInputFlag = false;
2530		startInputFlagSp = false; endInputFlagSp = true; middleInputFlagSp = false;
2531		startInputFlagTf = false; endInputFlagTf = false;
2532	}else if(type.indexOf("middleInputSp")!=-1){
2533		startInputFlag = false; endInputFlag = false; middleInputFlag = false;
2534		startInputFlagSp = false; endInputFlagSp = false; middleInputFlagSp = true;
2535		startInputFlagTf = false; endInputFlagTf = false;
2536	}
2537	/* ---------------------------------------------------------- */
2538	
2539	if($("#naviForm").css("display")=="none") {
2540		//----------- v4 : 출도착HTML 표출 ------------- //
2541		naviTextForm();
2542		naviTextFormTf();
2543		naviTextFormSp();
2544		// -------------------------------------------- //
2545	}
2546	$("#searchForm").css("display","none");
2547	$("#naviForm").css("display","");
2548	//----------- v4 : 탭버튼 클릭 시 예외 ------------- //
2549	if(globalNaviTabClickFlag == false){
2550		naviTab(2);
2551	}
2552	// -------------------------------------------- //
2553	searchClear();
2554	bSearchAllClear();
2555	
2556	for(var i=0; i<ncodeSearchMarker.length; i++) {
2557		ncodeSearchMarker[i].popState = false;
2558	}
2559	ncodeSelectMid = "";
2560	
2561	if(startNameSp=="" || endNameSp=="") {
2562		$("#naviFromBg").removeClass("r_size");
2563		navi_rsize_checkSp = false;
2564		$("#naviOnOff").css("display","none");
2565	}
2566	
2567	for(var i=0; i<jiguMarker.length; i++) {
2568		jiguMarker[i].popState = false;
2569	}
2570	jiguSelectMid = "";
2571	
2572	//----------- v4 : 검색 초기화 ------------- //
2573	navi_searchClear();
2574	navi_searchClearTf();
2575	navi_searchClearSp();
2576	// -------------------------------------- //
2577	$("#naviSearchFormSp").css("display","none");
2578	map.closePopup(rightClickPop);
2579	if(name==null) {  //오른쪽 팝업에서 출발,경유,도착 선택
2580		naviGatAddressSp(type,lat,lng,"ROAD_ADDRESS");
2581	}else {  //리스트 및 팝업에서 출발,경유,도착 선택
2582		setNaviInfoSp(type,lat,lng,name);
2583	}
2584}
2585
2586function naviGatAddressSp(type,lat,lng,adminType) {
2587	jHeader.serviceName = "REVERSE_GEOCODING";
2588	revBody.point = lat+","+lng;
2589	revBody.selectFields.geoType = "EMPTY";
2590	revBody.adminType = adminType;
2591	revBody.spatialOperation = "INTERSECT";
2592	
2593	var jReqBody = {
2594		"header" : jHeader,
2595		"body" : revBody
2596	};
2597	
2598	var dataString = "callback=?&req="+encodeURIComponent(objectToJSONString(jReqBody));
2599	//console.log(jUrl+"?callback=?&req="+objectToJSONString(jReqBody));
2600	$.ajax({
2601		url:jUrl,
2602		async:true,
2603		type:'POST',
2604		dataType:'jsonp',
2605		data:dataString,
2606		timeout : 200000,
2607		error : function(d, textStatus, error){
2608			alert("다시 실행해주시기 바랍니다. code:11 \n"+"getJSON failed : "+d+",  status: " + textStatus + ",  error: "+error);
2609		},success: function(data, result){
2610			var geojson = data.body.geojson;
2611			if(geojson!=null) {
2612				var addrname = "";
2613				if(adminType=="ROAD_ADDRESS") {
2614					addrname = data.body.geojson.features[0].properties.newrpnuname; // 도로명주소
2615				}else {
2616					addrname = data.body.geojson.features[0].properties.pnuname; // 지번 주소
2617				}
2618				setNaviInfoSp(type,lat,lng,addrname);
2619			}else {
2620				if(adminType=="ROAD_ADDRESS") {
2621					naviGatAddressSp(type,lat,lng,"JIBUN_ADDRESS");
2622				}else {
2623					if(lan=="KOR") { alert("주소를 찾을 수 없습니다."); }
2624					else if(lan=="ENG") { alert("You have not found the address you want."); }
2625					else if(lan=="JAN") { alert("住所を見つけられません。"); }
2626					else if(lan=="CHINAG") { alert("未找到您要的地址。"); }
2627				}
2628			}
2629		}
2630	});
2631}
2632
2633
2634function setNaviInfoSp(type, lat, lng, name){
2635	var subFolder = "";
2636	if(lan=="KOR") { subFolder = "kor"; }
2637	else if(lan=="ENG") { subFolder = "eng"; }
2638	else if(lan=="JAN") { subFolder = "jpn"; }
2639	else if(lan=="CHINAG") { subFolder = "chn"; }
2640	
2641	if(type.indexOf("start")!=-1) {
2642		if(naviStartMkSp==null) {
2643			naviStartMkSp = new L.Marker(new L.LatLng(lat,lng),{icon: new L.Icon({
2644   	 	    	iconUrl: "./images/naviImg/"+subFolder+"/rpin_start.png",
2645   	 	    	iconAnchor: [15,36]
2646   			})}).addTo(map);
2647		}else {
2648			naviStartMkSp.setLatLng(new L.LatLng(lat,lng));
2649		}
2650		naviStartMkSp.setZIndexOffset(10000);
2651		if(name=="") {
2652			if(lan=="KOR") { name = "출발"; }
2653			else if(lan=="ENG") { name = "Start"; }
2654			else if(lan=="JAN") { name = "出発"; }
2655			else if(lan=="CHINAG") { name = "出发"; }
2656		}
2657		$("#startInputSp").val(name);
2658		startNameSp = name;
2659		startCoordSp=lat+","+lng;
2660		naviTextFormFocusSp(type);
2661	}else if(type.indexOf("end")!=-1) {
2662		if(naviEndMkSp==null) {
2663			naviEndMkSp = new L.Marker(new L.LatLng(lat,lng),{icon: new L.Icon({
2664				iconUrl: "./images/naviImg/"+subFolder+"/rpin_arrival.png",
2665				iconAnchor: [15,36]
2666   			})}).addTo(map);
2667		}else {
2668			naviEndMkSp.setLatLng(new L.LatLng(lat,lng));
2669		}
2670		naviEndMkSp.setZIndexOffset(10000);
2671		if(name=="") {
2672			if(lan=="KOR") { name = "도착"; }
2673			else if(lan=="ENG") { name = "Arrive"; }
2674			else if(lan=="JAN") { name = "到着"; }
2675			else if(lan=="CHINAG") { name = "到着"; }
2676		}
2677		$("#endInputSp").val(name);
2678		endNameSp = name;
2679		endCoordSp=lat+","+lng;
2680		naviTextFormFocusSp(type);
2681	}else if(type.indexOf("middle")!=-1){
2682		var middleCnt = parseInt(type.replace("middleInputSp",""));
2683		if(middleCnt>=naviAddTextFormCntSp) {
2684			var check = naviAddTextFormSp();
2685			if(!check) {
2686				return;
2687			}
2688		}
2689		naviMiddleMkSp.push(new L.Marker(new L.LatLng(lat,lng),{icon: new L.Icon({
2690   			iconUrl: "./images/naviImg/"+subFolder+"/rpin_via_"+(middleCnt+1)+".png",
2691   			iconAnchor: [15,36]
2692   		})}).addTo(map));
2693		naviMiddleMkSp[naviMiddleMkSp.length-1].setZIndexOffset(10000);
2694		if(name=="") {
2695			if(lan=="KOR") { name = "경유"; }
2696			else if(lan=="ENG") { name = "Via"; }
2697			else if(lan=="JAN") { name = "経由"; }
2698			else if(lan=="CHINAG") { name = "经由"; }
2699		}
2700		$("#"+type).val(name);
2701		middleNamesSp.set(type,name);
2702		middleCoordsSp.set(type,lat+","+lng);
2703		naviTextFormFocusSp(type);
2704	}
2705	
2706	for(var i=0; i<$(".naviSearchInputSp").length; i++) {
2707		if($(".naviSearchInputSp").eq(i).val()!="") {
2708			textDelOnSp(i);
2709		}
2710	}
2711	
2712	if(startNameSp!="" && endNameSp!="") {
2713		naviStartSp();
2714	}
2715}
2716
2717
2718// ==================================== 길찾기 ==========================================
2719
2720
2721function naviStartSp(){
2722	/* ------------------------ v4 ---------------------------
2723	1. 도보 길찾기 성공 시 판단 값
2724	---------------------------------------------------------- */
2725	naviProcessFlag = false;
2726	startInputFlag = false;
2727	middleInputFlag = false;
2728	endInputFlag = false;
2729	naviProcessFlagSp = true;
2730	startInputFlagSp = false;
2731	middleInputFlagSp = false;
2732	endInputFlagSp = false;
2733	naviProcessFlagTf = false;
2734	startInputFlagTf = false;
2735	endInputFlagTf = false;
2736	/* ------------------------------------------------------ */
2737	
2738	if(rightClickPop!=null) {
2739		map.closePopup(rightClickPop);
2740	}
2741	
2742	var startInfoStr = "", middleInfoStr = "", endInfoStr = "", startEndEqual = "";
2743	if(lan=="KOR") { startInfoStr = "출발지를 입력하세요."; middleInfoStr = "경유지를 입력하세요."; endInfoStr = "도착지를 입력하세요."; startEndSame = "출발지와 도착지가 같습니다."; }
2744	else if(lan=="ENG") { startInfoStr = "Input the starting place."; middleInfoStr = "Input the stopover place."; endInfoStr = "Input the destination."; startEndSame = "Starting point and destination are the Same."; }
2745	else if(lan=="JAN") { startInfoStr = "出発地入力"; middleInfoStr = "経由地入力"; endInfoStr = "目的地入力"; startEndSame = "出発地と到着地が同じです。"; }
2746	else if(lan=="CHINAG") { startInfoStr = "输入出发地"; middleInfoStr = "输入经由地"; endInfoStr = "输入目的地"; startEndSame = "出发地和目的地相同。"; }
2747	
2748	if(startCoord != "" && endCoord != ""){
2749		startCoordSp = startCoord;
2750		endCoordSp = endCoord;
2751		if(middleCoords.size()>0){
2752			middleCoordsSp = middleCoords;
2753		}
2754	}else if(startCoordTf != "" && endCoordTf != ""){
2755		startCoordSp = startCoordTf;
2756		endCoordSp = endCoordTf;
2757	}
2758	
2759	if(startNameSp=="") {
2760		alert(startInfoStr);
2761	}else if(endNameSp=="") {
2762		alert(endInfoStr);
2763	}else if(startCoordSp==endCoordSp && middleNamesSp.size()==0) {
2764		alert(startEndSame);
2765	}else {
2766		$("#naviOnOff").css("display","");
2767		$("#naviOnOff").attr("class","ico_close naviOnOff");
2768		
2769		$("#naviFromBg").addClass("r_size");
2770		navi_rsize_checkSp = true;
2771		middleSetTextFormSp();
2772		$("#naviSearchFormSp").css("display","none");
2773		//$("#naviResultFormSp").css("display","block");
2774		$('#startEndNameSp').html($('#startInputSp').val()+'<span class="p_arrow"></span>'+$('#endInputSp').val());
2775		navi_searchClearSp();
2776		naviResultClearSp();
2777		naviSubmitSp();
2778	}
2779}
2780
2781
2782function naviSubmitSp() {
2783	var pathFindType = $(".pathFindTypeSp:checked").val();
2784	
2785	var subUrl = "";
2786	if(middleCoordsSp.valArray.length>0) {
2787		var cnt = 0;
2788		
2789		for(var i=0; i<middleCoordsSp.valArray.length; i++) {
2790			var middleCoordSplit = middleCoordsSp.valArray[i].split(",");
2791			var middleCoordUtmk = Coord_Trans("wgstoutmk", new PT(middleCoordSplit[1], middleCoordSplit[0]));  //위경도로 좌표 변환
2792			
2793			subUrl += "{'order':"+(i+1)+",'coordinate':'" + middleCoordUtmk.x + "," + middleCoordUtmk.y + "','floor':'1'}";
2794			if(i!=middleCoordsSp.length-1) { subUrl += ","; }
2795		}
2796	}
2797	
2798	startCoordSplitSp = startCoordSp.split(",");
2799	var startCoordUtmk = Coord_Trans("wgstoutmk", new PT(startCoordSplitSp[1], startCoordSplitSp[0]));  //위경도로 좌표 변환
2800	
2801	endCoordSplitSp = endCoordSp.split(",");
2802	var endCoordUtmk = Coord_Trans("wgstoutmk", new PT(endCoordSplitSp[1], endCoordSplitSp[0]));  //위경도로 좌표 변환
2803	
2804	var selectLinkType = "";
2805	if(!$("#spMode1").attr("class").includes("on") && !$("#spMode2").attr("class").includes("on") && !$("#spMode3").attr("class").includes("on")) {
2806		$("#spMode1").addClass("on");
2807		selectLinkType = "n";
2808	}else {
2809		if($("#spMode1").attr("class").includes("on")) {
2810			selectLinkType += "n";
2811		}
2812		if($("#spMode2").attr("class").includes("on")) {
2813			selectLinkType += "m";
2814		}
2815		if($("#spMode3").attr("class").includes("on")) {
2816			selectLinkType += "i";
2817		}
2818	}
2819	
2820	var jReqBody = '{"header": {"format": "JSON", "serviceName": "SHORTEST_PATH", "version": "new", "key": "' + key + '"}, "body": {"endPoint": {"coordinate": "' + endCoordUtmk.x + ',' + endCoordUtmk.y + '", "floor": "1"}, "resLang": "KOR", "startPoint": {"coordinate": "' + startCoordUtmk.x + ',' + startCoordUtmk.y + '", "floor": "1"}, "middlePoint": [' +subUrl+ '], "pathFindType": "' + pathFindType + '", "selectLinkType": "'+selectLinkType+'", "reqLang": "KOR", "isCheck": false}}';
2821	var dataString = "callback=?&req="+encodeURIComponent(jReqBody);
2822	//console.log(jUrl + "?callback=?&req=" + jReqBody)
2823	
2824	$("#loadingBg").css("display","flex");
2825	$.ajax({
2826		url:jUrlNavi,
2827		async: true,
2828		type:'post',
2829		dataType:'jsonp',
2830		data:dataString,
2831		timeout:200000,
2832		error : function(d, txtStatus, error) {
2833			console.log("naviSubmitSp()_ 함수 이슈!!")
2834		},success: function(data,result){
2835			if(data.body.geojson != undefined){
2836				$("#loadingBg").css("display","none");
2837				
2838				$("#naviResultFormSp").css("display","block");
2839				$("#naviNoResultFormSp").css("display","none");
2840				if(data.body.geojson != undefined){ 
2841					naviResultSp(data); 
2842				}else{
2843					if(lan=="KOR") {
2844						alert("길찾기에 실패 하였습니다.");
2845					}else if(lan=="ENG") {
2846						alert("The route search failed.");
2847					}else if(lan=="JAN") {
2848						alert("道探しに失敗しました。");
2849					}else if(lan=="CHINAG") {
2850						alert("路线搜索失败了。");
2851					}
2852				}
2853			}else{
2854				var errorCode = data.header.result;
2855				
2856				var html_ = errorCodeHtmlSp(errorCode);
2857				$("#naviNoResultFormSp").html(html_);
2858				
2859				$("#loadingBg").css("display","none");
2860				$("#naviResultFormSp").css("display","none");
2861				$("#naviNoResultFormSp").css("display","block");
2862			}
2863			//----------- v4 : 검색 초기화 ------------- //
2864			startCoord = "";
2865		 	endCoord = "";
2866		 	startCoordTf = "";
2867		 	endCoordTf = "";
2868		 	//-------------------------------------- //
2869		}
2870	});
2871}
2872
2873function errorCodeHtmlSp(errorCode){
2874	var html_ = '';
2875	
2876	if(lan=="KOR") {
2877		if(errorCode == 500 || errorCode == 501){
2878			html_+='<div class="r_result">';
2879			html_+='<div class="path_no clear">';
2880			html_+='<div class="noimg"></div>';
2881			html_+='<div class="text">길찾기 검색 결과가 없습니다.</div>';
2882			html_+='<div class="stext">출발지 또는 도착지가 도로 주변이 아닙니다.</div>';
2883			html_+='<div class="stext">위치를 변경해주세요.</div>';
2884			html_+='</div>';
2885			html_+='</div>';
2886		}else{
2887			html_+='<div class="r_result">';
2888			html_+='<div class="path_no clear">';
2889			html_+='<div class="noimg"></div>';
2890			html_+='<div class="text">길찾기 검색 결과가 없습니다.</div>';
2891			html_+='<div class="stext">직선거리가 30km 이내인 경우에 한하여,</div>';
2892			html_+='<div class="stext">도보길찾기 결과를 제공하고 있습니다.</div>';
2893			html_+='</div>';
2894			html_+='</div>';
2895		}
2896	}else if(lan=="ENG") {
2897		if(errorCode == 500 || errorCode == 501){
2898			html_+='<div class="r_result">';
2899			html_+='<div class="path_no clear">';
2900			html_+='<div class="noimg"></div>';
2901			html_+='<div class="text">The origin or destination is not around the road.</div>';
2902			html_+='<div class="stext">Please change the location.</div>';
2903			html_+='</div>';
2904			html_+='</div>';
2905		}else{
2906			html_+='<div class="r_result">';
2907			html_+='<div class="path_no clear">';
2908			html_+='<div class="noimg"></div>';
2909			html_+='<div class="text">There are no directions search results.</div>';
2910			html_+='<div class="stext">Only if the straight line is within 30 km,</div>';
2911			html_+='<div class="stext">We are providing the results of walking directions.</div>';
2912			html_+='</div>';
2913			html_+='</div>';
2914		}
2915	}else if(lan=="JAN") {
2916		if(errorCode == 500 || errorCode == 501){
2917			html_+='<div class="r_result">';
2918			html_+='<div class="path_no clear">';
2919			html_+='<div class="noimg"></div>';
2920			html_+='<div class="text">アクセス検索結果はありません。</div>';
2921			html_+='<div class="stext">出発地または到着地が道路周辺ではありません。</div>';
2922			html_+='<div class="stext">徒歩道探しの結果を提供しています。</div>';
2923			html_+='</div>';
2924			html_+='</div>';
2925		}else{
2926			html_+='<div class="r_result">';
2927			html_+='<div class="path_no clear">';
2928			html_+='<div class="noimg"></div>';
2929			html_+='<div class="text">アクセス検索結果はありません。</div>';
2930			html_+='<div class="stext">直線距離が30km以内の場合に限り、</div>';
2931			html_+='<div class="stext">徒歩道探しの結果を提供しています。</div>';
2932			html_+='</div>';
2933			html_+='</div>';
2934		}
2935	}else if(lan=="CHINAG") {
2936		if(errorCode == 500 || errorCode == 501){
2937			html_+='<div class="r_result">';
2938			html_+='<div class="path_no clear">';
2939			html_+='<div class="noimg"></div>';
2940			html_+='<div class="text">找不到寻路搜索结果。</div>';
2941			html_+='<div class="stext">出発地または到着地が道路周辺ではありません。</div>';
2942			html_+='<div class="stext">位置を変更してください。</div>';
2943			html_+='</div>';
2944			html_+='</div>';
2945		}else{
2946			html_+='<div class="r_result">';
2947			html_+='<div class="path_no clear">';
2948			html_+='<div class="noimg"></div>';
2949			html_+='<div class="text">找不到寻路搜索结果。</div>';
2950			html_+='<div class="stext">仅限于直线距离在30km以内时,</div>';
2951			html_+='<div class="stext">提供徒步寻找结果。</div>';
2952			html_+='</div>';
2953			html_+='</div>';
2954		}
2955	}
2956	
2957	return html_;
2958}
2959
2960function naviResultSp(data) {
2961	try{
2962		naviStartCheckSp = true;
2963		
2964		var list = '';
2965		if(data!=null && data != ""){
2966			var body = data.body;
2967			allDist = body.totalDistance;
2968			var dist = allDist;
2969			var time = body.totalTime;
2970			var hour = parseInt(time/3600);
2971			var min = parseInt((time%3600)/60);
2972		
2973			if(hour==0 && min==0) { min=1; }
2974			
2975			if(dist>=1000) { 
2976				//dist = toComma(dist/1000); 
2977				//$('#naviDistSp').html('<span>'+Math.floor(dist)+'</span> km'); 
2978				
2979				dist = dist/1000;
2980				$('#naviDistSp').html('<span>'+dist.toFixed(2)+'</span> km');
2981			}
2982			else 
2983			{ 
2984				//dist = toComma(dist); 
2985				//$('#naviDistSp').html('<span>'+Math.floor(dist)+'</span> m');
2986				$('#naviDistSp').html('<span>'+dist.toFixed(2)+'</span> m');
2987			}
2988			
2989			/* ------------------------ v4 ---------------------------
2990			1. 도보 길찾기 성공 시 육교, 지하도, 횡단보도, 계단 총 수 구하기
2991			---------------------------------------------------------- */ 
2992			var overPassCnt = 0; // 육교
2993			var underGroundCnt = 0; // 지하도
2994			var crossWalkCnt = 0; // 횡단보도
2995			var stairsCnt = 0; // 계단
2996			var tunnelCnt = 0; // 터널
2997			var overPassStr = "";
2998			var underGroundStr = "";
2999			var crossWalkStr = "";
3000			var stairsStr = "";
3001			var tunnelStr = "";
3002			var checkCnt = 0;
3003			var featuress = body.geojson.features;
3004			var shortPathCateD= shortPathCateDatas.body.geojson.features;
3005			for(var i=0; i<featuress.length; i++) {
3006				var feature = featuress[i];
3007				var typeSp = feature.properties.type;
3008				
3009				for(var j=0; j<shortPathCateD.length; j++) {
3010					var codeSp = shortPathCateD[j].properties.code;
3011					
3012					if(typeSp == codeSp){
3013						if(shortPathCateD[j].properties.link_wcate_nm == "육교"){
3014							overPassCnt++;
3015							checkCnt++;
3016						}
3017						if(shortPathCateD[j].properties.link_wcate_nm == "지하보도" || shortPathCateD[j].properties.link_wcate_nm == "지하상가" || shortPathCateD[j].properties.link_wcate_nm == "지하철"){
3018							underGroundCnt++;
3019							checkCnt++;
3020						}
3021						if(shortPathCateD[j].properties.link_wcate_nm == "횡단보도"){
3022							crossWalkCnt++;
3023							checkCnt++;
3024						}
3025						if(shortPathCateD[j].properties.link_wcate_nm == "미지정"){
3026							stairsCnt++;
3027							checkCnt++;
3028						}
3029						if(shortPathCateD[j].properties.link_wcate_nm == "터널"){
3030							tunnelCnt++;
3031							checkCnt++;
3032						}
3033					}
3034				}
3035			}
3036			
3037			var overPassStr = "육교";
3038			var underGroundStr = "지하도";
3039			var crossWalkStr = "횡단보도";
3040			var stairsStr = "계단";
3041			var tennelStr = "터널";
3042			if(lan=="KOR") { 
3043				overPassStr = "육교"; underGroundStr = "지하도"; crossWalkStr = "횡단보도"; stairsStr = "계단"; tennelStr = "터널";
3044			}else if(lan=="ENG") {  
3045				overPassStr = "overpass"; underGroundStr = "underpass"; crossWalkStr = "crosswalk"; stairsStr = "stairs"; tennelStr = "tunnel";
3046			}else if(lan=="JAN") {  
3047				overPassStr = "歩道橋"; underGroundStr = "地下道"; crossWalkStr = "横断歩道"; stairsStr = "階段"; tennelStr = "トンネル";
3048			}else if(lan=="CHINAG") { 
3049				overPassStr = "立交桥"; underGroundStr = "地下通道"; crossWalkStr = "人行横道"; stairsStr = "楼梯"; tennelStr = "隧道";
3050			}
3051			
3052			var infoStr = "";
3053			if(overPassCnt > 0){
3054				infoStr += overPassStr+" "+overPassCnt+", ";
3055			}
3056			if(underGroundCnt > 0){
3057				infoStr += underGroundStr+" "+underGroundCnt+", ";
3058			}
3059			if(crossWalkCnt > 0){
3060				infoStr += crossWalkStr+" "+crossWalkCnt+", ";
3061			}
3062			if(stairsCnt > 0){
3063				infoStr += stairsStr+" "+stairsCnt+", ";
3064			}
3065			if(checkCnt > 0){
3066				infoStr = infoStr.slice(0,-2);
3067			}
3068			/* ------------------------------------------------------ */
3069			if(infoStr != ""){
3070				$('#naviInfoSp').html(infoStr)
3071			}
3072			
3073			var subFolder = "";
3074			if(lan=="KOR") {
3075				subFolder = "kor"; 
3076				$('#naviTimeSp').html('<span>'+hour+'</span> 시간 <span>'+min+'</span> 분');
3077			}else if(lan=="ENG") {
3078				subFolder = "eng"; 
3079				$('#naviTimeSp').html('<span>'+hour+'</span> hr <span>'+min+'</span> min');
3080			}else if(lan=="JAN") {
3081				subFolder = "jpn"; 
3082				$('#naviTimeSp').html('<span>'+hour+'</span> 時間 <span>'+min+'</span> 分');
3083			}else if(lan=="CHINAG") {
3084				subFolder = "chn"; 
3085				$('#naviTimeSp').html('<span>'+hour+'</span> 时间 <span>'+min+'</span> 分');
3086			}
3087			
3088			if(middleCoordsSp.valArray.length > 0){
3089				for(var i=0,j=0; i<middleCoordsSp.valArray.length; i++) {
3090					var middleCoord = middleCoordsSp.valArray[i].split(",");
3091					naviMiddleMkSp.push(new L.Marker(new L.LatLng(middleCoord[0], middleCoord[1]),{icon: new L.Icon({
3092						iconUrl : "./images/naviImg/"+subFolder+"/rpin_via_"+(j+1)+".png", iconAnchor: [15,36]
3093			   		})}).addTo(map));
3094					naviMiddleMkSp[naviMiddleMkSp.length-1].popState = false;
3095					naviMiddleMkSp[naviMiddleMkSp.length-1].index = naviMiddleMkSp.length-1;
3096					naviMiddleMkSp[naviMiddleMkSp.length-1].bindPopup(tooltip.naviContent("middle",middleNamesSp.get(middleNamesSp.keySet()[i])),{autoPan:true,minWidth:362,offset:[0,-15],'className':'dawul'});
3097					naviMiddleMkSp[naviMiddleMkSp.length-1].setZIndexOffset(10000);
3098					naviMiddleMkSp[naviMiddleMkSp.length-1].on("click", function(){
3099						var index = this.index;
3100						if(this.popState) { this.popState = false; }
3101						else {
3102							if(rightClickPop!=null) { map.closePopup(rightClickPop); }
3103							
3104							this.popState = true;
3105							
3106							$(".naviMiddle").eq(index).addClass("on");
3107							naviStartMkSp.popState=false;
3108							$(".naviStart").removeClass("on");
3109							naviEndMkSp.popState=false;
3110							$(".naviEnd").removeClass("on");
3111							for(var i=0; i<naviMiddleMkSp.length; i++) {
3112								if(i!=index) {
3113									naviMiddleMkSp[i].popState=false;
3114									$(".naviMiddle").eq(i).removeClass("on");
3115								}
3116							}
3117							for(var i=0; i<naviInfoMkSp.length; i++) {
3118								naviInfoMkSp[i].popState = false;
3119								naviInfoMkSp[i].setZIndexOffset(100);
3120								
3121								var iconOff = new L.Icon({
3122									iconUrl:'./images/naviImg/num/rnum'+(i+1)+'.png', iconAnchor: [12,12]
3123								});
3124								naviInfoMkSp[i].setIcon(iconOff);
3125								naviLayersSp[i].setStyle({
3126									weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3127								});
3128								
3129								$(".naviResultIconSp").eq(i).attr("src",'./images/naviImg/num/rnum'+(i+1)+'.png');
3130							}
3131							$(".naviResultSp").removeClass("on");
3132							
3133							for(var i=0; i<ncodeSearchMarker.length; i++) {
3134								ncodeSearchMarker[i].popState = false;
3135								ncodeSearchMarker[i].closePopup();
3136							}
3137							ncodeSelectMid = "";
3138							
3139							for(var i=0; i<jiguMarker.length; i++) {
3140								jiguMarker[i].popState = false;
3141								jiguMarker[i].closePopup();
3142							}
3143							jiguSelectMid = "";
3144						}
3145					});
3146					
3147					j++;
3148				}
3149			}
3150			naviStartMkSp = new L.Marker(new L.LatLng(startCoordSplitSp[0], startCoordSplitSp[1]),{icon: new L.Icon({
3151		    	iconUrl: "./images/naviImg/"+subFolder+"/rpin_start.png", iconAnchor: [15,36]
3152			})}).addTo(map);
3153			naviStartMkSp.popState = false;
3154			naviStartMkSp.bindPopup(tooltip.naviContent("start",startNameSp),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
3155			naviStartMkSp.setZIndexOffset(10000);
3156			naviStartMkSp.on("click", function(){
3157				if(this.popState) { this.popState = false; }
3158				else {
3159					if(rightClickPop!=null) { map.closePopup(rightClickPop); }
3160					
3161					this.popState = true;
3162					$(".naviStartSp").addClass("on");
3163					naviEndMkSp.popState=false;
3164					$(".naviEndSp").removeClass("on");
3165					if(naviMiddleMkSp.length>0) {
3166						for(var i=0; i<naviMiddleMkSp.length; i++) {
3167							naviMiddleMkSp[i].popState=false;
3168						}
3169						$(".naviMiddleSp").removeClass("on");
3170					}
3171					
3172					for(var i=0; i<naviInfoMkSp.length; i++) {
3173						naviInfoMkSp[i].popState = false;
3174						naviInfoMkSp[i].setZIndexOffset(100);
3175						
3176						var iconOff = new L.Icon({
3177							iconUrl:'./images/naviImg/num/rnum'+(i+1)+'.png', iconAnchor: [12,12]
3178						});
3179						naviInfoMkSp[i].setIcon(iconOff);
3180						naviLayersSp[i].setStyle({
3181							weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3182						});
3183						$(".naviResultIconSp").eq(i).attr("src",'./images/naviImg/num/rnum'+(i+1)+'.png');
3184					}
3185					$(".naviResultSp").removeClass("on");
3186					
3187					for(var i=0; i<ncodeSearchMarker.length; i++) {
3188						ncodeSearchMarker[i].popState = false;
3189						ncodeSearchMarker[i].closePopup();
3190					}
3191					ncodeSelectMid = "";
3192					
3193					for(var i=0; i<jiguMarker.length; i++) {
3194						jiguMarker[i].popState = false;
3195						jiguMarker[i].closePopup();
3196					}
3197					jiguSelectMid = "";
3198				}
3199			});
3200			
3201			naviEndMkSp = new L.Marker(new L.LatLng(endCoordSplitSp[0], endCoordSplitSp[1]),{icon: new L.Icon({
3202		    	iconUrl: "./images/naviImg/"+subFolder+"/rpin_arrival.png", iconAnchor: [15,36]
3203			})}).addTo(map);
3204			naviEndMkSp.popState = false;
3205			naviEndMkSp.bindPopup(tooltip.naviContent("end",endNameSp),{autoPan:true,minWidth:362,offset:[0,-20],'className':'dawul'});
3206			naviEndMkSp.setZIndexOffset(10000);
3207			naviEndMkSp.on("click", function(){
3208				if(this.popState) { this.popState = false; }
3209				else {
3210					if(rightClickPop!=null) { map.closePopup(rightClickPop); }
3211					
3212					this.popState = true;
3213					naviStartMkSp.popState=false;
3214					$(".naviStartSp").removeClass("on");
3215					$(".naviEndSp").addClass("on");
3216					if(naviMiddleMkSp.length>0) {
3217						for(var i=0; i<naviMiddleMkSp.length; i++) {
3218							naviMiddleMkSp[i].popState=false;
3219						}
3220						$(".naviMiddleSp").removeClass("on");
3221					}
3222					
3223					for(var i=0; i<naviInfoMkSp.length; i++) {
3224						naviInfoMkSp[i].popState = false;
3225						naviInfoMkSp[i].setZIndexOffset(100);
3226						
3227						var iconOff = new L.Icon({
3228							iconUrl:'./images/naviImg/num/rnum'+(i+1)+'.png', iconAnchor: [12,12]
3229						});
3230						naviInfoMkSp[i].setIcon(iconOff);
3231						naviLayersSp[i].setStyle({
3232							weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3233						});
3234						$(".naviResultIconSp").eq(i).attr("src",'./images/naviImg/num/rnum'+(i+1)+'.png');
3235					}
3236					$(".naviResultSp").removeClass("on");
3237					
3238					for(var i=0; i<ncodeSearchMarker.length; i++) {
3239						ncodeSearchMarker[i].popState = false;
3240						ncodeSearchMarker[i].closePopup();
3241					}
3242					ncodeSelectMid = "";
3243					
3244					for(var i=0; i<jiguMarker.length; i++) {
3245						jiguMarker[i].popState = false;
3246						jiguMarker[i].closePopup();
3247					}
3248					jiguSelectMid = "";
3249				}
3250			});
3251			
3252			list += '<li class="naviStartSp clear" onclick="naviResult_setMapClickSp(this);">';
3253			list += '<div class="ico"><img src="./images/naviImg/'+subFolder+'/rpin_start.png" width="30" height="36" alt="" /></div>';
3254			list += '<div class="fl">';
3255			list += '<p><a href="#" class="txt">'+startNameSp+'</a></p>';
3256			list += '</div>';
3257			list += '</li>';
3258			
3259			var features = body.geojson.features;
3260			var fullLineData = null;
3261			var fullLineDataCnt = 0;
3262			fullLineData = {};
3263			fullLineData.type="Feature";
3264			fullLineData.id="0";
3265			fullLineData.geometry={};
3266			fullLineData.geometry.type="LineString";
3267			fullLineData.geometry.coordinates=[];
3268			
3269			var middleNum = 0;
3270			for(var i=0; i<features.length; i++) {
3271				var feature = features[i];
3272				
3273				if (feature.geometry.type == "LineString") { // 2배열
3274					var coordCount = feature.geometry.coordinates.length;
3275					var k = fullLineDataCnt;
3276					var x = 0;
3277					var y = 0;
3278					
3279					for(var j=k,l=0; j<feature.geometry.coordinates.length+k; j++,l++) {
3280						var coordWgs = Coord_Trans("utmktowgs", new PT(feature.geometry.coordinates[l][0], feature.geometry.coordinates[l][1]));  //위경도로 좌표 변환
3281						
3282						if(l==0) { 
3283							x = coordWgs.x; 
3284							y = coordWgs.y; 
3285						}
3286						
3287						fullLineData.geometry.coordinates[j]=[];
3288						fullLineData.geometry.coordinates[j][0] = coordWgs.y;
3289						fullLineData.geometry.coordinates[j][1] = coordWgs.x;
3290						
3291						fullLineDataCnt++;
3292					}
3293					
3294					var linedata = "";
3295					linedata = {};
3296					linedata.type="Feature";  //중요
3297					linedata.geometry={};
3298					linedata.geometry.type="LineString";  //  중요  타입(폴리라인 : LineString)
3299					linedata.geometry.coordinates=[];
3300					
3301					var coordsX = new Array();
3302					var coordsY = new Array();
3303					
3304					var coordiUtmk = feature.geometry.coordinates;
3305					for(var z = 0; z < coordiUtmk.length; z++){
3306						var coordWgs = Coord_Trans("utmktowgs", new PT(coordiUtmk[z][0], coordiUtmk[z][1]));
3307						
3308						if(z==0){
3309							if(i == 0){
3310								var xx = Number(startCoordSplitSp[0]);
3311								var yy = Number(startCoordSplitSp[1]);
3312								
3313								coordsX.push(xx);
3314								coordsY.push(yy);
3315								coordsX.push(coordWgs.y);
3316								coordsY.push(coordWgs.x);
3317							}
3318						}else if(z==(coordiUtmk.length-1)){
3319							if(i == (features.length-1)){
3320								var xx = Number(endCoordSplitSp[0]);
3321								var yy = Number(endCoordSplitSp[1]);
3322								
3323								coordsX.push(coordWgs.y);
3324								coordsY.push(coordWgs.x);
3325								coordsX.push(xx);
3326								coordsY.push(yy);
3327							}
3328						}
3329						feature.geometry.coordinates[z][0] = coordWgs.y;
3330						feature.geometry.coordinates[z][1] = coordWgs.x;
3331					}
3332					if(i == 0 || i == (features.length-1)){
3333						for(var g=0; g<coordsX.length; g++) {
3334							linedata.geometry.coordinates[g]=[];
3335							linedata.geometry.coordinates[g][0] = coordsX[g];  //latitude
3336							linedata.geometry.coordinates[g][1] = coordsY[g];  //longitude
3337						}
3338						
3339						naviLayersSp2.push(new L.GeoJSON(
3340								linedata, {
3341									style : function() {
3342										return {
3343											weight: 7, color : "#8C8C8C", opacity : 1, fillColor : "#8C8C8C", fillOpacity : 1, dashArray: '1, 12',
3344										};						
3345									}
3346								}).addTo(map));
3347					}
3348					
3349					
3350					fullLineDatasSp.push(feature);
3351					 
3352					naviLayersSp.push(new L.GeoJSON(
3353							fullLineDatasSp[fullLineDatasSp.length-1], {
3354									style : function() {
3355										return {
3356											weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3357										};						
3358									}
3359								}).addTo(map));
3360					
3361					var listNumImg = './images/naviImg/num/rnum'+(naviInfoMkSp.length+1)+'.png';
3362					var onListNumImg = './images/naviImg/num/on/rnum'+(naviInfoMkSp.length+1)+'.png';
3363					naviInfoMkSp.push(new L.Marker(new L.LatLng(y, x),{icon: new L.Icon({
3364				    	iconUrl: listNumImg, iconAnchor: [12,12],
3365				    })}).addTo(map));
3366					naviInfoMkSp[naviInfoMkSp.length-1].popState = false;
3367					naviInfoMkSp[naviInfoMkSp.length-1].listNumImg = listNumImg;
3368					naviInfoMkSp[naviInfoMkSp.length-1].onListNumImg = onListNumImg;
3369					naviInfoMkSp[naviInfoMkSp.length-1].index = naviInfoMkSp.length-1;
3370					naviInfoMkSp[naviInfoMkSp.length-1].bindPopup(tooltip.naviContentSp("naviResult", feature, lastAngleSp, naviInfoMkSp.length-1),{autoPan:true,minWidth:362,offset:[0,-15],'className':'dawul'});
3371					naviInfoMkSp[naviInfoMkSp.length-1].on("click", function(){
3372						var index = this.index;
3373						if(this.popState) { this.popState = false; }
3374						else {
3375							if(rightClickPop!=null) { map.closePopup(rightClickPop); }
3376							this.popState = true;
3377							this.setZIndexOffset(1000);
3378							for(var i=0; i<naviInfoMkSp.length; i++) {
3379								if(i!=index) {
3380									naviInfoMkSp[i].popState = false;
3381									naviInfoMkSp[i].setZIndexOffset(100);
3382									
3383									var iconOff = new L.Icon({
3384										iconUrl:'./images/naviImg/num/rnum'+(i+1)+'.png', iconAnchor: [12,12]
3385									});
3386									naviInfoMkSp[i].setIcon(iconOff);
3387									naviLayersSp[i].setStyle({
3388										weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3389									});
3390									
3391									$(".naviResultIconSp").eq(i).attr("src",'./images/naviImg/num/rnum'+(i+1)+'.png');
3392									$(".naviResultSp").eq(i).removeClass("on");
3393								}
3394							}
3395							
3396							for(var i=0; i<ncodeSearchMarker.length; i++) {
3397								ncodeSearchMarker[i].popState = false;
3398								ncodeSearchMarker[i].closePopup();
3399							}
3400							ncodeSelectMid = "";
3401							
3402							for(var i=0; i<jiguMarker.length; i++) {
3403								jiguMarker[i].popState = false;
3404								jiguMarker[i].closePopup();
3405							}
3406							jiguSelectMid = "";
3407						}
3408					});
3409					
3410					naviInfoMkSp[naviInfoMkSp.length-1].on("mouseover", function(){
3411						var index = this.index;
3412						
3413						var iconOn = new L.Icon({
3414							iconUrl:'./images/naviImg/num/on/rnum'+(index+1)+'.png', iconAnchor: [12,12]
3415						});
3416						this.setIcon(iconOn);
3417						
3418						for(var i=0; i<naviInfoMkSp.length; i++) {
3419							naviInfoMkSp[i].setZIndexOffset(100);
3420						}
3421						
3422						naviInfoMkSp[index].setZIndexOffset(1000);
3423						map.removeLayer(naviLayersSp[index]);
3424						naviLayersSp[index] = new L.GeoJSON(
3425							fullLineDatasSp[index], {
3426								style : function() {
3427									return {
3428										weight: 7, color : "#00D8FF", opacity : 1, fillColor : "#00D8FF", fillOpacity : 1
3429									};						
3430								}
3431						}).addTo(map);
3432						
3433						$(".naviResultIconSp").eq(index).attr("src",'./images/naviImg/num/on/rnum'+(index+1)+'.png');
3434						$(".naviResultSp").eq(index).addClass("on");
3435					});
3436					
3437					naviInfoMkSp[naviInfoMkSp.length-1].on("mouseout", function(){
3438						if(!this.popState) {
3439							var index = this.index;
3440							var iconOff = new L.Icon({
3441								iconUrl:'./images/naviImg/num/rnum'+(index+1)+'.png', iconAnchor: [12,12]
3442							});
3443							this.setIcon(iconOff);
3444							map.removeLayer(naviLayersSp[index]);
3445							naviLayersSp[index] = new L.GeoJSON(
3446								fullLineDatasSp[index], {
3447									style : function() {
3448										return {
3449											weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3450										};						
3451									}
3452							}).addTo(map);
3453							
3454							$(".naviResultIconSp").eq(index).attr("src",'./images/naviImg/num/rnum'+(index+1)+'.png');
3455							$(".naviResultSp").eq(index).removeClass("on");
3456						}
3457					});
3458					
3459					list += naviResultListSp(feature,middleNum);
3460					
3461					if(feature.properties.middlePointOrder!=null) {
3462						if(middlePointOrderFlagSp == false){ middleNum++; middlePointOrderFlagSp = true; }
3463						else{ middlePointOrderFlagSp = false; }
3464					}
3465					listHoverEvtSp();
3466				}
3467			}
3468			naviLayerSp = new L.GeoJSON(
3469					fullLineData, {
3470						style : function() {
3471							return {
3472								weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3473							};						
3474						}
3475					});
3476				
3477			map.fitBounds(naviLayerSp.getBounds(),{ padding: [100, 100] });
3478			
3479			list += '<li class="naviEndSp clear" onclick="naviResult_setMapClickSp(this);">';
3480			list += '<div class="ico"><img src="./images/naviImg/'+subFolder+'/rpin_arrival.png" width="30" height="36" alt="" /></div>';
3481			list += '<div class="fl">';
3482			list += '<p><a href="#" class="txt">'+endNameSp+'</a></p>';
3483			list += '</div>';
3484			list += '</li>';
3485		}
3486		
3487		$('#naviResultListSp').html(list);
3488		listHoverEvtSp();
3489		
3490	}catch (e) {
3491		// TODO: handle exception
3492		console.log(e)
3493	}
3494}
3495
3496
3497
3498function naviResultListSp(feature,middleNum){
3499	var subFolder = "";
3500	
3501	var properties = feature.properties;
3502	var facilityType = carRouteContent.get("facilityType_"+properties.facility_type);
3503	var roadType = carRouteContent.get("roadType_"+properties.road_type);
3504	var type = carRouteContent.get("linkType_"+properties.type);
3505	
3506	var typeStr = "";
3507	var typeSp = properties.type;
3508	var shortPathCateD= shortPathCateDatas.body.geojson.features;
3509	for(var j=0; j<shortPathCateD.length; j++) {
3510		var codeSp = shortPathCateD[j].properties.code;
3511		var linkFac = shortPathCateD[j].properties.link_fac;
3512		
3513		if(typeSp == codeSp){
3514			if(shortPathCateD[j].properties.link_wcate_nm == "육교"){
3515				typeStr = "육교";
3516			}else if(shortPathCateD[j].properties.link_wcate_nm == "지하보도" || shortPathCateD[j].properties.link_wcate_nm == "지하상가" || shortPathCateD[j].properties.link_wcate_nm == "지하철"){
3517				typeStr = "지하도";
3518			}else if(shortPathCateD[j].properties.link_wcate_nm == "횡단보도"){
3519				typeStr = "횡단보도";
3520			}else if(shortPathCateD[j].properties.link_wcate_nm == "계단"){
3521				 typeStr = "계단";
3522			}else if(shortPathCateD[j].properties.link_wcate_nm == "미지정"){
3523				 typeStr = "미지정";
3524			}
3525		}
3526	}
3527	var guide= "";
3528	var road = "";
3529	
3530	if(lan=="KOR") {
3531		subFolder = "kor"; guide= properties.guide; road = properties.road;
3532	}else if(lan=="ENG") {
3533		subFolder = "eng"; guide= properties.guideEng; road = properties.roadEng;
3534	}else if(lan=="JAN") {
3535		subFolder = "jpn"; guide= properties.guideJan; road = properties.roadJan;
3536	}else if(lan=="CHINAG") {
3537		subFolder = "chn"; guide= properties.guideChinag; road = properties.roadChinag;
3538	}
3539	
3540	var guideTypeHighway = carRouteContent.get("guideTypeHighway_"+properties.guide_type_highway);
3541	var crossWayName = properties.cross_way_name; 
3542	var rotate = properties.rotate; 
3543	var dist = properties.distance;
3544	var middlePointOrder = properties.middlePointOrder;
3545	
3546	if(dist>=1000) { dist = toComma((dist/1000).toFixed(2))+"km"; }
3547	else { dist = toComma(dist)+"m"; }
3548	
3549	var list = '';
3550	list += '<li class="naviResultSp clear" onclick="naviResult_setMapClickSp(this);">';
3551	list += '<div class="ico"><img class="naviResultIconSp" src="./images/naviImg/num/rnum'+naviInfoMkSp.length+'.png" width="24" height="24" alt="" /></div>';
3552	list += '<div class="fl">';
3553	/*if(road != null){ list += '<p><a href="#" class="txt2">'+road+'</a></p>'; }
3554	else{ list += '<p><a href="#" class="txt2"></a></p>'; }*/
3555	list += '<p><a href="#" class="txt2"></a></p>';
3556	
3557	if(naviInfoMkSp.length==1){
3558		var text = "";
3559		
3560		if(lan=="KOR") { text = '경로 안내 시작 후 '+dist+' 이동'; }
3561		else if(lan=="ENG") { text = 'Start Route Guidance after '+dist+''; }
3562		else if(lan=="JAN") { text = '経路案内スタート 後 '+dist+' 移動'; }
3563		else if(lan=="CHINAG") { text = '开始导航 后 '+dist+' 移动';}
3564		
3565		list += '<p class="txt3">' + text + '</p>';
3566	}else if(lastAngleSp == 0 || lastAngleSp == 180){
3567		var text = '';
3568		
3569		if(guide != null && guide != ""){
3570			if(lan=="KOR") {
3571				if(typeStr != ""){
3572					text = guide +'방향 ' + typeStr + ' 건너기 ' +dist+' 이동';
3573				}else{
3574					text = guide +'방향 ' +dist+' 이동';
3575				}
3576			}
3577			else if(lan=="ENG") { text = guide +'Direction ' +dist; }
3578			else if(lan=="JAN") { text = guide +'方向 ' +dist+' 移動'; }
3579			else if(lan=="CHINAG") { text = guide +'方向 ' +dist+' 移动';}
3580		}else{
3581			if(lan=="KOR") {
3582				if(typeStr != ""){
3583					text = typeStr + ' 건너기 ' +dist+' 이동';
3584				}else{
3585					text = dist+' 이동';
3586				}
3587			}
3588			else if(lan=="ENG") { text = dist; }
3589			else if(lan=="JAN") { text = dist+' 移動'; }
3590			else if(lan=="CHINAG") { text = dist+' 移动'; }
3591		}
3592		
3593		list += '<p class="txt3">' + text + '</p>';
3594	}else if(lastAngleSp <= 360 && lastAngleSp > 180){
3595		var text = '';
3596		
3597		if(guide != null && guide != ""){
3598			if(lan=="KOR") { 
3599				if(typeStr != ""){
3600					text = guide +'방향 ' + typeStr + ' 건너기 ' +dist+' 이동';
3601				}else{
3602					text = guide +'방향 좌회전 후 '+dist+' 이동'; 
3603				}
3604			}
3605			else if(lan=="ENG") { text = guide +'Direction Turn Left after '+dist; }
3606			else if(lan=="JAN") { text = guide +'方向 左折 後 '+dist+' 移動'; }
3607			else if(lan=="CHINAG") { text = guide +'方向 左转 后 '+dist+' 移动'; }
3608		}else{
3609			if(lan=="KOR") { 
3610				if(typeStr != ""){
3611					text = typeStr + ' 건너기 ' +dist+' 이동';
3612				}else{
3613					text = '좌회전 후 '+dist+' 이동';
3614				}
3615			}
3616			else if(lan=="ENG") { text = 'Left after '+dist; }
3617			else if(lan=="JAN") { text = '左折 後 '+dist+' 移動'; }
3618			else if(lan=="CHINAG") { text = '左转 后 '+dist+' 移动'; }
3619		}
3620		
3621		list += '<p class="txt3">' + text + '</p>';
3622	}else if(lastAngleSp < 180 && lastAngleSp > 0){
3623		var text = '';
3624		
3625		if(guide != null && guide != ""){
3626			if(lan=="KOR") { 
3627				if(typeStr != ""){
3628					text = guide +'방향 ' + typeStr + ' 건너기 ' +dist+' 이동';
3629				}else{
3630					text = guide +'방향 우회전 후 ' +dist+' 이동'; 
3631				}
3632			}
3633			else if(lan=="ENG") { text = guide +'Direction Turn Right after '+dist; }
3634			else if(lan=="JAN") { text = guide +'方向 右折 後 '+dist+' 移動'; }
3635			else if(lan=="CHINAG") { text = guide +'方向 右转 后 '+dist+' 移动'; }
3636		}else{
3637			if(lan=="KOR") { 
3638				if(typeStr != ""){
3639					text = typeStr + ' 건너기 ' +dist+' 이동';
3640				}else{
3641					text = '우회전 후 ' +dist+' 이동';
3642				}
3643			}
3644			else if(lan=="ENG") { text = 'Turn Right '+dist; }
3645			else if(lan=="JAN") { text = '右折 後 '+dist+' 移動'; }
3646			else if(lan=="CHINAG") { text = '右转 后 '+dist+' 移动'; }
3647		}
3648		
3649		list += '<p class="txt3">' + text + '</p>';
3650	}
3651		
3652	list += '</div>';
3653	list += '<div class="direction">';
3654	
3655	var num = "";
3656	if(naviInfoMkSp.length==1){ num = "01"; }
3657	else if(lastAngleSp == 0 || lastAngleSp == 180){ num = "01"; }
3658	else if(lastAngleSp <= 360 && lastAngleSp > 180){ num = "02"; }
3659	else if(lastAngleSp < 180 && lastAngleSp > 0){ num = "03"; }
3660	
3661	if(typeStr==""){
3662		list += '<div><img class="naviRouteIcon" src="./images/naviImg/route/arrow_node' + num + '.png" width="33" height="24" alt="" /></div>';
3663	}else{
3664		if(typeStr=="횡단보도"){
3665			list += '<div><img class="naviRouteIcon" src="./images/naviImg/route2/arrow_crossing.png" width="33" height="24" alt="" /></div>';
3666		}else if(typeStr=="육교"){
3667			list += '<div><img class="naviRouteIcon" src="./images/naviImg/route2/arrow_overpass.png" width="33" height="24" alt="" /></div>';
3668		}else if(typeStr=="지하도"){
3669			list += '<div><img class="naviRouteIcon" src="./images/naviImg/route2/arrow_underpass.png" width="33" height="24" alt="" /></div>';
3670		}else if(typeStr=="터널"){
3671			list += '<div><img class="naviRouteIcon" src="./images/naviImg/route2/arrow_tunnel.png" width="33" height="24" alt="" /></div>';
3672		}else if(typeStr=="미지정"){
3673			list += '<div><img class="naviRouteIcon" src="./images/naviImg/route2/arrow_stairs.png" width="33" height="24" alt="" /></div>';
3674		}
3675	}
3676	list += '<div>'+dist+'</div>';
3677	list += '</div>';
3678	list += '</li>';
3679	
3680	lastAngleSp = rotate;
3681	
3682	if(middlePointOrder != null){
3683		if(middlePointOrder==(middleNum+1)){  //경유지부근
3684			list += '<li class="naviMiddle clear" onclick="naviResult_setMapClickSp(this);">';
3685			list += '<div class="ico"><img src="./images/naviImg/'+subFolder+'/rpin_via_'+(middleNum+1)+'.png" width="30" height="36" alt="" /></div>';
3686			list += '<div class="fl">';
3687			list += '<p><a href="#" class="txt">'+middleNamesSp.get(middleNamesSp.keySet()[middleNum])+'</a></p>';
3688			list += '</div>';
3689			list += '</li>';
3690		}
3691	}
3692	
3693	return list;
3694	
3695}
3696
3697
3698function listHoverEvtSp() {
3699	$(".naviResultSp").hover(
3700	function() {
3701		var index = $(".naviResultSp").index(this);
3702		var iconOn = new L.Icon({
3703			iconUrl: naviInfoMkSp[index].onListNumImg,
3704		    iconAnchor: [12,12]
3705		}); 
3706		naviInfoMkSp[index].setIcon(iconOn);
3707		for(var i=0; i<naviInfoMkSp.length; i++) {
3708			naviInfoMkSp[i].setZIndexOffset(100);
3709		}
3710		naviInfoMkSp[index].setZIndexOffset(1000);
3711		map.removeLayer(naviLayersSp[index]);
3712		naviLayersSp[index] = new L.GeoJSON(
3713			fullLineDatasSp[index], {
3714				style : function() {
3715					return {
3716						weight: 7, color : "#00D8FF", opacity : 1, fillColor : "#00D8FF", fillOpacity : 1
3717					};
3718				}
3719		}).addTo(map);
3720		
3721		$(".naviResultIconSp").eq(index).attr("src",'./images/naviImg/num/on/rnum'+(index+1)+'.png');
3722	},
3723	function() {
3724		var index = $(".naviResultSp").index(this);
3725		if(!naviInfoMkSp[index].popState) {
3726			var iconOff = new L.Icon({
3727				iconUrl:naviInfoMkSp[index].listNumImg,
3728			    iconAnchor: [12,12]
3729			}); 
3730			naviInfoMkSp[index].setIcon(iconOff);
3731			map.removeLayer(naviLayersSp[index]);
3732			naviLayersSp[index] = new L.GeoJSON(
3733				fullLineDatasSp[index], {
3734					style : function() {
3735						return {
3736							weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3737						};						
3738					}
3739			}).addTo(map);
3740			
3741			$(".naviResultIconSp").eq(index).attr("src",'./images/naviImg/num/rnum'+(index+1)+'.png');
3742		}
3743	});
3744}
3745
3746function naviResult_setMapClickSp(this_){
3747	if(rightClickPop!=null) {
3748		map.closePopup(rightClickPop);
3749	}
3750	var className = this_.className.split(" ")[0];
3751	var index = $("."+className).index(this_);
3752	if(className == "naviResultSp"){
3753		naviInfoMkSp[index].popState = true;
3754		$(".naviResultSp").eq(index).addClass("on");
3755		naviInfoMkSp[index].setZIndexOffset(1000);
3756		map.setView(naviInfoMkSp[index].getLatLng(), 12);
3757		naviInfoMkSp[index].openPopup();
3758		
3759		for(var i=0; i<naviInfoMkSp.length; i++) {
3760			if(i!=index) {
3761				naviInfoMkSp[i].popState = false;
3762				naviInfoMkSp[i].setZIndexOffset(100);
3763				
3764				var iconOff = new L.Icon({
3765					iconUrl:'./images/naviImg/num/rnum'+(i+1)+'.png',
3766					iconAnchor: [12,12]
3767				});
3768				naviInfoMkSp[i].setIcon(iconOff);
3769				naviLayersSp[i].setStyle({
3770					weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3771				});
3772				
3773				$(".naviResultIconSp").eq(i).attr("src",'./images/naviImg/num/rnum'+(i+1)+'.png');
3774				$(".naviResultSp").eq(i).removeClass("on");
3775			}
3776		}
3777		
3778		if(naviStartMkSp!=null) {
3779			naviStartMkSp.popState=false;
3780			$(".naviStartSp").removeClass("on");
3781		}
3782		if(naviEndMkSp!=null) {
3783			naviEndMkSp.popState=false;
3784			$(".naviEndSp").removeClass("on");
3785		}
3786		if(naviMiddleMkSp.length>0) {
3787			for(var i=0; i<naviMiddleMkSp.length; i++) {
3788				naviMiddleMkSp[i].popState=false;
3789			}
3790			$(".naviMiddleSp").removeClass("on");
3791		}
3792	}else {
3793		if(className == "naviStartSp") {
3794			naviStartMkSp.popState=true;
3795			$(".naviStartSp").addClass("on");
3796			map.setView(naviStartMkSp.getLatLng(), 12);
3797			naviStartMkSp.openPopup();
3798			
3799			if(naviEndMkSp!=null) {
3800				naviEndMkSp.popState=false;
3801				$(".naviEndSp").removeClass("on");
3802			}
3803			if(naviMiddleMkSp.length>0) {
3804				for(var i=0; i<naviMiddleMkSp.length; i++) {
3805					naviMiddleMkSp[i].popState=false;
3806				}
3807				$(".naviMiddleSp").removeClass("on");
3808			}
3809		}else if(className == "naviEndSp") {
3810			naviEndMkSp.popState=true;
3811			$(".naviEndSp").addClass("on");
3812			map.setView(naviEndMkSp.getLatLng(), 12);
3813			naviEndMkSp.openPopup();
3814			
3815			if(naviStartMkSp!=null) {
3816				naviStartMkSp.popState=false;
3817				$(".naviStartSp").removeClass("on");
3818			}
3819			if(naviMiddleMkSp.length>0) {
3820				for(var i=0; i<naviMiddleMkSp.length; i++) {
3821					naviMiddleMkSp[i].popState=false;
3822				}
3823				$(".naviMiddleSp").removeClass("on");
3824			}
3825		}else if(className == "naviMiddleSp") {
3826			naviMiddleMkSp[index].popState = true;
3827			$(".naviMiddleSp").eq(index).addClass("on");
3828			map.setView(naviMiddleMkSp[index].getLatLng(), 12);
3829			naviMiddleMkSp[index].openPopup();
3830			
3831			if(naviStartMkSp!=null) {
3832				naviStartMkSp.popState=false;
3833				$(".naviStartSp").removeClass("on");
3834			}
3835			if(naviEndMkSp!=null) {
3836				naviEndMkSp.popState=false;
3837				$(".naviEndSp").removeClass("on");
3838			}
3839			for(var i=0; i<naviMiddleMkSp.length; i++) {
3840				if(i!=index) {
3841					naviMiddleMkSp[i].popState=false;
3842					$(".naviMiddleSp").eq(i).removeClass("on");
3843				}
3844			}
3845		}
3846		
3847		
3848		if(naviInfoMkSp.length>0) {
3849			for(var i=0; i<naviInfoMkSp.length; i++) {
3850				naviInfoMkSp[i].popState = false;
3851				naviInfoMkSp[i].setZIndexOffset(100);
3852				
3853				var iconOff = new L.Icon({
3854					iconUrl:'./images/naviImg/num/rnum'+(i+1)+'.png',
3855					iconAnchor: [12,12]
3856				});
3857				naviInfoMkSp[i].setIcon(iconOff);
3858				naviLayersSp[i].setStyle({
3859					weight: 7, color : "#0054FF", opacity : 1, fillColor : "#0054FF", fillOpacity : 1
3860				});
3861				
3862				$(".naviResultIconSp").eq(i).attr("src",'./images/naviImg/num/rnum'+(i+1)+'.png');
3863			}
3864			$(".naviResultSp").removeClass("on");
3865		}
3866	}
3867}
3868
3869
3870function naviResultClearSp() {
3871	if(naviStartMkSp!=null) {
3872		map.removeLayer(naviStartMkSp);
3873		naviStartMkSp = null;
3874	}
3875	if(naviEndMkSp!=null) {
3876		map.removeLayer(naviEndMkSp);
3877		naviEndMkSp = null;
3878	}
3879	while (naviMiddleMkSp.length>0) {
3880		map.removeLayer(naviMiddleMkSp[naviMiddleMkSp.length - 1]);
3881		naviMiddleMkSp.pop();
3882	}
3883	while (naviLayersSp.length>0) {
3884		map.removeLayer(naviLayersSp[naviLayersSp.length - 1]);
3885		naviLayersSp.pop();
3886	}
3887	while (naviLayersSp2.length>0) {
3888		map.removeLayer(naviLayersSp2[naviLayersSp2.length - 1]);
3889		naviLayersSp2.pop();
3890	}
3891	if(naviLayerSp!=null) {
3892		map.removeLayer(naviLayerSp);
3893		naviLayerSp = null;
3894	}
3895	while (naviInfoMkSp.length>0) {
3896		map.removeLayer(naviInfoMkSp[naviInfoMkSp.length - 1]);
3897		naviInfoMkSp.pop();
3898	}
3899	
3900	while (fullLineDatasSp.length>0) {
3901		fullLineDatasSp.pop();
3902	}
3903	
3904	$("#naviResultListSp").html("");
3905	
3906	naviStartCheckSp = false;
3907}
3908
3909// ==================================== //길찾기 ================================

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.