// Creation carte eduroam.fr
// C. Claveleira - CRU - 2007
// 	$Id: main.js,v 1.3 2007/11/27 11:52:32 clavelei Exp $ 

function load() {
  if (GBrowserIsCompatible()) {
    function createMarker(point, label, title, icon, click2recenter) { //Creation marqueur 
      var marker = new GMarker(point, { title: title, icon: icon });
      if (click2recenter){
	GEvent.addListener(marker, "click", function() {
			     map.setCenter(point,9);
			   });
      }
      else  
	GEvent.addListener(marker, "click", function() {
			     marker.openInfoWindowHtml("<b>" + label + "</b>");
			   });
      return marker;
    }

    function isole(site){
      return (((site["zoomin"]==0)&&(site["zoomax"]==17))?true:false);
    }

    var map = new GMap2(document.getElementById("map"));
    map.setCenter(new GLatLng(47.0, 1.7), 6);
    map.addControl(new GSmallMapControl());
    var mgr = new MarkerManager(map);
    var markers = [];

    // Notre icone
    var icon = new GIcon();
    //icon.image = "marker_eduroam.png";
    icon.image = "marker1_eduroam.png";
    icon.shadow = "shadow50.png";
    icon.iconSize = new GSize(20,34);
    icon.shadowSize = new GSize(37,34);
    icon.iconAnchor = new GPoint(10, 34);
    icon.infoWindowAnchor = new GPoint(15, 5);

    var icon2 = new GIcon();
    icon2.image = "marker_multiple.png";
    icon2.shadow = "marker_multiple_ombre.png";
    icon2.iconSize = new GSize(46,36);
    icon2.shadowSize = new GSize(61,36);
    icon2.iconAnchor = new GPoint(23, 18);
    icon2.infoWindowAnchor = new GPoint(17, 4);
    
    for (var j=0; j < etabs.length; j++) {
      var point = new GLatLng(etabs[j]["lat"],etabs[j]["lon"]);
      if (isole(etabs[j])) // sites isoles
	markers.push (createMarker(point,
				   (etabs[j]["url"]?"<a href=\""+etabs[j]["url"]+"\" target=\"infosite\">"+etabs[j]["nom"]+"</a>":etabs[j]["nom"])+
				   (etabs[j]["ssid"]?"<br>Ssid: "+etabs[j]["ssid"]:"")+
				   (etabs[j]["crypt"]?"<br>Chiffrement: "+etabs[j]["crypt"]:"")+
				   (etabs[j]["ttls"]?"<br>ttls: "+etabs[j]["ttls"]:"")+
				   (etabs[j]["peap"]?"<br>peap: "+etabs[j]["peap"]:""),
				   etabs[j]["nom"],
				   icon,
				   false)
		      );
    }
    mgr.addMarkers(markers, 0,17);
    
    for (var j=0; j < etabs.length; j++) {
      if (!isole(etabs[j])) {
	var point = new GLatLng(etabs[j]["lat"],etabs[j]["lon"]);
	var zmin=parseInt(etabs[j]["zoomin"]);
	var zmax=parseInt(etabs[j]["zoomax"]);
	if(zmin) mgr.addMarker (createMarker(point,  
					     (etabs[j]["url"]?"<a href=\""+etabs[j]["url"]+"\" target=\"infosite\">"+etabs[j]["nom"]+"</a>":etabs[j]["nom"])+
					     (etabs[j]["ssid"]?"<br>Ssid: "+etabs[j]["ssid"]:"")+
					     (etabs[j]["crypt"]?"<br>Chiffrement: "+etabs[j]["crypt"]:"")+
					     (etabs[j]["ttls"]?"<br>ttls: "+etabs[j]["ttls"]:"")+
					     (etabs[j]["peap"]?"<br>peap: "+etabs[j]["peap"]:""),
					     etabs[j]["nom"],
					     etabs[j]["zoomin"]==0?icon2:icon,
					     false), 
				zmin,  
				zmax
				)
	else  mgr.addMarker (createMarker(point,  
					  etabs[j]["nom"], 
					  etabs[j]["nom"],
					  etabs[j]["zoomin"]==0?icon2:icon,
					  true), 
			     zmin,  
			     zmax
			     );
      }
    }
    mgr.refresh();
  }
}
