<!-- 페이지 기본동작 -->
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

var closemapPopup = '<div style="width: 17px; height: 17px; position: absolute; right: 0px; top: 0px;">';
closemapPopup += '<button onclick="javascript:clearpopup();"><img src="/icon/btn_close.gif" /><button></div>';

var refreshcctvbtn = '<div style="width: 17px; height: 17px; position: absolute; right: 5px; top: 25px;">';
refreshcctvbtn += '<button onclick="javascript:RefreshCCTV({id});"><img src="/icon/16/refresh.png" /><button></div>';

var nowAddress = unescape(location.href);
var mobileKeyWords = new Array('iPhone', 'iPod', 'BlackBerry', 'Android', 'Windows CE', 'LG', 'MOT', 'SAMSUNG', 'SonyEricsson');
if (nowAddress.indexOf('?') < 0 )
{
	for (var word in mobileKeyWords)
	{
		if (navigator.userAgent.match(mobileKeyWords[word]) != null)
		{
			location.href = "/mobile/";
			break;
		}	
	}
}


function showLineMap(rno, rcls)
{
	var strurl = '/include/bis/popLineMap.jsp?route_no=' + rno + '&route_class=' + rcls;
	var l_windowName = 'linemap';
	
	if (typeof showLineMap.winRef == 'undefined')
	{
		showLineMap.winRef = {};
	}
	if ( typeof showLineMap.winRef[l_windowName] == 'undefined' || showLineMap.winRef[l_windowName].closed )
	{
		var l_width = screen.availWidth;
		var l_height = screen.availHeight;
	
		var l_params = 'status=no' +
					 ',resizable=no' +
					 ',history=no,menubar=no,scrollbars=yes' +
					 ',width=840' +
					 ',height=500';
	
		searchroute(rno, rcls);
		showLineMap.winRef[l_windowName] = window.open(strurl, l_windowName, l_params);
		showLineMap.winRef[l_windowName].moveTo(0,0);
		//showLineMap.winRef[l_windowName].resizeTo(l_width, l_height);
	}
	else
	{
		searchroute(rno, rcls);
		showLineMap.winRef[l_windowName].location.href = strurl;
		showLineMap.winRef[l_windowName].focus();
	}
	
	//window.open(strurl, "linemap", "width=820,height=500,history=no,resizable=no,status=no,scrollbars=yes,menubar=no");
}

function Set_Cookie(name, value, expires, path, domain, secure )
{
// set time, it's in milliseconds
	var today = new Date();
	today.setTime( today.getTime() );

	/*
	if the expires variable is set, make the correct
	expires time, the current script below will set
	it for x number of days, to make it for hours,
	delete * 24, for minutes, delete * 60 * 24
	*/
	if ( expires )
	{
	expires = expires * 1000 * 60 * 60 * 24;
	}
	var expires_date = new Date( today.getTime() + (expires) );

	document.cookie = name + "=" +escape( value ) +
	( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
	( ( path ) ? ";path=" + path : "" ) +
	( ( domain ) ? ";domain=" + domain : "" ) +
	( ( secure ) ? ";secure" : "" );
}

function Get_Cookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );


		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}

function clearFnode(obj)
{
	var vArray = new Array();
	for(var i=0; i<obj.childNodes.length; i++){
		if(obj.childNodes[i].nodeType=="1"){
			vArray.push(obj.childNodes[i])
		}
	}
	return vArray;
}

function tabChange(obj)
{
	if (obj == 'tab_predict')
	{
		document.getElementById('tab_route').src = '/image/main_2.png';
		var ison = document.getElementById(obj).src;
		if (ison.search("_a.") > -1)
		{
			return;
		}
		else
		{
			$("#station_result").html('');
			$("#station_predict").html('');
			$("#route_way").html('');
			document.getElementById(obj).src = '/image/main_1_a.png';
			$.ajax({
				type: 'get'
				, async: true
				, url: '/include/predictinfo.jsp'
				, data: null 
				, cache: false
				, success: function(data) {
				
					$("#tab_form").html(data);
				  }
				, error: function(data, status, err) {
					//alert('서버와의 통신이 실패했습니다.');
				  }
				, complete: function() { 
					$('#ajax_load_indicator').fadeOut();
				  }
			});			
		}
	}
	if (obj == 'tab_route')
	{
		document.getElementById('tab_predict').src = '/image/main_1.png';
		var ison = document.getElementById(obj).src;
		if (ison.search("_a.") > -1)
		{
			return;
		}
		else
		{
			$("#station_result").html('');
			$("#station_predict").html('');
			$("#route_way").html('');
			document.getElementById(obj).src = '/image/main_2_a.png';
			$.ajax({
				type: 'get'
				, async: true
				, url: '/include/routeinfo.jsp'
				, data: null 
				, cache: true
				, success: function(data) {
					var objnm = "idxroute";
					$("#tab_form").html(data);
					fillRouteList('idxroute');
					
					//fillRouteList();
				  }
				, error: function(data, status, err) {
					//alert('서버와의 통신이 실패했습니다.');
				  }
				, complete: function() {
					fillRouteList('idxroute');
					$('#ajax_load_indicator').fadeOut();
				  }
			});			
		}
	}	

}
function test()
{
	alert('test');
	
}
function PrintContent(ctrl)
{
  var divToPrint=document.getElementById('map'); 
  var newWin=window.open('','Print-Window','width=648,height=648'); 
  newWin.document.open(); 
  newWin.document.write('<html><body onload="window.print()">'+divToPrint.innerHTML+'</body></html>'); 
  //newWin.document.close(); 
  //setTimeout(function(){newWin.close();},10); 
}

function saveAs()
{
	var sMarkup =  document.getElementById('map').innerHTML; 
	var oNewDoc = document.open('text/html');        
	oNewDoc.write( sMarkup + "<hr>" );
	oNewDoc.close();
}

