// Namespace definition and Widget 
MapCity.Core.namespace('Site');
MapCity.Core.namespace('Site.Searcher');
MapCity.Core.namespace('Site.Map');
MapCity.Core.namespace('Site.Locale');
Site.Map;
Site.CurrentLanguage;
Site.poi;
Site.poiMarkers;
Site.CurrentCountry;
Site.CurrentCountryName='chile';
Site.CurrentSearcher;
Site.CurrentSearch=1;
Site.LastSearched='';
Site.curdir='';
Site.environment = new MapCity.Services.Geocoding.enviroment();
Site.photosbyextent = new MapCity.Services.Util.GetPhotoByExtent();
Site.photos = new MapCity.Services.Util.GetPhoto();
Site.searchPOI = new MapCity.Services.Geobusiness.SearchCommerce();
Site.comPbyextent = new MapCity.Services.Util.GetComunasByExtent();
Site.fsqOndemand=true;

Site.EstadoComunas=false;
Site.poiChecked='';
Site.photosLocation = 'http://fotos.mapcity.com/fachadas/';
Site.timerhideTOS;
Site.timercounter=0;
Site.ActiveChannelOption=[];
Site.ActiveChannel="";
Site.ThisPointId="";
Site.include;
Site.Backgrd="";
Site.LON = null;
Site.LAT = null;
Site.pa_nearly=null;

Site.USSN=false;
Site.ActiveSearch=false;

Site.dominio_sociales="social.mapcity.com";

//******************************Carga Tweets  y FACEBOOK*******************************

//SI EXISTE UNA BUSQUEDA DE TWEETES ESTA VARIABLE BANDERA SE ACTIVA Y EN CADA
//MOVEEND TRAE LOS TUITEOS SINO NO FUNCIONA

Site.GetTweets=false;


Site.framefb=""; // IFRAME DE FACEBOOK
Site.framefb_imgmap=""; // IFRAME DE FACEBOOK


//******************************carga de librerias js *******************************

Site.load_news			=false;
Site.load_options		=false;
Site.load_phone			=false;
Site.load_commerce		=false;
Site.load_poi			=false;
Site.load_twitter		=false;
Site.load_printmap		=false;
Site.load_env			=false;
Site.certifica			=false;
Site.load_facebook		=false;

//******************************carga de librerias js *******************************
Site.ChannelActive=new Array();//{};

Site.LinkPrint = ''; //enlaces imprimir mapa

Site.frame=1;
Site.linkear=1;
Site.news=4;
Site.get=MapCity.Core.get; 
Site.sel=MapCity.Core.select;
Site.query=MapCity.Core.query;
Site.each=MapCity.Core.each;
Site.dom=MapCity.Core.DomHelper;
Site.dom.useDom = true;
Site.qb=1;
Site.Ads=true;
Site.q;
Site.qC;

// Search Commerces global variables
Site.SearchCommercesbyExtend=true;
Site.SearchCommercesNum=100;
Site.SearchCommercesStopSearch=false;

// Setting Markers 
Site.AddressMarkers2;
Site.AddresPopupMarkers;
Site.CommercesPopupMarkers;
Site.AddresPopupMarkersRoute = new Array(2);
Site.vectorLayer;
Site.markers_global;
Site.markers_currentLocation;


Site.markers_global_comm;
Site.AddressMarkers;
Site.CommerceMarkers;
Site.PhoneMarkers;
Site.AddressMarkersFitZoom;
Site.PhotoMarkers;
Site.POIMarkers;
Site.bounds;
Site.DigitalPoints;
Site.CurrentView = 'View_Channels';//'View_Start';
Site.sociales=0;
Site.verFotos=true;
Site.FQ_estado=false;
Site.markers_FSQ;
Site.popup_FSQ;
Site.boundFSQ;
Site.FQ_estadoBajo=false;
Site.FQ_estadoApi=true;
Site.CLIMA_estado=false;
Site.escala=100000;
Site.ZoomComunas=8;
Site.markers_publicidad;
Site.popup_publicidad;
Site.markers_default;
Site.popup_default;

