function openMenuPopup()
{ g_oPopup.show(-5, 20, 130, 140, bzpop);}
function gog_nmap(la, lo)
{ p=bazo_g2n(lo,la); window.open('http://maps.naver.com/?x='+p.x+'00&y='+p.y+'00&title=%20', 'map');}
function gog_ymap(la, lo)
{ n=5; window.open('http://maps.yahoo.com/#mvt=h&trf=0&lon='+lo+'&lat='+la+'&mag='+n, 'map');}
function gog_gmap(la, lo)
{ n=18; window.open('http://maps.google.com/maps?f=q&hl=en&ie=UTF8&z='+n+'&ll='+la+','+lo+'&t=k&om=1', 'map');}
function gog_cmap(la, lo)
{ n=1; p=bazo_g2c(la,lo); window.open('http://map.cyworld.nate.com/menu/view.map?center_x='+p.x+'&center_y='+p.y+'&zoom_level='+n, 'map');}
function gog_mmap(la, lo)
{ var bbase = ""; if(mm_mm==1) bbase = "n"; window.open('http://mapapp.tistory.com/?'+bbase+'z'+g_gmap.getZoom()+'a'+la+'o'+lo, 'map');}
function getll()
{ if(mm_mm != 0)
{ c = g_nmap.getCenter(); p=bazo_n2g(c.getX(),c.getY());}
else
{ c = g_gmap.getCenter(); p = new PT(c.lng(), c.lat());}
return p;}
function gomap(n)
{ if(n==0) { toggle_map(); return;}
p = getll(); switch(n) { case 1:
gog_nmap(p.y, p.x); break; case 2:
gog_cmap(p.y, p.x); break; case 3:
gog_ymap(p.y, p.x); break; case 4:
gog_gmap(p.y, p.x); break; case 5:
gog_mmap(p.y, p.x); break; case 11:
window.open("http://www.smartway.seoul.kr/", "map"); break;}
}
function setalpha(n)
{ if(n>0)
{ mm_aa += 10; if(mm_aa > 90) { mm_aa=90; alert('끝입니다.');}
}
else
{ mm_aa -= 10; if(mm_aa < 10) { mm_aa=10; alert('끝입니다.');}
}
if(mm_mm==0)
{ bzgmap.style.filter="Alpha(Opacity="+mm_aa+")";}
else
{ bznmap.style.filter="Alpha(Opacity="+mm_aa+")";}
}
function sethybrid(bbb)
{ if(bbb==null) { bzhybrid.innerHTML = "<a href='javascript:setalpha(-1)'><b>(-)</b></a> <a href='javascript:sethybrid(0)'><b>[하이브리드]</b></a><a href='javascript:setalpha(1)'> <b>(+)</b></a>"; mm_hy = 1; if(mm_mm==0)
{ if(typeof(g_nmap)=="undefined") load_nmap(); bznmap.style.visibility="visible"; bzgmap.style.filter="Alpha(Opacity=70)";}
else
{ if(typeof(g_gmap)=="undefined") load_nmap(); bzgmap.style.visibility="visible"; bznmap.style.filter="Alpha(Opacity=70)";}
g_nmap.removeControl(zoom); g_gmap.removeControl(zoom2);}
else { bzhybrid.innerHTML = "<a href='javascript:sethybrid()'>[하이브리드]</a>"; mm_hy = 0; if(mm_mm==0)
{ bzgmap.style.filter=""; bznmap.style.visibility="hidden";}
else
{ bznmap.style.filter=""; bzgmap.style.visibility="hidden";}
g_nmap.addControl(zoom); g_gmap.addControl(zoom2);}
sync_maps();}
var mm_mm = 0; var mm_fm = false; var mm_fw = parseInt(document.body.clientWidth)-160; var mm_fh = parseInt(document.body.clientHeight); var mm_la = 37.564979; var mm_lo = 126.977441; var mm_z = 17; var mm_hy = 0; var mm_aa = 60; var mm_mark = new Array(); function parseURL(url)
{ p=url.indexOf('?'); if(p<=0) { var pos = document.cookie.indexOf("ZAO="); if(pos<0) return; str = document.cookie.substring(pos); pos = str.indexOf(";"); if(pos>0) { str = str.substring(4,pos);}
} else { str=url.substring(p+1);}
str=unescape(str); if(str.substring(0,1)=="n")
{ mm_mm = 1;}
reg=/f([0-9]+)x([0-9]+)/; if(reg.exec(str)!=null)
{ mm_fm = true; mm_fw = parseInt(RegExp.$1); mm_fh = parseInt(RegExp.$2);}
reg=/z([0-9]+)a([\-0-9\.]+)o([\-0-9\.]+)/; if(reg.exec(str)!=null)
{ mm_z = parseInt(RegExp.$1); mm_la = RegExp.$2; mm_lo = RegExp.$3;}
reg=/&a([\-0-9\.]+)o([\-0-9\.]+)m([^&]+)/g; while(reg.exec(str)!=null)
{ n = mm_mark.length; mm_mark[n] = new Array(); mm_mark[n]['a'] = RegExp.$1; mm_mark[n]['o'] = RegExp.$2; mm_mark[n]['m'] = RegExp.$3;}
}
function ncreateMarker(pos,count,content)
{ var iconUrl = 'http://fs.tistory.com/custom/blog/46144/skin/images/icon_11.gif'; var marker = new NMark(pos,new NIcon(iconUrl,new NSize(20,20))); NEvent.addListener(marker,"mouseover",function(pos){ g_infowin.set(pos,"<TABLE style='width:100px;height:50px;border:solid 1px #666666'><TR><TD bgcolor=f5f5f5>"+content+"</TD></TR></TABLE>"); g_infowin.showWindow();}); NEvent.addListener(marker,"mouseout",function(){ g_infowin.hideWindow();}); return marker;}
function show_nmark()
{ g_nmap.clearOverlays(); g_infowin = new NInfoWindow(); g_nmap.addOverlay(g_infowin); for( i in mm_mark ) { p=bazo_g2n(mm_mark[i]['o'],mm_mark[i]['a']); g_nmap.addOverlay(ncreateMarker(new NPoint(p.x, p.y), i, mm_mark[i]['m']));}
}
function createMarker(i) { var marker = new GMarker(new GLatLng(mm_mark[i]['a'], mm_mark[i]['o']), {draggable: true}); GEvent.addListener(marker, "click", function() { marker.openInfoWindowHtml("<b>" + mm_mark[i]['m'] + "</b>");}); GEvent.addListener(marker, "dragend", function() { p = marker.getPoint(); mm_mark[i]['a'] = p.lat(); mm_mark[i]['o'] = p.lng();}); return marker;}
function show_gmark()
{ for( i in mm_mark ) { g_gmap.addOverlay(createMarker(i));}
}
function add_mark()
{ markname = prompt("만들고자 하는 마커 이름을 넣으세요.(위치는 구글맵 화면에서 Drag && Drop으로 옮길 수 있습니다.)", ""); if(markname==null) return; if(markname=="") { alert("마크 이름을 입력하세요!"); return;}
p = getll(); n = mm_mark.length; mm_mark[n] = new Array(); mm_mark[n]['a'] = p.y; mm_mark[n]['o'] = p.x; mm_mark[n]['m'] = markname; g_gmap.addOverlay(createMarker(n)); if(mm_mm!=0)
{ show_nmark();}
close_help();}
function zoom_g2n(z1) { z=18-z1; if(z<1) { z=1; alert("네이버 지도가 지원하는 줌 레벨로 축소합니다.");}
else if(z>11) { z=11; alert("네이버 지도가 지원하는 줌 레벨로 확대합니다.");}
return z;}
function zoom_n2g(z1) { z=18-z1; return z;}
function toggle_map()
{ if(mm_mm == 0)
{ c = g_gmap.getCenter(); if(c.lng() < 124 || c.lng() > 132.1 || c.lat() < 32.8 || c.lat() > 39.2)
{ alert("네이버 지도가 지원하지 않는 범위 입니다."); return;}
if(typeof(g_nmap)=="undefined") load_nmap(); else show_nmark(); p=bazo_g2n(c.lng(),c.lat()); g_nmap.setCenterAndZoom(new NPoint(p.x, p.y), zoom_g2n(g_gmap.getZoom())); bzgmap.style.visibility="hidden"; bzgmap.style.zIndex=1; bznmap.style.visibility="visible"; bznmap.style.zIndex=2; bzlogo.style.paddingLeft=82; bzlogof.style.color="0f0f0f"; mm_mm = 1;}
else
{ if(typeof(g_gmap)=="undefined") load_gmap(); c = g_nmap.getCenter(); p=bazo_n2g(c.getX(),c.getY()); g_gmap.setCenter(new GLatLng(p.y, p.x), zoom_n2g(g_nmap.getZoom())); bzgmap.style.visibility="visible"; bzgmap.style.zIndex=2; bznmap.style.visibility="hidden"; bznmap.style.zIndex=1; bzlogo.style.paddingLeft=66; bzlogof.style.color="fafafa"; mm_mm = 0;}
sethybrid(0);}
function close_help()
{ bzmemu.style.height=20;}
function update_cookie() { var date = new Date(); date.setTime(date.getTime()+31536000000); var expires = "; expires="+date.toGMTString(); if(mm_mm==1) { c = g_nmap.getCenter(); p = bazo_n2g(c.getX(), c.getY()); document.cookie='ZAO=nz'+zoom_n2g(g_nmap.getZoom())+'a'+p.y+'o'+p.x+';' + expires;}
else { var c = g_gmap.getCenter(); document.cookie='ZAO=z'+g_gmap.getZoom()+'a'+c.lat()+'o'+c.lng()+';' + expires;}
}
function update_help(nsize)
{ update_cookie(); if(bzmemu.style.height!="") return; if(nsize==null) nsize="500"; bbase = ""; if(bzbase.value=="n") bbase = "n"; p = getll(); z = g_gmap.getZoom(); fstr = "http://web.allro.com:8000/~mapstory/iframe.php?"+bbase+"f"+nsize+"x"+nsize+"z"+z+"a"+p.y+"o"+p.x+"&"; str = "지도 중심 - 위도: " + p.y + ", 경도: " + p.x; for( i in mm_mark ) { str += "<br /> &nbsp; - <b>마커 "+i+"</b>("+mm_mark[i]['m']+") - 위도: " + mm_mark[i]['a'] + ", 경도: " + mm_mark[i]['o']; fstr += "a"+mm_mark[i]['a']+"o"+mm_mark[i]['o']+"m"+mm_mark[i]['m']+"&";}
help_1.innerHTML = str; help_2.value = "<iframe frameborder=0 scrolling=no width="+nsize+" height="+nsize+" src='"+fstr+"'></iframe>";}
function show_help()
{ if(bzmemu.style.height=="")
{ close_help(); return;}
if(typeof(g_gmap)=="undefined") { load_gmap(); bzgmap.style.visibility="hidden";}
if(mm_mm==0) bzbase.options.selectedIndex=1; else bzbase.options.selectedIndex=0; bzmemu.style.height=""; update_help();}
parseURL(location.href); str = "<div id=bzbig style='width:"+mm_fw+"; height:"+mm_fh+"; overflow:hidden;'>"; str += "<div id=bzgmap style='z-index:2;width:"+mm_fw+"; height:"+mm_fh+";'></div>"; str += "<div id=bznmap style='z-index:1;position:relative; top:-"+mm_fh+"; width:"+mm_fw+"; height:"+mm_fh+";'></div>"; str += "<div id=bzlogo style='z-index:5;position:relative; text-align:left; padding-left:66; top:-"+(mm_fh+20)+";'><small><font color=8e8e8e> & </font></small><a target=_new href='http://mapstory.net'><font id=bzlogof color=fafafa> <b>http://mapstory.net</b></font></a></div>"; str += "<div id=bzmemu style='z-index:5;position:relative; top:-"+(2*mm_fh+20)+"; width:"+mm_fw+"; height:20; overflow:hidden;'>"+bztmbox.innerHTML+"</div>"; str += "</div>"; bztmbox.innerHTML = ""; document.write(str); function sync_maps()
{ if(mm_mm==0)
{ c = g_gmap.getCenter(); p = bazo_g2n(c.lng(), c.lat()); g_nmap.setCenter(new NPoint(p.x,p.y)); z=g_gmap.getZoom(); z=18-z; if(z<1||z>11) { bznmap.style.visibility="hidden"; return;}
g_nmap.setZoom(z); bznmap.style.visibility="visible";}
else
{ c = g_nmap.getCenter(); p = bazo_n2g(c.getX(), c.getY()); g_gmap.setCenter(new GLatLng(p.y, p.x), zoom_n2g(g_nmap.getZoom())); bzgmap.style.visibility="visible";}
}
function load_gmap()
{ if (GBrowserIsCompatible())
{ g_gmap = new GMap2(document.getElementById("bzgmap")); zoom2 = new GLargeMapControl(); g_gmap.addControl(zoom2); g_gmap.setCenter(new GLatLng(mm_la, mm_lo), mm_z); g_gmap.setMapType(G_SATELLITE_MAP); g_gmap.enableDoubleClickZoom(); g_gmap.enableContinuousZoom(); GEvent.addListener(g_gmap, "movestart", function() { if(mm_mm==0 && mm_hy==1) { bznmap.style.visibility="hidden";}
}); GEvent.addListener(g_gmap, "moveend", function() { update_help(); if(mm_mm==0 && mm_hy==1) { sync_maps();}
}); show_gmark(); bzgmap.onmousewheel=bazow;}
}
function load_nmap()
{ p=bazo_g2n(mm_lo,mm_la); z=zoom_g2n(mm_z); g_nmap = new NMap(document.getElementById('bznmap'),mm_fw,mm_fh); g_nmap.setCenterAndZoom(new NPoint(p.x, p.y), z); zoom =new NZoomControl(); if(0) { save = new NSaveBtn(); mindex = new NIndexMap(); g_nmap.addControl(mindex); g_nmap.addControl(save);}
else
zoom.setAlign("left"); g_nmap.addControl(zoom); NEvent.addListener(g_nmap,"endDrag",function() { update_help(); if(mm_mm==1 && mm_hy==1) { setTimeout("sync_maps()", 77);}
}); NEvent.addListener(g_nmap,"dblclick",function() { update_help(); if(mm_mm==1 && mm_hy==1) { setTimeout("sync_maps()", 777);}
}); NEvent.addListener(g_nmap,"startDrag",function() { if(mm_mm==1 && mm_hy==1) { bzgmap.style.visibility="hidden";}
}); show_nmark(); bznmap.onmousewheel=bazow;}
function load()
{ if(mm_fm)
{ bzbig.style.position="absolute"; bzbig.style.top=0; bzbig.style.left=0;}
if(mm_mm==0)
load_gmap(); else
load_nmap();}
function bazow()
{ if(event.wheelDelta>=120)
{ if(mm_mm==0) g_gmap.zoomIn(); else g_nmap.zoomIn();}
else if(event.wheelDelta<=-120)
{ if(mm_mm==0) g_gmap.zoomOut(); else g_nmap.zoomOut();}
return false;}
function mmap_unload() { update_cookie(); GUnload();}
document.body.onload=load; document.body.onunload=mmap_unload; if(mm_fm) { window.onerror=function () { return true;}
}
