/*
 * Compressed by JSA(www.xidea.org)
 */
var PAGEPATH=document.location.href.replace(/#.*/,"").replace(/\/[^\/]*$/,"/"),SEARCH_PLACEHOLDER="Search location by name or address or lat.lon.",ge,helpOverlay,adsManager,zeroClip;function init(){initSearchBox();initZeroClipboard();initEarth();initLocation();initAds()}function initEarth(){if(GBrowserIsCompatible()){ge=new google.maps.Map2(document.getElementById("earth"));initStartLocation();ge.setUIToDefault()}initListeners()}function initZeroClipboard(){ZeroClipboard.setMoviePath("js/ZeroClipboard.swf");zeroClip=new ZeroClipboard.Client("copyurl-link");zeroClip.setHandCursor(true)}function updateZeroClipboard($){zeroClip.reposition();zeroClip.setText($)}function earthBatch($){google.earth.fetchKml(ge,"",$)}function addDomListener($,A,_){if($.addEventListener)$.addEventListener(A,_,false);else if($.attachEvent)$.attachEvent("on"+A,_)}function makeRoundedCorners(){earthBatch(function(){var $=function(C,A,_){var B=ge.createScreenOverlay(""),$=ge.createIcon("");$.setHref(PAGEPATH+"images/earth-corner.png");B.setIcon($);B.getOverlayXY().set(C,ge.UNITS_FRACTION,A,ge.UNITS_FRACTION);B.getScreenXY().set(C,ge.UNITS_FRACTION,A,ge.UNITS_FRACTION);B.getSize().set(15,ge.UNITS_PIXELS,15,ge.UNITS_PIXELS);B.setRotation(_);ge.getFeatures().appendChild(B)};$(0,1,0);$(0,0,90);$(1,0,180);$(1,1,270)})}function initListeners(){GEvent.addListener(ge,"moveend",function(){hashurl=enurl();document.getElementById("copyurl-container").style.visibility="visible";document.getElementById("copyurl").innerHTML=PAGEPATH+"#"+hashurl;document.getElementById("tweet-link").href=tweetUrl(PAGEPATH+"#"+hashurl);document.location.hash="#"+hashurl;updateZeroClipboard(PAGEPATH+"#"+hashurl)});GEvent.addListener(ge,"maptypechanged",function(){hashurl=enurl();document.getElementById("copyurl-container").style.visibility="visible";document.getElementById("copyurl").innerHTML=PAGEPATH+"#"+hashurl;document.getElementById("tweet-link").href=tweetUrl(PAGEPATH+"#"+hashurl);document.location.hash="#"+hashurl;updateZeroClipboard(PAGEPATH+"#"+hashurl)})}function enurl(){var _=ge.getZoom(),B="";if(_>9)B=_.toString();else B="0"+_.toString();var A=ge.getCenter(),$=encodeGeoHash(A.lat(),A.lng()),C=ge.getCurrentMapType().getUrlArg();return $+C+B}function deurl(){}function setmaptype($){switch($){case"k":ge.setMapType(G_SATELLITE_MAP);break;case"h":ge.setMapType(G_HYBRID_MAP);break;case"p":ge.setMapType(G_PHYSICAL_MAP);break;default:break}}function initStartLocation(){var F=document.location.hash.replace(/^#/,"");if(F.length>14){var G=F.substring(0,12),$=decodeGeoHash(G),B=($.latitude[0]+$.latitude[1])/2,_=($.longitude[0]+$.longitude[1])/2,C=F.substring(13,15),H=F.charAt(12);ge.setCenter(new GLatLng(B,_),parseInt(C,10));setmaptype(H);var D=F.charAt(15),I=F.substring(16,F.length);I=decodeURI(I);if(D=="_"){var E=new google.maps.ClientGeocoder();E.getLocations(I,function(E){if(E.Status.code!=200||!E.Placemark)return false;else{var C=E.name,B=E.Placemark[0].address,A=E.Placemark[0].Point.coordinates,$=new GLatLng(A[1],A[0]),_=new GMarker($),D="<p><b>"+C+"</b><br/>"+B+"</p>";GEvent.addListener(_,"click",function(){_.openInfoWindowHtml(D)});ge.addOverlay(_);_.openInfoWindowHtml(D);return true}})}if(D=="+"){var A=new GMarker(new GLatLng(B,_)),J="<p style='width:300px;'>"+I+"</p>";GEvent.addListener(A,"click",function(){A.openInfoWindowHtml(J)});ge.addOverlay(A);A.openInfoWindowHtml(J)}if(D=="-"){defiletype=I.substring(I.length-4,I.length);I=decodeURIComponent(I).toLowerCase();if(defiletype==".gpx")loadGPX(I);if(defiletype==".kml")loadKML(I)}}else ge.setCenter(new GLatLng(31.2307,121.47459),4)}function initSearchBox(){var $=document.getElementById("search-box");$.setAttribute("placeholder",SEARCH_PLACEHOLDER);if($.value==""||$.value==SEARCH_PLACEHOLDER){$.value=SEARCH_PLACEHOLDER;$.className="placeholder"}addDomListener($,"focus",function(){if($.value==""||$.value==SEARCH_PLACEHOLDER){$.value="";$.className=""}});addDomListener($,"blur",function(){if($.value==""||$.value==SEARCH_PLACEHOLDER){$.value=SEARCH_PLACEHOLDER;$.className="placeholder"}});addDomListener($,"change",function(){document.getElementById("search-error").style.display="none"});addDomListener($,"keypress",function(){document.getElementById("search-error").style.display="none"})}function performSearch(){var $=document.getElementById("search-box"),A=$.value.replace(/(^\s+)|(\s+$)/g,"");if(A==""||A==SEARCH_PLACEHOLDER)return;document.getElementById("search-loading").style.display="block";var _=new google.maps.ClientGeocoder();_.getLocations(A,function(E){document.getElementById("search-loading").style.display="none";if(E.Status.code!=200||!E.Placemark){document.getElementById("search-error").innerHTML="No results found.";document.getElementById("search-error").style.display="block"}else{var C=E.name,B=E.Placemark[0].address,A=E.Placemark[0].Point.coordinates,$=new GLatLng(A[1],A[0]),_=new GMarker($),D="<p><b>"+C+"</b><br/>"+B+"</p>";ge.clearOverlays();GEvent.addListener(_,"click",function(){_.openInfoWindowHtml(D)});ge.addOverlay(_);_.openInfoWindowHtml(D);ge.setCenter($)}})}function nextpoint($){}function tweetUrl($){return"http://twitter.com/home?status="+encodeURIComponent($)}function initAds(){var _="ca-pub-4469534148147036",$={maxAdsOnMap:2,style:"adunit",channel:"7114222484"};adsManager=new GAdsManager(ge,_,$);adsManager.enable()}function showHelpOverlay(_){if(_){document.getElementById("divabout").style.display="block";var $=document.body.clientWidth/2-300;document.getElementById("divabout").style.left=$.toString()+"px"}else{document.getElementById("divabout").style.display="none";document.getElementById("divabout").style.left="-1250px"}}function initLocation(){var _=document.location.hash.replace(/^#/,"");if(_=="")$.ajax({type:"GET",async:false,url:"getipxml.php",cache:false,datatype:"xml",error:function(){},success:function(C){var A=$(C).find("Status").text(),_=$(C).find("Latitude").text(),B=$(C).find("Longitude").text();if(A=="OK"&&_!="0"&&B!="0")ge.setCenter(new GLatLng(_,B))}})}$(document).ready(function(){init()});function loadGPX($){var _=GXmlHttp.create();_.open("GET",$,true);_.onreadystatechange=function(){if(_.readyState==4){var P=GXml.parse(_.responseText),K=P.documentElement.getElementsByTagName("bounds")[0];if(K)var M=parseFloat(K.getAttribute("minlat")),A=parseFloat(K.getAttribute("minlon")),F=parseFloat(K.getAttribute("maxlat")),E=parseFloat(K.getAttribute("maxlon"));var D=P.documentElement.getElementsByTagName("wpt");for(var I=0;I<D.length;I++)ge.addOverlay(wpt2marker(D[I]));var H=P.documentElement.getElementsByTagName("rte");for(I=0;I<H.length;I++){var G=[],B=H[I].getElementsByTagName("rtept");for(var L=0;L<B.length;L++){var N=wpt2point(B[L]);ge.addOverlay(wpt2marker(B[L]));G.push(N)}ge.addOverlay(new GPolyline(G))}var J=P.documentElement.getElementsByTagName("trk");for(I=0;I<J.length;I++){var $=J[I].getElementsByTagName("trkseg");for(L=0;L<$.length;L++){var G=[],O=$[L].getElementsByTagName("trkpt");for(var C=0;C<O.length;C++)G.push(wpt2point(O[C]));ge.addOverlay(new GPolyline(G))}}}};_.send(null)}function wpt2point($){return new GPoint(parseFloat($.getAttribute("lon")),parseFloat($.getAttribute("lat")))}function wpt2marker($){var D=wpt2point($),C=GXml.value($.getElementsByTagName("name")[0]),E=GXml.value($.getElementsByTagName("cmt")[0]),A=GXml.value($.getElementsByTagName("sym")[0]),B=$.getElementsByTagName("link")[0];if(B!=undefined)B=B.getAttribute("href");else B="";var _=createWaypointMarker(D,C,E,A,B);return _}function createInfoMarker(B,A,_){var $=new GMarker(B,A);GEvent.addListener($,"click",function(){$.openInfoWindowHtml(_)});return $}function sym2image($){var _=new String($);_=_.replace(/[\/ ]/,"-");_="http://mapurl.info/images/icon/"+_+".png";return _}function createWaypointMarker(D,C,F,_,B){var A=new GIcon(G_DEFAULT_ICON),E=sym2image(_);A.image=E;A.shadow="";A.iconSize=new GSize(24,24);if(B!="")var $="<a target=\"_blank\" href=\""+B+"\">"+C+"</a><br>"+F;else $=C+"<br>"+F;return createInfoMarker(D,A,$)}function loadKML(_){var $=new GGeoXml(_);ge.addOverlay($)}