Site.pathIconoPublicidad="http://hqte.mapcity.com/img/marker/";
//Site.pathPublicidad="http://newapi4.mapcity.com/hqte";
Site.pathPublicidad="http://hqte.mapcity.com";
Site.icono_default_hqte="publicidad_default.png";
Site.icono_default_IE_hqte="publicidad_default_IE.png";
Site.LonMove="";
Site.LatMove="";
// Locale function load on MAPCITY CORE READY
Site.InitMap=function() {

			Site.Locale.get = function(key){
				
				if(Site.Locale.language
					&& Site.Locale.language[key])
				{
					//return 'áéàè'; //to check
					return Site.Locale.language[key];
				};
				
				//If key not exist, then return key
				return (key);
			};
			 
			// Defining Widgets and functionalities
			// Setting and load map and layers
			Site.Map = {
					init: function(){
					
						var countrycity;
						var defaultzoom=8;
						
						switch (Site.CurrentCountry)
						{
							case 'ar':
									Site.CurrentCountryName='argentina';
									countrycity='argentina';
									
									break;
							case 'mx':
									Site.CurrentCountryName='mexico';
									countrycity='mexico'
									break;
							case 'pe':
									Site.CurrentCountryName='peru';
									countrycity='peru';
									defaultzoom=5;
									break;
							case 'br':
									Site.CurrentCountryName='saopaulo';
									countrycity='saopaulo';
									break;
							
							default:
								Site.CurrentCountryName='chile';
								countrycity='chile';
								break;
							
							}
						
						
						// Creating Map
						Site.Map.map = new MapCity.Maps.map('map',{
							country:countrycity
							,provider: 'mapcity'
							,controls: [
									new MapCity.Maps.Controls.ZoomBar()
									,new MapCity.Maps.Controls.ScaleLine()
									,new MapCity.Maps.Controls.Navigation({zoomWheelEnabled:true})
									,new MapCity.Maps.Controls.ArrowMapNorth({north: true})
									,new MapCity.Maps.Controls.ArrowMapSouth({south: true})
									,new MapCity.Maps.Controls.ArrowMapEast({east: true})
									,new MapCity.Maps.Controls.ArrowMapWest({west: true})
									
								,new MapCity.Maps.Controls.SwitchMapBar({
									vector: true
									,photo: true
									,guide: true
								})
								 ,new MapCity.Maps.Controls.ToolsBar({
								   measureline: true
								  ,measurepolygon: true
								  ,dragpan: true
								  ,zootomaxextent: false
								  ,zoomin: true
								  ,zoomout: true
								  ,infostreet: true
								  ,infogse: true
								})
							]
							});
							
							
						 
							// Definning layupdateNearbyers for the map
							Site.PhotoLayer = Site.Map.map.addLayer('PhotoLayer','marker'); 
							Site.RouteLayer = Site.Map.map.addLayer('RouteLayer','marker');
							Site.POILayer = Site.Map.map.addLayer('POILayer','marker'); 
							Site.PhoneLayer = Site.Map.map.addLayer('PhoneLayer','marker');
							Site.NewLayer = Site.Map.map.addLayer('NewLayer','marker'); 
							Site.CommerceLayer = Site.Map.map.addLayer('CommerceLayer','marker');
							Site.AddressSearchLayer = Site.Map.map.addLayer('AddressSearchLayer','marker');  	
							Site.RouteFromLayer= Site.Map.map.addLayer('RouteFromLayer','marker');  	
							Site.RouteToLayer= Site.Map.map.addLayer('RouteToLayer','marker');  	
							
							Site.Map.streetInfo = new MapCity.Services.Geocoding.streetInfoById();
						
							Site.layerMarkerCons = Site.Map.map.addLayer('PtoDigi','marker');//PTO DIGITAL
							//alert(Site.Map.map.olMap.getScale());
							//if(Site.Map.map.olMap.getScale()< Site.escala) //85000
							Site.Map.map.olMap.zoomTo(defaultzoom);
							if(Site.Map.map.olMap.getZoom() >= Site.ZoomComunas)
							{
								Site.EstadoComunas=true;
								Site.fncComunas();
							}
							/*else
							{
								var layerCapa = Site.Map.map.getLayer('lyrCapaComuna', 'marker');				
								if (layerCapa != undefined) {

									Site.Map.map.removeAllMarkers('lyrCapaComuna', 'marker');					
								} 
							}*/
							
							Site.Map.map.registerEvent("moveend", function(e) {
								
									Site.updateNearby();
									var scale =11;
									
									//Esto arregla la vista satelital de Google
									if(Site.Map.map.olMap.getNumZoomLevels() == 18){
									scale = 13;
									}
									if(Site.CLIMA_estado==true)
									{
										Site.getClima("on");
									}
									//Esto trae puntos digitales
									document.getElementById('menu2').innerHTML ="";
									Site.GetDP(scale);
									//setTimeout("Site.GetDPHQTE("+scale+");",800);
									//Site.GetDPHQTE(scale);

										
									//Show comuna label at map
									//alert(Site.Map.map.olMap.getScale());
									
									//if(Site.Map.map.olMap.getScale()< Site.escala) //85000
									if(Site.Map.map.olMap.getZoom() >= Site.ZoomComunas && Site.EstadoComunas==false)
									{
											Site.fncComunas();
									}else{
											var layerCapa = Site.Map.map.getLayer('lyrCapaComuna', 'marker');				
											if (layerCapa != undefined) {
												
												Site.Map.map.removeAllMarkers('lyrCapaComuna', 'marker');					
											} 
										}
										Site.EstadoComunas=false;

									if (Site.ActiveSearch==false){
										for(key in Site.ChannelActive){
					
												/*llama canales*/
												 if ( typeof(Site.ChannelActive[key])!= 'function' ){
																	Site.ClearLayerChannel(Site.ChannelActive[key]);
																	Site.OpenChannel(Site.ChannelActive[key]);
														
												}
										}
									}
									if(Site.GetTweets!=false){ Site.ShowTweets(); }
                  /* FOURSQUARE*/
                  
									if(Site.FQ_estado==true && Site.FQ_estadoApi==true)
									{
										//alert(Site.boundFSQ)
										var FSQ_centro = Site.Map.map.getCenter();
										var FSQ_lon = FSQ_centro.lon;
										var FSQ_lat = FSQ_centro.lat;	

										/*if(Site.boundFSQ.containsLonLat(new OpenLayers.LonLat(FSQ_lon,FSQ_lat),true) == false)
 										{*/
 											
											Site.FSQLoad();
										//}
									}
									//bajo radar FSQ
									if(Site.FQ_estadoBajo==true && Site.FQ_estado==false)
									{
											Site.FSQLoadUnder();
									}
										if(typeof Site.markers_currentLocation != "undefined")
										{
											Site.markers_currentLocation.destroy();
										}
										if(typeof Site.vectorLayer != "undefined")
										{
											Site.vectorLayer.destroy();
										}
							});
							
							

							
							Site.ShowTweets=function(){								
											if (($("#txtSearchElements").val() == '') || ($("#txtSearchElements").val() == 'Buscar GeoTweets')) 
												Site.TwitterSearch(0);
											else
												Site.TwitterSearch($("#txtSearchElements").val());									
							}
							
							Site.Map.CenterZoom = function(lon,lat,zoom){
									try{Site.ShowLoading('loadingglobal',true);}catch(err){}
									
									var lonlat = new MapCity.Maps.LonLat(lon, lat);
									Site.Map.map.setCenter(lonlat,zoom);
								
									try{Site.ShowLoading('loadingglobal',false);}catch(err){}
								}	
								
								var la = Site.Map.map.olMap.getNumLayers();
					}
			}
			
				Site.Searcher.Widgets = {
						init: function(){
				
					   //*******************************************************************
						// ONE LINE SEARCH
						//*******************************************************************
							Site.searchUnaLinea = new MapCity.Widgets.SearchComboBox({
								input: 'search_global_address_commerce_person'
								,action: 'search_global_but'
								,limit: 7
								,width: 285
								,country: Site.CurrentCountryName
								,before: function(){
										try{document.getElementById('FrontBarSite').style.display='none';}catch(err){}																	
								}
								,actionCallback: function(json,product,service){
								
								}
							});
				
						//*******************************************************************
						// SEARCH BY PHONE AND PERSON
						//*******************************************************************
				
							Site.searchPersonas = new MapCity.Widgets.SearchPersonComboBox({
								area: 'search_by_phone_area'
								,phone: 'search_by_phone_phone'
								,action: 'search_by_phone_but'
								,limit: 999
								,widthNames: 70
								,widthLastName: 107
								,widthMotherMaidenName: 107
								,country: Site.CurrentCountryName
								,widthArea: 100
								,widthPhone: 140
								,before: function(){
									Site.ShowLoading('loadingsearch',true);
								try{document.getElementById('FrontBarSite').style.display='none';}catch(err){}																	
								}
								,actionCallback: function(json,product,service){
								
								var total = 0;
									
									try{total=json.totalCount;}catch(err){total=0}
									
								if(total==1){
									for(var i=0;i<json.totalCount;i++){
										var t=json.searchpersonbyphone[i];
										total=t.total;
										}
								
								}	
								
								Site.switchView('View_PhoneList');
								document.getElementById('barra_tabs_portada').style.display='none';	
									
									if (total==0) // If there are no results
											{	
												Site.putHTML('PhoneListTitle', Site.Locale.get('tit_Phonenotfound'));
												Site.putHTML('PhoneList','<div class="boxMessage"><div class="boxContent" /><div id="cannotfindphone" />'+
																										Site.Locale.get('err_cannotfindphone')+'</div>');
												
												Site.ShowObject('PhoneList',true);
												
												Site.ShowLoading('loadingsearch',false);
												
								
											}else{
													
													
													var address = json.searchstreet;
													
													Site.SearchPhones(json,product,service,'PhoneList');
											
													Site.ShowLoading('loadingsearch',false);
													Site.ShowObject('trash4',true);
													
											}
								
								}
							});
						
				   			// If press ENTER search the route
							new MapCity.Core.KeyNav(MapCity.Core.get('search_by_route_addr_from'), {
							"enter" : function(e){
									Site.ShowLoading('loadingsearch',true);
									Site.searchRuta1Separado.search();
									Site.searchRuta2Separado.search();
									Site.ShowLoading('loadingsearch',false);
								
								},
								scope : this
							});
				   
							new MapCity.Core.KeyNav(MapCity.Core.get('search_by_route_inter_from'), {
							"enter" : function(e){
									Site.ShowLoading('loadingsearch',true);
									Site.searchRuta1Separado.search();
									Site.searchRuta2Separado.search();
									Site.ShowLoading('loadingsearch',false);
								
								},
								scope : this
							});
				   
					   new MapCity.Core.KeyNav(MapCity.Core.get('search_by_route_addr_to'), {
							"enter" : function(e){
									Site.ShowLoading('loadingsearch',true);
									Site.searchRuta1Separado.search();
									Site.searchRuta2Separado.search();
									Site.ShowLoading('loadingsearch',false);
								
								},
								scope : this
							});
				   
							new MapCity.Core.KeyNav(MapCity.Core.get('search_by_route_inter_to'), {
							"enter" : function(e){
									Site.ShowLoading('loadingsearch',true);
									Site.searchRuta1Separado.search();
									Site.searchRuta2Separado.search();
									Site.ShowLoading('loadingsearch',false);
								
								},
								scope : this
							});
						   
						
						//*******************************************************************
						// SEARCH  ROUTE
						//*******************************************************************
						   Site.searchRuta1Separado = new MapCity.Widgets.AdvancedSearchComboBox({
								street: 'search_by_route_addr_from'
								,intersection: 'search_by_route_inter_from'
								,action: 'search_by_route_but'
								,limit: 7
								,widthStreet: 160
								,widthNumber: 50
								,widthDistrict: 100
								,widthIntersection: 100
								,country: Site.CurrentCountryName
								,before: function(){
									Site.ShowLoading('loadingsearch',true);
									
									Site.ShowObject('RouteLiteralBox', false);
									
								}
								,actionCallback: function(json,product,service){
											var total = json.totalCount;
											Site.switchView('View_RouteList');
								try{document.getElementById('FrontBarSite').style.display='none';}catch(err){}																			

											if (total==0) // If there are no results
											{
													html=Site.Searcher.Route_html_list_start;
													html+=Site.Searcher.Route_html_list_titleFROM('',Site.Locale.get('lbl_from').toUpperCase(),'');
													html+=Site.Searcher.Route_html_list_item(0,'address0',Site.Locale.get('lbl_noaddressfound'),'');
													html+=Site.Searcher.Route_html_list_end;
													//Inject list to ul
													//Site.get(ul).dom.innerHTML=html;
													Site.putHTML('RouteListFROM',html);
													Site.ShowLoading('loadingglobal',false);
											}else{
													Site.ShowObject('trash2',true);
													var address = json.searchstreet;
													Site.SearchAddressforRoute(json,product,service,'RouteListFROM');
													Site.ShowLoading('loadingsearch',false);
											}
									}
							});
							/* BUSQUEDA DE RUTA DIRECCION 2*/
							Site.searchRuta2Separado = new MapCity.Widgets.AdvancedSearchComboBox({
								street: 'search_by_route_addr_to'
								,intersection: 'search_by_route_inter_to'
								,action: 'search_by_route_but'
								,limit: 7
								,widthStreet: 160
								,widthNumber: 50
								,widthDistrict: 100
								,widthIntersection: 100
								,country: Site.CurrentCountryName
								,before: function(){
								
									Site.ShowLoading('loadingsearch',true);
								try{document.getElementById('FrontBarSite').style.display='none';}catch(err){}																	
								
								}
								,actionCallback: function(json,product,service){
											var total = json.totalCount;
											Site.switchView('View_RouteList');
								document.getElementById('barra_tabs_portada').style.display='none';												
											if (total==0) // If there are no results
											{
												Site.putHTML('RouteListTitle', Site.Locale.get('tit_addressnotfound'));
												Site.putHTML('RouteListTO','<div class="boxMessage"><div class="boxContent" /><div id="cannotfindaddress" />'+
																										Site.Locale.get('err_cannotfindaddress')+'</div>');
												Site.ShowObject('RouteListTO',true);
												Site.ShowLoading('loadingsearch',false);
											}else{
													Site.ShowObject('trash2',true);
													var address = json.searchstreet;
													Site.SearchAddressforRoute(json,product,service,'RouteListTO');
													Site.ShowLoading('loadingsearch',false);
											}
								}
							});
							
						//*******************************************************************
						// SEARCH COMMERCE
						//*******************************************************************
						Site.Searcher.Widgets.commerce = new MapCity.Widgets.CommerceSearchComboBox({
							 commerceClass: 'search_by_commerce_item'
							,commerce: 'search_by_commerce_name'
							,action: 'search_by_commerce_but'
							,limit: Site.SearchCommercesNum
							,country: Site.CurrentCountryName
							,widthStreet: 153
							,widthNumber: 50
							,widthDistrict: 100
							,widthIntersection: 153
							,widthCommerceClass:200
							,widthCommerce: 150
							,limitGlobal: 4
							,searchGlobal: true
							,searchByExtent:{
										'map': Site.Map.map,
										'active': Site.SearchCommercesbyExtend		
							}
							,before: function(){
								Site.ShowLoading('loadingsearch',true);
								try{document.getElementById('FrontBarSite').style.display='none';}catch(err){}								
								/*if (Site.Map.map.getZoom()<=9)
									Site.Map.map.olMap.zoomTo(11);*/
							}
							,actionCallback: function(json,product,service){

								var total = 0;
								try{
									total=json.totalCount;
									}
								catch(err){}
								
								Site.switchView('View_CommerceList');
								document.getElementById('barra_tabs_portada').style.display='none';										
								if (total==0)  {	
									Site.putHTML('CommerceListTitle', Site.Locale.get('tit_commercenotfound'));
									Site.putHTML('CommerceList','<div class="boxMessage"><div class="boxContent" /><div id="cannotfindcommerce" />'+
																 Site.Locale.get('err_cannotfindcommerces')+'</div><br><br><br><br>');
									
									Site.ShowObject('CommerceList',true);
									Site.ShowLoading('loadingsearch',false);
									Site.ShowObject('trash3',false);
					
								}else{
									var address = json.searchstreet;
									Site.SearchCommerces(json,product,service,'CommerceList');
									Site.ShowLoading('loadingsearch',false);
									Site.ShowObject('trash3',true);
								}
							}
							,addressFailureCallback: function(json,product,service){
								Site.ShowObject('trash3',false);
							}
							,actionGetPage: function(total,pagina){
								
							}
						});
						
						//*******************************************************************
						// CLASSIC SEARCH 
						//*******************************************************************
						Site.Searcher.Widgets.advanced = new MapCity.Widgets.AdvancedSearchComboBox({
									street: 'search_by_address_addr'
									,number: 'search_by_address_num'
									,district: 'search_by_address_pobl'
									,intersection: 'search_by_address_inter'
									,action: 'search_by_address_but'
									,limit: 100
									,widthStreet: 208
									//,widthNumber: 75
									//,widthDistrict: 160
									,widthIntersection: 170
									,country: Site.CurrentCountryName
									,force_mapcity:false   // IMPORTANT!!! IF MAPCITY DOES...
									,before: function(){
											Site.ShowLoading('loadingsearch',true);
											try{document.getElementById('FrontBarSite').style.display='none';}catch(err){}
											
									}
									,actionCallback: function(json,product,service){
											var total = json.totalCount;
											Site.switchView('View_AddressList');
											if (total==0) { // If there are no results
												Site.putHTML('ItemListTitle', Site.Locale.get('tit_addressnotfound'));
												Site.putHTML('ItemList','<div class="boxMessage"><div class="boxContent" /><div id="cannotfindaddress" />'+
												Site.Locale.get('err_cannotfindaddress')+'</div>');
												Site.ShowObject('ItemList',true);
												Site.ShowLoading('loadingsearch',false);
									
												
											}else{
													Site.ShowObject('trash1',true);
													try
													{
														var address = json.searchstreet;
													
											    	//cargarFace();									
											    	if(json['searchstreet'][0]["lon"]==null)
											    	{
											    					//alert("Altura no existe");
											   		 	var imgwarn  = '<img src="img/warning.png" border="0" align="absmiddle" style="margin-right:15px;" />';
											    		var linkwarn = '<a href="#" align=right onclick="$(\'#msgmap\').hide(\'fast\');" title="Cerrar"><strong>X</strong></a>';												
											    		$("#msgmap").show('fast');											    
															$("#msgmap").html(imgwarn+'No tenemos disponible coordenadas para la altura ingresada.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'+linkwarn);
														
											    	}   
											    }catch(err){}; 
													Site.SearchAddress(json,product,service,'ItemList');													
													Site.ShowLoading('loadingsearch',false);
													//alert(json['searchstreet'].length);
													//Site.FacebookImg(tipo,calle,numero,comuna,lon,lat);
											}
//											alert(street);
									}
						}); // END CLASSIC SEARCH
						
						// Execute at the end of ONREADY
				} // END INIT FUNCTION
			}// END WIDGETS

			Site.Map.CenterandZoom = function(lon,lat,zoom,i){
				
				Site.LON = lon;
 				Site.LAT = lat;
				Site.ShowLoading('loadingglobal',true);
				
				//var lonlat = new MapCity.Maps.LonLat(lon, lat);
				//Site.Map.map.setCenter(lonlat,zoom);
				/*if(typeof Site.AddresPopupMarkers != "undefined")
				{
				  for(cont_i=0;cont_i < Site.AddresPopupMarkers.length;cont_i++)
				  {
				  	if(typeof Site.AddresPopupMarkers[cont_i] != "undefined")
				  	{
				  		Site.AddresPopupMarkers[cont_i].hide();
				  	}
				  }
				}*/
				Site.Map.map.olMap.setCenter(new OpenLayers.LonLat(lon,lat), zoom); 
  			Site.AddresPopupMarkers[i].show();
  			//loadFace();
  			setTimeout("loadFace();",1000);
				//Site.AddresPopupMarkers[i].show();

				
				Site.ShowLoading('loadingglobal',false);
				
				}
				
			Site.Map.CenterandZoomRoute = function(lon,lat,zoom){
				Site.ShowLoading('loadingglobal',true);
				var lonlat = new MapCity.Maps.LonLat(lon, lat);
				Site.Map.map.setCenter(lonlat,zoom);
				Site.ShowLoading('loadingglobal',false);
				}
				
			Site.Map.CenterandZoomCommerce = function(lon,lat,zoom,i){
				Site.ShowLoading('loadingglobal',true);
				//var lonlat = new MapCity.Maps.LonLat(lon, lat);
				//Site.Map.map.setCenter(lonlat,zoom);
				if(typeof Site.CommercesPopupMarkers != "undefined")
				{
				  for(cont_i=0;cont_i < Site.CommercesPopupMarkers.length;cont_i++)
				  {
				  	if(typeof Site.CommercesPopupMarkers[cont_i] != "undefined")
				  	{
				  		Site.CommercesPopupMarkers[cont_i].hide();
				  	}
				  }
				}
				Site.Map.map.olMap.setCenter(new OpenLayers.LonLat(lon,lat), zoom); 
  			Site.CommercesPopupMarkers[i].show();
				//Site.CommerceMarkers[i].showPopup();
				//VM_mostrarPopComm('',lonlat,ContentHTML,'',i,'popupCom_');
				Site.ShowLoading('loadingglobal',false);
				}
					
			Site.Map.CenterandZoomPhone = function(lon,lat,zoom,i){
				Site.ShowLoading('loadingglobal',true);
				var lonlat = new MapCity.Maps.LonLat(lon, lat);
				Site.Map.map.setCenter(lonlat,zoom);
				Site.PhoneMarkers[i].showPopup();
				Site.ShowLoading('loadingglobal',false);
				}
			
			// FUNCTION CREATE ADDRESS MARKER
			Site.Map.CreateIconMarker = function(id, lon, lat, icon_path, int_w_iconsize, 
												 int_h_iconsize, Site_layer, text_popupcontent, 
												 bool_showpopup, offx, offy, facebook) {
						var lonlat = new MapCity.Maps.LonLat(lon, lat);
						// Calculating offset
						calculateOffset = function(ofx,ofy) {return new MapCity.Maps.Pixel(ofx, ofy); };
						// Creating Offset
						var int_w_iconsize=33;
						var int_h_iconsize=40;
						var icon = new MapCity.Maps.Icon(
														 icon_path
													   , new MapCity.Maps.Size(int_w_iconsize,int_h_iconsize)
													     );
						//icon.imageDiv.style.cursor = "pointer";
						//CreateIconMarker
						if (Site.CurrentCountry=='cl'){
								var ContentHTML = '		<div>'+text_popupcontent;
								if(Site.SocialButtons()!="")
								{
									ContentHTML += '<br><div class="popupSocialButtons"><br>'+Site.SocialButtons()+'</div>';
								}
								ContentHTML += '		<div id="addressmarker'+id+'"></div>';
								ContentHTML += '</div>';
								
								/*
								
								var ContentHTML = '<div style="width:150px;height:80px;">';
								ContentHTML += '<table border="0" cellspacing="0" cellpadding="0" width="100%">';
								ContentHTML += '  <tr>';
								ContentHTML += '	<td>';
								ContentHTML += '		<div>'+text_popupcontent+'<br>';
									ContentHTML += '		<div class="popupSocialButtons"><br>'+Site.SocialButtons()+'</div></div>';
								ContentHTML += '		<div id="addressmarker'+id+'"></div>';
								ContentHTML += '	</td>';
								ContentHTML += '  </tr>';
								ContentHTML += '</table>';
								ContentHTML += '</div>';
								
								*/
								
								//ContentHTML = text_popupcontent;
								/*
								
								'<div style="width:300px;height:50px;">'
								+text_popupcontent
								+'<br><!--+facebook+--><div class="popupSocialButtons"><br>'
								+Site.SocialButtons()
								+'</div></div><div id="addressmarker'+id+'"></div>'
								*/
								/*
								Site.AddressMarkers[id] = Site.Map.map.addPopUpMarker(Site_layer
																					,lonlat 
																					,ContentHTML
																					,icon 
																					,true 
																					,true 
																					,MapCity.Maps.PopUp.FramedBubble
																					,bool_showpopup
																					,new OpenLayers.Size(100,100)
																					,false
																					,false);
								*/
								/*var marker = new MapCity.Maps.Marker( 
												lonlat 
												,icon
												
								);*/
								var marker = new OpenLayers.Marker(lonlat,icon);
			
								Site.markers_global.addMarker(marker);
								icon.imageDiv.style.cursor = "pointer";
								//Site.Map.map.addMarker(Site_layer, marker); //VM
   
								//Site.AddressMarkers[id] = marker; //VM

								/*Event.observe(icon.imageDiv,'mousedown',function(e) {
									if(typeof Site.AddresPopupMarkers != "undefined")
									{
									  for(cont_i=0;cont_i < Site.AddresPopupMarkers.length;cont_i++)
									  {
									  	if(typeof Site.AddresPopupMarkers[cont_i] != "undefined")
									  	{
									  		Site.AddresPopupMarkers[cont_i].hide();
									  	}
									  }
									}
									Site.AddresPopupMarkers[id].show();
									Event.stop(e);
									return false;							
								});
								*/
									var size_w=300;
									var size_h=80;
								if(Site.IsInternetExplorer()!=false)
								{
									size_w=300;
									size_h=115;
								
								}
								if(Site.Searcher.photoaddressBig[id]!="")
								{
									size_w=300;
									size_h=220;
									if(Site.IsInternetExplorer()==false)
									{
										size_w=250;
										size_h=170;
									
									}

								}
								
								VM_mostrarPop(this,lonlat,ContentHTML,icon,id,"popup_",size_w,size_h);
								loadFace();
								//Site.AddressMarkers[id].events.register('mousedown', Site.AddressMarkers[id], function(evt) {
									marker.events.register('mousedown', marker, function(evt) {
									//VM_mostrarPop(this,lonlat,ContentHTML,icon,id,'popup_');
									if(typeof Site.AddresPopupMarkers != "undefined")
									{
									  for(cont_i=0;cont_i < Site.AddresPopupMarkers.length;cont_i++)
									  {
									  	if(typeof Site.AddresPopupMarkers[cont_i] != "undefined")
									  	{
									  		Site.AddresPopupMarkers[cont_i].hide();
									  	}
									  }
									}
									
									Site.AddresPopupMarkers[id].show();
									loadFace();
									
								});	
						}else{
							Site.AddressMarkers[id] = Site.Map.map.addPopUpMarker(Site_layer
																				 ,lonlat 
																				 ,'<div class="popupAddress">'+text_popupcontent+'<br><b><div class="popupSocialButtons"><br>'+Site.SocialButtons()+'</div></div><div id="addressmarker'+id+'"></div>'
																				 ,icon 
																				 ,true 
																				 ,true 
																				 ,MapCity.Maps.PopUp.FramedBubble
																				 ,bool_showpopup
																				 ,null
																				 ,false
																				 ,false);
						}
			}
						// FUNCTION CREATE ROUTE MARKER
			Site.Map.CreateIconMarkerRoute = function(id, lon, lat, icon_path, int_w_iconsize, 
												 int_h_iconsize, Site_layer, text_popupcontent, 
												 bool_showpopup, offx, offy, facebook) {

						var lonlat = new MapCity.Maps.LonLat(lon, lat);
						// Calculating offset
						calculateOffset = function(ofx,ofy) {return new MapCity.Maps.Pixel(ofx, ofy); };
						// Creating Offset
						var int_w_iconsize=33;
						var int_h_iconsize=40;
						var icon = new MapCity.Maps.Icon(
														 icon_path
													   , new MapCity.Maps.Size(int_w_iconsize,int_h_iconsize)													   
													     );
						//icon.imageDiv.style.cursor = "pointer";
						//CreateIconMarker
						if (Site.CurrentCountry=='cl'){
								var ContentHTML = '		<div>'+text_popupcontent;
								if(Site.SocialButtons()!="")
								{
									ContentHTML += '<br><div class="popupSocialButtons"><br>'+Site.SocialButtons()+'</div>';
								}
								ContentHTML += '		<div id="addressmarker'+id+'"></div>';
								ContentHTML += '</div>';
								
								
								var marker = new OpenLayers.Marker(lonlat,icon);
								Site.markers_global.addMarker(marker);
								icon.imageDiv.style.cursor = "pointer";
							
									var size_w=150;
									var size_h=50;

								VM_mostrarPopRoute(this,lonlat,ContentHTML,icon,id,"popup_",size_w,size_h);
								Site.Map.map.olMap.zoomToExtent(Site.markers_global.getDataExtent(),false);
								//Site.AddressMarkers[id].events.register('mousedown', Site.AddressMarkers[id], function(evt) {
									marker.events.register('mousedown', marker, function(evt) {
									if(typeof Site.AddresPopupMarkersRoute != "undefined")
									{
									  for(cont_i=0;cont_i < Site.AddresPopupMarkersRoute.length;cont_i++)
									  {
									  	if(typeof Site.AddresPopupMarkersRoute[cont_i] != "undefined")
									  	{
									  		Site.AddresPopupMarkersRoute[cont_i].hide();
									  	}
									  }
									}
									
									Site.AddresPopupMarkersRoute[id].show();
								});	
						}else{
							Site.AddressMarkers[id] = Site.Map.map.addPopUpMarker(Site_layer
																				 ,lonlat 
																				 ,'<div class="popupAddress">'+text_popupcontent+'<br><b><div class="popupSocialButtons"><br>'+Site.SocialButtons()+'</div></div><div id="addressmarker'+id+'"></div>'
																				 ,icon 
																				 ,true 
																				 ,true 
																				 ,MapCity.Maps.PopUp.FramedBubble
																				 ,bool_showpopup
																				 ,null
																				 ,false
																				 ,false);
						}
			}
						// FUNCTION CREATE ADDRESS MARKER INTERSECCION
			Site.Map.CreateIconMarkerInter = function(id, lon, lat, icon_path, int_w_iconsize, 
												 int_h_iconsize, Site_layer, text_popupcontent, 
												 bool_showpopup, offx, offy, facebook) {
						var lonlat = new MapCity.Maps.LonLat(lon, lat);
						// Calculating offset
						calculateOffset = function(ofx,ofy) {return new MapCity.Maps.Pixel(ofx, ofy); };
						// Creating Offset
						var int_w_iconsize=33;
						var int_h_iconsize=40;
						var icon = new MapCity.Maps.Icon(
														 icon_path
													   , new MapCity.Maps.Size(int_w_iconsize,int_h_iconsize)
													     );
						//icon.imageDiv.style.cursor = "pointer";
						//CreateIconMarker
						if (Site.CurrentCountry=='cl'){
								var ContentHTML = '		<div>'+text_popupcontent;
								if(Site.SocialButtons()!="")
								{
									ContentHTML += '<br><div class="popupSocialButtons"><br>'+Site.SocialButtons()+'</div>';
								}
								ContentHTML += '		<div id="addressmarker'+id+'"></div>';
								ContentHTML += '</div>';
								var marker = new OpenLayers.Marker(lonlat,icon);
								Site.markers_global.addMarker(marker);
								icon.imageDiv.style.cursor = "pointer";
								var size_w=250;
								var size_h=60;
								VM_mostrarPop(this,lonlat,ContentHTML,icon,id,"popup_",size_w,size_h);
									marker.events.register('mousedown', marker, function(evt) {
									if(typeof Site.AddresPopupMarkers != "undefined")
									{
  									
									  for(cont_i=0;cont_i < Site.AddresPopupMarkers.length;cont_i++)
									  {
									  	if(typeof Site.AddresPopupMarkers[cont_i] != "undefined")
									  	{
									  		Site.AddresPopupMarkers[cont_i].hide();
									  	}
									  }
									}
									Site.AddresPopupMarkers[id].show();
								});	
						}else{
							Site.AddressMarkers[id] = Site.Map.map.addPopUpMarker(Site_layer
																				 ,lonlat 
																				 ,'<div class="popupAddress">'+text_popupcontent+'<br><b><div class="popupSocialButtons"><br>'+Site.SocialButtons()+'</div></div><div id="addressmarker'+id+'"></div>'
																				 ,icon 
																				 ,true 
																				 ,true 
																				 ,MapCity.Maps.PopUp.FramedBubble
																				 ,bool_showpopup
																				 ,null
																				 ,false
																				 ,false);
						}
			}
			// FUNCTION CREATE COMMERCE MARKER
			Site.Map.CreateCommerceMarker = function(id, lon,lat,icon_path,int_w_iconsize, 
													 							int_h_iconsize,Site_layer,text_popupcontent, bool_showpopup,offx, offy){
						
						var lonlat = new MapCity.Maps.LonLat(lon, lat);
						
						// Calculating offset
						
						calculateOffset = function(ofx,ofy) {
									return new MapCity.Maps.Pixel(ofx, ofy); };
						
						// Creating Offset
						var icon = new MapCity.Maps.Icon( 
								icon_path
								,new MapCity.Maps.Size(int_w_iconsize,int_h_iconsize));
					
						
						var ContentHTML='<div class="popupCommerce">'+text_popupcontent;
						if(Site.SocialButtons()!='')
						{
							ContentHTML +='<br>'+Site.SocialButtons();
						}
						ContentHTML +='</div><div id="commerceMarkers'+id+'"></div>';
						
						/*
						Site.CommerceMarkers[id]=Site.Map.map.addPopUpMarker(Site_layer
																			,lonlat 
																			,ContentHTML
																			,icon 
																			,true 
																			,true 
																			,MapCity.Maps.PopUp.FramedCloud
																			,bool_showpopup
																			,null
																			,false
																			,false);
																*/
					 var marker = new MapCity.Maps.Marker( 
												lonlat 
												,icon
												
								);
			
								//Site.CommerceMarkers[id] = marker;
								Site.markers_global.addMarker(marker);
								icon.imageDiv.style.cursor = "pointer";
								//Site.Map.map.addMarker(Site_layer, marker);
								/*var popup = new OpenLayers.Popup.FramedCloud("popup_"+id,
																			lonlat,
																			new OpenLayers.Size(300,200),
																			ContentHTML,
																			null,
																			false,
																			null
																			);
								
								popup.closeOnMove = true;
								//popup.autoSize=true;
								//popup.fixedRelativePosition=true;
								//popup.panMapIfOutOfView=true;
								Site.Map.map.addPopup(popup);	
								Site.CommercesPopupMarkers[id] = popup;

								Event.observe(icon.imageDiv,'mousedown',function(e) {
								if(typeof Site.CommercesPopupMarkers != "undefined")
								{
								  for(cont_i=0;cont_i < Site.CommercesPopupMarkers.length;cont_i++)
								  {
								  		Site.CommercesPopupMarkers[cont_i].hide();
								  }
								}
									Site.CommercesPopupMarkers[id].show();
									Event.stop(e);
									return false;							
								});			
			   */
			   				VM_mostrarPopComm(this,lonlat,ContentHTML,icon,id,'popupCom_');
			   				marker.events.register('mousedown', marker, function(evt) {
									//VM_mostrarPopComm(this,lonlat,ContentHTML,icon,id,'popupCom_');
									if(typeof Site.CommercesPopupMarkers != "undefined")
									{
									  for(cont_i=0;cont_i < Site.CommercesPopupMarkers.length;cont_i++)
									  {
									  	if(typeof Site.CommercesPopupMarkers[cont_i] != "undefined")
									  	{
									  		Site.CommercesPopupMarkers[cont_i].hide();
									  	}
									  }
									}
									Site.CommercesPopupMarkers[id].show();

								});	
			  																		
						
				}
			// FUNCTION CREATE PHONE MARKER
			Site.Map.CreatePhoneMarker = function(id, lon,lat,icon_path,int_w_iconsize, 
												  						 int_h_iconsize,Site_layer,text_popupcontent, bool_showpopup,offx, offy){
						
					
						
						var lonlat = new MapCity.Maps.LonLat(lon, lat);
						
						// Calculating offset
						
						calculateOffset = function(ofx,ofy) {
									return new MapCity.Maps.Pixel(ofx, ofy); };
						
						// Creating Offset
						var icon = new MapCity.Maps.Icon( 
								icon_path
								,new MapCity.Maps.Size(int_w_iconsize,int_h_iconsize),calculateOffset(offx,offy));
					
						
						Site.PhoneMarkers[id]=Site.Map.map.addPopUpMarker( 
								Site_layer
								,lonlat 
								,'<div class="popupPhone">'+text_popupcontent+'<br>'+Site.SocialButtons()+'</div><div id="PhoneMarkers'+id+'"></div>'
								,icon 
								,true 
								,true 
								,MapCity.Maps.PopUp.FramedBubble
								,bool_showpopup);
						
				}
				
				// FUNCTION CREATE PHONE MARKER
			Site.Map.CreatePhotoMarker = function(id, lon,lat,icon_path,int_w_iconsize, 
												  						int_h_iconsize,Site_layer,text_popupcontent, bool_showpopup,offx, offy){
						
						var lonlat = new MapCity.Maps.LonLat(lon, lat);
						
						// Calculating offset
						
						calculateOffset = function(ofx,ofy) {
									return new MapCity.Maps.Pixel(ofx, ofy); };
						
						// Creating Offset
						
						var icon = new MapCity.Maps.Icon( 
								icon_path
								,new MapCity.Maps.Size(int_w_iconsize,int_h_iconsize),calculateOffset(offx,offy));
						
						icon.imageDiv.style.border = '2px Solid #c7c7c7';
					
						
						Site.PhotoMarkers[id]=Site.Map.map.addPopUpMarker( 
								Site_layer
								,lonlat 
								,'<div class="popupPhoto">'+text_popupcontent+'<br>'+Site.SocialButtons()+'</div><div id="PhotoMarkers'+id+'"></div>'
								,icon 
								,true 
								,true 
								,MapCity.Maps.PopUp.FramedBubble
								,bool_showpopup);
						
				}

//FUNCTION INCLUDE PROMOTION IN ADRESS POPUP'SS
Site.GetPromoPopup=function(){
	var bound = Site.Map.map.getExtent();
	var zoom = Site.Map.map.getZoom();
	var element=$('#elementhidden').val();
	var element=(element!=undefined)?element:-1;
	var datamap = element+"{sp}"+bound+"{sp}"+zoom;
	
				
	var img_PromoPopup = '<img src="http://mapcity.com/webparts/Promos/Bresler/img/banner-marker.gif">';		
	var link_PromoPopup = "<a href=\"javascript:Site.OpenPromoPopup();Site.Modal('Promos_Bresler','"+datamap+"');\">"+img_PromoPopup+"</a>";
	return link_PromoPopup;		
}

Site.OpenPromoPopup=function(){
	//Site.switchView('View_Channels');

	LOG.addLog(1,1,1,-1,114,'Cupon Bresler');
	
	changeTabsFront(1);
	ChangeleftButtonBar(1,2);				
	Site.LoadChannel(114);
}
			//FUNCTION DRAWSTREET
			// Draws a line
			Site.Map.drawStreet = function(j, str_street){
				Site.ShowLoading('loadingglobal',true);
				Site.Map.map.removeAllFeatures();
				Site.Map.streetInfo.get(
					{idStreet: Site.q.searchstreet[j].idStreet,
					 country: Site.CurrentCountryName},
					function(json){
						//debugger;
						 var StreetClass =  {fillColor: "#F00000",
												fillOpacity: 0.5,
												strokeColor: "#F00000",
												strokeOpacity: 0.5,
												strokeWidth: 8,
												pointRadius: 0.5,
												pointerEvents: "visiblePainted",
												cursor: "pointer",
												zIndex: 10};
		
						var feat=Site.Map.map.addFeatureWKT(null,json.streetinfobyid[0].wkt,StreetClass);
						Site.LastSearched= str_street;
						Site.bounds=feat.geometry.getBounds();
						Site.Map.map.zoomToExtent(Site.bounds);
						Site.ShowLoading('loadingglobal',false);
					}
				);
			};
			
			//FUNCTION DRAW DISTRICT
			Site.Map.drawDistrict = function(j){
				Site.ShowLoading('loadingglobal',true);
				Site.Map.map.removeAllFeatures();
				var feat=Site.Map.map.addFeatureWKT(null,Site.q.searchdistrict[j].wkt);
					Site.bounds=feat.geometry.getBounds();
					Site.Map.map.zoomToExtent(Site.bounds);
				Site.ShowLoading('loadingglobal',false);
				}
				
			//FUNCTION DRAWROUTE
			Site.DrawRoute = function(){

				if(Site.drawnRoute==false){
					Site.drawnRoute=true;
					Site.ShowLoading('loadingglobal',true);
					var route = new  MapCity.Services.Geocoding.GetRoute();
					route.get({
								'target': Site.RouteToIdStreet
								,'targetpoint': Site.RouteToLon+' ' + Site.RouteToLat 
								,'source': Site.RouteFromIdStreet
								,'sourcepoint': Site.RouteFromLon + ' ' + Site.RouteFromLat
								,'transit': Site.RouteTransit
								}
							,function(json, product, service){		
									Site.route=json;
									Site.Map.map.removeAllFeatures();
									Site.Map.drawRoute(json,'');
									Site.ShowLoading('loadingglobal',false);
							});
					}
				};	
				
			//FUNCTION DRAWROUTE
			// Draws a line
			Site.Map.drawRoute = function(json, str_street){
				var tot = json.totalCount;
				if(tot > 0) {
					Site.ShowLoading('loadingglobal',true);
					var RouteClass =  {fillColor: "#F00000",
										fillOpacity: 0.5,
										strokeColor: "#F00000",
										strokeOpacity: 0.5,
										strokeWidth: 8,
										pointRadius: 0.5,
										pointerEvents: "visiblePainted",
										cursor: "pointer",
										zIndex: 10};
											
					i=json.totalCount-1;
					// Draw route
					Site.Map.map.addFeatureWKT(null,json.getroute[i].wkt, RouteClass);
					i=0;			
					
					Site.tellRoute(json);
					
					var startlonlat = new MapCity.Maps.LonLat(Site.RouteFromLon, Site.RouteFromLat);
					var endlonlat = new MapCity.Maps.LonLat(Site.RouteToLon, Site.RouteToLat);
					
					Site.FitZoomTwoPoints(startlonlat,endlonlat);
					Site.ShowLoading('loadingglobal',false);
					Site.drawnRoute=false;
				}else{
					Site.ShowObject('RouteLiteralBox', false);
					Site.ShowLoading('loadingglobal',false);
				}
			};
			
			var starttable='<table cellspacing="20" border="0" width="100%">';
			var startline='<tr>'
			var column_left='<td class="table_underline" width="18" align="left" valign="top">***</td>';
			var column_center='<td class="table_underline" align="left" valign="top">***</td>';
			var column_right='<td style="color:gray;" class="table_underline" width="45" align="right" valign="top">***</td>';
			var endline='</tr>'
			var endtable='</table>';
			
			 
			Site.tellRoute=function(json){

					// compossing literal route
					var tellingroute='';
					var distance=0;
					var totaldistance=0;
					var direction='';
					var orientation='';
					var street='';
					var spl;
					var turn='';
					var turn_orientation='';
					var firstline=false;
					var arrow='';
					
					var routeliteral=starttable;
					
					for (var i=0;i<json.totalCount-1;i++){
						
						street = json.getroute[i].girocalle.toString();
						
						turn_orientation = json.getroute[i].giro.toString();	
						
						if(turn_orientation.indexOf(',')==-1){ // First line
							
								tellingroute =Site.Locale.get('route_depart')+ street;
								
								firstline=true;
							
						}else{  // Other lines
								spl=turn_orientation.split(',');
								turn = spl[0];
								orientation= spl[1];
								if(spl[0]==0){direction=Site.Locale.get('route_ahead');arrow='/img/arrows/arrow-top.png';};
								if(spl[0]==-1){direction=Site.Locale.get('route_turnleft');arrow='/img/arrows/arrow-left.png';};
								if(spl[0]==1){direction=Site.Locale.get('route_turnright');arrow='/img/arrows/arrow-right.png';};
								
								
								if(laststreet!=street){  // CHANGING STREET
										routeliteral=routeliteral.replace('NEXTSTREET',street);
										routeliteral=routeliteral.replace('DISTANCE',Site.calc_distance(distance));
										totaldistance+=parseInt(distance);
										
										if(firstline==true){
												tellingroute=(tellingroute+ Site.Locale.get('route_to') +street).replace('ORIENTATION', Site.Locale.get(orientation));
												routeliteral += Site.addLinetotellRoute('',tellingroute,Site.calc_distance(distance),'/img/blank.gif');
												firstline=false;
												distance=parseInt(json.getroute[i].largocalle);
										}; //end if
										
										//if(nextstreetchange==false){
										var rand=Math.floor(Math.random()*2);
										var tostring;
										if(rand==0)tostring=Site.Locale.get('route_continue1'); 
										if(rand==1)tostring=Site.Locale.get('route_continue2'); 
										if(rand==2)tostring=Site.Locale.get('route_continue3');
										
										tellingroute = direction + Site.Locale.get('route_trought') + street + tostring + 'NEXTSTREET';
										routeliteral+=Site.addLinetotellRoute('',tellingroute,'DISTANCE',arrow);
										
										tellingroute='';
										distance=0;
											
								};
							
						}; //End If
						
						distance += parseInt(json.getroute[i].largocalle);
						laststreet=street;
					}; // For End
					
					routeliteral=routeliteral.replace('NEXTSTREET',Site.RouteToText.replace('/',' ' +Site.Locale.get('lbl_with')+' '));
					routeliteral=routeliteral.replace('DISTANCE',Site.calc_distance(parseInt(distance)));
					totaldistance+=parseInt(distance);
					
					routeliteral+=endtable;
					
					// stablish header
					var routetype;
					if(Site.RouteTransit==true){routetype=Site.Locale.get('route_type_car');}else{routetype=Site.Locale.get('route_type_walking');};
					routeliteral='<b>'+Site.Locale.get('lbl_from')+':</b> '+Site.RouteFromText+'<br><b>'+Site.Locale.get('lbl_to')+':</b> '+Site.RouteToText.replace('/',' ' +Site.Locale.get('lbl_with')+' ')+'<br><br>'+routeliteral;
					routeliteral='<b>'+Site.Locale.get('route_pathsteps')+' ' +routetype+'...</b><br><br>'+routeliteral+'<br>';
					routeliteral+=Site.Locale.get('lbl_totaldistance') + Site.calc_distance(parseInt(totaldistance))+'<br>';
					routeliteral+=Site.Locale.get('lbl_timeroute') + Site.calc_time(totaldistance,Site.RouteTransit);
					routeliteral+='<br><br>';
					Site.putHTML('RouteLiteral',routeliteral);	
					Site.ShowObject('RouteLiteralBox',true);		
						
				};
			
			Site.calc_time=function(distance,type){
					var vel;
					var typ;
					if(type){vel=35;typ=Site.Locale.get('route_type_car')}else{vel=5;typ=Site.Locale.get('route_type_walking')};
					
					var distunitsvalue = 1; 
					var speedunitsvalue = 0.277777777777777777777777777777777777;
					var hours=0;
					var minutes=0;
					var seconds=0;
					var result;
					
					//  calculate time in seconds    
					seconds = (distance * distunitsvalue) / (vel * speedunitsvalue);
					//  convert to hours, minutes, seconds    
					hours = parseInt(seconds / 3600);
					seconds = seconds - (hours * 3600);
					minutes= parseInt(seconds / 60);
					seconds = parseInt(seconds - (minutes* 60));
					if(hours==0){
						result=minutes+Site.Locale.get('lbl_minutes')+' ' +typ;
					}else{
						result=	hours+ Site.Locale.get('lbl_hours')+minutes+Site.Locale.get('lbl_minutes')+' ' +typ;
						}
					
					return result;
				
				
				}
			
			Site.calc_distance = function(distance){
					    if(distance>999){
								return (distance/1000).toFixed(2)+' km';
						}else{
								return distance+ ' m';
						};
				}
			
			
			Site.addLinetotellRoute=function(logo,tellingroute,distance,arrow){
						
						var rl='';
						rl+=startline;
						
						rl+=column_left.replace('***','<img src="'+arrow+'">');
						rl+=column_center.replace('***',tellingroute );
						rl+=column_right.replace('***',distance);
						rl+=endline;
	
						return rl;
				
				};
			
			
			MapCity.Maps.setPopupNormal();
			// Initialize Map
			Site.Map.init();
			// initialize Widgets!!
			Site.Searcher.Widgets.init();
			
			Site.SetHash(Site.CurrentSearch);
}; // 


