//--------------------------------------------------------------------------------------------------//
//                              ICONOS                                                              //
//--------------------------------------------------------------------------------------------------//
  var iconRestaurante = new GIcon(G_DEFAULT_ICON);
  iconRestaurante.image = "http://www.mundivideo.com/images/iconos/restaurante.png";

  var iconTeatro = new GIcon(G_DEFAULT_ICON);
  iconTeatro.image = "http://www.mundivideo.com/images/iconos/teatro.png";	
        
  var iconTienda = new GIcon(G_DEFAULT_ICON);
  iconTienda.image = "http://www.mundivideo.com/images/iconos/tienda.png";	
       
  var iconEducacion = new GIcon(G_DEFAULT_ICON);
  iconEducacion.image = "http://www.mundivideo.com/images/iconos/educacion.png";	
       
  var iconMonumento = new GIcon(G_DEFAULT_ICON);
  iconMonumento.image = "http://www.mundivideo.com/images/iconos/monumento.png";	
        
  var iconAdministracion = new GIcon(G_DEFAULT_ICON);
  iconAdministracion.image = "http://www.mundivideo.com/images/iconos/administracion.png";
       
  var iconTipico = new GIcon(G_DEFAULT_ICON);
  iconTipico.image = "http://www.mundivideo.com/images/iconos/info.png";			

  var customIcons = [];
  customIcons[4] = iconRestaurante;
  customIcons[3] = iconTeatro;
  customIcons[5] = iconTienda;
  customIcons[2] = iconEducacion;
  customIcons[6] = iconMonumento;
  customIcons[1] = iconAdministracion;
  customIcons[7] = iconTipico;

//--------------------------------------------------------------------------------------//
//                     DECLARACIÓN DE VARIABLES                                         //
//--------------------------------------------------------------------------------------//
	var map;
	var myPano;
	var id_localidad=469529629;
	var panoClient;
	var nextPanoId;
	var ubicacionInicialPOV;
	var ubicacionNuevaPOV;
	var geocoder 	= null;
	
	var usuario   = null;
	var tipologia = null;
	var miurl;
	var tipo = null;
	var usu  = null;
	var myPOV;

var milatitud=0;
var milongitud=0;
var miazimut=0;
var mialtura=0;
var mizoom=0;
var midireccion;
var midireccion2;
  var idi       ='sp';
 var overlayInstance = null;

//--------------------------------------------------------------------------------------//
//                      RECOGIDA PARAMETROS URL                                         //
//--------------------------------------------------------------------------------------// 
  var Url = location.href;
  Url = Url.replace(/.*\?(.*?)/,"$1");
  Variables = Url.split ("&");
  
  if (Variables.length>1) {

    for (i = 0; i < Variables.length; i++) {
       Separ = Variables[i].split("=");
       eval ('var '+Separ[0]+'="'+Separ[1]+'"');
       
       tipologia=tipo;
       usuario=usu;
    }
  }

//---------------------------------------------------------------------------------------//
//                       FUNCIÓN LOAD                                                    //
//---------------------------------------------------------------------------------------//      
	
  function load() {

    if (GBrowserIsCompatible()) {
         
    	map = new GMap2(document.getElementById("map"));
        		
    	map.addControl(new GSmallMapControl());
    	map.addControl(new GMapTypeControl());
      map.setCenter(new GLatLng(40.419516, -3.693233), 15);
    
      ubicacionInicial 	  = new GLatLng(40.419516, -3.693233);
	  	ubicacionInicialPOV	= {yaw:136.03,pitch:1.96};
	  	panoClient 		      = new GStreetviewClient();
	  	myPano 			        = new GStreetviewPanorama(document.getElementById("pano"));
	  		
	  	myPano.setLocationAndPOV(ubicacionInicial, ubicacionInicialPOV);
	  	GEvent.addListener(myPano, "error", handleNoFlash);

      geocoder = new GClientGeocoder();
      
      verMarcadores('loc',id_localidad);
    }
  }