function SetEmdOnXY(x, y)
{
	var dataString = 'pos_x='+ x +'&pos_y='+ y;
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/geo/mapToEMD.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
			//alert(xml);
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("sigungu_name").text();
					var rno = $(this).find("emd_name").text();
					htmlcontent = nameid +' > ' +rno;     			
        		});
        	}
			
			$("#emd_name").html(htmlcontent);
          }
        , error: function(data, status, err) {
            //alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function RefreshMap()
{
	if (document.getElementById('clip_linkspd'))
		fillLinkClip();
	redrawLayer();
}

function RefreshCCTV(id)
{
	var current = new Date();
	var nowHH = current.getHours();
	var nowMM = current.getMinutes();
	var nowSS = current.getSeconds();	
	var imgsrc = '<img src="/include/its/cctvsnap.jsp?cctv_no={id}&';
	imgsrc += nowSS;
	imgsrc += '" width="352" height="240" />';
	imgsrc = imgsrc.replace('{id}', id);
	//alert(imgsrc);
	$("#cctv_popsnap").html(imgsrc);
}

function InitPage()
{

	MM_preloadImages('/image/m1_a.png','/image/m2_a.png','/image/m3_a.png','/image/m4_a.png','/image/m5_a.png','/image/m6_a.png','/image/m7_a.png');
	$(document).keydown(function(e){
		if(e.keyCode==27){
			removePopup();
			//disablePopup();
//			alert('es');
		}
		else if (e.keyCode==13)
		{
			if(e.target.id.toLowerCase() == "stationnm")
			{
				//alert($(e.target).val());
				searchstationnm($(e.target).val());
			}
			else if (e.target.id.toLowerCase() == "buildingnm")
			{
				searchbldg($(e.target).val());
			}
			else if (e.target.id.toLowerCase() == "clip_station")
			{
				clipstationnm($(e.target).val());
			}
			else if (e.target.id.toLowerCase() == "snode_name")
			{
				searchNode($(e.target).val(), 'snode_no');
			}
			else if (e.target.id.toLowerCase() == "tnode_name")
			{
				searchNode($(e.target).val(), 'tnode_no');
			}
			else if (e.target.id.toLowerCase() == "routename")
			{
				searchroutename($(e.target).val());
			}
			else if (e.target.id.toLowerCase() == "sstop_name")
			{
				searchtransstop($(e.target).val(), 'sstop_no');
			}
			else if (e.target.id.toLowerCase() == "tstop_name")
			{
				searchtransstop($(e.target).val(), 'tstop_no');
			}		
					
		}
	});
	if (document.getElementById('clip_linkspd'))
	{
		fillLinkClip();
		fillCCTVClip();
		fillBBSClip();
		clipstationnm('천안시');
	}
		
	if (document.getElementById('selectroute'))
		fillRouteList();
		
	if (document.getElementById('select_art'))
		fillARTList();
		
	if (document.getElementById('cctv_list'))
		fillCCTV();
		
	if (document.getElementById('list_parking'))
		fillParking();
	
	initMap();		
	//MoveToXY(324077.15846, 467853.53438, 5);
	/*
	if (!Get_Cookie("open_check"))
	{
		var maskHeight = $(document).height();
		var maskWidth = $(window).width();
		$('#backgroundPopup').css({'width':maskWidth,'height':maskHeight});
		$('#backgroundPopup').fadeIn(1000);   
		$('#backgroundPopup').fadeTo("slow",0.3);
		var winH = $(window).height();
		var winW = $(window).width();
		$('#InnerPopup').css('top',  winH/2-402/2);
		$('#InnerPopup').css('left', winW/2-336/2);
		$('#InnerPopup').fadeIn("slow"); 
		$("#InnerPopupClose").click(function(){
			Set_Cookie("open_check", "ok", 86400);
			$("#backgroundPopup").fadeOut("slow");
			$("#InnerPopup").fadeOut("slow");
		});
		//Click out event!
		$("#backgroundPopup").click(function(){
			Set_Cookie("open_check", "ok", 86400);
			$("#backgroundPopup").fadeOut("slow");
			$("#InnerPopup").fadeOut("slow");
		});
	}
	*/
}

function fillRouteList(obj)
{
	var htmlcontent = '<option>노선번호를 선택하세요.</option>';
	$.ajax({
        type: 'get'
        , async: true
        , url: '/include/bis/RouteByList.jsp'
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("route_name").text();
					var rno = $(this).find("route_no").text();
					htmlcontent += '<option value=' + rno +'>' +nameid +'</option>';     			
        		});
        	}
			
			if (obj == null || obj == undefined)
			{
				
				$("#selectroute").html(htmlcontent);
			}
			else
			{
				//alert(htmlcontent);
				$("#idxroute").html(htmlcontent);
				//document.getElementById(eval(obj)).innerHTML = htmlcontent;
			}
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function fillRouteInfo(rno, rcls)
{
	var htmlrow = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">';
    //htmlrow += '<tr><td height="30" class="test4" id="havelink" onclick="getbrAlloc({rno}, {rclass});"><b>{rname}번 {dest}</b></td>';
	htmlrow += '<tr><td height="30" class="test4"><b>{rname}번 {dest}</b></td>';
    htmlrow += '</tr>';
    htmlrow += '<tr>';
    htmlrow += '<td class="test4"><table width="250" border="0" cellspacing="1" cellpadding="0">';
    htmlrow += '<tr>';
    htmlrow += '<td height="25" align="center" bgcolor="#FFFFFF"><span class="test1">첫차</span></td>';
    htmlrow += '<td bgcolor="#FFFFFF" class="test5" style="padding-left:3px;">{firstdttm}</td>';
    htmlrow += '<td align="center" bgcolor="#FFFFFF"><span class="test1">막차</span></td>';
    htmlrow += '<td bgcolor="#FFFFFF" class="test5" style="padding-left:3px;">{lastdttm}</td>';
    htmlrow += '</tr>';
    htmlrow += '<tr>';
    htmlrow += '<td height="25" align="center" bgcolor="#FFFFFF"><span class="test1">거리</span></td>';
    htmlrow += '<td bgcolor="#FFFFFF" class="test5" style="padding-left:3px;">{dlen}km</td>';
    htmlrow += '<td align="center" bgcolor="#FFFFFF"><span class="test1">소요</span></td>';
    htmlrow += '<td bgcolor="#FFFFFF" class="test5" style="padding-left:3px;">약{ival}분</td>';
    htmlrow += '</tr><tr><td colspan="4" align="right" onclick="javaScript:showLineMap({rno}, {rclass});" id="havelink" class="green">노선도보기</td></tr>';
    htmlrow += '</table></td>';
    htmlrow += '</tr>';
    htmlrow += '</table><br/>';
	
	var htmltpl = '';
	var htmlcontent = '';
	var dataString = 'route_no=' + rno + '&route_class=' + rcls;
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/RouteByList.jsp'
        , data: dataString 		
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("route_name").text();
					var rno = $(this).find("route_no").text();
					var rclass = $(this).find("route_class").text();
					var firstdttm = $(this).find("firstdttm").text();
					var lastdttm = $(this).find("lastdttm").text();
					var dlen = $(this).find("dlen").text();
					var ival = $(this).find("ival").text();
					var dest = $(this).find("dest_name").text();
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace("{rname}", nameid);
					htmltpl = htmltpl.replace("{dest}", dest);
					htmltpl = htmltpl.replace("{firstdttm}", firstdttm);
					htmltpl = htmltpl.replace("{lastdttm}", lastdttm);
					htmltpl = htmltpl.replace("{dlen}", dlen);
					htmltpl = htmltpl.replace("{ival}", ival);
					htmltpl = htmltpl.replace("{rname}", nameid);
					htmltpl = htmltpl.replace("{rno}", rno);
					htmltpl = htmltpl.replace("{rclass}", rclass);		
					htmltpl = htmltpl.replace("{rno}", rno);
					htmltpl = htmltpl.replace("{rclass}", rclass);									
					htmlcontent += htmltpl;		
        		});
        	}
			$("#route_info").html(htmlcontent);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function searchAllocation(str)
{
	var htmlrow = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">';
    htmlrow += '<tr id="havelink" onclick="getbrAlloc({rno}, {rclass});"><td height="30" class="test4"><b>{rname}번 {dest}</b></td><td align="right"><img src="/image/detail.jpg" border="0"></td>';
    htmlrow += '</tr>';
    htmlrow += '<tr>';
    htmlrow += '<td class="test4" colspan="2"><table width="250" border="0" cellspacing="1" cellpadding="0">';
    htmlrow += '<tr>';
    htmlrow += '<td height="25" align="center" bgcolor="#FFFFFF"><span class="test1">첫차</span></td>';
    htmlrow += '<td bgcolor="#FFFFFF" class="test5" style="padding-left:3px;">{firstdttm}</td>';
    htmlrow += '<td align="center" bgcolor="#FFFFFF"><span class="test1">막차</span></td>';
    htmlrow += '<td bgcolor="#FFFFFF" class="test5" style="padding-left:3px;">{lastdttm}</td>';
    htmlrow += '</tr>';
    htmlrow += '<tr>';
    htmlrow += '<td height="25" align="center" bgcolor="#FFFFFF"><span class="test1">거리</span></td>';
    htmlrow += '<td bgcolor="#FFFFFF" class="test5" style="padding-left:3px;">{dlen}km</td>';
    htmlrow += '<td align="center" bgcolor="#FFFFFF"><span class="test1">소요</span></td>';
    htmlrow += '<td bgcolor="#FFFFFF" class="test5" style="padding-left:3px;">약{ival}분</td>';
    htmlrow += '</tr>';
    htmlrow += '</table></td>';
    htmlrow += '</tr>';
    htmlrow += '</table>';
	
	var htmltpl = '';
	var htmlcontent = '';
	var dataString = 'route_no=' + str;
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/RouteByList.jsp'
        , data: dataString 		
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("route_name").text();
					var rno = $(this).find("route_no").text();
					var rclass = $(this).find("route_class").text();
					var firstdttm = $(this).find("firstdttm").text();
					var lastdttm = $(this).find("lastdttm").text();
					var dlen = $(this).find("dlen").text();
					var ival = $(this).find("ival").text();
					var dest = $(this).find("dest_name").text();
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace("{rname}", nameid);
					htmltpl = htmltpl.replace("{dest}", dest);
					htmltpl = htmltpl.replace("{firstdttm}", firstdttm);
					htmltpl = htmltpl.replace("{lastdttm}", lastdttm);
					htmltpl = htmltpl.replace("{dlen}", dlen);
					htmltpl = htmltpl.replace("{ival}", ival);
					htmltpl = htmltpl.replace("{rname}", nameid);
					htmltpl = htmltpl.replace("{rno}", rno);
					htmltpl = htmltpl.replace("{rclass}", rclass);					
					htmlcontent += htmltpl;		
        		});
        	}
			$("#route_info").html(htmlcontent);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function getbrAlloc(rno, rcls)
{
	//route_alloc
	var htmlrow = '<tr>';
    htmlrow += '<td height="25" align="center" bgcolor="#FFFFFF"><span class="test1">기점출발</span></td>';
    htmlrow += '<td bgcolor="#FFFFFF" class="test5" style="padding-left:3px;">{dttm}분</td>';
    htmlrow += '</tr>';

	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">';
    htmlcontainer += '<tr><td height="30" class="test4 blue"><b>{dest}</b></td>';
    htmlcontainer += '</tr>';
    htmlcontainer += '<tr>';
    htmlcontainer += '<td class="test4"><table width="250" border="0" cellspacing="1" cellpadding="0">{row}</table></td></tr></table>';
	
	var htmltpl = '';
	var htmlcontent = '';
	var dataString = 'route_no=' + rno + '&route_class=' + rcls;
	
	var nameid = '';
	var rno = '';
	var rclass = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/RouteAllocation.jsp'
        , data: dataString 		
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					nameid = $(this).find("route_name").text();
					rno = $(this).find("route_no").text();
					rclass = $(this).find("route_dest").text();
					var firstdttm = $(this).find("startdttm").text();
			
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace("{rname}", nameid);
					htmltpl = htmltpl.replace("{dttm}", firstdttm);
					htmltpl = htmltpl.replace("{rname}", nameid);
					htmltpl = htmltpl.replace("{rno}", rno);
					htmltpl = htmltpl.replace("{rclass}", rclass);					
					htmlcontent += htmltpl;		
        		});
        	}

			htmlcontainer = htmlcontainer.replace("{dest}", rclass);
			htmlcontainer = htmlcontainer.replace("{row}", htmlcontent);
			$("#route_alloc").html(htmlcontainer);
			var isMoved = 0;
			var lastX;
			var lastY;
			$.ajax({
				type: 'post'
				, async: true
				, url: '/include/bis/RouteStation.jsp'
				, data: dataString 
				, cache: false
				, success: function(xml) {
					//alert($(xml).find("item").length);
					if ($(xml).find("item").length > 0)
					{
						$(xml).find("item").each(function(){
							var nameid = $(this).find("stop_name").text();
							var sno = $(this).find("stop_no").text();
							var x = $(this).find("pos_x").text();
							var y = $(this).find("pos_y").text();
							var bus = $(this).find("bus_name").text();	
							var bus_type = $(this).find("bus_type").text();	
							if (isMoved == 0){
								MoveToXY(y, x, 3);
								MarkStart(sno,x,y);
							}
							isMoved++;
						});
					}
					routeWaypoint(rno, rcls, 0, 0);
				  }
				, error: function(data, status, err) {
					//alert('서버와의 통신이 실패했습니다.');
				  }
				, complete: function() { 
					$('#ajax_load_indicator').fadeOut();
				  }
			});
			
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function fillBoundList(str, obj)
{
	var dataString = 'route_no='+ str;
	var htmlcontent = '<option>노선 방면을 선택하세요.</option>';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/RouteByList.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("dest_name").text();
					var rno = $(this).find("route_class").text();
					htmlcontent += '<option value=' + rno +'>' +nameid +'</option>';     			
        		});
        	}
			if (obj == null)
				$("#selectbound").html(htmlcontent);
			else
			{
				$("#idxbnd").html(htmlcontent);
				//document.getElementById(obj).innerHTML = htmlcontent;
			}
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

<!-- 페이지 기본동작 END -->