// FUNCTION ONLOAD. 
// Things to do when start the app
Site.onLoad = function(){

		Site.resizeApp(); 
		
		// Open initially the View_AddressList
		var cursearch=Site.GetHash('t');
		
		if(cursearch==null)
			cursearch==1;
			
		Site.chmenu(Site.CurrentSearch=cursearch);
		
		
		// if address fromtraditional is comming... 
		var fromtraditional=Site.GetHash('fromtraditional');
		
		if(fromtraditional!=null){
				fromtraditional=fromtraditional.replace(/_/g," ");
				document.getElementById('search_by_address_addr').value=fromtraditional;
				document.getElementById('search_by_address_addr').className='x-form-text x-form-field';
				setTimeout("Site.Searcher.Widgets.advanced.search();",1000);
	
		};

		Site.InitMap();
		document.getElementById("mapcontent").style.right = "184px";
		Site.DoOnLoad();
	
		//Site.EndInitializing();  

		if (Site.load_env==false) {

								Site.include('js/results/env.js');
								Site.load_env=true;	
		}
		if (Site.load_printmap==false) {
						
				Site.include('js/printsend.js');
				Site.load_printmap=true;
				var linkprint = "utilities/printmap/?l=es&amp;p=";
				
				var url = (location.href);
				var divurl = url.split("/");
				var url_length = (divurl[3].length);

				if (Site.IsInternetExplorer()==false){

					IfBanner = (url_length<5)?"Site.InitBanner();":"";
					//VM
					tiny_=getTiny();
					/*VM*/
					if (url_length>=5 && tiny_=="") //VM
					{
						setTimeout('Site.InitBanner();',3000);
					}
					setTimeout(IfBanner+'document.getElementById("printlink").style.cursor="pointer";',2000);//			
					document.getElementById('tabNews').title="1.- "+url;

				}else{
					IfBanner = (url_length<5)?"Site.InitBanner();":"";
					//VM
					tiny_=getTiny();
					/*VM*/
					if (url_length>=5 && tiny_=="") //VM
					{
						setTimeout('Site.InitBanner();',3000);
					}
					setTimeout(IfBanner+'document.getElementById("printlink").style.cursor="pointer";',2000);//			
					document.getElementById('tabNews').title="1.- "+url;
/*
				document.getElementById('tabNews').title="2.- "+url;
					if (url_length<5){  
						setTimeout('Site.InitBanner();',3000); 
						document.getElementById('tabNews').title="3.- "+url;
						
					}else //VM
					{
						setTimeout('Site.InitBanner();',3000);
					}
					setTimeout('document.getElementById("printlink").style.cursor="pointer";',2000);			*/											
				}
				Site.load_printmap=true;
				
		}else{

			
			Site.InitBanner();
		}
 	Site.include('js/social/rating.js');
	
	try{
		if (Site.Config.banner_geocontextual==1)  setTimeout("Site.NoModal('bannermap');",5000);
	}catch(err){}
	setTimeout("Site.ChangeBackground('default');",0);	
	if (Site.IsInternetExplorer()==false){
		
		var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome');
		var is_safari = navigator.userAgent.toLowerCase().indexOf('safari/');
		var is_opera = navigator.userAgent.toLowerCase().indexOf('opera');		
		
		if (is_chrome>-1){
			setTimeout("var d1 = document.getElementById('loading').parentNode;var d2=document.getElementById('loading');d1.removeChild(d2);",10);
			
		}else if (is_opera>-1){
			setTimeout('$("#loading").remove();',1000);			
						
		}else if (is_safari>-1 || is_opera>-1){
			setTimeout('$("#loading").remove();',2000);						
		}else{			
			setTimeout('$("#loading").remove();',2500);			
		}
	}else{
		setTimeout('$("#loading").remove();',1500);
	}
	$("#buttonprint").show(0);
	
	ChangeBarRight();

	if (Site.Config.channel_init>0){
		setTimeout("Site.LoadChannel("+cnl+");",500);   //CAMBIAR A CANAL TELETON
		Site.Map.map.olMap.zoomTo(10);	
	}
	
}

