var map;
var bounds;
var tabMarker = Array();
var labelContainer;
var LabelControl;
var side_bar_html = "";

function initialize() {
      if (GBrowserIsCompatible()) {
        map = new GMap2($("map"));
		bounds = new GLatLngBounds();
		map.addControl(new GSmallMapControl());
        //map.addControl(new GMapTypeControl());
		map.setCenter(new GLatLng(48.833 ,2.333),4);
      }
    }
	
function addMarker(lat,long,message,category,id){
		
 		  var latlng = new GLatLng(lat,long);
		  var Icon = new GIcon();
      	  Icon.image = BASE_URL + "/styles/default/imgs/markers/marker_"+ category +".png";
          Icon.iconSize = new GSize(30, 30);
          Icon.shadowSize = new GSize(30, 30);
          Icon.iconAnchor = new GPoint(15, 15);
          Icon.infoWindowAnchor = new GPoint(20, 10);
          var marker = new GMarker(latlng,Icon);
		  marker.category = category;
		  
		  if(id){
			  tabMarker[id]=marker;
		  }else{
			  tabMarker.push(marker);
		  }
		  bounds.extend(latlng);
		  GEvent.addListener(marker, "click", function() {
        		marker.openInfoWindowHtml('<img src="'+Icon.image+'"/>' + message);
      		});
		  map.setCenter(bounds.getCenter());
		  map.setZoom(map.getBoundsZoomLevel(bounds)-1);
		  map.addOverlay(marker);
}

function removeCategory(category){
	tabMarker.each(function(item) {
		
		if (item.category == category) {
			item.hide();
	    }
	});
}

function addCategory(category){
	tabMarker.each(function(item) {
		
		if (item.category == category) {
			item.show();
	    }
	});	
}

function myclick(i) {
    GEvent.trigger(tabMarker[i], "click");
	 map.setZoom(12);
}    

 
function addMarkerSideBar(){
	 
	 function LabelControl() {}
	
	 LabelControl.prototype = new GControl();

      LabelControl.prototype.initialize = function(map) {
        labelContainer = document.createElement("div");
		labelContainer.className="sidebar";
        map.getContainer().appendChild(labelContainer);
        return labelContainer;
      }

      LabelControl.prototype.getDefaultPosition = function() {
        return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(7, 10));
      }
	  
	  map.addControl(new LabelControl()); 
	  labelContainer.innerHTML = '<select onchange="myclick(this.selectedIndex)" >' + side_bar_html +'</select>';
 }