function toggleOverlay() {
   if (!overlayInstance) {
     overlayInstance = new GStreetviewOverlay();
     map.addOverlay(overlayInstance);
   } else {
     map.removeOverlay(overlayInstance);
     overlayInstance = null;
   }
}

function generaCodigo() {

//     document.getElementById("direccion").innerHTML="<b><font size='2' face='Arial' color='green'>"+ midireccion+"</font></b><br>";
 //    document.getElementById("latitud").innerHTML   ="<font size='2' face='Arial'>"+latitud+" <font color='blue'>(" + milatitud + ", " + milongitud +" ) </font>";
  //   document.getElementById("azimut").innerHTML= "<font size='2' face='Arial'>"+azimut +" <font color='red'>(" + miazimut +", " + mialtura +" ) </font>&nbsp;&nbsp; Zoom: <font size='2' face='Arial' color='red'>" + mizoom+"<br></font>";

     document.form1.Username.value ='http://www.mundivideo.com/vc.htm?id='+idi+'&lat='+milatitud+'&lng='+milongitud+'&yaw='+miazimut+'&pitch='+mialtura+'&zoom='+mizoom+'&dir='+midireccion;
     document.form1.Browser.value ='<iframe width="100%" height="100%" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://www.mundivideo.com/vc.htm?id='+idi+'&lat='+milatitud+'&lng='+milongitud+'&yaw='+miazimut+'&pitch='+mialtura+'&zoom='+mizoom+'&dir='+midireccion+'"></iframe>';

}   

       
//---------------------------------------------------------------------------------------//
//                       FUNCIÓN SHOWPANODATA                                            //
//---------------------------------------------------------------------------------------//   
	function showPanoData(panoData) {
   	if (panoData.code != 200) {
    	/*    GLog.write('showPanoData: Server rejected with code: ' + panoData.code);*/
      return;
    }
    myPano.setLocationAndPOV(panoData.location.latlng, myPOV);          
  }

//---------------------------------------------------------------------------------------//
//                       FUNCIÓN HANDLENOFLASH                                           //
//---------------------------------------------------------------------------------------//   
	function handleNoFlash(errorCode) {
		if (errorCode == 603) {
	    		alert("Error: Flash doesn't appear to be supported by your browser");
	    		return;
	  	}
	}

//---------------------------------//
//           GEOCODER              //
//---------------------------------//
  function showAddress(address, zoom) {
    
    if (address != 0){        
		  var	words = address.split(",") //split using blank space as delimiter
			{
				for (i=0; i<words.length; i++)
					var address			= words[1]+','+words[2]+','+words[3];
			 	  id_localidad	= words[0];
      }
    }

		if (geocoder) {
    	geocoder.getLatLng(address,	function(point) {
        if (!point) {
          alert(address + " no se ha encontrado");
        } else {
          map.setCenter(point, zoom);
					lati	= point.y;
					long	= point.x;
 					semaforo   = 1;
 					migeocoder = 1;
 					
 					panoClient.getNearestPanorama(point, showPanoData);
 					myPano.setLocationAndPOV(point); //////
          marcandoDatos(id_localidad);
          
          midireccion=address;
          milatitud=lati;
    milongitud=point.x;

   // mialtura=pitchw;
  //  miazimut= yaww;
  //  mizoom=zoomw;
                  
                       generaCodigo();
          
 	      }
 		  }
 		  );      	
  	}
  }    
    
    