<!-- BIS 검색 -->
function openLineMap(rno, rcls)
{
	var dataString = 'route_no=' + rno + '&route_class=' + rcls;
	$("#backgroundPopup").fadeOut("slow");
	
	$.ajax({
        type: 'get'
        , async: false
        , url: '/include/bis/popLineMap.jsp'
        , data: dataString 
		, cache: false
        , success: function(content) {
        	//alert($(xml).find("item").length);
        	
			if ($("#InnerPopup"))
				$("#InnerPopup").html(content);
				
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function searchroute(route_no, class_no)
{
	var isMoved = 0;
	var viewline = '<a href="javascript:openLineMap({rno}, {rcls});">&nbsp;</a>';
	var htmlcontainer = '';
	htmlcontainer += '<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">';
    htmlcontainer += '<tr class="blue2"><td width="70%" height="25" bgcolor="#D6E9FC" style="padding-left:5px;">정류장명</td><td align="center" bgcolor="#D6E9FC">현재위치</td></tr>';
	htmlcontainer += '{row}';
	htmlcontainer += '</table>';
	
	var htmlrow = '<tr id="havelink" onclick="javascript:ShowBISInfoDiv({sno}, {y}, {x});">';
    htmlrow += '<td width="20%" height="25" bgcolor="#FFFFFF" class="test5" style="padding-left:5px;">{sname}({sno})</td>';
    htmlrow += '<td align="center" bgcolor="#FFFFFF">{bus}</td>';
    htmlrow += '</tr>';
	
	var htmltpl = '';
	var rno = '';
	var rcls = '';
	
	var onbus = '<img src="/image/bus_16.png" width="16" height="16" alt="{bus_name}" />';
	var onbus_lf = '<img src="/icon/16/lowfloor_16.png" width="16" height="16" alt="{bus_name}" />';
	if (typeof(route_no) == 'Object')
	{
		var w = route_no.selectedIndex;
		var selected_text = route_no.options[w].text;
		
		w = class_no.selectedIndex;
		selected_text += ' ';
		selected_text += class_no.options[w].text;
		
	
		$("#searchrouteinfo").html(selected_text);
	}
	
	var dataString = '';
	if (typeof(route_no) != 'Object')
	{
		dataString = 'route_no='+ route_no +'&route_class=' + class_no;
		rno = route_no;
		rcls = class_no;
	}
	else
	{
		dataString = 'route_no='+ route_no.value +'&route_class=' + class_no.value;
		rno = route_no.value;
		rcls = class_no.value;		
	}
	if (!document.getElementById('idxroute'))
		clearBus();
	var htmlcontent = '';
	
	var lastX;
	var lastY;
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/RouteStation.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("stop_name").text();
					var sno = $(this).find("stop_no").text();
					var x = $(this).find("pos_x").text();
					var y = $(this).find("pos_y").text();
					var bus = $(this).find("bus_name").text();	
					var bus_type = $(this).find("bus_type").text();	
					if (isMoved == 0 && !document.getElementById('idxroute')){
						MoveToXY(y, x, 3);
						MarkStart(sno,x,y);
					}
					isMoved++;
					if (sno != "null")
					{
						htmltpl = htmlrow;
						htmltpl = htmltpl.replace('{sname}', nameid);
						htmltpl = htmltpl.replace('{sno}', sno);
						htmltpl = htmltpl.replace('{sno}', sno);
						htmltpl = htmltpl.replace('{sno}', sno);
						htmltpl = htmltpl.replace('{x}', x);
						htmltpl = htmltpl.replace('{y}', y);
						
						if (bus.length < 3)
							htmltpl = htmltpl.replace('{bus}', '');
						else
						{
							if (!document.getElementById('idxroute'))
								MarkBus(sno, x, y);
							if (bus_type == "9")
								htmltpl = htmltpl.replace('{bus}', onbus_lf);
							else			
								htmltpl = htmltpl.replace('{bus}', onbus);
							htmltpl = htmltpl.replace('{bus_name}', bus);
						}
					htmlcontent += htmltpl;	
					}
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			htmlcontainer = htmlcontainer.replace('{rno}', rno);
			htmlcontainer = htmlcontainer.replace('{rcls}', rcls);
			if ($("#route_way"))
				$("#route_way").html(htmlcontainer);
			if (!document.getElementById('idxroute'))
				routeWaypoint(route_no, class_no, 0, 0);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });
	if (!document.getElementById('idxroute'))
		fillRouteInfo(route_no, class_no);
}

function searchroutename(str)
{
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	var htmlrow = '<tr id="havelink" onclick="javascript:searchroute({sno}, {cls});"><td height="30" class="test4">{sname} {x}-{y} 방향운행</td></tr>';
	htmlrow += '<tr><td height="1" background="/image/bot_1.png"></td></tr>';
	var htmltpl = '';
	
	var dataString = 'route_name='+ str;
	
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/RouteByName.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("route_name").text();
					var sno = $(this).find("route_no").text();
					var cls = $(this).find("route_class").text();
					var x = $(this).find("start_stop").text();
					var y = $(this).find("end_stop").text();	
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{sname}', nameid);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{cls}', cls);
					htmltpl = htmltpl.replace('{x}', x);
					htmltpl = htmltpl.replace('{y}', y);
					htmlcontent += htmltpl;	
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			
			if ($("#route_result"))
				$("#route_result").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
	
	
}

function DrawTransLine(sno, sclass, sseq, stseq, eno, eclass, etseq, eseq)
{
	vectorLayer.removeAllFeatures();
	//!TODO
	routePartialWay(eno, eclass, etseq, eseq, 1, 2);
	routePartialWay(sno, sclass, sseq, stseq, 0, 1);
}

function routePartialWay(route_no, class_no, sstop, estop, oflag, dflag)
{
	if (dflag == null)
		dflag = 0;
	
	if (dflag == 0)
	{
		if(vectorLayer.features.length != 0)
		{
			vectorLayer.removeAllFeatures();
		}		
	}
	
	var cnt = 0;
	var dataString = 'route_no='+ route_no +'&route_class=' + class_no + '&start=' + sstop + '&end=' + estop;
	//alert(dataString);
	
	var path = new Array();
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/geo/getRoute.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					
					var wkt = $(this).find("wkt").text();
					var id = $(this).find("id").text();
					var feature = new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT(wkt));
					if (cnt < 1)
					{
						var ptarr = feature.geometry.getVertices(false);
						//alert(ptarr[0]);
						map.setCenter(new OpenLayers.LonLat(ptarr[0].x, ptarr[0].y) , 3, false, true);
					}
					DrawWKTLink(id, oflag, feature);
					cnt++;

        		});
        	}
			//$("#selectbound").html(htmlcontent);
			//DrawRouteLine(path, rgb, flag);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });
}

function routeWaypoint(route_no, class_no, oflag, dflag)
{
	if (dflag == null)
		dflag = 0;
	
	if (dflag == 0)
	{
		if(vectorLayer.features.length != 0)
		{
			vectorLayer.removeAllFeatures();
		}		
	}
	
	var cnt = 0;
	var dataString = 'route_no='+ route_no +'&route_class=' + class_no;
	//alert(dataString);
	
	var path = new Array();
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/geo/getRoute.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					
					var wkt = $(this).find("wkt").text();
					var id = $(this).find("id").text();
					var feature = new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT(wkt));

					DrawWKTLink(id, oflag, feature);

        		});
        	}
			//$("#selectbound").html(htmlcontent);
			//DrawRouteLine(path, rgb, flag);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });
}

function routeWaypoint2(route_no, class_no, rgb, dflag)
{
	if (dflag == null)
		dflag = 0;
	var cnt = 0;
	var flag = dflag;  // 환승 노선을 그려할 때 두번째 이상의 노선에서는 1이상을 주면 추가 해서 그릴 수 있습니다. 
	var dataString = 'route_no='+ route_no +'&route_class=' + class_no;
	//alert(dataString);
	
	var path = new Array();
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/RouteStation.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					
					var x = $(this).find("pos_x").text();
					var y = $(this).find("pos_y").text();
					path[cnt] = new Object();
					path[cnt].x = x;
					path[cnt].y = y;
					cnt++;
        		});
        	}
			//$("#selectbound").html(htmlcontent);
			DrawRouteLine(path, rgb, flag);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });
}

function searchbldg(str)
{
	var boldstr = '<b>'+ str + '</b>';
	$("#buildingsearch").html(boldstr);
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	var htmlrow = '<tr id="havelink" onclick="javascript:ShowBISInfoDiv({sno}, {x}, {y});"><td height="30" class="test4">{sname}</td></tr>';
	var htmltpl = '';
	$("selected_stopnm").html('');
	$("station_predict").html('');
	
	var dataString = 'buildingnm='+ str;
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/geo/stationNearBldg.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("stop_nm").text();
					var sno = $(this).find("stop_no").text();
					var x = $(this).find("pos_x").text();
					var y = $(this).find("pos_y").text();	
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{sname}', nameid);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{x}', x);
					htmltpl = htmltpl.replace('{y}', y);
					htmlcontent += htmltpl;	
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			if ($("#station_result"))
				$("#station_result").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}
function setRouteNode(ndoetype, str)
{
	if (ndoetype == 'snode_no')
	{
		$("#snode_no").val(str);
		$("#snode_name").removeClass("selectb").addClass("selectb_on");
		if ($("#tnode_no").val().length > 0)
		{
			$("#node_result").html('<span class="test4">검색버튼을 클릭하여 검색합니다.</span>');
		}
		else
		{
			$("#tnode_name").focus();
			$("#node_result").html('<span class="test4">도착지를 검색합니다.</span>');
		}
	}
	else
	{
		$("#tnode_no").val(str);
		$("#tnode_name").removeClass("selectb").addClass("selectb_on");
		$("#node_result").html('<span class="test4">검색버튼을 클릭하여 검색합니다.</span>');
	}
}

