/*
 * Compressed by JSA(www.xidea.org)
 */
var ge;function init(){initBox();initEarth()}function initBox(){var $=document.body.clientWidth,_=document.body.clientHeight;document.getElementById("earth").style.width=$.toString()+"px";document.getElementById("earth").style.height=_.toString()+"px"}function initEarth(){if(GBrowserIsCompatible()){ge=new google.maps.Map2(document.getElementById("earth"));initStartLocation();ge.setUIToDefault()}}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)}$(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($)}