Site.HideTermsofUse=function(){
	// hide TOS 10 times
	clearTimeout(Site.timerhideTOS);
	MapCity.Core.select('div[class=olLayerGoogleCopyright]').setStyle('display','none');
	Site.timerhideTOS=setTimeout("Site.HideTermsofUse();",400); 
	
	Site.timercounter+=1;
	if(Site.timercounter>=10){clearTimeout(Site.timerhideTOS);}
		
}


Site.DoOnLoad=function(){
				var getaddrfromhash=Site.GetHash('a');
				var getcommfromhash=Site.GetHash('c');
				var getGeofromhash=Site.GetHash('ll');
	   		var getpa=Site.GetHash('pa');
		   	if(getcommfromhash!=null)
		   	{

		   		getcommfromhash_arr=getcommfromhash.split("_");
		   		document.getElementById('search_by_commerce_name').value=getcommfromhash_arr[0];
		   		document.getElementById('search_by_commerce_name').className='x-form-text x-form-field';
		   		document.getElementById('search_by_commerce_item').className='x-form-text x-form-field';
		   		//document.getElementById('search_by_commerce_item').value=getcommfromhash_arr[1];
		   		//document.getElementById('commerceValue').value=getcommfromhash_arr[2];
		   		/*if(getcommfromhash_arr[2]=="" || getcommfromhash_arr[2]==" ")
		   		{
		   			getCategoriaServicio(getcommfromhash_arr[1]);
		   		}*/
		   		setTimeout("Site.Searcher.Widgets.commerce.search();",1000);

		   	}
		   	
		   	if(getGeofromhash!=null)
		   	{
		   		//alert(getGeofromhash);
		   		var coord=getGeofromhash.split(",");
		   		Site.LonMove=coord[0];
		   		Site.LatMove=coord[1];
					Site.Map.map.olMap.setCenter(new OpenLayers.LonLat(Site.LonMove,Site.LatMove), 13); 
		   	}
				if(getaddrfromhash!=null){

						document.getElementById('search_by_address_addr').value=getaddrfromhash.replace(/_/g," ");
						
						document.getElementById('search_by_address_addr').className='x-form-text x-form-field';
						// Search the referred address in 1 second
						setTimeout("Site.Searcher.Widgets.advanced.search();",1000);
						
						
						if(getpa!=null){Site.pa_nearly=getpa};
				}else{
					Site.switchView("View_Channels");//View_Start
					Site.showChannels();
					//Site.ChangeCategoryViews(4); //VM caja de busqueda ON abierta 
					Site.ChangeCategoryViews(2); //VM caja de busqueda ON abierta 
				};
				
	}