function searchNode(str, hidden)
{
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	var htmlrow = '<tr><td width="100%" height="30" class="test4">{sname}</td>';
	htmlrow += '<td width="105" class="test4"><img id="havelink" src="/image/b_select.png" alt="선택" onclick="javascript:setRouteNode(\'';
	htmlrow += hidden;
	htmlrow += '\', {sno});" />';
	htmlrow += '<img id="havelink" src="/image/b_map2.png" alt="지도이동보기" onclick="javascript:MoveToXY({y}, {x});" /></td></tr>';
	var htmltpl = '';
	
	var dataString = 'buildingnm='+ str;
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/geo/nodeNearBldg.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("node_nm").text();
					var sno = $(this).find("node_no").text();
					var x = $(this).find("pos_x").text();
					var y = $(this).find("pos_y").text();	
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{sname}', nameid);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{x}', x);
					htmltpl = htmltpl.replace('{y}', y);
					htmlcontent += htmltpl;	
        		});
        	}
			else
			{
				htmlcontent = '<td class="test4">{name}건물의 300m내 교차로가 없습니다</td>';
				htmlcontent = htmlcontent.replace('{name}', str);
			}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			if ($("#node_result"))
				$("#node_result").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function flipSector(sector)
{
	//$("#sector_1").css('display', 'none');
	//$("#sector_2").css('display', 'none');
	//$("#sector_3").css('display', 'none');
	//$("#sector_4").css('display', 'none');
	//$("#sector_5").css('display', 'none');
	//$("#sector_6").css('display', 'none');
	//$("#" + sector).css('background-color', '#FFF');
	$("#sector_1").removeClass("blue");
	$("#sector_2").removeClass("blue");
	$("#sector_3").removeClass("blue");
	$("#sector_4").removeClass("blue");
	$("#sector_5").removeClass("blue");
	$("#sector_6").removeClass("blue");

	$("#" + sector).addClass("blue");
	//$("#" + sector).css('display', 'block');
	
	var nid = sector.split('_');
	
	$.ajax({
        type: 'get'
        , async: true
        , url: '/bis/RouteInfo_' + nid[1] + '.jsp'
		, cache: false
        , success: function(htmlcontent) {
        	$("#sector_route").html(htmlcontent);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function findDijkstra(start, end)
{
	$("#node_result").html('<span class="test4">경로를 검색중입니다</span>&nbsp;<img src="/image/ajax-loader-bar.gif" align="absbottom" border="0" />');
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	var htmlrow = '<tr><td width="100%" height="30" class="test4">{sname}</td>';
	htmlrow += '<td width="79" class="test4">';
	htmlrow += '<img src="/image/b_map.png" alt="지도이동보기" onclick="javascript:MoveToXY({x}, {y});" /></td></tr>';
	
	var htmltpl = '';

	
	var dataString = 'from_node='+ start + '&to_node=' + end;
	//alert(dataString);
	var path = new Array();
	var cnt = 0;
	var htmlcontent = '';
	var x = '';
	var fnode = '';
	var tnode = '';
	if(routingLayer.features.length != 0)
	{
		routingLayer.removeAllFeatures();
	}
	
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/pathfinder/findroute.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
			if ($(xml).find("distance").length > 0)
			{
				htmltpl = '<tr><td width="100%" height="30" class="test4" colspan="2">경로거리 : ';
				htmltpl += $(xml).find("distance").text();
				htmltpl += 'm</td></tr>';
				htmlcontent += htmltpl;
			}
        	if ($(xml).find("node").length > 0)
        	{
        		$(xml).find("node").each(function()
				{
					var nameid = $(this).find("node_nm").text();
					var sno = $(this).find("node_no").text();
					x = $(this).find("pos_x").text();
					var y = $(this).find("pos_y").text();
					if (nameid != 'null')
					{	
						//path[cnt] = new Object();
						//path[cnt].x = x;
						//path[cnt].y = y;
				
						htmltpl = htmlrow;
						htmltpl = htmltpl.replace('{sname}', nameid);
						htmltpl = htmltpl.replace('{sno}', sno);
						htmltpl = htmltpl.replace('{x}', y);
						htmltpl = htmltpl.replace('{y}', x);
						htmlcontent += htmltpl;	
					}
					if (cnt <  1)
						fnode = sno;
					else
					{
						tnode = sno;
						drawLink(fnode, tnode);
						fnode = sno;
					}
					cnt++;	
										
        		});
        	}
			//alert(x);
			//DrawRouteLine(path, "#ff0000", 0);
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			if ($("#node_result"))
				$("#node_result").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function drawLink(fnode, tnode)
{
	var cnt = 0;
	var dataString = 'fnode='+ fnode +'&tnode=' + tnode;
	
	
	var path = new Array();
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/geo/getWKTfromNode.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					
					var wkt = $(this).find("wkt").text();
					var id = $(this).find("id").text();
					var feature = new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT(wkt));
					DrawWKTLine(id, 3, feature);

        		});
        	}
			//$("#selectbound").html(htmlcontent);
			//DrawRouteLine(path, rgb, flag);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });
}

function searchstationnm(str)
{
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	var htmlrow = '<tr id="havelink" onclick="javascript:ShowBISInfoDiv({sno}, {x}, {y});"><td height="30" class="test4">{sname}({sno})</td></tr>';
	var htmltpl = '';
	$("selected_stopnm").html('');
	$("station_predict").html('');
	
	var dataString = 'stop_name='+ str;
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/StationByName.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("stop_nm").text();
					var sno = $(this).find("stop_no").text();
					var x = $(this).find("pos_x").text();
					var y = $(this).find("pos_y").text();	
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{sname}', nameid);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{x}', x);
					htmltpl = htmltpl.replace('{y}', y);
					htmlcontent += htmltpl;	
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			if ($("#station_result"))
				$("#station_result").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function findTransfer(start, end)
{
	//!TODO
	$("#transfer_result").html('<span class="test4">경로를 검색중입니다</span>&nbsp;<img src="/image/ajax-loader-bar.gif" align="absbottom" border="0" />');
	var htmlcontainer = '<table width="260" border="0" align="center" cellpadding="0" cellspacing="0">';
	htmlcontainer += '<tr><td height="30" align="center" class="test4"><b>{search_start} - {search_end}</b> 버스환승안내</td>';
	htmlcontainer += '</tr><tr><td>';
	htmlcontainer += '<table width="260" border="0" cellspacing="1" cellpadding="0">';
	htmlcontainer += '<tr class="blue2"><td width="80" height="25" align="center" bgcolor="#DCE7F3">노선</td>';
	htmlcontainer += '<td width="88" align="center" bgcolor="#DCE7F3">시작</td>';
	htmlcontainer += '<td width="88" align="center" bgcolor="#DCE7F3">도착</td></tr>{row}</table></td></tr></table>';
	
	var htmlrow = '<tr><td height="25" align="center" bgcolor="#FFFFFF"><span class="test5">{rname}</span></td>';
	htmlrow += '<td align="center" bgcolor="#FFFFFF"><span class="test5">{sname}<!--{start}--></span></td>';
	htmlrow += '<td align="center" bgcolor="#FFFFFF"><span class="test5">{tname}<!--{end}--></span></td></tr>';
	
	var htmltransrow = '<tr><td height="25" align="center" bgcolor="#4EFC8A"><span class="test5">{rname}</span></td>';
	htmltransrow += '<td align="center" bgcolor="#4EFC8A"><span class="test5">{sname}</span></td>';
	htmltransrow += '<td align="center" bgcolor="#4EFC8A"><span class="test5">{tname}</span></td></tr>';
	
	var redclr = "#ff0000";
	
	var htmldgap = '<tr><td colspan="3" align="right"><button onClick="javascript:DrawTransLine({srno}, {srclass}, {sseq}, {stseq}, {erno}, {erclass}, {etseq}, {eseq});"><img src="/image/b_map.png" alt="" /></button</td></tr>';
	var htmlsgap = '<tr><td colspan="3" align="right"><button onClick="javascript:routePartialWay({srno}, {srclass}, {start}, {end}, \'0\');"><img src="/image/b_map.png" alt="" /></button></td></tr>';
		
	var htmltpl = '';

	
	var dataString = 'fstop='+ start + '&tstop=' + end;
	//alert(dataString);

	var cnt = 0;
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/RouteTransfer.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
			
        	//alert($(xml).find("item").length);
        	if ($(xml).find("direct").length > 0)
        	{
        		$(xml).find("direct").each(function(){
					var route_name = $(this).find("route_name").text();
					var route_no = $(this).find("route_no").text();
					var route_class = $(this).find("route_class").text();
					var start = $(this).find("start_seq").text();
					var end = $(this).find("end_seq").text();
					var sname = $("#sstop_name").val();
					var tname = $("#tstop_name").val();
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{rname}', route_name);
					htmltpl = htmltpl.replace('{sname}', sname);
					htmltpl = htmltpl.replace('{tname}', tname);
					htmltpl = htmltpl.replace('{start}', start);
					htmltpl = htmltpl.replace('{end}', end);
					htmlcontent += htmltpl;	
					htmltpl = htmlsgap;
					htmltpl = htmltpl.replace('{srno}', route_no);
					htmltpl = htmltpl.replace('{srclass}', route_class);
					htmltpl = htmltpl.replace('{start}', start);
					htmltpl = htmltpl.replace('{end}', end);		
					htmlcontent += htmltpl;						
			
        		});
        	}
        	if ($(xml).find("one_pass").length > 0)
        	{
        		$(xml).find("one_pass").each(function(){
					var route_name = $(this).find("sroute_name").text();
					var route_no = $(this).find("sroute_no").text();
					var route_class = $(this).find("sroute_class").text();
					var sname = $("#sstop_name").val();
					var sid = $("#sstop_no").val();
					var tid = $("#tstop_no").val();
					var tname = $(this).find("sroute_stop_nm").text();
					var sseq = $(this).find("start").text();
					var stseq = $(this).find("start_trans").text();
					var etseq = $(this).find("end_trans").text();
					var eseq = $(this).find("end").text();
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{rname}', route_name);
					htmltpl = htmltpl.replace('{sname}', sname);
					htmltpl = htmltpl.replace('{tname}', tname);
					htmlcontent += htmltpl;
					
					route_name = $(this).find("droute_name").text();
					var droute_no = $(this).find("droute_no").text();
					var droute_class = $(this).find("droute_class").text();
					sname = $(this).find("sroute_stop_nm").text();
					tname = $("#tstop_name").val();
					htmltpl = htmltransrow;
					htmltpl = htmltpl.replace('{rname}', route_name);
					htmltpl = htmltpl.replace('{sname}', sname);
					htmltpl = htmltpl.replace('{tname}', tname);
					htmlcontent += htmltpl;
					
					htmltpl = htmldgap;
					htmltpl = htmltpl.replace('{srno}', route_no);
					htmltpl = htmltpl.replace('{srclass}', route_class);
					htmltpl = htmltpl.replace('{erno}', droute_no);
					htmltpl = htmltpl.replace('{erclass}', droute_class);	
					htmltpl = htmltpl.replace('{sseq}', sseq);
					htmltpl = htmltpl.replace('{stseq}', stseq);
					htmltpl = htmltpl.replace('{etseq}', etseq);
					htmltpl = htmltpl.replace('{eseq}', eseq);						
									
					htmlcontent += htmltpl;				
					
			
        		});
        	}
			//DrawRouteLine(path, "#ff0000",0);
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			htmlcontainer = htmlcontainer.replace('{search_start}', $("#sstop_name").val());
			htmlcontainer = htmlcontainer.replace('{search_end}', $("#tstop_name").val());
			if ($("#transfer_result"))
				$("#transfer_result").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function searchtransstop(str, hidden)
{
	var htmlcontainer = '<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td><span style="padding-left:5px;">';
	htmlcontainer += '<img src="/image/title_s_1.png" alt="" width="61" height="19" align="absbottom" /></span></td></tr>';
	htmlcontainer += '<tr><td><table width="100%" border="0" cellspacing="0" cellpadding="0">';
	htmlcontainer += '<tr><td width="5"><img src="/image/gb_1.png" alt="" width="5" height="5" /></td>';
	htmlcontainer += '<td background="/image/gb_2.png"></td><td width="5"><img src="/image/gb_3.png" alt="" width="5" height="5" /></td>';
	htmlcontainer += '</tr>';
	htmlcontainer += '<tr><td background="/image/gb_4.png">&nbsp;</td><td bgcolor="#f3f3f3" >';
	htmlcontainer += '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}';
	htmlcontainer += '</table></td><td background="/image/gb_5.png">&nbsp;</td></tr>';
	htmlcontainer += '<tr><td width="5"><img src="/image/gb_6.png" alt="" width="5" height="5" /></td>';
	htmlcontainer += '<td background="/image/gb_7.png"></td><td width="5"><img src="/image/gb_8.png" alt="" width="5" height="5" /></td>';
	htmlcontainer += '</tr></table></td></tr></table>';

	var htmlrow = '<tr><td height="30" width="145" class="test4" id="havelink" onclick="javascript:MoveToXY({x}, {y}, map.numZoomLevels - 2, \'mark\');">{sname}({sno})</td><td width="105" class="test4">';
	htmlrow += '<img id="havelink" src="/image/b_map2.png" alt="지도이동보기" onclick="javascript:MoveToXY({x}, {y}, map.numZoomLevels - 2, \'mark\');" />';
	htmlrow += '<img id="havelink" src="/image/b_select.png" width="48" height="23" onclick="javascript:setTransNode(\'';
	htmlrow += hidden;
	htmlrow += '\', \'{sname}\', {sno});" /></td></tr>';
	var htmltpl = '';
	$("selected_stopnm").html('');
	document.getElementById('transfer_result').innerHTML = '';
	$("transfer_result").html('');
	
	var dataString = 'stop_name='+ str;
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/StationByName.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("stop_nm").text();
					var sno = $(this).find("stop_no").text();
					var x = $(this).find("pos_x").text();
					var y = $(this).find("pos_y").text();	
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{sname}', nameid);
					htmltpl = htmltpl.replace('{sname}', nameid);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{x}', x);
					htmltpl = htmltpl.replace('{y}', y);
					htmltpl = htmltpl.replace('{x}', x);
					htmltpl = htmltpl.replace('{y}', y);					
					htmlcontent += htmltpl;	
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			if ($("#selected_stopnm"))
				$("#selected_stopnm").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function setTransNode(ndoetype, str, stop_val)
{
	if (ndoetype == 'sstop_no')
	{
		$("#sstop_no").val(stop_val);
		$("#sstop_name").removeClass("selectb").addClass("selectb_on");
		$("#sstop_name").val(str);
		if ($("#tstop_no").val().length > 0)
		{
			$("#selected_stopnm").html('<span class="test4">검색버튼을 클릭하여 검색합니다.</span>');
		}
		else
		{
			$("#tstop_name").focus();
			$("#selected_stopnm").html('<span class="test4">목적지 정류장을 검색합니다.</span>');
		}
	}
	else
	{
		$("#tstop_no").val(stop_val);
		$("#tstop_name").removeClass("selectb").addClass("selectb_on");
		$("#tstop_name").val(str);
		$("#selected_stopnm").html('<span class="test4">검색버튼을 클릭하여 검색합니다.</span>');
	}
}

function clipstationnm(str)
{
	var htmlcontainer = '<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	var htmlrow = '<tr id="havelink" onclick="javascript:clipBISInfo({sno});"><td height="30" class="test4">{sname}({sno})</td></tr>';
	var htmltpl = '';
	$("#station_result").html('');
	document.getElementById('station_predict').innerHTML = '';
	$("#station_predict").html('');
	
	var dataString = 'stop_name='+ str;
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/StationByName.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("stop_nm").text();
					var sno = $(this).find("stop_no").text();
					var x = $(this).find("pos_x").text();
					var y = $(this).find("pos_y").text();	
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{sname}', nameid);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{x}', x);
					htmltpl = htmltpl.replace('{y}', y);
					htmlcontent += htmltpl;	
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			if ($("#station_result"))
				$("#station_result").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function clipBISInfo(stopno, x, y)
{
	$("#station_result").html('');
	if (stopno.length < 1)
		return;

	var myname = '';
	if (stopno == null)
		return;
	var dataString = 'stop_no='+ stopno;
	var htmlcontainer = '<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"><tr class="blue2">';
	htmlcontainer += '<td width="40%" height="25" align="center" bgcolor="#D6E9FC" style="padding-left:5px;">노선번호</td><td align="center" bgcolor="#D6E9FC">도착예상</td>';
	htmlcontainer += '</tr>{row}</table>';
	
	var htmlrow = '<tr><td height="25" align="center" bgcolor="#FFFFFF" class="test5">{route_no}</td><td align="center" bgcolor="#FFFFFF">{remain_time}</td></tr>';
	var htmltpl = '';
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/PredictInfo.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var rname = $(this).find("route_name").text();
					var rno = $(this).find("route_no").text();
					var classno = $(this).find("route_class").text();
					var busno = $(this).find("bus_name").text();
					var prestop = $(this).find("prevstop").text();
					var remaintime = $(this).find("remain_time").text();
					var remainstop = $(this).find("remain_stop_count").text();
					myname = $(this).find("my_name").text();
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{route_no}', rname);
					if (prestop == ".")
					{
						htmltpl = htmltpl.replace('{remain_time}', '운행준비중');
					}
					else
					{
						remaintime += '분후 도착';
						htmltpl = htmltpl.replace('{remain_time}', remaintime);
					}
					
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			htmltpl = '<b>' + myname + '</b>';
			if ($("#station_predict"))
			{
				$("#station_predict").html(htmlcontainer);
			}
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function onselectnameindex(str)
{
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	var htmlrow = '<tr id="havelink" onclick="javascript:ShowBISInfoDiv({sno}, {x}, {y});"><td height="30" class="test4">{sname}</td></tr>';
	var htmltpl = '';
	$("selected_stopnm").html('');
	$("station_predict").html('');
	
	var dataString = 'stop_name='+ str;
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/StationByIndex.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("stop_nm").text();
					var sno = $(this).find("stop_no").text();
					var x = $(this).find("pos_x").text();
					var y = $(this).find("pos_y").text();	
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{sname}', nameid);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{x}', x);
					htmltpl = htmltpl.replace('{y}', y);
					htmlcontent += htmltpl;	
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			if ($("#station_result"))
				$("#station_result").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function ShowBISInfoDiv(stopno, x, y)
{
	if (stopno.length < 1)
		return;
	if (document.getElementById('tab_form'))
		return;
	
	if ((x != null) && (y != null))
		MoveToXY(x, y, map.numZoomLevels - 2, 'mark');
	var myname = '';
	if (stopno == null)
		return;
	var dataString = 'stop_no='+ stopno;
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"><tr class="blue2">';
	htmlcontainer += '<td width="80" height="25" align="center" bgcolor="#D6E9FC" style="padding-left:5px;">노선번호</td><td align="center" bgcolor="#D6E9FC">도착예상</td>';
	htmlcontainer += '</tr>{row}</table>';
	
	var htmlrow = '<tr><td width="80" height="25" align="center" bgcolor="#FFFFFF" class="test5">{route_no}</td><td align="center" bgcolor="#FFFFFF">{remain_time}</td></tr>';
	var htmltpl = '';
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/PredictInfo.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var rname = $(this).find("route_name").text();
					var rno = $(this).find("route_no").text();
					var classno = $(this).find("route_class").text();
					var busno = $(this).find("bus_name").text();
					var prestop = $(this).find("prevstop").text();
					var remainstop = $(this).find("remain_time").text();
					var remaintime = $(this).find("remain_stop_count").text();
					if (myname.length < 1 )
					{
						myname = $(this).find("my_name").text();
					}
					
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{route_no}', rname);
					if (prestop == ".")
					{
						htmltpl = htmltpl.replace('{remain_time}', '운행준비중');
					}
					else
					{
						remaintime += '분후 도착';
						htmltpl = htmltpl.replace('{remain_time}', remaintime);
					}
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			htmltpl = '<b>' + myname + '</b>';
			$("#selected_stopnm").html(htmltpl);
			if ($("#station_predict"))
			{
				$("#station_predict").html(htmlcontainer);
			}

          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function ShowBISInfo(stopno, stopnm)
{
	var dataString = 'stop_no='+ stopno;
	var htmlcontainer = '<table width="336" border="0" align="center" cellpadding="0" cellspacing="0"><tr><td background="/image/popup_title.jpg" width="336" height="38" class="white" valign="middle">&nbsp;';
	htmlcontainer += stopnm + '</td></tr><tr><td>';
	htmlcontainer += '<div id="predict_result"><table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"><tr class="blue2">';
	htmlcontainer += '<td width="86" height="25" align="center"bgcolor="#D6E9FC" style="padding-left:5px;">노선번호</td><td align="center" bgcolor="#D6E9FC" width="140">현재위치</td><td align="center" bgcolor="#D6E9FC">도착예상</td>';
	htmlcontainer += '</tr>{row}</table></div></td></tr></table>';
	$("#station_result").html('');
	
	var htmlrow = '<tr><td height="25" align="center" class="test4" bgcolor="#FFFFFF" class="test5">{route_no}</td><td align="center" bgcolor="#FFFFFF">{prevstop}</td><td align="center" bgcolor="#FFFFFF">{remain_time}</td></tr>';
	var htmltpl = '';
	var htmlcontent = '';
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/bis/PredictInfo.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var rname = $(this).find("route_name").text();
					var rno = $(this).find("route_no").text();
					var classno = $(this).find("route_class").text();
					var busno = $(this).find("bus_name").text();
					var prestop = $(this).find("prevstop").text();
					var remaintime = $(this).find("remain_time").text();
					var remainstop = $(this).find("remain_stop_count").text();
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{route_no}', rname);
					if (prestop == ".")
					{
						htmltpl = htmltpl.replace('{remain_time}', '운행준비중');
					}
					else
					{
						remaintime += '분후 도착';
						htmltpl = htmltpl.replace('{remain_time}', remaintime);
					}
					htmltpl = htmltpl.replace('{remain_time}', remaintime);
					htmltpl = htmltpl.replace('{prevstop}', prestop);
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			htmlcontainer += closemapPopup;
			//!< 여기서 인포창에 html을 넣는다.
			//$("#station_predict").html(htmlcontainer);
			makePopup(htmlcontainer, 336, 238);
			

          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}
<!-- BIS END -->

<!-- ITS 검색 -->
function fillARTList()
{
	var htmlcontent = '<option>주요도로명을 선택하세요.</option>';
	$.ajax({
        type: 'get'
        , async: true
        , url: '/include/its/listART.jsp'
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var nameid = $(this).find("sect_name").text();
					var rno = $(this).find("sect_no").text();
					var sno = $(this).find("snode_name").text();
					var tno = $(this).find("tnode_name").text();
					htmlcontent += '<option value=' + rno +'>' +nameid +'&nbsp;[' + sno + '-&gt;' + tno + ']</option>';     			
        		});
        	}
			$("#select_art").html(htmlcontent);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function GetLv2Link(artno)
{
	var pos_x, pos_y;
	var dataString = 'link_id='+ artno;
	var icon1 = '<img src="/image/icon_3.png" width="29" height="16" align="top" alt="소통원활"/>';
	var icon2 = '<img src="/image/icon_2.png" width="29" height="16" align="top" alt="지체서행"/>';
	var icon3 = '<img src="/image/icon_1.png" width="29" height="16" align="top" alt="정체"/>';
	var htmlrow = '<tr><td width="35" valign="top">{lvicon}</td><td class="test4"><b>{fnode} - &gt; {tnode}</b><br /><span class="test5">(구간속도 {speed}km)</span>';
	htmlrow += '</td><td><a href="javascript:MoveToXY({y}, {x},map.numZoomLevels - 1);"><img src="/image/b_map2.png" width="47" /></a></td></tr>';
    htmlrow += '<tr><td height="7" colspan="3"></td></tr><tr><td height="1" background="/image/bot_1.png" colspan="3"></td></tr><tr><td height="7" colspan="3"></td></tr>';
	
	var htmltpl = '';
	var htmlcontent = '';
	var htmlcontainer = '<table width="240" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/its/link.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var fnode = $(this).find("snode_name").text();
					var tnode = $(this).find("tnode_name").text();
					var t_grade = $(this).find("grade").text();
					var speed = $(this).find("speed").text();
					pos_x = $(this).find("x").text();
					pos_y = $(this).find("y").text();
					
					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{fnode}', fnode);
					htmltpl = htmltpl.replace('{tnode}', tnode);
					htmltpl = htmltpl.replace('{speed}', speed);
					htmltpl = htmltpl.replace('{x}', pos_x);
					htmltpl = htmltpl.replace('{y}', pos_y);					
					if (t_grade == "1")
						htmltpl = htmltpl.replace('{lvicon}', icon1);
					else if (t_grade == "2")
						htmltpl = htmltpl.replace('{lvicon}', icon2);
					else if (t_grade == "3")
						htmltpl = htmltpl.replace('{lvicon}', icon3);
					else
					{
						htmltpl = htmltpl.replace('{lvicon}', '');
					}					
					
					//htmltpl = htmltpl.replace('{remain_time}', remaintime);
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			$("#link_2lv").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function CCTVShowAndGo(x, y, id, name)
{
	var current = new Date();
	var nowHH = current.getHours();
	var nowMM = current.getMinutes();
	var nowSS = current.getSeconds();	
	var imgsrc = '<img src="/include/its/cctvsnap.jsp?cctv_no={id}&';
	imgsrc += nowSS;
	imgsrc += '" width="273" height="186" alt="{name}" />';
	imgsrc = imgsrc.replace('{name}', name);
	imgsrc = imgsrc.replace('{id}', id);
	//alert(imgsrc);
	$("#cctv_snapshot").html(imgsrc);
	MoveToXY(x, y, map.numZoomLevels - 1, 'mark');
}

function fillCCTV()
{

	var htmlrow = '<tr id="havelink" onClick="javascript:CCTVShowAndGo({y}, {x}, {id}, \'{name}\');"><td height="30" class="test4" align="left"><b>{name}</b></td><td width="55" align="left"><img src="/image/b_view.png" width="48" height="23" alt="{id}" /></td></tr>';

	var htmltpl = '';
	var htmlcontent = '';
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	
	$.ajax({
        type: 'get'
        , async: true
        , url: '/include/its/cctv.jsp'
        , data: null 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var cctvno = $(this).find("cctv_no").text();
					var location = $(this).find("cctv_location").text();
					var pos_x = $(this).find("pos_x").text();
					var pos_y = $(this).find("pos_y").text();

					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{name}', location);
					htmltpl = htmltpl.replace('{id}', cctvno);
					htmltpl = htmltpl.replace('{name}', location);
					htmltpl = htmltpl.replace('{id}', cctvno);					
					htmltpl = htmltpl.replace('{x}', pos_x);
					htmltpl = htmltpl.replace('{y}', pos_y);
					MarkCCTV(cctvno, pos_x, pos_y);
					
					//htmltpl = htmltpl.replace('{remain_time}', remaintime);
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			$("#cctv_list").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });			
}

function fillParking()
{
	var htmlrow = '<tr><td height="30" class="test4">{name}</td>';
	htmlrow += '<td width="80"><img src="/image/b_map.png" id="havelink" width="79" height="23"  alt="상세정보" onClick="javascript:GetParkinInfo({id}, {y}, {x});" /></td>';
	htmlrow += '</tr><tr><td height="1" colspan="2" background="/image/dot_1.png"></td></tr>';


	var htmltpl = '';
	var htmlcontent = '';
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	
	$.ajax({
        type: 'get'
        , async: true
        , url: '/include/parking/listPARKING.jsp'
        , data: null 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var parkno = $(this).find("park_no").text();
					var parknm = $(this).find("park_nm").text();
					var pos_x = $(this).find("pos_x").text();
					var pos_y = $(this).find("pos_y").text();

					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{name}', parknm);
					htmltpl = htmltpl.replace('{id}', parkno);
					htmltpl = htmltpl.replace('{x}', pos_x);
					htmltpl = htmltpl.replace('{y}', pos_y);
					MarkParking(parkno, pos_x, pos_y);
					
					//htmltpl = htmltpl.replace('{remain_time}', remaintime);
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			$("#list_parking").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}


function GetParkinInfo(id, x, y)
{
	var htmlrow = '<table width="250" border="0" cellspacing="1" cellpadding="0">';
	htmlrow += '<tr><td width="75" height="25" bgcolor="#E1E1E1" class="test5" style="padding-left:5px;">주차장명</td>';
	htmlrow += '<td bgcolor="#FFFFFF" class="test5">{park_nm}</td></tr>';
	htmlrow += '<tr><td height="25" bgcolor="#E1E1E1" class="test5" style="padding-left:5px;">총주차대수</td>';
	htmlrow += '<td bgcolor="#FFFFFF" class="test5">{park_capacity}</td></tr>';
	htmlrow += '<tr><td height="25" bgcolor="#E1E1E1" class="test5" style="padding-left:5px;">운영시간</td>';
	htmlrow += '<td bgcolor="#FFFFFF" class="test5">{park_open}~{park_close}</td></tr>';
	htmlrow += '<tr><td height="25" bgcolor="#E1E1E1" class="test5" style="padding-left:5px;">관리자</td>';
	htmlrow += '<td bgcolor="#FFFFFF" class="test5">{park_admin}</td></tr></table>';


	var htmltpl = '';
	var htmlcontent = '';
	var htmlcontainer = '{row}';
	var dataString = 'park_no=' + id;
	
	MoveToXY(x, y, map.numZoomLevels - 1);
	
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/parking/parkingstatus.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					
					var parknm = $(this).find("park_nm").text();
					var park_capacity = $(this).find("park_capacity").text();
					var park_open = $(this).find("park_open").text();
					var park_close = $(this).find("park_close").text();
					var park_admin = $(this).find("park_admin").text();

					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{park_nm}', parknm);
					htmltpl = htmltpl.replace('{park_capacity}', park_capacity);
					htmltpl = htmltpl.replace('{park_open}', park_open);
					htmltpl = htmltpl.replace('{park_close}', park_close);
					htmltpl = htmltpl.replace('{park_admin}', park_admin);					
				
					//htmltpl = htmltpl.replace('{remain_time}', remaintime);
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			//alert(htmlcontainer);
			$("#parking_detail").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}
<!-- ITS END -->

<!-- 대문페이지 채우기 -->
function fillLinkClip()
{
	var icon1 = '<img src="/image/icon_3.png" width="29" height="16" align="top" alt="소통원활"/>';
	var icon2 = '<img src="/image/icon_2.png" width="29" height="16" align="top" alt="지체서행"/>';
	var icon3 = '<img src="/image/icon_1.png" width="29" height="16" align="top" alt="정체"/>';
	
	var htmlrow = '<table width="230" border="0" cellspacing="0" cellpadding="0">';
    htmlrow += '<tr><td width="38" rowspan="3" valign="top">{lvicon}</td>';
    htmlrow += '<td class="test4"><b>{name}</b> &nbsp;구간속도 {speed}km</td></tr><tr><td class="test5">{sno} -&gt; {tno}</td></tr></table></td>';
    htmlrow += '</tr><tr><td><table width="230" border="0" cellspacing="0" cellpadding="0">';
    htmlrow += '<tr><td height="5"></td></tr><tr><td height="1" background="image/bot_1.png"></td>';
    htmlrow += '</tr><tr><td height="5"></td></tr></table>';
	
	var htmltpl = '';
	var htmlcontent = '';
	var htmlcontainer = '{row}';
	
	$.ajax({
        type: 'get'
        , async: true
        , url: '/include/clip/cliplink.jsp'
        , data: null 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var fnode = $(this).find("sect_name").text();
					var t_grade = $(this).find("grade").text();
					var speed = $(this).find("speed").text();
					var sno = $(this).find("snode_name").text();
					var tno = $(this).find("tnode_name").text();

					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{name}', fnode);
					htmltpl = htmltpl.replace('{speed}', speed);
					htmltpl = htmltpl.replace('{sno}', sno);
					htmltpl = htmltpl.replace('{tno}', tno);
					if (t_grade == "1")
						htmltpl = htmltpl.replace('{lvicon}', icon1);
					else if (t_grade == "2")
						htmltpl = htmltpl.replace('{lvicon}', icon2);
					else if (t_grade == "3")
						htmltpl = htmltpl.replace('{lvicon}', icon3);
					else
					{
						htmltpl = htmltpl.replace('{lvicon}', '');
					}					
					
					//htmltpl = htmltpl.replace('{remain_time}', remaintime);
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			$("#clip_linkspd").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function fillCCTVClip()
{
	var htmlrow = '<table width="230" border="0" align="center" cellpadding="0" cellspacing="0">';
    htmlrow += '<tr><td width="109" rowspan="2"><img src="/include/its/cctvsnap.jsp?cctv_no={id}" width="109" height="69" alt="{name}" /></td>';
    htmlrow += '<td width="7" rowspan="2">&nbsp;</td><td height="30" class="test4"><b>{name}</b></td></tr>';
    htmlrow += '<tr><td valign="top" class="test5">{speed}km 구간</td></tr></table>';
	
	var htmltpl = '';
	var htmlcontent = '';
	var htmlcontainer = '{row}';
	
	$.ajax({
        type: 'get'
        , async: true
        , url: '/include/clip/clipCCTV.jsp'
        , data: null 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var fnode = $(this).find("cctv_no").text();
					var cctvnm = $(this).find("cctv_name").text();
					var speed = $(this).find("cctv_speed").text();

					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{id}', fnode);
					htmltpl = htmltpl.replace('{name}', cctvnm);
					htmltpl = htmltpl.replace('{name}', cctvnm);
					htmltpl = htmltpl.replace('{speed}', speed);
					//htmltpl = htmltpl.replace('{remain_time}', remaintime);
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			$("#clip_cctvsnap").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}

function fillBBSClip()
{
	var htmlrow = '';
    htmlrow += '<tr><td height="20"><span class="test4"><a href="/etc/notice_view.jsp?seq={seq}&page=1">{title}</a></span></td><td width="80" align="right" class="test1">{date}</td></tr>';
	
	var htmltpl = '';
	var htmlcontent = '';
	var htmlcontainer = '<table width="250" border="0" align="center" cellpadding="0" cellspacing="0">{row}</table>';
	
	$.ajax({
        type: 'get'
        , async: true
        , url: '/include/clip/clipBoard.jsp'
        , data: null 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var daystr = $(this).find("date").text();
					var title = $(this).find("subject").text();
					var seq = $(this).find("seq_no").text();

					htmltpl = htmlrow;
					htmltpl = htmltpl.replace('{title}', title);
					htmltpl = htmltpl.replace('{date}', daystr);
					htmltpl = htmltpl.replace('{seq}', seq);
					//htmltpl = htmltpl.replace('{remain_time}', remaintime);
					htmlcontent += htmltpl;		
        		});
        	}
			htmlcontainer = htmlcontainer.replace('{row}', htmlcontent);
			//alert(htmlcontainer);
			$("#clip_index_bbs").html(htmlcontainer);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });		
}
<!-- 대문페이지 END -->


function ShowITSInfo(link_no, level)
{
	var url_lv = '/include/its/';
	if (link_no.length < 1)
		return;
			
	if (level == '1')
	{		
		url_lv += 'listART.jsp';
	}
	else
	{
		url_lv += 'linkpop.jsp';
	}

	var dataString = 'link_id='+ link_no;
	
	$.ajax({
        type: 'post'
        , async: true
        , url: url_lv
        , data: dataString 
		, cache: false
        , success: function(xml) {
			var htmlcontent = '<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">';
			//alert(dataString);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					var road_from = $(this).find("snode_name").text();
					var road_to = $(this).find("tnode_name").text();
					var speed = $(this).find("speed").text();
					var grade = $(this).find("grade").text();
					if (level == '1')
					{
						var roadnm = $(this).find("sect_name").text();
						htmlcontent +=  '<tr><td height="25" class="grade' + grade +'" align="center">' + roadnm + '</td></tr>';
					}
					htmlcontent +=  '<tr><td height="25" class="grade' + grade +'" align="center">' + road_from +'-&gt;' + road_to + '</td></tr><tr><td height="25" align="center"  bgcolor="#FFFFFF">'+ speed+ 'km/h</td>';
        		});
				htmlcontent +=  '</table>';
				
				if ($("#its_info"))
				{
					//!< 여기서 인포창에 html을 넣는다.
					htmlcontent += closemapPopup;
					makePopup(htmlcontent);
				}				
        	}


          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function DrawRouteLine(ptArr, rgb, flag)
{
	var styleLine = {
		strokeColor : rgb,
		strokeWidth : 3
	}
	
	// drawing
	var pointList = [];
	var length = ptArr.length;
	var newPoint;
	for ( var i = 0; i < length; i++) {
		newPoint = new OpenLayers.Geometry.Point(ptArr[i].x,
				ptArr[i].y);
		pointList.push(newPoint);
		//alert(ptArr[i]);
		//i++;
	}
	var busRoute = new OpenLayers.Feature.Vector(
			new OpenLayers.Geometry.LineString(pointList), null, styleLine);
	if (flag == 0){
		if(vectorLayer.features.length != 0)
		{
			vectorLayer.removeAllFeatures();
		}		
	}
	vectorLayer.addFeatures(busRoute);
}

function MoveToXY(x, y, level, poi)
{
	if (level == undefined)
		level = map.numZoomLevels - 1;
	
	map.setCenter(new OpenLayers.LonLat(y, x), level, false, true);
	if (poi != undefined)
	{
		var bussize = new OpenLayers.Size(32, 32);
		clearBus();
		var icon = new OpenLayers.Icon(
			"/icon/32/here.png",
			bussize, new OpenLayers.Pixel(-8, -32), null);		
		var marker = new OpenLayers.Marker(new OpenLayers.LonLat(y, x), icon);
		//marker.feature = feature;
		busMarkers.addMarker(marker);		
	}
}

function clearBus()
{
	try
	{
		busMarkers.clearMarkers();
		iconLayer.removeAllFeatures();
	}
	catch(e)
	{}
}

function MarkBus(id, x, y)
{
	var lonlatMarker = new OpenLayers.LonLat(x, y);
	var feature = new OpenLayers.Feature.Vector(busMarkers, lonlatMarker);
	feature.closeBox = true;
	feature.data.popupContentHTML = id;
//	feature.data.overflow = "hidden";
	var bussize = new OpenLayers.Size(24, 25);

	var icon = new OpenLayers.Icon(
			//"/icon/32/bus_32.png",
			"/icon/bus_icon.gif",
			bussize, null, calculateOffset);
	var marker = new OpenLayers.Marker(lonlatMarker, icon);
	marker.feature = feature;
	busMarkers.addMarker(marker);
	try
	{
		var point = new OpenLayers.Geometry.Point(lonlatMarker);
		var pointFeature = new OpenLayers.Feature.Vector(point);
		pointFeature.attributes = {
					name: id
				};
		iconLayer.addFeature(pointFeature);
	}
	catch(e)
	{}
}
function MarkStart(id, x, y)
{
	var lonlatMarker = new OpenLayers.LonLat(x, y);
	var feature = new OpenLayers.Feature.Vector(busMarkers, lonlatMarker);
	feature.closeBox = true;
	feature.data.popupContentHTML = id;
//	feature.data.overflow = "hidden";
	var bussize = new OpenLayers.Size(35, 36);

	if(id == "end"){
		var icon = new OpenLayers.Icon(
				"/icon/endIco.png",
				bussize, null, calculateOffset);	
	}
	else{
		var icon = new OpenLayers.Icon(
				"/icon/startIco.png",
				bussize, null, calculateOffset);
	}
	var marker = new OpenLayers.Marker(lonlatMarker, icon);
	marker.feature = feature;
	busMarkers.addMarker(marker);
	try
	{
	var point = new OpenLayers.Geometry.Point(lonlatMarker);
    var pointFeature = new OpenLayers.Feature.Vector(point);
    pointFeature.attributes = {
                name: id
            };
	iconLayer.addFeature(pointFeature);
	}
	catch(e)
	{}
}

function MarkCCTV(id, x, y) {
	var lonlatMarker = new OpenLayers.LonLat(x, y);
	var feature = new OpenLayers.Feature.Vector(cctvMarkers, lonlatMarker);
	feature.closeBox = true;
	feature.data.popupContentHTML = id;
//	feature.data.overflow = "hidden";
	var cctvsize = new OpenLayers.Size(26, 26);

	var icon = new OpenLayers.Icon(
			"/image/cctv.gif",
			cctvsize, null, calculateOffset);
	var marker = new OpenLayers.Marker(lonlatMarker, icon);
	marker.feature = feature;

	var markerClick = function(evt) {
		eventXY = new OpenLayers.LonLat(this.data.lon,this.data.lat);
		map.controls[4].deactivate();
		ShowCCTV(id);
		//map.controls[4].activate();		
		OpenLayers.Event.stop(evt);
	};
	marker.events.register("mousedown", feature, markerClick);
	
	cctvMarkers.addMarker(marker);

}

function MarkParking(id, x, y)
{
	var lonlatMarker = new OpenLayers.LonLat(x, y);
	var feature = new OpenLayers.Feature.Vector(parkingMarkers, lonlatMarker);
	feature.closeBox = true;
	feature.data.popupContentHTML = id;
//	feature.data.overflow = "hidden";

	var icon = new OpenLayers.Icon(
			"/image/parking.png",
			size, null, calculateOffset);
	var marker = new OpenLayers.Marker(lonlatMarker, icon);
	marker.feature = feature;

	var markerClick = function(evt) {
		eventXY = new OpenLayers.LonLat(this.data.lon,this.data.lat);
		ShowPARKInfo(id);
		OpenLayers.Event.stop(evt);
	};
	marker.events.register("mousedown", feature, markerClick);
	parkingMarkers.addMarker(marker);	
}

function ShowCCTV(id)
{
	var current = new Date();
	var nowHH = current.getHours();
	var nowMM = current.getMinutes();
	var nowSS = current.getSeconds();
	var imgstr = '<div id="cctv_popsnap"><img src="/include/its/cctvsnap.jsp?cctv_no=' + id + '&' + nowSS +'" width="352" height="240" border="0"></div>';
	imgstr += closemapPopup;
	imgstr += refreshcctvbtn;
	imgstr = imgstr.replace('{id}', id);
	makePopup(imgstr, 350, 240);
}

function ShowPARKInfo(id)
{
	//makePopup(id);
}

function clearpopup()
{
	if(map.popups.length != 0)
	{
		for(i=0;i<map.popups.length;i++)
		{
				map.removePopup(map.popups[i]);
		}
	}
	try
	{
		map.controls[4].activate();
	}
	catch(e)
	{}
}

function makePopup(someHTML, w, h){
//	var width, height;
	if (w == null)
		w = 200;
//		width = 200;
	if (h == null)
		h = 80;
//		height = 100;
	var popup = new OpenLayers.Popup.Anchored(
       		"bbox", 
       		eventXY,
       		new OpenLayers.Size(w,h),
       		someHTML,
       		null,
       		false
	);
	popup.panMapIfOutOfView = true;
	popup.keepInMap = true;
	if(map.popups.length != 0)
		removePopup();
	map.addPopup(popup);
}

function setPng24(obj)
{
        obj.width=obj.height=1;
        obj.className=obj.className.replace(/\bpng24\b/i,'');
        obj.style.filter =
        "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+ obj.src +"',sizingMethod='image');"
        obj.src=''; 
        return '';
}

function DrawWKTLine(linkid,grade,features)
{
	var bounds;
	features.grade = grade; //피쳐 grade 할당
	features.linkid = linkid;  //피쳐 linkid 할당
	
	if(features)
	{
		if(features.constructor != Array)
		{
			features = [features];
		}
		for(var i=0; i<features.length; ++i)
		{
			if (!bounds)
			{
				bounds = features[i].geometry.getBounds();
			}
			else
			{
				bounds.extend(features[i].geometry.getBounds());
			}

		}
		routingLayer.addFeatures(features);

		//map.zoomToExtent(bounds);
		//var plural = (features.length > 1) ? 's' : '';
 		//element.value = 'Feature' + plural + ' added'
	}
	else
	{
		//element.value = 'Bad WKT';
	}
	
}

function DrawWKTLink(linkid,grade,features)
{
	var bounds;
	features.grade = grade; //피쳐 grade 할당
	features.linkid = linkid;  //피쳐 linkid 할당
	
	if(features)
	{
		if(features.constructor != Array)
		{
			features = [features];
		}
		for(var i=0; i<features.length; ++i)
		{
			if (!bounds)
			{
				bounds = features[i].geometry.getBounds();
			}
			else
			{
				bounds.extend(features[i].geometry.getBounds());
			}

		}
		//if (linkLayer == 'undefined')
			vectorLayer.addFeatures(features);
		//else
		//	linkLayer.addFeatures(features);

		//map.zoomToExtent(bounds);
		//var plural = (features.length > 1) ? 's' : '';
 		//element.value = 'Feature' + plural + ' added'
	}
	else
	{
		//element.value = 'Bad WKT';
	}
	
}

/*지도초기화 관련
function InitMap()
{
	createMap();
	
	$("#InnerPopupClose").click(function(){
		disablePopup();
	});
	//Click out event!
	$("#backgroundPopup").click(function(){
		disablePopup();
	});
	//Press Escape event!
	$(document).keypress(function(e){
		if(e.keyCode==27 && popupStatus==1){
			disablePopup();
		}
		else if (e.keyCode==13)
		{
			if(e.target.id.toLowerCase() == "bkeyword")
				onsearchbuiling($(e.target).val());
		}
	});
}
*/
/*지도 중심 좌표 처리 샘플
function addAddress(lat, lon){
    var oScript = document.createElement('script');
    oScript.type ='text/javascript';
    oScript.charset ='utf-8';         
    oScript.src = 'http://apis.daum.net/maps/coord2addr?apikey=02597c7a6e7db18d04afc929c1483a92d3d7c372' +
                  '&latitude=' + lat + '&longitude=' + lon +
                  '&output=json&callback=addrSearch';
    document.getElementById("backgroundPopup").appendChild(oScript);
}

function addrSearch(data){
    //var resultForm = document.getElementById("rvAddr");
    //resultForm.innerHTML = data.fullName;
    var nameToken = data.name1 + ' > ' + data.name2.replace(/ /i, ' > ') + ' > ' + data.name;
    //alert(data.fullName);
    document.getElementById("address_center").innerHTML = nameToken;
    document.getElementById("backgroundPopup").removeChild(document.getElementById("backgroundPopup").lastChild);
}
*/

/* xml 읽어들이기
function LoadRunBus(str)
{
	var dataString = 'routeid='+ str;
	
		$.ajax({
        type: 'post'
        , async: true
        , url: '/include/result/getRouteRunBus.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
			//busarray.clear();
			var rembus = busarray.length;
			for(var i = 0; i < rembus; i++)
			{
				busarray[i].setMap(null);
			}
			for(i = 0; i < rembus; i++)
			{
				busarray.pop();
			}
			
			if ($(xml).find("BUS").length > 0)
			{
				//alert($(xml).find("count").text());
				$(xml).find("BUS").each(function(){
					var x = $(this).find("LATITUDE").text();
					var y = $(this).find("LONGITUDE").text();
					var busid = $(this).find("VEHICLENO").text();
					var contenthtml = '<p class="bus_tooltip">'+busid+'</p>';
					//alert(contenthtml);
					
					
					var transedCoord = transCoordinator.convertTM2(parseFloat(x), parseFloat(y), transCoordinator.COORD_WGS84, transCoordinator.BASE_TM_LON, transCoordinator.BASE_TM_LAT, -1, -1);
					//alert(transedCoord[1]);
					var point = new daum.maps.LatLng(transedCoord[1], transedCoord[0]);
					var pbus = new daum.maps.Marker({
					position: point,
					image: busicon
					});
					busarray.push(pbus);
					pbus.setMap(map);
					//alert(contenthtml);
					daum.maps.event.addListener(pbus, "mouseover", function() {
						stationinfo.setContent(contenthtml);
						stationinfo.open(map, pbus);
						stationinfo.setPosition(point);
					});
			
					
				});

			}
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	
}

function showwaypoint(str)
{
	var dataString = 'routeid='+ str;

	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/result/getWaypoint.jsp'
        , data: dataString 
		, cache: false
        , success: function(xml) {
			var path = [];
			clearOverlay();
			
			if ($(xml).find("POINT").length > 0)
			{
				//alert($(xml).find("count").text());
				$(xml).find("POINT").each(function(){
					var x = $(this).find("LATITUDE").text();
					var y = $(this).find("LONGITUDE").text();
					var seq = $(this).find("SEQ").text();
					
					var transedCoord = transCoordinator.convertTM2(parseFloat(x), parseFloat(y), transCoordinator.COORD_WGS84, transCoordinator.BASE_TM_LON, transCoordinator.BASE_TM_LAT, -1, -1);
					//alert(transedCoord[1]);
					path.push(new daum.maps.LatLng(transedCoord[1], transedCoord[0]));
					if (parseInt(seq) < 2)
					{
						map.setCenter(new daum.maps.LatLng(transedCoord[1], transedCoord[0]));
						map.setLevel(map.numZoomLevels - 1);
						map.setMapTypeId(daum.maps.MapTypeId.ROADMAP);
					}
				});
				routepoly.setPath(path);
				routepoly.setMap(map);
			}

            
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });
}
*/

/* object event 처리
function onselectroute(obj)
{
	var dataString = 'routeid='+ obj.value;
	clearOverlay();
	$.ajax({
        type: 'post'
        , async: true
        , url: '/include/result/getBusBound.jsp'
        , data: dataString 
		, cache: false
        , success: function(html) {
			$("#routeResList").empty();
			$("#busbound").empty();
            $("#busbound").append(html);
          }
        , error: function(data, status, err) {
            alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });	

}
*/

/*문자열 처리
function getStationInfo(str)
{
	var dataString = 'sid='+ stationid +'&sName='+ encodeURIComponent(str);
	$.ajax({
    	type: 'GET'
		, contentType: 'script'
		, async: true
		, url: '/include/popup_predictinfo.jsp?' + dataString
		, cache: false
		, success: function(text) {
			stationinfo.setContent(text);
			stationinfo.open(map, pstation);
			stationinfo.setPosition(point);
		}
		, error: function(data, status, err) {
			alert('ajax failed');
		}
		, complete: function() { 
			$('#ajax_load_indicator').fadeOut();
		}
	});
}
*/
function findArtWKT()
{
	var oflag = 1;
	var cnt = 0;
//	var dataString = 'route_no=';
	//alert(dataString);
	
	var path = new Array();
	$.ajax({
        type: 'get'
        , async: true
        , url: '/include/L_ART3.jsp'
//        , data: dataString 
		, cache: false
        , success: function(xml) {
        	//alert($(xml).find("item").length);
        	if ($(xml).find("item").length > 0)
        	{
        		$(xml).find("item").each(function(){
					
					var wkt = $(this).find("wkt").text();
					var id = $(this).find("id").text();
					var feature = new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT(wkt));
/*					
						$.ajax({
							type: 'post'
							, async: true
							, url: '/include/its/listART.jsp'
							, data: 'link_id='+ id
							, cache: false
							, success: function(xml) {
									if ($(xml).find("item").length > 0)
									{
										$(xml).find("item").each(function(){
											oflag = $(this).find("grade").text();
											DrawWKTLink(id, oflag, feature);
										});
									}
							}
							, error: function(data, status, err) {
									alert('서버와의 통신이 실패했습니다.');
							}
							, complete: function() { 
									$('#ajax_load_indicator').fadeOut();
							}
						});	
*/						
					DrawWKTLink(id, oflag, feature);
        		});
        	}
			//$("#selectbound").html(htmlcontent);
			//DrawRouteLine(path, rgb, flag);
          }
        , error: function(data, status, err) {
            //alert('서버와의 통신이 실패했습니다.');
          }
        , complete: function() { 
        	$('#ajax_load_indicator').fadeOut();
          }
    });
}

function removePopup() {
	for(i=0;i<map.popups.length;i++)
	{
		map.removePopup(map.popups[i]);
	}	
}

//-->
