var map;
var processClick = false;

function loadMap() {
    map = new VEMap('veplusmap');
    map.SetCredentials("AnhNO4WlGI6hTfpmlFapV74uYb4rNM0SBnd9iJiaWnGUqIxZh8DtVINiP8QNv-69");         
    map.SetDashboardSize(VEDashboardSize.Small);
    map.LoadMap(new VELatLong(-37, 145), 7, 's', false, VEMapMode.Mode2D, false, 1);
    map.SetScaleBarDistanceUnit(VEDistanceUnit.Kilometers);
    map.ShowSwitch=0;
    map.AttachEvent('onclick', MapClick);
    //map.ClearInfoBoxStyles();

    map.ShowMessage = function (message) {
        if (message == 'Unable to load source file.')
            alert("No items found for this criteria.");
        else
            alert(message);
    };
}

function loadMapStatic() {
    map = new VEMap('veplusmap');      
    map.SetCredentials("AnhNO4WlGI6hTfpmlFapV74uYb4rNM0SBnd9iJiaWnGUqIxZh8DtVINiP8QNv-69");   
    map.SetDashboardSize(VEDashboardSize.Small);
    map.LoadMap(new VELatLong(-37, 145), 7, 's', true, VEMapMode.Mode2D, false, 1);
    map.SetScaleBarDistanceUnit(VEDistanceUnit.Kilometers);
    map.ShowSwitch=0;
}

function zoomVicCentre(zoomLevel) {
    map.SetCenterAndZoom(new VELatLong(-37, 145), zoomLevel);
}

function loadGeoRSSLayer(layerURL) {
    var layer = new VEShapeLayer();
    var veLayerSpec = new VEShapeSourceSpecification(VEDataType.GeoRSS, layerURL, layer);
    map.ImportShapeLayerData(veLayerSpec, onFeedLoad, false);
}

function loadGeoRSSLayerZoom(layerURL) {
    var layer = new VEShapeLayer();
    var veLayerSpec = new VEShapeSourceSpecification(VEDataType.GeoRSS, layerURL, layer);
    map.ImportShapeLayerData(veLayerSpec, onFeedLoad, true);
}

function onFeedLoad(feed) {            
    var numShapes = feed.GetShapeCount();
    var shape;
    
    for(var i=0; i < numShapes; ++i)
    {
        var shape = feed.GetShapeByIndex(i);      
        shape.SetCustomIcon("<img src='" + shape.IconId + "'/>");
    }
    
    if (numShapes == 1) map.ShowInfoBox(shape);
}

function MapClick(e) {
    try
    {
        if (!e.leftMouseButton ) return;
        var elementID = e.elementID;        
        if (elementID != null) map.ShowInfoBox(map.GetShapeByID(elementID));
    }
    catch(err) { }
}

function ToggleOptionSelected(toggled) {
    if (toggled) {
        processClick = true;
//        document.getElementById("t1").style.display="none";
        document.getElementById("veplusmap").childNodes[0].style.cursor = "crosshair";
    }
    else {
        processClick = false;
//        document.getElementById("t2").style.display="none";
        document.getElementById("veplusmap").childNodes[0].style.cursor = "";
    }
}

function hideAllLayers() {
    map.HideAllTileLayers();
    map.HideAllShapeLayers();
}

function stopSubmit() { return false; }