Site.ClearForm = function(str_input){
	
		q = Site.query('input.search_by_address'); Site.each(q, function(el){el.value = '';alert('');});

	}

// FUNCTION SWITCHVIEW
Site.switchView = function(str_view){

if (str_view=='View_Channels') {
	if(Site.IsInternetExplorer() ==false) //parche problemas con explorer para estas funciones
	{
		Site.ChangeTheme();			
	
		Site.ShowActiveChannels();
		Site.ChangeBanner();
		Site.ChangeBackground('default');	 //VM
	}
}

	// Change style all the div objects starting with View_ to dispay:none
	MapCity.Core.select('div[id^=View_]').setStyle('display','none');
	
	
	// Modify with of all comboboxes to rectify origin fail
	if(str_view=='View_PhoneList'){
		MapCity.Core.select('div[id^=ext-gen]').setStyle('width','68px');
	}else{		
		MapCity.Core.select('div[id^=ext-gen]').setStyle('width','180px');
	 }

	Site.CurrentView =str_view;
	// showObjects required in str_view parameter
	Site.ShowObject(str_view,true);
	
	}

// ACTIONS WHEN RESIZE WINDOW
// Needed for compatibilize app with IE6
Site.resizeApp = function() {
	var h = Site.viewport.getHeight();
	var w = Site.viewport.getWidth();
	
	//REDIMENSIONA EL BANNER INFERIOR DEL SITIO SI ES QUE ESTA VISIBLE
	var wscr = $(window).width();
	if(document.getElementById('bgnomodal')!=null  && wscr>900){
			
			var hscr = $(window).height();
			
			var wcnt = $('#bgnomodal').width();
			var hcnt = $('#bgnomodal').height();			
			
			Site.visibleColleft=(document.getElementById('leftpanelContent').style.display=='none')?false:true;
			
			var lcol=(Site.visibleColleft==true)?291:0;
			var rcol=(Site.visibleColRight==true)?172:0;
			
			var ldiv=7;
			var rdiv=7;
			
			var paneles = lcol+rcol+ldiv+rdiv; //left, right y divisores
			
			wscr2 = wscr-paneles; //espacio del mapa

			// obtener posicion central
			var mleft = (( wscr2 - wcnt ) / 2)+(lcol+ldiv+rdiv);
			var mtop = ( hscr - hcnt ) / 2;
			
			// estableciendo posicion
			$('#bgnomodal').css("left", mleft+'px');
			$('#bgnomodal').css("bottom", '25px');				
	}
	
	
	// If IE6 then resize the map
	if (MapCity.Core.isIE6){
		
			try{Site.get('map').setStyle('width', eval(w-298)+'px');}catch(err){}	
			try{Site.get('map').setStyle('left','298px');}catch(err){}
			
			//Fix the Map position in height and top
			try{Site.get('map').setStyle('height',eval(h-43)+'px');}catch(err){}
			try{Site.get('map').setStyle('top','43px');}catch(err){}
			
			try{Site.get('BottomContent').setStyle('width',eval(w-298)+'px');}catch(err){}
			
			// Very importants!! See into VIEWS!!!
			try{Site.get('AddressListContent').setStyle('height',eval(h-210-48)+'px');}catch(err){}
			try{Site.get('ItemDetailArea').setStyle('height',eval(h-210-48)+'px');}catch(err){}
			try{Site.get('CommerceListContent').setStyle('height',eval(h-210-48)+'px');}catch(err){}
			try{Site.get('RouteListContent').setStyle('height',eval(h-210-48)+'px');}catch(err){}
			try{Site.get('PhoneListContent').setStyle('height',eval(h-210-48)+'px');}catch(err){}
			try{Site.get('NewListArea').setStyle('height',eval(h-210-48)+'px');}catch(err){}
			try{Site.get('PhotoListArea').setStyle('height',eval(h-210-48)+'px');}catch(err){}		
			try{Site.get('POIArea').setStyle('height',eval(h-210-48)+'px');}catch(err){}
			try{Site.get('StartArea').setStyle('height',eval(h-210-48)+'px');}catch(err){}
	}
	
}