//---------------------------------------------------------------------------------------//
//                       FUNCIÓN VERMARCADORES                                           //
//---------------------------------------------------------------------------------------//       
  function verMarcadores(param, valor){
     map.clearOverlays(); 
     miurl="vc_cons_marcadores.php?reg=n&loc="+id_localidad;
  
     if (param == 'tipo') {
       if(valor != 0){
          miurl="vc_cons_marcadores.php?reg=n&loc="+id_localidad+"&tipo="+valor;
       }
     }
                            
     if (param == 'usu') {
        miurl="vc_cons_marcadores.php?reg=n&loc="+id_localidad+"&usu="+valor;
     }
        
		 GDownloadUrl(miurl, function(data) {
          			
         var xml 	= GXml.parse(data);
         var markers 	= xml.documentElement.getElementsByTagName("marker");
          			
         for (var i = 0; i < markers.length; i++) {
            				var name 	  = markers[i].getAttribute("name");
            				var address = markers[i].getAttribute("address");
            				var type 	  = markers[i].getAttribute("type");
            				var idtipo 	= markers[i].getAttribute("idtipo");
            				var pointo 	= new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                    				      parseFloat(markers[i].getAttribute("lng")));
             				var yaww 	  = parseFloat(markers[i].getAttribute("yaw"));
 			 		          var pitchw 	= parseFloat(markers[i].getAttribute("pitch"));
 			 		          var zoomw 	= markers[i].getAttribute("zoom");
 			 		          var usuariow= markers[i].getAttribute("usuario");
 			 	
            				var marker = createMarker(pointo, name, address, idtipo, type, yaww, pitchw, zoomw, usuariow);
            				map.addOverlay(marker);
        }
     }
     );
  }
    
//---------------------------------------------------------------------------------------//
//                       FUNCIÓN MARCANDODATOS                                           //
//---------------------------------------------------------------------------------------//       
  function marcandoDatos(idLoc){
    
      miurl="vc_cons_marcadores.php?reg=n&loc="+idLoc;
 
      if (tipologia !== null) {
        miurl="vc_cons_marcadores.php?reg=n&loc="+idLoc+"&tipo="+tipologia;
      }
                   
      if (usuario !== null) {
        miurl="vc_cons_marcadores.php?reg=n&loc="+idLoc+"&usu="+usuario;
      }
      
      GDownloadUrl(miurl, function(data) {
          			
          			var xml 	= GXml.parse(data);
          			var markers 	= xml.documentElement.getElementsByTagName("marker");
          			
          			for (var i = 0; i < markers.length; i++) {
            				var name 	    = markers[i].getAttribute("name");
            				var address 	= markers[i].getAttribute("address");
            				var type 	    = markers[i].getAttribute("type");
            				var idtipo 	  = markers[i].getAttribute("idtipo");
            				var pointo 	  = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                    				      parseFloat(markers[i].getAttribute("lng")));
             				var yaww 	     = parseFloat(markers[i].getAttribute("yaw"));
 			 		          var pitchw 	  = parseFloat(markers[i].getAttribute("pitch"));
 			 		          var zoomw 	  = markers[i].getAttribute("zoom");
 			 		          var usuariow 	= markers[i].getAttribute("usuario");
 			 	

            				var marker = createMarker(pointo, name, address, idtipo, type, yaww, pitchw, zoomw, usuariow);
            				map.addOverlay(marker);
            				
            				
          			}
      }
      );
      

       
      
  }


//---------------------------------------------------------------------------------------//
//                       FUNCIÓN CREATEMARKER                                            //
//---------------------------------------------------------------------------------------//   
   function createMarker(pointo, name, address, idtipo, type, yaww, pitchw, zoomw, usuariow) {
      
      var marker = new GMarker(pointo, customIcons[idtipo]);
      var html = "<b>" + name + "</b> <br/>" + address+ "</b> <br/><a href=JavaScript:verMarcadores('usu','"+usuariow+"');>"+usuariow+"</a></b>  &nbsp;  &nbsp; <a href=JavaScript:verMarcadores('tipo',"+idtipo+");>"+type+"</a>";
    
   		GEvent.addListener(marker, 'click', function() {
               		 
                  marker.openInfoWindowHtml(html);
               		var ya = yaww;
               		var pi = pitchw;
               		var zo = parseFloat(zoomw);
     
               		myPOV = {yaw:ya,pitch:pi,zoom:zo}; 
                  myPano.setLocationAndPOV(pointo, myPOV); 
      
                midireccion=address;
          milatitud=pointo.y;
    milongitud=pointo.x;

    mialtura=pi
    miazimut= ya;
    mizoom=zo;
                  
                       generaCodigo();

      }
      );
      return marker;
    }