var map=null;function doReplaceExp(d,a,b){var c=new RegExp(d,"g");return b.replace(c,a)}function crearBotonReset(c,e,f,b){var d=document.getElementById("btnsT");var a=document.createElement("a");a.setAttribute("href","javascript:recenterMap("+c+", "+e+", "+f+")");a.setAttribute("id","btnReset");b=="esp"?a.innerHTML="Restaurar Mapa":(b=="eng"?a.innerHTML="Reset Map":a.innerHTML="Restablecer mapa");d.appendChild(a)}function crearMapa(a,c,g,f){map=new GMap2(document.getElementById(f));map.setCenter(new GLatLng(a,c),g);map.addControl(new GLargeMapControl3D());map.addControl(new GScaleControl());map.addControl(new GOverviewMapControl());map.addMapType(G_PHYSICAL_MAP);var h=new GHierarchicalMapTypeControl();var e=getLanguage();var b="";e=="eng"?b="Streets":(e=="por"?b="Ruas":b="Calles");h.addRelationship(G_SATELLITE_MAP,G_HYBRID_MAP,b,true);map.addControl(h);map.addControl(new MoreControl());map.getContainer().appendChild(document.getElementById("box"));map.setMapType(G_HYBRID_MAP);map.enableDoubleClickZoom();map.clearOverlays()}function crearLoadingDest(b){var a=document.getElementById(b);var c=document.createElement("div");c.setAttribute("id","loading");a.appendChild(c)}function crearLoadingHotel(c){var b=document.getElementById(c);var a=document.createElement("div");a.setAttribute("id","loading_h");b.appendChild(a)}function crearLoadingTour(c){var b=document.getElementById(c);var a=document.createElement("div");a.setAttribute("id","loading_t");b.appendChild(a)}function moveendBounds(k,n,e,c,h,g,f){var a=map.getBounds();var b=a.getSouthWest();var d=a.getNorthEast();var j=d.lat();var m=b.lat();var i=d.lng();var l=b.lng();if(c){obtener_destinos_bound(m,l,j,i,f,e)}if(n){obtener_hoteles_bound(m,l,j,i,f,k)}if(g){obtener_tours_bound(m,l,j,i,f,h)}}function recenterMap(a,b,c){if(a!=0){map.setMapType(G_HYBRID_MAP);map.setCenter(new GLatLng(a,b),c);map.savePosition()}}function obtenerZoomBound(b,e,a,c){var d=new GLatLngBounds();d.extend(new GLatLng(b,e));d.extend(new GLatLng(a,c));return map.getBoundsZoomLevel(d)}function mostrar_hoteles(d,c,a,e){if(typeof a=="undefined"){a=""}if(typeof e=="undefined"){e=""}var b=location.pathname.split("/");base_url="http://"+location.host+"/"+b[1]+"/"+b[2];var f=b[1];if(GBrowserIsCompatible()){new Request({url:"/mapas/obtener_hoteles.asp",method:"get",encoding:"ISO-8859-1",onSuccess:function(h){var g=JSON.decode(h);extend=g.extend;crearMapa(extend.x,extend.y,15,c);var i=obtenerZoomBound(extend.xmin,extend.ymin,extend.xmax,extend.ymax);if(i>15){i=15}crearBotonReset(extend.x,extend.y,i,f);recenterMap(extend.x,extend.y,i);if(g.centro!="null"){dibujarCentro(g.centro.the_geom,g.centro.x,g.centro.y,e);tours_dibujados_id.push(g.centro.id)}g.hoteles.each(function(j){if(j.x!=0){dibujarHotelNumber(j.n,j.x,j.y,j.tt,j.il,f)}});crearLoadingDest(c);crearLoadingHotel(c);crearLoadingTour(c);moveendBounds(d,true,"",true,"",true,f);GEvent.bind(map,"moveend",this,function(){moveendBounds(d,true,"",true,"",true,f)})}}).send("hoteles="+d+"&id_centro="+a)}else{$(c).setStyle("display","none")}}function infoMarker(b,e,d,c){var a=(d=="esp")?"M&aacute;s Informaci&oacute;n":(d=="eng"?"More Information":"Mais Informa&ccedil;&otilde;es");new Request({url:"/mapas/obtener_info_hotel.asp",method:"get",onSuccess:function(f){var g=JSON.decode(f);link_=(!c)?'<a class="info_tt" href="'+g.r+'" target="_self">'+a+"</a>":"";if(g.imagen==""){b.openInfoWindowHtml('<div style="margin-right:10px;width:350px;" class="clearfix"><span class="nombre_hotel">'+g.n+'</span><br /><hr /><span class="direccion_hotel">'+g.d+'</span><br /><img class="img_tt" src="http://www.visitchile.com/images/vc-hot-'+g.e+'star.gif"/><br /><span class="tarifa_tt">'+g.t+'</span><br /><span class="hab_tt">'+g.h+"</span>"+link_+"</div>")}else{b.openInfoWindowHtml('<div style="margin-right:10px;width:350px;" class="clearfix"><img class="img_hotel" height="100" align="left" src="'+g.i+'" /><span class="nombre_hotel">'+g.n+'</span><br /><hr /><span class="direccion_hotel">'+g.d+'</span><br /><img class="img_tt" src="http://www.visitchile.com/images/vc-hot-'+g.e+'star.gif"/><br /><span class="tarifa_tt">'+g.t+'</span><br /><span class="hab_tt">'+g.h+"</span>"+link_+"</div>")}}}).send("id_hotel="+e+"&lang="+d)}function dibujarHotelNumber(c,b,d,e,g,f){b=Number(b);d=Number(d);var a=new GMarker(new GLatLng(b,d),{icon:getIconNumberHotel(c),draggable:false,title:e});GEvent.addListener(a,"click",function(){infoMarker(a,g,f,false)});map.addOverlay(a)}function getIconNumberHotel(a){var b=new GIcon();b.image="/images/mapas/numbers/"+a+".png";b.shadow="/images/mapas/numbers/s.png";b.iconSize=new GSize(17,19);b.iconAnchor=new GPoint(0,19);b.infoWindowAnchor=new GPoint(8,9);return b}function mostrar_hotel(c,b){var a=location.pathname.split("/");base_url="http://"+location.host+"/"+a[1]+"/"+a[2];var d=a[1];if(GBrowserIsCompatible()){new Request({url:"/mapas/obtener_hotel.asp",method:"get",encoding:"ISO-8859-1",onSuccess:function(e){var f=JSON.decode(e);if(f.x!=0){crearBotonReset(f.x,f.y,16,d);crearMapa(f.x,f.y,16,b);dibujarHotelBound(f.ig,f.x,f.y,c,f.t,true,d);crearLoadingDest(b);crearLoadingHotel(b);crearLoadingTour(b);moveendBounds(c,true,"",true,"",true,d);GEvent.bind(map,"moveend",this,function(){moveendBounds(c,true,"",true,"",true,d)})}}}).send("hotel="+c+"&lang="+d)}else{$(b).setStyle("display","none")}}var time2=null;var AjaxToursBound=null;var tours_dibujados=new Array();var tours_dibujados_id=new Array();function loadingT(a){$("loading_t").setStyles({visibility:"visible"});if(a=="esp"){$("loading_t").innerHTML='<p style="color:#fff;padding:1px 2px;margin:0"><img src="/images/mapas/loading_c.gif" style="border:0" align="absmiddle" /> Obteniendo Centros de Ski</p>'}else{$("loading_t").innerHTML='<p style="color:#fff;padding:1px 2px;margin:0"><img src="/images/mapas/loading_c.gif" align="absmiddle" style="border:0" /> Retrieving Ski Resorts</p>'}}function obtener_tours_bound(f,c,b,a,h,e,g){if(typeof(g)=="undefined"){g="T"}if(AjaxToursBound!=null){AjaxToursBound.cancel()}var d=tours_dibujados_id.join(",");d=doReplaceExp(",+",",",d);d=doReplaceExp("^,","",d);d=doReplaceExp(",$","",d);AjaxToursBound=new Request({url:"/mapas/obtener_tours_bound.asp",method:"get",encoding:"ISO-8859-1",onRequest:function(){time2=setTimeout("loadingT('"+h+"')",500)},onSuccess:function(l){clearTimeout(time2);var i=JSON.decode(l);var k=i.tours.length;var j=1;i.tours.each(function(m){if(!tours_dibujados[m.ig]){if(m.x!=0){if(m.il!="-1"){if(h=="esp"){$("loading_t").innerHTML="Loading Ski Resorts ("+j+"/"+k+")";dibujarDestinoBound(m.ig,m.x,m.y,m.t,m.te,m.il,h,false,m.tp,m.c);j++}else{$("loading_t").innerHTML="Cargando Centros de Ski ("+j+"/"+k+")";dibujarDestinoBound(m.ig,m.x,m.y,m.t,m.ti,m.il,h,false,m.tp,m.c);j++}}}}});$("loading_t").setStyles({visibility:"hidden"})}}).send("xmin="+f+"&ymin="+c+"&xmax="+b+"&ymax="+a+"&not="+d+"&id_tour="+e+"&tipo_tour="+g)}var timeO=null;var AjaxDestinosBound=null;var destinos_dibujados=new Array();var destinos_dibujados_id=new Array();var geoms_dibujadas=new Array();var geoms_borrar=new Array();var ajaxDestinoBound=new Array();var destinos_markers=new Array();var destinos_markers_array=new Array();var tours_markers_array=new Array();var circuitos_markers_array=new Array();var cruceros_markers_array=new Array();var ajaxDestinoBoundPoligono=new Array();var ajaxDBound=null;function loadingD(a){$("loading").setStyles({visibility:"visible"});if(a=="esp"){$("loading").innerHTML='<p style="color:#fff;padding:1px 2px;margin:0"><img src="/images/mapas/loading.gif" style="border:0" align="absmiddle" /> Obteniendo Destinos</p>'}else{$("loading").innerHTML='<p style="color:#fff;padding:1px 2px;margin:0"><img src="/images/mapas/loading.gif" align="absmiddle" style="border:0" /> Retrieving Destinations</p>'}}function obtener_destinos_bound(e,c,b,a,g,f){if(AjaxDestinosBound!=null){AjaxDestinosBound.cancel()}var d=destinos_dibujados_id.join(",");d=doReplaceExp(",+",",",d);d=doReplaceExp("^,","",d);d=doReplaceExp(",$","",d);AjaxDestinosBound=new Request({url:"/mapas/obtener_destinos_bound.asp",method:"get",encoding:"ISO-8859-1",onRequest:function(){timeO=setTimeout("loadingD('"+g+"')",500)},onSuccess:function(k){clearTimeout(timeO);var h=JSON.decode(k);var j=h.destinos.length;var i=1;h.destinos.each(function(l){if(!destinos_dibujados[l.ig]){if(l.x!=0){if(l.il!="-1"){if(g=="esp"){$("loading").innerHTML="Loading Destinations ("+i+"/"+j+")";dibujarDestinoBound(l.ig,l.x,l.y,l.t,l.te,l.il,g,true,"P",0);i++}else{$("loading").innerHTML="Cargando Destinos ("+i+"/"+j+")";dibujarDestinoBound(l.ig,l.x,l.y,l.t,l.ti,l.il,g,true,"P",0);i++}}}}});$("loading").setStyles({visibility:"hidden"})}}).send("xmin="+e+"&ymin="+c+"&xmax="+b+"&ymax="+a+"&not="+d+"&id_destino="+f)}function dibujarDestinoBound(m,a,l,i,p,d,b,n,h,j,k){geoms_borrar[m]=true;if(!n){switch(h){case"C":if(b=="esp"){pre_tt="Crucero:"}else{pre_tt="Cruise: "}break;case"S":if(b=="esp"){pre_tt="Centro de Esqui:"}else{pre_tt="Ski Resort: "}break;case"P":if(j==1){if(b=="esp"){pre_tt="Circuito: "}else{pre_tt="Circuit: "}}else{pre_tt="Tour: "}break;default:pre_tt="Tour: "}}else{pre_tt=""}p=pre_tt+p;var f=new GMarker(new GLatLng(a,l),{icon:getIconDestinoBound(n,h,j),draggable:false,title:p});if(i==3||i==2){var e=GEvent.bind(f,"mouseover",this,function(){if(ajaxDestinoBound[m]){geoms_dibujadas[m].show();if(ajaxDestinoBoundPoligono[m]){if(n){geoms_dibujadas[m].setFillStyle({color:"#FF0000",opacity:0.2})}else{switch(h){case"P":if(j==1){geoms_dibujadas[m].setFillStyle({color:"#fcbc1c",opacity:0.2})}else{geoms_dibujadas[m].setFillStyle({color:"#8800FF",opacity:0.2})}break;case"S":geoms_dibujadas[m].setFillStyle({color:"#83C4DF",opacity:0.2});break;case"C":geoms_dibujadas[m].setFillStyle({color:"#83C4DF",opacity:0.2});break}}}}else{dibujarPoligonoBound(m,i,n,h,j)}});var g=GEvent.bind(f,"mouseout",this,function(){if(geoms_borrar[m]){if(ajaxDBound!=null){ajaxDBound.cancel()}try{geoms_dibujadas[m].hide()}catch(q){}}});var o=GEvent.bind(f,"infowindowclose",this,function(){geoms_borrar[m]=true;geoms_dibujadas[m].hide()})}var c=GEvent.bind(f,"click",this,function(){geoms_borrar[m]=false;if(n){link_="destino"}else{link_="tour"}new Request({url:"/mapas/obtener_info_"+link_+".asp",method:"get",onSuccess:function(r){desc_ruta=(b=="esp")?"M&aacute;s Informaci&oacute;n":(b=="eng"?"More Information":"Mais Informa&ccedil;&otilde;es");var q=JSON.decode(r);txtTar="";if(q.foto==""){f.openInfoWindowHtml('<div style="margin-right:10px;width:350px;"><span class="nombre_hotel">'+q.nombre+'</span><br><hr><span class="direccion_hotel">'+q.descripcion+"</span>"+txtTar+'<p align="left" style="margin:2px 0 0 0;" ><a class="info_tt_destino" href="'+q.ruta+'" target="_self">'+desc_ruta+"</a></p></div>")}else{f.openInfoWindowHtml('<div style="margin-right:10px;width:350px;"><img class="img_hotel" height="100" align="left" src="'+q.foto+'" /><span class="nombre_hotel">'+q.nombre+'</span><br><hr><span class="direccion_hotel">'+q.descripcion+"</span>"+txtTar+'<p style="margin:2px 0 0 0;" align="left"><a class="info_tt_destino" href="'+q.ruta+'" target="_self">'+desc_ruta+"</a></p></div>")}}}).send("id_lugar="+d+"&lang="+b+"&circuito="+j)});map.addOverlay(f);if(n){destinos_dibujados[m]=true;destinos_markers[m]=f;destinos_markers_array.push(f);destinos_dibujados_id[m]=m}else{tours_dibujados[m]=true;tours_dibujados_id[m]=m;switch(h){case"C":cruceros_markers_array.push(f);break;case"S":tours_markers_array.push(f);break;case"P":if(j==1){circuitos_markers_array.push(f)}else{tours_markers_array.push(f)}break}}}function getIconDestinoBound(b,d,a){var c=new GIcon();if(b){c.image="/images/mapas/mini_icon_red.png"}else{switch(d){case"P":if(a==1){c.image="/images/mapas/mini_icon_orange.png"}else{c.image="/images/mapas/mini_icon_purple.png"}break;case"S":c.image="/images/mapas/mini_icon_lblue.png";break;case"C":c.image="/images/mapas/mini_icon_lblue.png";break}}c.shadow="/images/mapas/shadow.png";c.iconSize=new GSize(12,20);c.shadowSize=new GSize(19,20);c.iconAnchor=new GPoint(6,20);c.infoWindowAnchor=new GPoint(6,20);return c}function destinos_hide(){destinos_markers.each(function(a){a.show()})}function destinos_show(){destinos_markers.each(function(a){a.hide()})}function dibujarPoligonoBound(d,c,b,e,a){ajaxDBound=new Request({url:"/mapas/obtener_geom.asp",method:"get",encoding:"ISO-8859-1",onRequest:function(){},onSuccess:function(j){var m=j;var f=m.split(",");var l=new Array();var h=0;f.each(function(n){var i=n.split(" ");l[h++]=new GLatLng(i[0],i[1])});if(b){color="#FF0000"}else{switch(e){case"P":if(a==1){color="#fcbc1c"}else{color="#8800FF"}break;case"S":color="#83C4DF";break;case"C":color="#83C4DF";break;default:color="#FF0000"}}switch(c){case 2:var g=new GPolyline(l,color,5,0.7);var k=false;break;case 3:var g=new GPolygon(l,color,2,0.7,color,0.2);var k=true;break}geoms_dibujadas[d]=g;map.addOverlay(g);ajaxDestinoBound[d]=true;ajaxDestinoBoundPoligono[d]=k;$("loading").setStyles({visibility:"hidden"})}}).send("id_g="+d)}function dibujarCentro(a,h,g,b){var c=a.split(",");var d=new Array();var f=0;c.each(function(k){var i=k.split(" ");d[f++]=new GLatLng(i[0],i[1])});var j=new GPolygon(d,"#83C4DF",2,0.7,"#83C4DF",0.2);var e=new GMarker(new GLatLng(h,g),{icon:getIconCentro(b),draggable:false});map.addOverlay(e);map.addOverlay(j)}var hoteles_dibujados=new Array();var hoteles_dibujados_id=new Array();var AjaxHotelesBound=null;var hoteles_markers_array=new Array();var time1=null;function loadingH(a){$("loading_h").setStyles({visibility:"visible"});if(a=="esp"){$("loading_h").innerHTML='<p style="color:#fff;padding:1px 2px;margin:0"><img src="/images/mapas/loading_h.gif" style="border:0" align="absmiddle" /> Obteniendo Holetes</p>'}else{$("loading_h").innerHTML='<p style="color:#fff;padding:1px 2px;margin:0"><img src="/images/mapas/loading_h.gif" align="absmiddle" style="border:0" /> Retrieving Hotels</p>'}}function obtener_hoteles_bound(f,d,c,a,g,b){if(AjaxHotelesBound!=null){AjaxHotelesBound.cancel()}var e=hoteles_dibujados_id.join(",");e=doReplaceExp(",+",",",e);e=doReplaceExp("^,","",e);e=doReplaceExp(",$","",e);AjaxHotelesBound=new Request({url:"/mapas/obtener_hoteles_bound.asp",method:"get",encoding:"ISO-8859-1",onRequest:function(){time1=setTimeout("loadingH('"+g+"')",500)},onSuccess:function(k){clearTimeout(time1);var h=JSON.decode(k);var j=h.hoteles.length;var i=1;h.hoteles.each(function(l){if(!hoteles_dibujados[l.ig]){if(l.x!=0){dibujarHotelBound(l.ig,l.x,l.y,l.il,l.tt,false,g);i++}}});$("loading_h").setStyles({visibility:"hidden"})}}).send("xmin="+f+"&ymin="+d+"&xmax="+c+"&ymax="+a+"&not="+e+"&id_hotel="+b+"&lang="+g)}function dibujarHotelBound(c,b,d,h,e,f,g){if(f){var a=new GMarker(new GLatLng(b,d),{icon:getIconHotel(),draggable:false,title:e})}else{var a=new GMarker(new GLatLng(b,d),{icon:getIconHotelBound(),draggable:false,title:e})}GEvent.addListener(a,"click",function(){infoMarker(a,h,g,f)});map.addOverlay(a);hoteles_dibujados_id[c]=c;hoteles_markers_array.push(a)}function getIconHotelBound(){var a=new GIcon();a.image="/images/mapas/numbers/h.png";a.shadow="/images/mapas/numbers/s.png";a.iconSize=new GSize(17,19);a.iconAnchor=new GPoint(1,19);a.infoWindowAnchor=new GPoint(1,19);return a}function getIconHotel(){var a=new GIcon();a.image="/images/mapas/pin1.png";a.iconSize=new GSize(32,32);a.iconAnchor=new GPoint(16,31);a.infoWindowAnchor=new GPoint(16,31);return a}function dibujarDestinoFijo(c,k,l,h,a,m,g){if(h!=1){var b=a.split(",");var d=new Array();var f=0;b.each(function(n){var i=n.split(" ");d[f++]=new GLatLng(i[0],i[1])});switch(h){case 2:var j=new GPolyline(d,"#00E13C",6,0.6,{title:m,clickable:false});break;case 3:var j=new GPolygon(d,"#00E13C",2,0.7,"#00E13C",0.2,{title:m,clickable:false});break}map.addOverlay(j)}else{var e=new GMarker(new GLatLng(c,k),{icon:getIconHotel(),draggable:false,title:m});map.addOverlay(e)}}function mostrar_tour(b,a){mostrar_destino(b,a,false)}function mostrar_circuito(b,a){mostrar_destino(b,a,false)}function mostrar_destino(e,b,c){var a=location.pathname.split("/");base_url="http://"+location.host+"/"+a[1]+"/"+a[2];var d=a[1];if(GBrowserIsCompatible()){if(c){link_="destino"}else{link_="tour"}new Request({url:"/mapas/obtener_"+link_+".asp",method:"get",encoding:"ISO-8859-1",onSuccess:function(g){var f=JSON.decode(g);if(f.x!=0){crearMapa(f.x,f.y,15,b);if(f.tipo_geom!=1){var h=obtenerZoomBound(Number(f.xmin),Number(f.ymin),Number(f.xmax),Number(f.ymax));$("img_destino").setProperty("src","/images/mapas/destino.gif")}else{var h=15;$("img_destino").setProperty("src","/images/mapas/pin1.gif")}recenterMap(f.x,f.y,h);crearBotonReset(f.x,f.y,h,d);if(d=="eng"){dibujarDestinoFijo(f.x,f.y,f.nombre_esp,f.tipo_geom,f.the_geom,f.nombre_esp_tt,f)}else{dibujarDestinoFijo(f.x,f.y,f.nombre_ing,f.tipo_geom,f.the_geom,f.nombre_ing_tt,f)}crearLoadingDest(b);crearLoadingHotel(b);crearLoadingTour(b);moveendBounds("",c,e,true,e,c,d);GEvent.bind(map,"moveend",this,function(){moveendBounds("",c,e,true,e,c,d)})}}}).send(link_+"="+e+"&lang="+d)}else{$(b).setStyle("display","none")}}function mostrar_circuitos(c,a,b){mostrar_tours(c,a,b)}function mostrar_tours(d,b,c){var a=location.pathname.split("/");var e=a[1];if(GBrowserIsCompatible()){new Request({url:"/mapas/obtener_tours.asp",method:"get",encoding:"ISO-8859-1",onSuccess:function(g){var f=JSON.decode(g);extend=f.extend;crearMapa(extend.x,extend.y,15,b);var h=obtenerZoomBound(extend.xmin,extend.ymin,extend.xmax,extend.ymax);if(h>15){h=15}crearBotonReset(extend.x,extend.y,h,e);recenterMap(extend.x,extend.y,h);f.tours.each(function(i){if(i.x!=0){dibujarDestinoBound(i.ig,i.x,i.y,i.t,i.tt,i.il,e,false,i.tp,i.c)}});crearLoadingDest(b);crearLoadingHotel(b);crearLoadingTour(b);moveendBounds("",false,"",true,"",false,e);GEvent.bind(map,"moveend",this,function(){moveendBounds("",false,"",true,"",false,e)})}}).send("tours="+d+"&lang="+e+"&cir="+c)}else{$(b).setStyle("display","none")}}function getLanguage(){var a=location.pathname.split("/");return a[1]}function init_map(b){var a=b.split(".");var c=getLanguage();if(a[0]=="z"){new Request.JSON({url:"/mapas/obtener_zona.asp",onSuccess:function(e){crearMapa(e.x,e.y,13,"map");var d=obtenerZoomBound(e.xmin,e.ymin,e.xmax,e.ymax);if(d>15){d=15}recenterMap(e.x,e.y,d);crearLoadingDest("map");crearLoadingHotel("map");crearLoadingTour("map");moveendBoundsMap($("chk-hoteles").checked,$("chk-destinos").checked,$("chk-tours").checked,$("chk-circuitos").checked,$("chk-cruceros").checked,c,"");GEvent.bind(map,"moveend",this,function(){moveendBoundsMap($("chk-hoteles").checked,$("chk-destinos").checked,$("chk-tours").checked,$("chk-circuitos").checked,$("chk-cruceros").checked,c,"");moveendBoundsInteres(c)})}}).send("idZona="+a[1])}else{if(a[0]=="c"){new Request.JSON({url:"/mapas/obtener_destino.asp",method:"get",onSuccess:function(d){if(d.x!=0){crearMapa(d.x,d.y,13,"map");var e=obtenerZoomBound(d.xmin,d.ymin,d.xmax,d.ymax);if(e>15){e=15}recenterMap(d.x,d.y,e);crearLoadingDest("map");crearLoadingHotel("map");crearLoadingTour("map");if(c=="eng"){dibujarDestinoFijo(d.x,d.y,d.nombre_esp,d.tipo_geom,d.the_geom,d.nombre_esp_tt,d)}else{dibujarDestinoFijo(d.x,d.y,d.nombre_ing,d.tipo_geom,d.the_geom,d.nombre_ing_tt,d)}moveendBoundsMap($("chk-hoteles").checked,$("chk-destinos").checked,$("chk-tours").checked,$("chk-circuitos").checked,$("chk-cruceros").checked,c,a[1]);GEvent.bind(map,"moveend",this,function(){moveendBoundsMap($("chk-hoteles").checked,$("chk-destinos").checked,$("chk-tours").checked,$("chk-circuitos").checked,$("chk-cruceros").checked,c,a[1]);moveendBoundsInteres(c)})}}}).send("destino="+a[1]+"&lang="+c)}}}function moveendBoundsMap(n,d,h,b,k,f,g){var a=map.getBounds();var c=a.getSouthWest();var e=a.getNorthEast();var j=e.lat();var m=c.lat();var i=e.lng();var l=c.lng();if(d){obtener_destinos_bound(m,l,j,i,f,g)}if(n){obtener_hoteles_bound(m,l,j,i,f,"")}if(h){obtener_tours_bound(m,l,j,i,f,"",1)}if(b){obtener_tours_bound(m,l,j,i,f,"",2)}if(k){obtener_tours_bound(m,l,j,i,f,"",3)}}function ocultarDestinos(){for(dest in destinos_markers_array){dest=Number(dest);if(typeof(destinos_markers_array[dest])!="undefined"&&!isNaN(dest)){destinos_markers_array[dest].hide()}}}function mostrarDestinos(){for(dest in destinos_markers_array){dest=Number(dest);if(typeof(destinos_markers_array[dest])!="undefined"&&!isNaN(dest)){destinos_markers_array[dest].show()}}}function ocultarHoteles(){for(dest in hoteles_markers_array){dest=Number(dest);if(typeof(hoteles_markers_array[dest])!="undefined"&&!isNaN(dest)){hoteles_markers_array[dest].hide()}}}function mostrarHoteles(){for(dest in hoteles_markers_array){dest=Number(dest);if(typeof(hoteles_markers_array[dest])!="undefined"&&!isNaN(dest)){hoteles_markers_array[dest].show()}}}function ocultarTours(a){switch(a){case 1:for(dest in tours_markers_array){dest=Number(dest);if(typeof(tours_markers_array[dest])!="undefined"&&!isNaN(dest)){tours_markers_array[dest].hide()}}break;case 2:for(dest in circuitos_markers_array){dest=Number(dest);if(typeof(circuitos_markers_array[dest])!="undefined"&&!isNaN(dest)){circuitos_markers_array[dest].hide()}}break;case 3:for(dest in cruceros_markers_array){dest=Number(dest);if(typeof(cruceros_markers_array[dest])!="undefined"&&!isNaN(dest)){cruceros_markers_array[dest].hide()}}break}}function mostrarTours(a){switch(a){case 1:for(dest in tours_markers_array){dest=Number(dest);if(typeof(tours_markers_array[dest])!="undefined"&&!isNaN(dest)){tours_markers_array[dest].show()}}break;case 2:for(dest in circuitos_markers_array){dest=Number(dest);if(typeof(circuitos_markers_array[dest])!="undefined"&&!isNaN(dest)){circuitos_markers_array[dest].show()}}break;case 3:for(dest in cruceros_markers_array){dest=Number(dest);if(typeof(cruceros_markers_array[dest])!="undefined"&&!isNaN(dest)){cruceros_markers_array[dest].show()}}break}}var interes_tipo_cargado=new Array();var intereses_dibujados_id=new Array();var AjaxInteresesBound=null;var intereses_markers_array=new Array();var intereses_markers=new Array();var intereses_dibujados=new Array();var ajaxIBound=null;var ajaxInteresBound=new Array();var ajaxInteresBoundPoligono=new Array();function ocultarInteres(a){map.closeInfoWindow();for(dest in intereses_markers_array[a]){dest=Number(dest);if(typeof(intereses_markers_array[a][dest])!="undefined"&&!isNaN(dest)){intereses_markers_array[a][dest].hide()}}}function mostrarInteres(a){for(dest in intereses_markers_array[a]){dest=Number(dest);if(typeof(intereses_markers_array[a][dest])!="undefined"&&!isNaN(dest)){intereses_markers_array[a][dest].show()}}}function moveendBoundsInteres(h){var e=map.getBounds();var d=e.getSouthWest();var c=e.getNorthEast();var g=c.lat();var b=d.lat();var f=c.lng();var a=d.lng();tipos="";$$("input.chkinteres").each(function(i){if(i.checked){tipos=tipos+i.getProperty("tipo")+",";if(typeof(interes_tipo_cargado[i.getProperty("tipo")])=="undefined"){intereses_markers_array[i.getProperty("tipo")]=new Array();interes_tipo_cargado[i.getProperty("tipo")]=true}}});obtener_intereses_bound(b,a,g,f,h,tipos)}function obtener_intereses_bound(f,c,b,a,g,e){if(AjaxInteresesBound!=null){AjaxInteresesBound.cancel()}var d=intereses_dibujados_id.join(",");d=doReplaceExp(",+",",",d);d=doReplaceExp("^,","",d);d=doReplaceExp(",$","",d);AjaxInteresesBound=new Request({url:"/mapas/obtener_intereses_bound.asp",method:"get",encoding:"ISO-8859-1",onRequest:function(){},onSuccess:function(k){var h=JSON.decode(k);var j=h.intereses.length;var i=1;tpos=new String(e);tpos=tpos.substring(0,tpos.length-1).split(",");tpos.each(function(l){});h.intereses.each(function(l){if(!intereses_dibujados[l.is]){if(l.x!=0){if(l.is!="-1"){if(g=="esp"){dibujarInteresBound(l.is,l.x,l.y,l.t,l.no,l.it,l.i,g);i++}else{dibujarInteresBound(l.is,l.x,l.y,l.t,l.no,l.it,l.i,g);i++}agregarInteresListado(l.is,l.it,l.nol,l.no)}}}});if(chk_destino!=null){$("mas"+chk_destino).set("html","(mas)");chk_destino=null}}}).send("xmin="+f+"&ymin="+c+"&xmax="+b+"&ymax="+a+"&not="+d+"&ids_tipos="+e)}function agregarInteresListado(d,b,e,c){var a=new Element("li",{title:c,events:{click:function(){var f=getLanguage();map.closeInfoWindow();map.setCenter(intereses_markers[d].getLatLng());GEvent.trigger(intereses_markers[d],"mouseover");abrirInfoWindowInteres(d,f,intereses_markers[d])}}});a.set("html",e);$("detalle"+b).appendChild(a)}var viendo_detalle_interes=false;function dibujarInteresBound(l,c,k,i,n,b,a,d){geoms_borrar[l]=true;var g=new GMarker(new GLatLng(c,k),{icon:getIconInteresBound(a),draggable:false,title:n});if(i==3||i==2){var f=GEvent.bind(g,"mouseover",this,function(){if(!viendo_detalle_interes){if(ajaxDestinoBound[l]){geoms_dibujadas[l].show();if(ajaxInteresBoundPoligono[l]){geoms_dibujadas[l].setFillStyle({color:"#00FF00",opacity:0.2})}}else{dibujarPoligonoBoundInteres(l,i)}}});var h=GEvent.bind(g,"mouseout",this,function(){if(!viendo_detalle_interes){if(geoms_borrar[l]){if(ajaxIBound!=null){ajaxIBound.cancel()}try{geoms_dibujadas[l].hide()}catch(o){}}}});var m=GEvent.bind(g,"infowindowclose",this,function(){geoms_borrar[l]=true;geoms_dibujadas[l].hide()})}var e=GEvent.bind(g,"click",this,function(){abrirInfoWindowInteres(l,d,g)});var j=GEvent.bind(g,"infowindowclose",this,function(){viendo_detalle_interes=false});map.addOverlay(g);intereses_dibujados[l]=true;intereses_markers[l]=g;intereses_markers_array[b][l]=g;intereses_dibujados_id[l]=l}function abrirInfoWindowInteres(c,b,a){if(!viendo_detalle_interes){geoms_borrar[c]=false;new Request({url:"/mapas/obtener_info_interes.asp",method:"get",onSuccess:function(e){var d=JSON.decode(e);if(d.foto.trim()==""){html='<div style="margin-right:10px;width:350px;">';html+='<span class="nombre_hotel">'+d.nombre+"</span><br /><hr />";if(d.direccion.trim()!=""){html+='<span class="detalle_interes">'+d.direccion+"</span><br />"}if(d.fono.trim()!=""){html+='<span class="detalle_interes">'+d.fono+"</span><br />"}if(d.sitio.trim()!=""){html+='<span class="detalle_interes">'+d.sitio+"</span><br />"}if(d.descripcion.trim()!=""){html+='<span class="descripcion_interes">'+d.descripcion+"</span>"}html+="</div>";a.openInfoWindowHtml(html)}else{html='<div style="margin-right:10px;width:350px;"><img class="img_hotel" width="100" align="left" src="http://maps.visitchile.com/imagenes/'+d.foto+'" />';html+='<span class="nombre_hotel">'+d.nombre+"</span><br /><hr />";if(d.direccion.trim()!=""){html+='<span class="detalle_interes">'+d.direccion+"</span><br />"}if(d.fono.trim()!=""){html+='<span class="detalle_interes">'+d.fono+"</span><br />"}if(d.sitio.trim()!=""){html+='<span class="detalle_interes">'+d.sitio+"</span><br />"}if(d.descripcion.trim()!=""){html+='<span class="descripcion_interes">'+d.descripcion+"</span>"}html+="</div>";a.openInfoWindowHtml(html)}viendo_detalle_interes=true}}).send("id_interes="+c+"&lang="+b)}}function dibujarPoligonoBoundInteres(b,a){ajaxIBound=new Request({url:"/mapas/obtener_geom_interes.asp",method:"get",encoding:"ISO-8859-1",onRequest:function(){},onSuccess:function(f){var j=f;var c=j.split(",");var h=new Array();var e=0;color="#00FF00";c.each(function(k){var i=k.split(" ");h[e++]=new GLatLng(i[0],i[1])});switch(a){case 2:var d=new GPolyline(h,color,5,0.7);var g=false;break;case 3:var d=new GPolygon(h,color,2,0.7,color,0.2);var g=true;break}geoms_dibujadas[b]=d;map.addOverlay(d);ajaxInteresBound[b]=true;ajaxInteresBoundPoligono[b]=g;$("loading").setStyles({visibility:"hidden"})}}).send("id_g="+b)}function getIconInteresBound(b){var a=new GIcon();if(b=="none"){a.image="/images/mapas/mini_icon_green.png"}else{a.image="/images/mapas/iconos/"+b+".png"}a.iconSize=new GSize(20,20);a.iconAnchor=new GPoint(10,10);a.infoWindowAnchor=new GPoint(10,10);return a}function getIconCentro(b){var a=new GIcon();a.image="/images/mapas/"+b;a.iconSize=new GSize(50,32);a.iconAnchor=new GPoint(25,32);return a};