//FUNCTION VIEWPORT 
//GET WIDTH AND HEIGHT FROM CURRENT WINDOW
Site.viewport = {
	getWidth: function(){
	    if( typeof( window.innerWidth ) == 'number' ) {
	    	return window.innerWidth; //Non-IE
	  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
	    	return document.documentElement.clientWidth; //IE 6+ in 'standards compliant mode'
	  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
	    	return document.body.clientWidth; //IE 4 compatible
	  }
	}
	,getHeight: function(){
	    if( typeof( window.innerWidth ) == 'number' ) {
	        	return window.innerHeight; //Non-IE
	      } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
	        	return document.documentElement.clientHeight; //IE 6+ in 'standards compliant mode'
	      } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
	        	return document.body.clientHeight; //IE 4 compatible
	      }
	}
};

//FUNCTION SHOW/HIDE SEARCHLOADING
// Show/Hide Search loading 
Site.ShowLoading = function(str_loading_id,bool_stat){

	try{

			if(bool_stat==true){
				try{Site.get(str_loading_id).setDisplayed('block');}catch(err){}
			}else{
				try{Site.get(str_loading_id).setDisplayed('none');}catch(err){}
			}


	}catch(err){}
	
}

//FUNCTION SHOW/HIDE OBJECT
Site.ShowObject = function(str_objectid,bool_stat){
	if(bool_stat==true){
		try{Site.get(str_objectid).setDisplayed('block');}catch(err){}
	}else{
		try{Site.get(str_objectid).setDisplayed('none');}catch(err){}
	}
}



Site.SetHash=function(i){

	if(i==null || i=='')
		i=1;
		
	var p = window.location.hash;

	p = p.split("#");
	p = p[1];

	if(p){
		p = p.split(":");
		if(p[1])
			window.location.hash='#t='+i+':'+p[1];
		else
			window.location.hash='#t='+i;
	}
	else		
		window.location.hash='#t='+i;
}

Site.GetHash=function(str_param){
	var ret=null;
	var p = window.location.hash;		
	p=p.split("#");
	p = p[1];
	if(p){
		p = p.split(":");
		for(var i=0;i<p.length;i++){
			if(p[i]){
				p1 = p[i].split("=");
				if(p1[0]==str_param){
						ret=p1[1];
				}
			}
		}
	}
	
	return ret;
	
	}

Site.PutHashonSearch= function(addr){

	Site.SetHash(Site.CurrentSearch);
	
	var p = window.location.hash;
	
	p = p.split("#");
	p = p[1];
	
	if(p){
		p = p.split(":");
		if(p[0])
			window.location.hash='#'+p[0]+':a='+addr;
	}

};
//VM hash
Site.PutHashonSearchComm= function(comm,categ){

	Site.SetHash(Site.CurrentSearch);
	
	var p = window.location.hash;
	
	p = p.split("#");
	p = p[1];
	
	if(p){
		p = p.split(":");
		if(p[0])
		{
			//window.location.hash='#'+p[0]+':c='+comm+'_'+categ;
			window.location.hash='#'+p[0]+':c='+comm;
		}
	}

};

// FUNCTION CHANGE SEARCH MENU PRINCIPAL
Site.chmenu = function(selectedmenu,bool_nochangeview){	

if (selectedmenu>1)	document.getElementById('FrontBarSite').style.display='none';
	if(selectedmenu==0  || selectedmenu==null || selectedmenu>5)
		{
			
			selectedmenu=1
		}
		
	
	Site.SetHash(selectedmenu);
	for(i = 1; i <= 5; i++)
	{
		element = document.getElementById(i);
		if(i == selectedmenu)
			try{element.className = "checked";}catch(err){}
		else
			try{element.className= '';}catch(err){}
	}
		  
	
	/* hide forms and show the selected one*/
	document.getElementById('search_by_address').style.display="none";
	document.getElementById('search_by_route').style.display="none";
	document.getElementById('search_by_commerce').style.display="none";
	document.getElementById('search_by_phone').style.display="none";
	document.getElementById('search_global').style.display="none";
	if (selectedmenu==1){
		document.getElementById('search_by_address').style.display="block";
		Site.CurrentSearch = 1;
		Site.switchView('View_AddressList');}
		
		
	if (selectedmenu==2){
		document.getElementById("search_by_route").style.display="block";
		Site.CurrentSearch = 2;
		if(bool_nochangeview!=true) Site.switchView("View_RouteList");
		
	}
			
			
	if (selectedmenu==3){
			document.getElementById('search_by_commerce').style.display="block";
			Site.CurrentSearch = 3;
			if(bool_nochangeview!=true)	Site.switchView('View_CommerceList');
	}
			
			
	if (selectedmenu==4){
			document.getElementById('search_by_phone').style.display="block";		
			Site.switchView('View_PhoneList');
	}
		
		
	if (selectedmenu==5){
		Site.CurrentSearch = 5;
		document.getElementById('search_global').style.display="block";
		
		Site.switchView('View_NewList');}
}

Site.AddressMarkersFitZoom = function(){
	
	Site.Map.map.olMap.zoomToExtent(Site.markers_global.getDataExtent(),false);
	/*if(Site.AddressMarkers){
		Site.bounds = new OpenLayers.Bounds();
		for(var z=0; z<Site.AddressMarkers.length; z++)
			if(Site.AddressMarkers[z])
				Site.bounds.extend(Site.AddressMarkers[z].lonlat);
		Site.bounds.toBBOX();
		Site.Map.map.zoomToExtent(Site.bounds);
	}*/ //VM
	
};


Site.PhoneMarkersFitZoom = function(){
	if(Site.PhoneMarkers){
		Site.bounds = new OpenLayers.Bounds();
		for(var z=0; z<Site.PhoneMarkers.length; z++)
			if(Site.PhoneMarkers[z])
				Site.bounds.extend(Site.PhoneMarkers[z].lonlat);
		Site.bounds.toBBOX();
		Site.Map.map.zoomToExtent(Site.bounds);
	}
};


Site.CommercesFitZoom = function(maxfit){
	if(Site.CommerceMarkers){
		Site.bounds = new OpenLayers.Bounds();
		
		if(Site.CommerceMarkers.length<=maxfit){
			maxfit=Site.CommerceMarkers.length;}
		
		for(var z=0; z<maxfit; z++)
			if(Site.CommerceMarkers[z])
				Site.bounds.extend(Site.CommerceMarkers[z].lonlat);
		Site.bounds.toBBOX();
		Site.Map.map.zoomToExtent(Site.bounds);
	}
};

Site.FitZoomTwoPoints = function(firstpoint,secondpoint){
		
		Site.bounds = new OpenLayers.Bounds();
		Site.bounds.extend(firstpoint);
		Site.bounds.extend(secondpoint);
		Site.bounds.toBBOX();
		Site.Map.map.zoomToExtent(Site.bounds);
	
	}
	
// SHOW TEXT AT THE OBJECT ID FROM PHP LANGUAGE DEFINITION PAGE
Site.get_lbl = function(str_lbl, str_id, lang){
	Site.ShowLoading('loadingglobal',true);
	var ret='';
	MapCity.Core.Ajax.request({url:'/do/',
							 method:'GET', 
							 success: function(response,opts){Site.putHTML(str_id,response.responseText);
							 Site.ShowLoading('loadingglobal',false);},
							 params: {act: 'get_lbl', val: str_lbl, l: lang}});
	return ret;
	
}

// FUNCTION PUT HTML INTO OBJECT ID
Site.putHTML = function(str_objectid,html_content){
	try{Site.get(str_objectid).dom.innerHTML= (html_content);}catch(err){}
	//Site.get(str_objectid).dom.innerHTML= ('áéíóúàèìòùñÑ');
}

// THIS FUNCTION DOES NOT RUN!!!
Site.addHTML = function(str_objectid,html_addcontent){
	
	Site.get(str_objectid).dom.innerHTML =Site.get(str_objectid).value+ html_addcontent;
	
	}

// function clear layers
Site.clearLayer = function(str_layername){
	
	
	switch(str_layername){
		
		//CLEANING Address SearchLayer and lists...
		case 'AddressSearchLayer':
				Site.Map.map.removeAllFeatures();
				Site.AddressSearchLayer.removeAllMarkers();
				Site.PhotoLayer.removeAllMarkers();
				Site.switchView('View_AddressList');
				Site.putHTML('ItemList','');
				Site.putHTML('ItemListTitle','');
				Site.ShowObject('trash1',false);
				Site.ShowLoading('loadingglobal',false);
				changeTabsFront(1);
				break;
				
		case 'RouteLayer':
				Site.Map.map.removeAllFeatures();
				Site.RouteFromLayer.removeAllMarkers();
				Site.RouteToLayer.removeAllMarkers();
				Site.switchView('View_RouteList');
				Site.putHTML('RouteListFROM','');
				Site.putHTML('RouteListTO','');
				Site.putHTML('RouteItemFROM','');
				Site.putHTML('RouteItemTO','');
				Site.putHTML('RouteListTitle','');
				Site.putHTML('RouteLiteralBox','');
				Site.ShowObject('trash2',false);
				Site.ShowLoading('loadingglobal',false);

				break;
				
		case 'CommerceLayer':
				Site.CommerceLayer.removeAllMarkers();
				Site.switchView('View_CommerceList');
				Site.putHTML('CommerceList','');
				Site.putHTML('CommerceListTitle','');
				Site.ShowObject('trash3',false);
				Site.ShowLoading('loadingglobal',false);

				break;
				
		case 'PhoneLayer':
				Site.PhoneLayer.removeAllMarkers();
				Site.switchView('View_PhoneList');
				Site.putHTML('PhoneList','');
				Site.putHTML('PhoneListTitle','');
				Site.ShowObject('trash4',false);
				Site.ShowLoading('loadingglobal',false);

				break;
		case 'PhotoLayer':
				Site.PhotoLayer.removeAllMarkers();
				Site.ShowLoading('loadingglobal',false);
				break;
				
		case 'POILayer':
				Site.POILayer.removeAllMarkers();
				Site.ShowLoading('loadingglobal',false);

				break;
					
		}
	
	}

// FUNCTION SHOWPHOTOLIST
Site.showPhotoList = function(){
	
	Site.putHTML('PhotoListTitle',Site.Locale.get('lbl_PhotosZone'));
	Site.putHTML('PhotoListButton', 
				 		 '<a href="#" onclick="Site.switchView(\''+Site.CurrentView+'\', true);"><img border="0" src="/img/but/'+
						 Site.Locale.get('lbl_back')+'"><a>');
	Site.putHTML('PhotoListList',Site.Searcher.html_shadow);
	Site.switchView('View_PhotoList',true);
	Site.getPhotos(0,20,'s', '',true, 'PhotoListPhotoEnvironment');
	}

// FUNCTION SHOWOPTIONS


 ltrim = function(s) {

	try{return s.replace(/^\s+/, "")}catch(err){return s}
  
}

rtrim = function(s) {
	
	try{  return s.replace(/\s+$/, "")}catch(err){return s}
   
}

trim = function (s) {
   return rtrim(ltrim(s));
}


// HIDE LOADING CODE. IT MUST BE CALLED FROM: BODY ONLOAD 
Site.hideLoading = function(){Site.get('loading').setVisible(false,true);}



Site.updateNearby = function(){
	var z = Site.Map.map.getZoom();
	if(z>6){
		//S.getEntornoFotos(0);
//		Site.getPOI();
//		Site.clickPOI();
		//S.getPublicidad();
	}
}


Site.pause = function(millis) 
{
var date = new Date();
var curDate = null;

do { curDate = new Date(); } 
while(curDate-date < millis);
} 

