var showPanoramio = 1;
var marker = ''; 
  
function load(){
	
  //alert ('1')	;
  //alert (c_lat);	
  
  if (GBrowserIsCompatible()) {
    map = new GMap2(document.getElementById("google_map"));
    
    var center = new GLatLng(c_lat, c_long);

    map.setCenter(center, c_zoom);

	map.setMapType(G_HYBRID_MAP); 
	
	map.addControl(new GOverviewMapControl());
	map.addControl(new PanoramioControl());
	map.setUIToDefault();

//	map.addControl(new GSmallMapControl());
	
	marker = new GMarker(center, {draggable: true});

    GEvent.addListener(marker, "dragstart", function() {
      map.closeInfoWindow();
    });

    GEvent.addListener(marker, "dragend", function() {

      var newlocation = marker.getPoint();
      var newlat = marker.getPoint().lat();
	  var newlng = marker.getPoint().lng(); 
      var newzoom =  map.getZoom();
      
      map.panTo(new GLatLng(newlat, newlng));
      
      
      $('eventLat').value = newlat;
      $('eventLng').value = newlng;
      $('eventZoom').value = newzoom;
      

//      marker.openInfoWindowHtml('Lat = '+newlat+'<br>Long = '+newlng+'<br>Zoom = '+newzoom);
      
      
    });
    
    GEvent.addListener(marker, "click", function() {
    	  var newlocation = marker.getPoint();
	      var newlat = marker.getPoint().lat();
		  var newlng = marker.getPoint().lng(); 
	      var newzoom =  map.getZoom();
	      
	      map.panTo(new GLatLng(newlat, newlng));
	      
	      
	      $('eventLat').value = newlat;
	      $('eventLng').value = newlng;
	      $('eventZoom').value = newzoom;
//      map.closeInfoWindow();
    });
    
    
    GEvent.addListener(map, "click", function() {
    	  var newlocation = marker.getPoint();
	      var newlat = marker.getPoint().lat();
		  var newlng = marker.getPoint().lng(); 
	      var newzoom =  map.getZoom();
	      
	      map.panTo(new GLatLng(newlat, newlng));
	      
	      
	      $('eventLat').value = newlat;
	      $('eventLng').value = newlng;
	      $('eventZoom').value = newzoom;
//      map.closeInfoWindow();
    });
    
//    GEvent.addListener(map, "moveend", function() {
//    	  var newlocation = marker.getPoint();
//	      var newlat = marker.getPoint().lat();
//		  var newlng = marker.getPoint().lng(); 
//	      var newzoom =  map.getZoom();
//	      
//	      map.panTo(new GLatLng(newlat, newlng));
//	      
//	      
//	      $('eventLat').value = newlat;
//	      $('eventLng').value = newlng;
//	      $('eventZoom').value = newzoom;
////      map.closeInfoWindow();
//    });

    map.addOverlay(marker);

  
  }
}


function PanoramioControl() {
	}
	PanoramioControl.prototype = new GControl();
	
	PanoramioControl.prototype.initialize = function(map) {
		
	  var panv = new GLayer("com.panoramio.all");
		
	  var container = document.createElement("div");
	
	  var zoomInDiv = document.createElement("div");
	  this.setButtonStyle_(zoomInDiv);
	  container.appendChild(zoomInDiv);
	  zoomInDiv.appendChild(document.createTextNode("Panoramio"));
	  GEvent.addDomListener(zoomInDiv, "click", function() {

	  	 if(showPanoramio == 0){
	  	 	showPanoramio = 1;
	  	 	map.addOverlay(panv);
	  	 }else
	  	 {
	  	 	showPanoramio = 0;
	  	 	map.removeOverlay(panv);
	  	 }
	     
	     
	  });
	
	  
	
	  map.getContainer().appendChild(container);
	  return container;
	}
	
	// By default, the control will appear in the top left corner of the
	// map with 7 pixels of padding.
	PanoramioControl.prototype.getDefaultPosition = function() {
	  return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(7, 7));
	}
	
	// Sets the proper CSS for the given button element.
	PanoramioControl.prototype.setButtonStyle_ = function(button) {
	  button.style.textDecoration = "none";
	  button.style.color = "#000000";
	  button.style.backgroundColor = "white";
	  button.style.fontSize = "12px";
	  button.style.border = "1px solid black";
	  button.style.padding = "2px";
	  button.style.marginRight = "275px";
	  button.style.textAlign = "center";
	  button.style.width = "6em";
	  button.style.height = "13px";
	  button.style.cursor = "pointer";
	}
	
	
function get_coordinates(){
	var adress = '';
	type = '';
	
	if($('cityId').value > 0){
		
		var url = site_url+'ajax/location/getCityCoord/'+$('cityId').value;
	
		new Ajax.Request(url, {
		  method: 'get',
		  asynchronous:false,
		  onSuccess: function(transport) {
		   		htmlOutput=transport.responseText;
		   		if(htmlOutput==""){
//		   			htmlOutput="<option value=all> - "+please_select+" -</option>";
		   		}
		   		adress = htmlOutput;
		  }
		} 
		);
		
		zoom = 12;
		
	}else if($('subregionId').value > 0){
		
		var url = site_url+'ajax/location/getSubRegionCoord/'+$('subregionId').value;
	
		new Ajax.Request(url, {
		  method: 'get',
		  asynchronous:false,
		  onSuccess: function(transport) {
		   		htmlOutput=transport.responseText;
		   		if(htmlOutput==""){
//		   			htmlOutput="<option value=all> - "+please_select+" -</option>";
		   		}
		   		adress = htmlOutput;
		  }
		} 
		);
		
	}else if($('regionId').value > 0){
		var url = site_url+'ajax/location/getRegionCoord/'+$('regionId').value;
	
		new Ajax.Request(url, {
		  method: 'get',
		  asynchronous:false,
		  onSuccess: function(transport) {
		   		htmlOutput=transport.responseText;
		   		if(htmlOutput==""){
//		   			htmlOutput="<option value=all> - "+please_select+" -</option>";
		   		}
		   		adress = htmlOutput;
		  }
		} 
		);
	}else
	{
		type = "full";
		adress = c_lat+"|"+c_long+"|"+c_zoom+"|"+type;
	}
	
	//alert (adress);
	return adress;
	
}

function split_coordinates(){
	
	var arr_coord = get_coordinates();

	coord = new Array();
	if(arr_coord !== ''){
		coord = explode('|', arr_coord);
	}
	
	if(coord[2] == '' || coord[2] == 0 || coord.length < 3){
		coord[2] = parseInt(zoom);
	}
		
	coord[2] = parseInt(coord[2]);
	
}	
	
function f_go(){

//	map.clearOverlays();
	
	var countryCode = 'HR';
	
	split_coordinates();
//	alert(coord[0]);
//	alert(coord[1]);
//	alert(coord[2]);


	if(marker){
		marker.setLatLng(new GLatLng(coord[0], coord[1]));
	}



//	map.setCenter(new GLatLng(coord[0], coord[1]), coord[2]);
	map.setZoom(coord[2]);
	map.panTo(new GLatLng(coord[0], coord[1]));
		
//	alert(map.getZoom());
		

}