Site.SocialButtons = function(){
	return '';
	/*
	return '<img onclick="alert(\''+ Site.Locale.get('lbl_coming_soon')+'\');" title="'+ 
				Site.Locale.get('lbl_coming_soon')+'" src="/img/baloon.jpg">  <img onclick="alert(\''+ 
				Site.Locale.get('lbl_coming_soon')+'\');" title="'+ Site.Locale.get('lbl_coming_soon')+
				'" src="/img/sharethis.gif">  <img onclick="alert(\''+ Site.Locale.get('lbl_coming_soon')+'\');" title="'+ 
				Site.Locale.get('lbl_coming_soon')+'" src="/img/favoritesinactive.gif">';
	*/
	}

function showLightbox() {
  document.getElementById('over').style.display='block';
  document.getElementById('fade').style.display='block';
}
function hideLightbox() {
  document.getElementById('over').style.display='none';
  document.getElementById('fade').style.display='none';
}
/////////////////////////////////////////////	INCLUDES DENTRO DE JS
Site.include=function(){
    return function(Src){
        var sc=document.createElement('script');
        sc.type='text/javascript';
        sc.src=Src;
        document.getElementsByTagName('body')[0].appendChild(sc);
        sc=null;
    }
}();

///////////////////////////////////

Site.fncComunas=function() {
   var extent = Site.Map.map.getExtent();

           Site.comPbyextent.get({
                   xmin: extent.left
                   ,xmax: extent.right
                   ,ymin: extent.bottom
                   ,ymax: extent.top
                   }
                   ,function(json){
                       //alert(json.comunasbyextend[0].NOMBRE)
                       eval("var layerCapa = Site.Map.map.getLayer('lyrCapaComuna', 'marker');");

                       if (layerCapa != undefined) {
                           eval("Site.Map.map.removeAllMarkers('lyrCapaComuna', 'marker');");
                           //eval("var layerCapa = Site.Map.map.getLayer('lyrCapaComuna', 'marker');");

                       }/*else {
                           eval("var layerCapa = Site.Map.map.addLayer('lyrCapaComuna', 'marker');")


                       }*/
                       eval("var layerCapa = Site.Map.map.addLayer('lyrCapaComuna', 'marker');")
                       var escala=Site.Map.map.olMap.getScale();
                       //alert(escala);
                       //var w = json.comunasbyextend[x].NOMBRE.length * 20;
                       var h = 25 ;
											 var w = 325; //nuevas etiquetas label 325
											 /*if(escala > 45000) //85000
											 {
											 	var h = 45 ;
											 	var w = 230; //nuevas etiquetas label 325
											 }
											 
											 if(escala > 40000 && escala <=45000) //85000
											 {
											 	var h = 40 ;
											 	var w = 180; //nuevas etiquetas label 325
											 }
											 if(escala > 23000 && escala <=40000 ) //85000
											 {
											 	var h = 50;
											 	var w = 280; //nuevas etiquetas label 325
											 }*/

											 if(Site.IsInternetExplorer()!=false)
											 {
											 	var w = 325;
                       	var h = 25 ; //nuevas etiquetas label
                       }
                       for(var x = 0;x<json.totalCount;x++){

                       var lonlat = new MapCity.Maps.LonLat(json.comunasbyextend[x].LONGITUD, json.comunasbyextend[x].LATITUD);
                       var icon = new MapCity.Maps.Icon(
                       json.comunasbyextend[x].FOTO,
                       //String(json.comunasbyextend[x].FOTO).replace("http://img.mapcity.com/comunas/CL/","http://newapi2.mapcity.com/img/comunas/"),
                       //String(json.comunasbyextend[x].FOTO).replace("http://img.mapcity.com/comunas/CL/","http://localhost/generador_img/comunas/"),
                       new MapCity.Maps.Size(w,h));
                       var size = new MapCity.Maps.Size(w,h);
                       var marker = new MapCity.Maps.Marker(
                                   lonlat
                                   ,icon
                       );
                       marker.setOpacity(0.30); //nuevas etiquetas label
                       icon.imageDiv.style.cursor = "pointer";
                       
                       Site.Map.map.addMarker(layerCapa,marker);
                       
                       }

                   });
}
function VM_mostrarPop(valor,lonlat,ContentHTML,icon,id_,name_pop,size_w,size_h)
{
	if(typeof Site.AddresPopupMarkers != "undefined")
	{
	  for(cont_i=0;cont_i < Site.AddresPopupMarkers.length;cont_i++)
	  {
	  	if(typeof Site.AddresPopupMarkers[cont_i] != "undefined")
	  	{
	  		Site.AddresPopupMarkers[cont_i].hide();
	  	}
	  }
	}

	var popup = new OpenLayers.Popup.FramedCloud("popup"+id_,
											lonlat,
											new OpenLayers.Size(size_w,size_h),
											ContentHTML,
											null,
											true
											);
	
	popup.closeOnMove = true;
	popup.autoSize=false;
	//popup.fixedRelativePosition=true;
	popup.panMapIfOutOfView=false;
	//popup.hide();
	Site.Map.map.addPopup(popup);	
  
	Site.AddresPopupMarkers[id_] = popup;
	
	//Site.AddresPopupMarkers[this].show();
}

function VM_mostrarPopComm(valor,lonlat,ContentHTML,icon,id_,name_pop)
{
	if(typeof Site.CommercesPopupMarkers != "undefined")
	{
	  for(cont_i=0;cont_i < Site.CommercesPopupMarkers.length;cont_i++)
	  {
	  	if(typeof Site.CommercesPopupMarkers[cont_i] != "undefined")
	  	{
	  		Site.CommercesPopupMarkers[cont_i].hide();
	  	}
	  }
	}

	var popup = new OpenLayers.Popup.FramedCloud(""+name_pop+""+id_,
											lonlat,
											new OpenLayers.Size(250,100),
											ContentHTML,
											null,
											true
											);								
	popup.closeOnMove = true;
	popup.autoSize=false;
	//popup.fixedRelativePosition=true;
	popup.panMapIfOutOfView=false;
	//popup.hide();
	Site.Map.map.addPopup(popup);	
	Site.CommercesPopupMarkers[id_] = popup;
	
	//Site.AddresPopupMarkers[this].show();
}

function VM_mostrarPopRoute(valor,lonlat,ContentHTML,icon,id_,name_pop,size_w,size_h)
{
	if(typeof Site.AddresPopupMarkersRoute != "undefined")
	{
	  for(cont_i=0;cont_i < Site.AddresPopupMarkersRoute.length;cont_i++)
	  {
	  	if(typeof Site.AddresPopupMarkersRoute[cont_i] != "undefined")
	  	{
	  		Site.AddresPopupMarkersRoute[cont_i].hide();
	  	}
	  }
	}

	var popup = new OpenLayers.Popup.FramedCloud("popup"+id_,
											lonlat,
											new OpenLayers.Size(size_w,size_h),
											ContentHTML,
											null,
											true
											);
	
	popup.closeOnMove = true;
	popup.autoSize=false;
	//popup.fixedRelativePosition=true;
	popup.panMapIfOutOfView=false;
	//popup.hide();
	Site.Map.map.addPopup(popup);	
  
	Site.AddresPopupMarkersRoute[id_] = popup;	
	//Site.AddresPopupMarkers[this].show();
}

function open_social(tipo,link_soc)
{

	ancho_soc=400;
	alto_soc=300;
	scrollbars_soc="no";
	 if(tipo==1) //facebook
	 {
	 		_url="http://addthis.com/bookmark.php?s=facebook&amp;source=tbxnj-1.0&amp;pubid=ra-4e70f9562fc8b934&url="+urlencode2(Site.dir_sociales[link_soc])+"";
	 		ancho_soc=500;
			alto_soc=300;
	 }
	 if(tipo==2) //twitter
	 {
	 		_url="http://addthis.com/bookmark.php?s=twitter&amp;source=tbxnj-1.0&amp;pubid=ra-4e70f9562fc8b934&url="+urlencode2(Site.dir_sociales[link_soc])+"&title=Mapcity";
	 		ancho_soc=500;
			alto_soc=400;
	 }
	 
	 if(tipo==3) //mail
	 {
	 		_url="http://addthis.com/bookmark.php?s=email&amp;source=tbxnj-1.0&amp;pubid=ra-4e70f9562fc8b934&url="+urlencode2(Site.dir_sociales[link_soc])+"";
	 		ancho_soc=500;
			alto_soc=630;
	 }
	 if(tipo==4) //bookmark
	 {
	 		_url="http://www.addthis.com/bookmark.php?v=250&title=Mapcity&amp;pubid=ra-4e70f9562fc8b934&url="+urlencode2(Site.dir_sociales[link_soc])+"";
	 		ancho_soc=500;
			alto_soc=800;
			scrollbars_soc="yes";
	 }	 
	 if(tipo==5) //facebook 2 directo
	 {
	 		_url="http://www.facebook.com/sharer.php?u="+urlencode2(Site.dir_sociales[link_soc])+"&t=Mapcity.com";
	 		ancho_soc=700;
			alto_soc=400;
	 }
	 if(tipo==6) //twitter 2 directo
	 {
	 		_url="https://twitter.com/share?via=mapcity&text=Test&url="+urlencode2(Site.dir_sociales[link_soc])+"";
	 		ancho_soc=500;
			alto_soc=400;
	 }
	 
	 
	 
	 var opciones="toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars="+scrollbars_soc+", resizable=yes, width="+ancho_soc+", height="+alto_soc+", top=85, left=140";
   window.open(_url,"",opciones);
}

function urlencode(str) {
return escape(str).replace(/\+/g,'%2B').replace(/%20/g, '+').replace(/\*/g, '%2A').replace(/\//g, '%2F').replace(/@/g, '%40');
}
function urlencode2 (str) {
str = escape(str);
return str.replace(/[*+\/@]|%20/g,
function (s) {
switch (s) {
case "*": s = "%2A"; break;
case "+": s = "%2B"; break;
case "/": s = "%2F"; break;
case "@": s = "%40"; break;
case "%20": s = "+"; break;
}
return s;
}
);
}

/*
 funcion para despliegue de comentarios de facebook
*/
function print_comentarios()
{
		(function(d, s, id) {
  	var js, fjs = d.getElementsByTagName(s)[0];
  	if (d.getElementById(id)) {return;}
  	js = d.createElement(s); js.id = id;
  	js.src = "//connect.facebook.net/es_ES/all.js#xfbml=1";
  	fjs.parentNode.insertBefore(js, fjs);
		}(document, 'script', 'facebook-jssdk'));
		

 setTimeout(function() {
                if(typeof FB !== 'undefined') {
                    FB.XFBML.parse();
                }
            }, 1000);
}
function cargarFace()
{
	
            if(typeof FB == 'undefined') {
                    print_comentarios();
                }
						loadFace();
       

}
function loadFace()
{
	(function(d, t) {
		var g = d.createElement(t),
		s = d.getElementsByTagName(t)[0];
		g.async = true;
		g.src = 'https://apis.google.com/js/plusone.js';
		s.parentNode.insertBefore(g, s);
	 })(document, 'script');
 	try{gapi.plusone.go();}catch(err){}
	
	setTimeout(function() {
                if(typeof FB !== 'undefined') {
                    FB.XFBML.parse();
                }
            }, 1000);
}
Site.currentLocation=function ()
{
				//Site.limpiarMarcadores();
				//Marcadores
	if(typeof Site.markers_currentLocation != "undefined")
	{
		Site.markers_currentLocation.destroy();
	}
	if(typeof Site.vectorLayer != "undefined")
	{
		Site.vectorLayer.destroy();
	}
		
				Site.markers_currentLocation = new OpenLayers.Layer.Markers("CL");
				Site.Map.map.olMap.addLayer(Site.markers_currentLocation); 
				//vector.removeAllFeatures();
			
				navigator.geolocation.getCurrentPosition(Site.getPosicion,Site.unknownLocation);
								
}
Site.getPosicion=function (position)
{
		
		MP_latitud=position.coords.latitude;
	  MP_longitud=position.coords.longitude;     
	  Site.Map.map.olMap.setCenter(new OpenLayers.LonLat(MP_longitud,MP_latitud), 12); 
	  Site.vectorLayer = new OpenLayers.Layer.Vector("Circulos",{displayInLayerSwitcher:false});
		Site.Map.map.olMap.addLayer(Site.vectorLayer);

		var points = new OpenLayers.Geometry.Point(MP_longitud,MP_latitud);
		
		var circleStyle = {
			fillColor: "#cccccc",
			fillOpacity: 0.5,
			strokeColor: "#c0c0c0",
			strokeOpacity: 1,
			strokeWidth: 1,
			pointRadius: 6,
			pointerEvents: "visiblePainted",
			cursor: "pointer",
			zIndex: 0
		};

		//radius = 0.1 * Site.Map.map.olMap.getExtent().getHeight();
		radius = 0.004;
		var pointFeature = new OpenLayers.Feature.Vector( 
 			OpenLayers.Geometry.Polygon.createRegularPolygon( points, radius, 33, 0 ), null,  circleStyle ); 
		Site.vectorLayer.addFeatures( [pointFeature] ); 
		var size = new OpenLayers.Size(16,16);  
	 	var offset = new OpenLayers.Pixel(-(size.w/2), -size.h);
		var icon = new OpenLayers.Icon("../img/markers/drawingpin2_blue.png",size,offset);
		
		//var marker = new OpenLayers.Marker(new OpenLayers.LonLat(MP_longitud, MP_latitud),icon);			
   	//Site.markers_currentLocation.addMarker(marker);  
   	//+ central del circulo  	 				
   	Site.vectorLayer.addFeatures([
    	new OpenLayers.Feature.Vector(
    	    points,
    	    {},
    	    {
    	        graphicName: 'cross',
    	        strokeColor: '#f00',
    	        strokeWidth: 2,
    	        fillOpacity: 0,
    	        strokeOpacity: 0.9,
    	        pointRadius: 8
    	    }
    	),
    	pointFeature
    ]);
		
		
		
		if(typeof Site.markers_global != "undefined")
		{
			Site.markers_global.setZIndex(3000);
				
		}		
		
		Site.vectorLayer.setZIndex(1000);
		pulsate(pointFeature);
}

Site.unknownLocation=function()
{
	alert("No se pudo obtener ubicacion actual.");
}
//function limpiarMarcadores()
Site.limpiarMarcadores=function()
{
	//Marcadores
	if(typeof Site.markers_currentLocation != "undefined")
	{
		Site.markers_currentLocation.destroy();
	}
	if(typeof Site.vectorLayer != "undefined")
	{
		Site.vectorLayer.destroy();
	}
	if(typeof Site.markers_global != "undefined")
	{
		Site.markers_global.destroy();
	}	
	//popups
	/*if(typeof Site.AddresPopupMarkers != "undefined")
	{
	  for(cont_i=0;cont_i < Site.AddresPopupMarkers.length;cont_i++)
	  {
	  	if(typeof Site.AddresPopupMarkers[cont_i] != "undefined")
	  	{
	  		Site.AddresPopupMarkers[cont_i].destroy();
	  	}
	  }
	}*/
	if(typeof Site.CommercesPopupMarkers != "undefined")
	{
	  for(cont_i=0;cont_i < Site.CommercesPopupMarkers.length;cont_i++)
	  {
	  	if(typeof Site.CommercesPopupMarkers[cont_i] != "undefined")
	  	{
	  		Site.CommercesPopupMarkers[cont_i].destroy();
	  	}
	  }
	}
		
}

function getTiny()
{
	var tiny_var=String(window.location);
	tiny_var=tiny_var.replace("http://","");
	tiny_var_arr=Array();
	tiny_var_arr=tiny_var.split("/");
	tiny_var_arr=tiny_var_arr[1].split("#");
	return tiny_var_arr[0];
}
Site.limpiarFotosPto=function()
{	
	if(Site.verFotos==false)
	{
		Site.PhotoLayer.display(true);	
		Site.verFotos=true;
		document.getElementById('fotos_mapas').innerHTML=Site.Locale.get('lbl_ClearPhotoMarkers');
	}else
	{
		Site.PhotoLayer.display(false);		
		Site.verFotos=false;
		document.getElementById('fotos_mapas').innerHTML=Site.Locale.get('lbl_ShowPhotoMarkers');
	}
}
function cargar_environment(jj,nom_div,data_dir)
{
	try{Site.getEnvironment(jj,nom_div,data_dir);}catch(err){}
}
var pulsate = function(feature) {
    var point = feature.geometry.getCentroid(),
        bounds = feature.geometry.getBounds(),
        radius = Math.abs((bounds.right - bounds.left)/2),
        count = 0,
        grow = 'up';

    var resize = function(){
        if (count>16) { //comentar para eliminar circle una vez disminuir
            clearInterval(window.resizeInterval);
        }
        var interval = radius * 0.03;
        var ratio = interval/radius;
        switch(count) {
            case 4:
            case 12:
                grow = 'down'; break;
            case 8:
                grow = 'up'; break;
            case 26:
                grow = 'down'; break;
            case 20:
                grow = 'up'; break;    
            case 42:
                grow = 'down'; break;
            case 34:
                grow = 'up'; break;    
            case 56:
                grow = 'down'; break;
            case 48:
                grow = 'up'; break;    
        }
        if (grow!=='up') {
            ratio = - Math.abs(ratio);
        }
        feature.geometry.resize(1+ratio, point);
        Site.vectorLayer.drawFeature(feature);
        count++;
    };
    window.resizeInterval = window.setInterval(resize, 100, point, radius);
};

	Site.addMarkerDefault=function(texto,lon,lat,icono,size_)
	{
			var size_arr=Array();
			size_arr=size_.split(",");
			var size = new OpenLayers.Size(size_arr[0],size_arr[1]);
			
			var offset = new OpenLayers.Pixel(-(size.w/2), -(size.h/15));
      
  		//var icon = new OpenLayers.Icon(icono,size,offset);
  		var icon = new OpenLayers.Icon(icono,size);
  		icon.imageDiv.style.cursor = "pointer";
  		lonlat = new OpenLayers.LonLat(lon,lat);
			marker= new OpenLayers.Marker(lonlat,icon);			
			//marker.events.register('mouseover', marker, function(evt) {addPopUp(json.LATITUD,json.LONGITUD,'&nbsp&nbsp<b>'+json.NOMBRE+'</b>'); OpenLayers.Event.stop(evt); });
			marker.events.register('mousedown', marker, function(evt) {mostrarpopDefault(texto,this,lon,lat); OpenLayers.Event.stop(evt); });
			//marker.events.register('mouseout', marker, function(evt) {noMano(); OpenLayers.Event.stop(evt); });
		  Site.markers_default.addMarker(marker);
	}
function mostrarpopDefault(texto,name_idMar, AM_lon, AM_lat)       
{
	
	if(typeof Site.popup_default !='undefined')
	{
		Site.popup_default.destroy();
	}
	w=230;
	h=200;
	if(Site.IsInternetExplorer()!=false)
	{
		w=280;
		h=300;		
	}
	Site.popup_default = new OpenLayers.Popup.FramedCloud("popup_default",
											new OpenLayers.LonLat(AM_lon,AM_lat),
											new OpenLayers.Size(w,h),
											texto,
											null,
											true
											);
	Site.popup_default.closeOnMove = true;
	Site.popup_default.autoSize=true;
	Site.popup_default.panMapIfOutOfView=false;
	Site.Map.map.olMap.addPopup(Site.popup_default);	
	
}
function limpiarMarkerDefault()
{
		try
		{
			Site.markers_default.destroy();
		}catch(err){}
		/*try
		{		
			Site.popup_default.destroy();
		}catch(err){}*/
		
		Site.markers_default = new OpenLayers.Layer.Markers("point_default");
		Site.Map.map.olMap.addLayer(Site.markers_default);

}

Site.getClima=function(estado)
{
	/*CLIMA*/
	if(estado=='on')
	{
		Site.CLIMA_estado=true;
		var centro = Site.Map.map.getCenter();
		var extent = Site.Map.map.getExtent();
		
		//var httpcall="key=aeeb4642eb4b64cfd150dd0bff144a71&xmin="+extent.left+"&xmax="+extent.right+"&ymin="+extent.bottom+"&ymax="+extent.top+"&_dc=1326747461961"
		Site.comPbyextent.get({
		 xmin: extent.left
		 ,xmax: extent.right
		 ,ymin: extent.bottom
		 ,ymax: extent.top
		 }
		 ,function(json){
		 	Site.ShowLoading('loadingglobal',true);
		 	$("#tabs_loading").show();
		 	var comunas="";
		 	var lonlat="";
		 	//var comunas_full=Array();
		 	for(var x = 0;x<json.totalCount;x++)
		 	{
		     comunas +=","+json.comunasbyextend[x].NOMBRE;
		     lonlat +="|"+json.comunasbyextend[x].LONGITUD+","+json.comunasbyextend[x].LATITUD+"";
		     
		  }   
		  $("#normal_elements_934").html("");
		  //alert('webparts/clima/twcGoogle.php?country='+Site.CurrentCountryName+'&lat='+centro.lat+'&lon='+centro.lon+'&comuna='+comunas+'&lonlat='+lonlat+'&zoom='+Site.Map.map.getZoom()+'')   
		  $.ajax({
					type: 'POST',
					url: 'webparts/clima/twcGoogle.php',
					data: 'country='+Site.CurrentCountryName+'&lat='+centro.lat+'&lon='+centro.lon+'&comuna='+comunas+'&lonlat='+lonlat+'&zoom='+Site.Map.map.getZoom()+'',
					timeout: 30000,
					error: function(data){
						//alert("Hubo un error desde API de clima");
						$("#tabs_loading").hide();
						Site.ShowLoading('loadingglobal',false);
						
					},
					success: function(data) {	
						
						var json = jQuery.parseJSON(data);
						limpiarMarkerDefault();
						
						var texto_html="";
						try
						{
							json.sort(Site.SortByNameClima);
						}catch(err){};
						for(i=0;i<json.length;i++)
						{
							//alert(json[i].temperatura);
							var clima_temperatura =json[i].temperatura;
							var clima_locacion =json[i].nombre;
							var clima_estado =json[i].estado;
							var clima_icono =json[i].icono;
							var lontat_pto=json[i].lonlat.split(",");
							var texto="<div id=txtPopDefault><b>"+clima_locacion+"</b><br>";
							texto +="<br><b>Temperatura Actual</b>: "+clima_temperatura+"&#176;C";
							texto +="<br><b>Condicion Actual</b>: "+clima_estado+"";
							//texto +="<br><b>Hoy</b> "+json[i].temp_min+"&#176;C/"+json[i].temp_max+"&#176;C";
							//texto +="<br><b>Ma&ntilde;ana</b> "+json[i].temp_min_sig+"&#176;C/"+json[i].temp_max_sig+"&#176;C </div>";
							//var mi_imagen = new Image();
							//mi_imagen.src=clima_icono;
							ancho=52;
							alto=52;			
							//Site.addMarkerDefault(texto,lontat_pto[0],lontat_pto[1],""+clima_icono+"",""+mi_imagen.width+","+mi_imagen.height+"");
							if(clima_locacion!=null && Site.CLIMA_estado==true && extent.containsLonLat(new OpenLayers.LonLat(lontat_pto[0],lontat_pto[1]),false))
							{

								Site.addMarkerDefault(texto,lontat_pto[0],lontat_pto[1],""+clima_icono+"",""+ancho+","+alto+"");
								texto_html +="<div onmouseover='mostrarpopDefault(\""+texto+"\",0, \""+lontat_pto[0]+"\", \""+lontat_pto[1]+"\");' style='white-space:nowrap; cursor:pointer; padding-bottom:0px; border-bottom:#999 1px inset;' class='lipoi' id='row_clima_"+i+"'>";
								texto_html +="<table style='margin-bottom:20px;'>";
								texto_html +="<tbody><tr>";
								texto_html +="<td width='187'>";
								texto_html +="<span style='font-size:10px;color:#333;'>"+clima_locacion+": "+clima_temperatura+"&#176;C</span>";
								texto_html +="</td>";
								texto_html +="<td width='21'>";
								texto_html +="<span><img border='0' style='width:9px; height:9px;' src='img/interface/small-arrow-1.png'></span>";
								texto_html +="</td>";
								texto_html +="</tr></tbody></table>";
								texto_html +="</div>";		
							}
						}
						$("#normal_elements_934").html(texto_html);
						Site.ShowLoading('loadingglobal',false);
						$("#tabs_loading").hide();
					}
				})     
				
		 			
			});			
	}else
	{
		limpiarMarkerDefault();
		Site.CLIMA_estado=false;
	}
			
	/*FIN API CLIMA*/
}



var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();
Site.SortByNameClima=function(x,y) {
      return ((x.nombre == y.nombre) ? 0 : ((x.nombre > y.nombre) ? 1 : -1 ));
    }
